/**
   *  CartoDB infowindow dark styles
   */
div.cartodb-popup.dark .jspContainer:after {
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, black));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), black);
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0), black);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0), black);
  background: linear-gradient(top, rgba(0, 0, 0, 0), black); }

div.cartodb-popup.dark .jspContainer:before {
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, black), color-stop(100%, rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(top, black, rgba(0, 0, 0, 0));
  background: -moz-linear-gradient(top, black, rgba(0, 0, 0, 0));
  background: -o-linear-gradient(top, black, rgba(0, 0, 0, 0));
  background: linear-gradient(top, black, rgba(0, 0, 0, 0)); }

div.cartodb-popup.dark {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark.png") no-repeat -226px 0; }

div.cartodb-popup.dark div.cartodb-popup-content-wrapper {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark.png") repeat-y -452px 0; }

div.cartodb-popup.dark div.cartodb-popup-tip-container {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark.png") no-repeat 0 0; }

div.cartodb-popup.dark a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark.png") no-repeat 0 -23px; }

div.cartodb-popup.dark h4 {
  color: #999; }

div.cartodb-popup.dark p {
  color: #FFFFFF; }

div.cartodb-popup.dark a {
  color: #397DB9; }

div.cartodb-popup.dark p.empty {
  font-style: italic;
  color: #AAA; }

div.cartodb-popup.dark .jspDrag {
  background: #AAAAAA;
  background: rgba(255, 255, 255, 0.5); }

div.cartodb-popup.dark .jspDrag:hover {
  background: #DEDEDE;
  background: rgba(255, 255, 255, 0.8); }

/* NEW CartoDB 2.0 dark popups */
div.cartodb-popup.v2.dark {
  background: #000000; }

div.cartodb-popup.v2.dark:before {
  border-top-color: black; }

div.cartodb-popup.v2.dark div.cartodb-popup-tip-container:after {
  border-top-color: #000; }

div.cartodb-popup.v2.dark a.cartodb-popup-close-button {
  background: #000000; }

div.cartodb-popup.v2.dark a.cartodb-popup-close-button:before,
div.cartodb-popup.v2.dark a.cartodb-popup-close-button:after {
  background: white; }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.v2.dark {
    border: 4px solid #AAA; }
  div.cartodb-popup.v2.dark div.cartodb-popup-tip-container {
    border-top: 18px solid #000; }
  div.cartodb-popup.v2.dark a.cartodb-popup-close-button {
    border: 2px solid #AAA;
    color: white; }
  div.cartodb-popup.v2.dark a.cartodb-popup-close-button:hover {
    border: 2px solid #BBB; } }

/**
   *  CartoDB popup styles (default)
   */
div.cartodb-infowindow {
  position: absolute;
  z-index: 12; }

div.cartodb-popup {
  position: relative;
  width: 226px;
  height: auto;
  padding: 7px 0 0 0;
  margin: 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/light.png") no-repeat -226px 0; }

div.cartodb-popup div.cartodb-popup-content-wrapper {
  width: 190px;
  max-width: 190px;
  padding: 12px 19px 12px 19px;
  overflow-x: hidden;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/light.png") repeat-y -452px 0; }

div.cartodb-popup div.cartodb-popup-content {
  display: block;
  width: 190px;
  max-width: 190px;
  min-height: 5px;
  height: auto;
  max-height: 185px;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  overflow-x: hidden !important;
  outline: none;
  text-align: left; }

/* Custom gradients for scroll content */
div.cartodb-popup .jspContainer:after,
div.cartodb-popup .jspContainer:before {
  content: '';
  position: absolute;
  left: 0;
  right: 12px;
  display: block;
  height: 10px;
  width: 190px;
  z-index: 5; }

div.cartodb-popup .jspContainer:after {
  bottom: 0px;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, white));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), white);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0), white);
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0), white);
  background: linear-gradient(top, rgba(255, 255, 255, 0), white);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); }

div.cartodb-popup .jspContainer:before {
  top: 0px;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, white), color-stop(100%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(top, white, rgba(255, 255, 255, 0));
  background: -moz-linear-gradient(top, white, rgba(255, 255, 255, 0));
  background: -o-linear-gradient(top, white, rgba(255, 255, 255, 0));
  background: linear-gradient(top, white, rgba(255, 255, 255, 0));
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); }

div.cartodb-popup div.cartodb-popup-tip-container {
  width: 226px;
  height: 20px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/light.png") no-repeat 0 0; }

div.cartodb-popup a.cartodb-popup-close-button {
  position: absolute;
  top: -9px;
  right: -9px;
  width: 26px;
  height: 26px;
  padding: 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/light.png") no-repeat 0 -23px;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=1);
  filter: alpha(opacity=100);
  text-transform: uppercase;
  z-index: 3; }

/* When there are no fields in header popup themes */
div.cartodb-popup.header.no_fields div.cartodb-popup-content {
  display: none; }

div.cartodb-popup.header.no_fields
div.cartodb-popup-content-wrapper
div.cartodb-edit-buttons {
  padding-top: 5px;
  margin-top: 0; }

div.cartodb-popup.header.no_fields div.cartodb-edit-buttons {
  border: none;
  padding-top: 0; }

/* Custom scroll in CartoDB content */
div.cartodb-popup .jspContainer {
  overflow: hidden;
  position: relative;
  outline: none; }

div.cartodb-popup .jspContainer * {
  outline: none; }

div.cartodb-popup .jspPane {
  position: absolute;
  padding: 4px 0 0 0 !important;
  z-index: 1; }

div.cartodb-popup .jspVerticalBar {
  position: absolute;
  top: 0;
  right: 0;
  width: 6px;
  height: 100%;
  background: none;
  z-index: 10; }

div.cartodb-popup .jspHorizontalBar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: none; }

div.cartodb-popup .jspVerticalBar *,
div.cartodb-popup .jspHorizontalBar * {
  margin: 0;
  padding: 0; }

div.cartodb-popup .jspCap {
  display: none; }

div.cartodb-popup .jspHorizontalBar .jspCap {
  float: left; }

div.cartodb-popup .jspTrack {
  position: relative;
  cursor: pointer;
  background: none; }

div.cartodb-popup .jspDrag {
  position: relative;
  top: 0;
  left: 0;
  cursor: pointer;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  background: #999999;
  background: rgba(0, 0, 0, 0.16); }

div.cartodb-popup .jspDrag:hover {
  background: #666666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer; }

div.cartodb-popup .jspHorizontalBar .jspTrack,
div.cartodb-popup .jspHorizontalBar .jspDrag {
  float: left;
  height: 100%; }

div.cartodb-popup .jspArrow {
  background: #50506d;
  text-indent: -20000px;
  display: block;
  cursor: pointer; }

div.cartodb-popup .jspArrow.jspDisabled {
  cursor: default;
  background: #80808d; }

div.cartodb-popup .jspVerticalBar .jspArrow {
  height: 16px; }

div.cartodb-popup .jspHorizontalBar .jspArrow {
  width: 16px;
  float: left;
  height: 100%; }

div.cartodb-popup .jspVerticalBar .jspArrow:focus {
  outline: none; }

div.cartodb-popup .jspCorner {
  background: #eeeef4;
  float: left;
  height: 100%; }

* html div.cartodb-popup .jspCorner {
  margin: 0 -3px 0 0; }

/* CartoDB light content styles */
div.cartodb-popup h2 {
  line-height: normal; }

div.cartodb-popup h1,
div.cartodb-popup h2,
div.cartodb-popup h3,
div.cartodb-popup h4,
div.cartodb-popup h5,
div.cartodb-popup h6 {
  display: block;
  width: 190px;
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-family: "Helvetica Neue", "Helvetica", Arial;
  color: #CCCCCC;
  text-transform: uppercase;
  word-wrap: break-word;
  line-height: 120%; }

div.cartodb-popup h1 {
  font-size: 24px; }

div.cartodb-popup h2 {
  font-size: 20px; }

div.cartodb-popup h3 {
  font-size: 15px; }

div.cartodb-popup h4 {
  font-size: 11px; }

div.cartodb-popup h5 {
  font-size: 10px; }

div.cartodb-popup h6 {
  font-size: 9px; }

div.cartodb-popup p {
  display: block;
  width: 190px;
  max-width: 190px;
  margin: 0;
  padding: 0 0 7px;
  font: normal 13px "Helvetica",Arial;
  color: #333333;
  word-wrap: break-word; }

div.cartodb-popup p.italic {
  font-style: italic; }

div.cartodb-popup p.loading {
  position: relative;
  display: block;
  width: 170px;
  max-width: 170px;
  margin: 0;
  padding: 0 0 0 30px;
  font: normal 13px "Helvetica",Arial;
  color: #888;
  font-style: italic;
  word-wrap: break-word;
  line-height: 21px; }

div.cartodb-popup p.error {
  position: relative;
  display: block;
  width: 170px;
  max-width: 170px;
  margin: 0;
  padding: 0;
  font: normal 13px "Helvetica",Arial;
  color: #FF7F7F;
  font-style: italic;
  word-wrap: break-word;
  line-height: 18px; }

div.cartodb-popup p.empty {
  color: #999999;
  font-style: italic; }

div.cartodb-popup div.spinner {
  position: absolute !important;
  display: inline;
  top: 0;
  left: 0;
  margin: 10px 0 0 10px; }

/* NEW CartoDB 2.0 popups */
div.cartodb-popup.v2 {
  width: 226px;
  padding: 0;
  margin: 0 0 14px 0;
  background: none;
  -moz-box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: white; }

div.cartodb-popup.v2:before {
  content: '';
  position: absolute;
  bottom: -14px;
  left: 0;
  width: 0;
  height: 0;
  margin-left: 28px;
  border-left: 0px solid transparent;
  border-right: 14px solid transparent;
  border-top: 14px solid white;
  z-index: 2; }

div.cartodb-popup.v2
div.cartodb-popup-content-wrapper {
  width: auto;
  max-width: none;
  padding: 12px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: none; }

div.cartodb-popup.v2
div.cartodb-popup-content {
  width: auto;
  max-width: none;
  display: block;
  background: none; }

div.cartodb-popup.v2 div.cartodb-popup-content p,
div.cartodb-popup.v2 div.cartodb-popup-content h1,
div.cartodb-popup.v2 div.cartodb-popup-content h2,
div.cartodb-popup.v2 div.cartodb-popup-content h3,
div.cartodb-popup.v2 div.cartodb-popup-content h4,
div.cartodb-popup.v2 div.cartodb-popup-content h5,
div.cartodb-popup.v2 div.cartodb-popup-content h6 {
  width: auto;
  max-width: 95%;
  display: block; }

div.cartodb-popup.v2 div.cartodb-popup-tip-container {
  position: absolute;
  bottom: -20px;
  left: -4px;
  width: 20px;
  height: 16px;
  margin-left: 28px;
  background: none;
  overflow: hidden;
  z-index: 0; }

div.cartodb-popup.v2 div.cartodb-popup-tip-container:before {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  left: 0;
  top: -10px;
  margin-left: 0;
  -ms-transform: skew(0, -45deg);
  -webkit-transform: skew(0, -45deg);
  transform: skew(0, -45deg);
  border-radius: 0 0 0 10px;
  background: rgba(0, 0, 0, 0.15);
  z-index: 0; }

div.cartodb-popup.v2.centered:before {
  content: '';
  position: absolute;
  width: 0px;
  height: 0px;
  left: -10px;
  bottom: -10px;
  margin-left: 50%;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid white;
  border-radius: 0;
  -ms-transform: skew(0, 0);
  -webkit-transform: skew(0, 0);
  transform: skew(0, 0);
  background: none;
  z-index: 1; }

div.cartodb-popup.v2.centered p {
  width: 160px;
  padding-bottom: 0; }

div.cartodb-popup.v2.centered div.cartodb-popup-tip-container {
  left: -12px;
  width: 24px;
  margin-left: 50%; }

div.cartodb-popup.v2.centered div.cartodb-popup-tip-container:before {
  content: '';
  position: absolute;
  width: 0px;
  height: 0px;
  left: 0;
  top: 0;
  margin-left: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid rgba(0, 0, 0, 0.15);
  -ms-transform: skew(0, 0);
  -webkit-transform: skew(0, 0);
  transform: skew(0, 0);
  background: none;
  z-index: 0; }

div.cartodb-popup.v2 a.cartodb-popup-close-button {
  right: -12px;
  top: -12px;
  width: 20px;
  height: 20px;
  background: white;
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15); }

div.cartodb-popup.v2 a.cartodb-popup-close-button:before,
div.cartodb-popup.v2 a.cartodb-popup-close-button:after {
  content: '';
  position: absolute;
  top: 9px;
  left: 6px;
  width: 8px;
  height: 2px;
  background: #397DBA;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px; }

div.cartodb-popup.v2 a.cartodb-popup-close-button:before {
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

div.cartodb-popup.v2 a.cartodb-popup-close-button:after {
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

div.cartodb-popup.v2 a.cartodb-popup-close-button:hover {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25); }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.v2 {
    border: 4px solid #CCC; }
  div.cartodb-popup.v2 div.cartodb-popup-tip-container {
    position: absolute;
    width: 0;
    height: 0;
    margin-left: 28px;
    z-index: 2;
    bottom: -18px;
    left: -4px;
    border-left: 0px solid transparent;
    border-right: 18px solid transparent;
    border-top: 18px solid white; }
  div.cartodb-popup.v2 a.cartodb-popup-close-button {
    right: -14px;
    top: -14px;
    width: 18px;
    padding: 0 0 0 2px;
    text-indent: 0;
    font: bold 11px Arial;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    line-height: 20px;
    border: 2px solid #CCC; }
  div.cartodb-popup.v2 a.cartodb-popup-close-button:before,
  div.cartodb-popup.v2 a.cartodb-popup-close-button:after {
    display: none; }
  div.cartodb-popup.v2 a.cartodb-popup-close-button:hover {
    border: 2px solid #999; } }

/**
 *  CartoDB blue header popup styles
 */
div.cartodb-popup.header.blue div.cartodb-popup-header {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat 0 -40px; }

div.cartodb-popup.header.blue.header .cartodb-popup-header a {
  color: white; }

div.cartodb-popup.header.blue div.cartodb-popup-header h4 {
  color: #1F4C7F; }

div.cartodb-popup.header.blue div.cartodb-popup-header span.separator {
  background: #225386; }

div.cartodb-popup.header.blue a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -226px -40px; }

div.cartodb-popup.header.blue a.cartodb-popup-close-button:hover {
  background-position: -226px -66px; }

/* NEW CartoDB 2.0 blue header popups */
div.cartodb-popup.v2.header.blue div.cartodb-popup-header {
  background: none;
  background: -ms-linear-gradient(top, #4f9cd7, #2b68a8);
  background: -o-linear-gradient(right, #4f9cd7, #2b68a8);
  background: -webkit-linear-gradient(top, #4f9cd7, #2b68a8);
  background: -moz-linear-gradient(right, #4f9cd7, #2b68a8);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#4F9CD7',endColorStr='#2B68A8',GradientType=0)"; }

div.cartodb-popup.v2.header.blue a.cartodb-popup-close-button {
  background: white; }

/**
 *  CartoDB header popup styles (default)
 */
div.cartodb-popup.header {
  padding: 0;
  background: none;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  border-bottom: none;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -o-border-radius: 0; }

div.cartodb-popup.header div.cartodb-popup-header {
  position: relative;
  width: 188px;
  height: auto;
  max-height: 62px;
  overflow: hidden;
  padding: 17px 19px 17px 19px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat 0 -40px; }

div.cartodb-popup.header div.cartodb-popup-header h1 {
  width: 100%;
  margin: 0;
  font: bold 21px "Helvetica Neue", "Helvetica", Arial;
  color: #FFFFFF;
  line-height: 23px;
  text-shadow: 0 1px rgba(0, 0, 0, 0.5);
  word-wrap: break-word; }

div.cartodb-popup.header div.cartodb-popup-header h1 a {
  color: white;
  font-size: 21px;
  word-wrap: break-word; }

div.cartodb-popup.header div.cartodb-popup-header h1 a:hover {
  text-decoration: underline; }

div.cartodb-popup.header div.cartodb-popup-header h1.loading {
  position: relative;
  display: block;
  width: auto;
  padding-right: 0;
  padding-left: 30px;
  font-size: 14px;
  font-weight: normal;
  line-height: 19px; }

div.cartodb-popup.header div.cartodb-popup-header h1.error {
  position: relative;
  display: block;
  width: auto;
  padding-right: 0;
  padding-left: 0;
  font-size: 14px;
  font-weight: normal;
  font-style: italic;
  line-height: 19px; }

div.cartodb-popup.header div.cartodb-popup-header h4 {
  color: #1F4C7F; }

div.cartodb-popup.header div.cartodb-popup-header span.separator {
  position: absolute;
  bottom: 0;
  left: 4px;
  right: 4px;
  height: 1px;
  background: #225386; }

div.cartodb-popup.header div.cartodb-popup-content {
  max-height: 150px; }

div.cartodb-popup.header a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -226px -40px; }

div.cartodb-popup.header a.cartodb-popup-close-button:hover {
  background-position: -226px -66px; }

/* NEW CartoDB 2.0 header popups */
div.cartodb-popup.header.v2.header {
  -moz-box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: white; }

div.cartodb-popup.v2.header div.cartodb-popup-header {
  position: relative;
  width: auto;
  height: auto;
  max-height: 62px;
  overflow: hidden;
  padding: 17px 12px;
  background: none;
  background: -ms-linear-gradient(top, #4f9cd7, #2b68a8);
  background: -o-linear-gradient(right, #4f9cd7, #2b68a8);
  background: -webkit-linear-gradient(top, #4f9cd7, #2b68a8);
  background: -moz-linear-gradient(right, #4f9cd7, #2b68a8);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#4F9CD7',endColorStr='#2B68A8',GradientType=0)";
  -webkit-border-top-left-radius: 2px;
  -webkit-border-top-right-radius: 2px;
  -moz-border-radius-topleft: 2px;
  -moz-border-radius-topright: 2px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px; }

div.cartodb-popup.v2.header div.cartodb-popup-header:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: rgba(0, 0, 0, 0.1); }

div.cartodb-popup.v2.header a.cartodb-popup-close-button {
  right: -12px;
  top: -12px;
  width: 20px;
  height: 20px;
  background: white;
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15); }

div.cartodb-popup.v2.header a.cartodb-popup-close-button:before,
div.cartodb-popup.v2.header a.cartodb-popup-close-button:after {
  content: '';
  position: absolute;
  top: 9px;
  left: 6px;
  width: 8px;
  height: 2px;
  background: #397DBA;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px; }

div.cartodb-popup.v2.header a.cartodb-popup-close-button:before {
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

div.cartodb-popup.v2.header a.cartodb-popup-close-button:after {
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

div.cartodb-popup.v2.header a.cartodb-popup-close-button:hover {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25); }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.header.v2 {
    border-bottom: 4px solid #CCC; }
  div.cartodb-popup.v2.header div.cartodb-popup-header {
    background: #3B7FBD;
    -ms-filter: progid:DXImageTransform.Microsoft.Gradient(startcolorstr='#4f9cd7',endcolorstr='#2b68a8',gradienttype=0); } }

/**
 *  CartoDB green header popup styles
 */
div.cartodb-popup.header.green div.cartodb-popup-header {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -252px -40px; }

div.cartodb-popup.header.green div.cartodb-popup-header h4 {
  color: #00916D; }

div.cartodb-popup.header.green div.cartodb-popup-header span.separator {
  background: #008E6A; }

div.cartodb-popup.header.green a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -478px -40px; }

div.cartodb-popup.header.green a.cartodb-popup-close-button:hover {
  background-position: -478px -66px; }

/* NEW CartoDB 2.0 green header popups */
div.cartodb-popup.v2.header.green div.cartodb-popup-header {
  background: none;
  background: -ms-linear-gradient(top, #00cc99, #00b185);
  background: -o-linear-gradient(right, #00cc99, #00b185);
  background: -webkit-linear-gradient(top, #00cc99, #00b185);
  background: -moz-linear-gradient(right, #00cc99, #00b185);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#00CC99',endColorStr='#00B185',GradientType=0)"; }

div.cartodb-popup.v2.header.green a.cartodb-popup-close-button {
  background: white; }

div.cartodb-popup.v2.header.green a.cartodb-popup-close-button:before,
div.cartodb-popup.v2.header.green a.cartodb-popup-close-button:after {
  background: #00CC99; }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.v2.header.green a.cartodb-popup-close-button {
    color: #00CC99; } }

/**
 *  CartoDB orange header popup styles
 */
div.cartodb-popup.header.orange div.cartodb-popup-header {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -756px -40px; }

div.cartodb-popup.header.orange div.cartodb-popup-header h4 {
  color: #CC2929; }

div.cartodb-popup.header.orange div.cartodb-popup-header span.separator {
  background: #CC2929; }

div.cartodb-popup.header.orange a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -982px -40px; }

div.cartodb-popup.header.orange a.cartodb-popup-close-button:hover {
  background-position: -982px -66px; }

/* NEW CartoDB 2.0 orange header popups */
div.cartodb-popup.v2.header.orange div.cartodb-popup-header {
  background: none;
  background: -ms-linear-gradient(top, #ff6825, #ff3333);
  background: -o-linear-gradient(right, #ff6825, #ff3333);
  background: -webkit-linear-gradient(top, #ff6825, #ff3333);
  background: -moz-linear-gradient(right, #ff6825, #ff3333);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#FF6825',endColorStr='#FF3333',GradientType=0)"; }

div.cartodb-popup.v2.header.orange a.cartodb-popup-close-button {
  background: white; }

div.cartodb-popup.v2.header.orange a.cartodb-popup-close-button:before,
div.cartodb-popup.v2.header.orange a.cartodb-popup-close-button:after {
  background: #CC2929; }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.v2.header.orange a.cartodb-popup-close-button {
    color: #CC2929; } }

/**
   *  CartoDB header with-image popup styles
   */
div.cartodb-popup.header.with-image div.cartodb-popup-header {
  position: relative;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -1008px 0;
  height: 138px;
  max-height: 104px; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .cover {
  display: block;
  position: absolute;
  overflow: hidden;
  width: 218px;
  height: 135px;
  top: 4px;
  left: 4px;
  border-radius: 4px 4px 0 0; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .cover .shadow {
  position: absolute;
  width: 218px;
  height: 55px;
  bottom: 0;
  left: 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/shadow.png") no-repeat;
  z-index: 100; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .cover #spinner {
  position: absolute;
  top: 67px;
  left: 109px; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .cover img {
  position: absolute;
  border-radius: 4px 4px 0 0;
  display: none; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .image_not_found {
  position: absolute;
  top: 15px;
  left: 15px;
  width: 200px;
  display: none; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .image_not_found a {
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: top;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  margin: 3px 0 0 -2px;
  color: #888888;
  font-size: 13px;
  font-family: "Helvetica", "Helvetica Neue", Arial, sans-serif;
  text-decoration: underline; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .image_not_found a:hover {
  color: #888888;
  text-decoration: underline; }

div.cartodb-popup.header.with-image div.cartodb-popup-header .cover .image_not_found i {
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: top;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  width: 31px;
  height: 22px;
  background: transparent url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/image_not_found.png"); }

div.cartodb-popup.header.with-image div.cartodb-popup-header h1 {
  position: absolute;
  bottom: 13px;
  left: 18px;
  width: 188px;
  z-index: 150; }

div.cartodb-popup.header.with-image div.cartodb-popup-header h4 {
  color: #CCC; }

div.cartodb-popup.header.with-image div.cartodb-popup-header span.separator {
  background: #CCC; }

div.cartodb-popup.header.with-image a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -226px -40px; }

div.cartodb-popup.header.with-image a.cartodb-popup-close-button:hover {
  background-position: -226px -66px; }

div.cartodb-popup.header.with-image .cartodb-popup-header h1 {
  display: none; }

div.cartodb-popup.header.with-image .cartodb-popup-header h1.order1 {
  display: block; }

div.cartodb-popup.header.with-image .cartodb-popup-content-wrapper .order1 {
  display: none; }

/* NEW CartoDB 2.0 image header popups */
div.cartodb-popup.v2.header.with-image div.cartodb-popup-header {
  background: #2C2C2C;
  background: -ms-linear-gradient(top, #535353, #2c2c2c);
  background: -o-linear-gradient(right, #535353, #2c2c2c);
  background: -webkit-linear-gradient(top, #535353, #2c2c2c);
  background: -moz-linear-gradient(right, #535353, #2c2c2c);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#535353',endColorStr='#2C2C2C',GradientType=0)"; }

div.cartodb-popup.v2.header.with-image div.cartodb-popup-header h1 {
  width: 85%; }

div.cartodb-popup.v2.header.with-image div.cartodb-popup-header span.separator {
  left: 0;
  right: 0;
  background: #CCC; }

div.cartodb-popup.v2.header.with-image a.cartodb-popup-close-button {
  background: white; }

div.cartodb-popup.v2.header.with-image div.cartodb-popup-header .cover {
  display: block;
  width: 100%;
  height: 138px;
  top: 0;
  left: 0;
  -moz-border-radius: 2px 2px 0 0;
  -webkit-border-radius: 2px 2px 0 0;
  border-radius: 2px 2px 0 0;
  overflow: hidden; }

div.cartodb-popup.v2.header.with-image div.cartodb-popup-header .cover .shadow {
  width: 100%;
  height: 57px;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.8)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));
  background: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 ); }

div.cartodb-popup.v2.header.with-image div.cartodb-popup-header .cover img {
  -moz-border-radius: 2px 2px 0 0;
  -webkit-border-radius: 2px 2px 0 0;
  border-radius: 2px 2px 0 0; }

/**
 *  CartoDB yellow header popup styles
 */
div.cartodb-popup.header.yellow div.cartodb-popup-header {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -504px -40px; }

div.cartodb-popup.header.yellow div.cartodb-popup-header h4 {
  color: #D8832A; }

div.cartodb-popup.header.yellow div.cartodb-popup-header span.separator {
  background: #CC7A29; }

div.cartodb-popup.header.yellow a.cartodb-popup-close-button {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/headers.png") no-repeat -730px -40px; }

div.cartodb-popup.header.yellow a.cartodb-popup-close-button:hover {
  background-position: -730px -66px; }

/* NEW CartoDB 2.0 yellow header popups */
div.cartodb-popup.v2.header.yellow div.cartodb-popup-header {
  background: none;
  background: -ms-linear-gradient(top, #ffbf0d, #ff9933);
  background: -o-linear-gradient(right, #ffbf0d, #ff9933);
  background: -webkit-linear-gradient(top, #ffbf0d, #ff9933);
  background: -moz-linear-gradient(right, #ffbf0d, #ff9933);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(startColorStr='#FFBF0D',endColorStr='#FF9933',GradientType=0)"; }

div.cartodb-popup.v2.header.yellow a.cartodb-popup-close-button {
  background: white; }

div.cartodb-popup.v2.header.yellow a.cartodb-popup-close-button:before,
div.cartodb-popup.v2.header.yellow a.cartodb-popup-close-button:after {
  background: #CC7A29; }

/* Hello IE */
@media \0screen\,screen\9 {
  div.cartodb-popup.v2.header.yellow a.cartodb-popup-close-button {
    color: #CC7A29; } }

/**
   *  CartoDB infowindow light styles
   */
div.cartodb-popup h4 {
  color: #CCCCCC; }

div.cartodb-popup p {
  color: #333333; }

div.cartodb-popup p.loading {
  color: #888; }

div.cartodb-popup p.error {
  color: #FF7F7F; }

div.cartodb-popup p.empty {
  color: #999999; }

/**
 *  CartoDB map style components
 */
@-webkit-keyframes loading {
  to {
    opacity: 1; } }

@-moz-keyframes loading {
  to {
    opacity: 1; } }

@-ms-keyframes loading {
  to {
    opacity: 1; } }

@keyframes loading {
  to {
    opacity: 1; } }

@-webkit-keyframes pulse {
  to {
    opacity: 1;
    -webkit-transform: scale(1); } }

@-moz-keyframes pulse {
  to {
    opacity: 1;
    -moz-transform: scale(1); } }

@-ms-keyframes pulse {
  to {
    opacity: 1;
    -ms-transform: scale(1); } }

@keyframes pulse {
  to {
    opacity: 1;
    transform: scale(1); } }

div.cartodb-share {
  display: none;
  position: relative;
  float: right;
  margin: 20px 20px 0 0;
  z-index: 105; }

div.cartodb-share a {
  width: 14px;
  height: 14px;
  display: block;
  color: #397DB8;
  font-size: 10px;
  font-weight: bold;
  text-transform: uppercase;
  text-shadow: none;
  padding: 7px 7px;
  box-sizing: content-box;
  background: #ffffff url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/share.png") no-repeat 7px 8px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  border-color: #C3C3C3;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999; }

div.cartodb-share a:hover {
  background: #ffffff url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/share.png") no-repeat -28px 8px; }

div.cartodb-share a:active, div.cartodb-share a:hover:active {
  background: #ffffff url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/share.png") no-repeat 7px 8px; }

.cartodb-fullscreen {
  display: none;
  position: relative;
  margin: 11px 0 0 20px;
  float: left;
  clear: both;
  z-index: 105; }

.cartodb-fullscreen a {
  display: block;
  width: 14px;
  height: 14px;
  padding: 7px;
  box-sizing: content-box;
  background: #ffffff url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/fullscreen.png") no-repeat 7px 3px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999; }

.cartodb-fullscreen a:active {
  background-position: 7px 3px !important; }

.cartodb-fullscreen a:hover {
  background-position: -19px 5px; }

/* CartoDB Share Dialog styles */
.cartodb-share-dialog {
  display: none; }

.cartodb-share-dialog .mamufas {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  cursor: default;
  z-index: 1000001; }

.cartodb-share-dialog .modal {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -216px;
  margin-top: -107px;
  webkit-box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  -moz-box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  font-weight: bold;
  font-family: "Segoe UI Bold", "Helvetica Bold", "Helvetica", Arial;
  color: #333;
  line-height: normal; }

.cartodb-share-dialog.small .modal {
  margin-left: -108px;
  margin-top: -165px; }

.cartodb-share-dialog.small .block .buttons {
  margin: 0 0 10px 0; }

.cartodb-share-dialog.small .block .buttons ul {
  border: none;
  padding: 0; }

.cartodb-share-dialog.small .block .content .embed_code {
  padding: 0; }

.cartodb-share-dialog .modal a.close {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 30px;
  height: 15px;
  padding: 7px 0 8px;
  background: white;
  font: normal 13px "Helvetica",Arial;
  text-decoration: none;
  webkit-box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  -moz-box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  box-shadow: rgba(0, 0, 0, 0.15) 0 0 0 4px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  border-radius: 50px;
  line-height: 14px;
  text-align: center;
  z-index: 105; }

.cartodb-share-dialog .block {
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  webkit-box-shadow: rgba(0, 0, 0, 0.15) 0 0 4px 3px;
  -moz-box-shadow: rgba(0, 0, 0, 0.15) 0 0 4px 3px;
  box-shadow: rgba(0, 0, 0, 0.15) 0 0 4px 3px; }

.cartodb-share-dialog .block .buttons ul {
  margin: 0;
  padding: 0 24px 0 0;
  border-right: 1px solid #E5E5E5; }

.cartodb-share-dialog .block .buttons li {
  list-style: none;
  margin: 0 0 4px 0;
  padding: 0; }

.cartodb-share-dialog .block .buttons li a {
  display: block;
  padding: 10px 13px 11px 30px;
  width: 121px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background: #3D8FCA;
  text-decoration: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px; }

/* iPhone landscape */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (orientation: landscape) {
  /*.cartodb-map-wrapper div.cartodb-overlay.overlay-text.desktop { display:none; }*/
  /*.cartodb-map-wrapper div.cartodb-overlay.overlay-text.mobile  { display:block; }*/ }

@media only screen and (min-width: 360px) and (max-width: 490px) {
  /*div.cartodb-overlay.overlay-text.desktop { display:none; }*/
  /*div.cartodb-overlay.overlay-text.mobile  { display:block; }*/ }

/* iPhone portrait */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  /*.cartodb-map-wrapper div.cartodb-overlay.overlay-text.desktop { display:none; }*/
  /*.cartodb-map-wrapper div.cartodb-overlay.overlay-text.mobile  { display:block; }*/
  div.cartodb-header h1 {
    width: 78%; }
  div.cartodb-header > p {
    width: 80%; } }

/* iPad */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  div.cartodb-header h1 {
    width: 78%; }
  div.cartodb-header > p {
    width: 80%; } }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  div.cartodb-header h1 {
    width: 78%; }
  div.cartodb-header > p {
    width: 80%; }
  div.cartodb-zoom a {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other-2x.png") no-repeat 0 0 !important;
    background-size: 113px 34px !important; }
  div.cartodb-zoom a.zoom_in {
    background-position: -68px 9px !important; }
  div.cartodb-zoom a.zoom_out {
    background-position: -94px 10px !important; }
  div.cartodb-header div.social a.facebook {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other-2x.png") no-repeat 0 0 !important;
    background-size: 113px 34px !important; }
  div.cartodb-header div.social a.twitter {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other-2x.png") no-repeat -26px 0 !important;
    background-size: 113px 34px !important; }
  div.cartodb-searchbox span.loader {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/loader-2x.gif") no-repeat center center white !important;
    background-size: 16px 16px !important; }
  div.cartodb-mobile .aside div.cartodb-searchbox span.loader {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark_loader-2x.gif") no-repeat center center #292929 !important;
    background-size: 16px 16px !important; }
  div.cartodb-tiles-loader div.loader {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/loader-2x.gif") no-repeat center center white !important;
    background-size: 16px 16px !important; }
  div.cartodb-searchbox input.submit {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other-2x.png") no-repeat -56px 0 !important;
    background-size: 113px 34px !important; }
  .cartodb-mobile .aside .cartodb-searchbox input.submit {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/mobile_zoom.png") no-repeat 0 0 !important; }
  .cartodb-mobile div.cartodb-slides-controller div.slides-controller-content a.prev {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slide_left-2x.png") no-repeat;
    background-size: 16px 15px; }
  .cartodb-mobile div.cartodb-slides-controller div.slides-controller-content a.next {
    background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slide_right-2x.png") no-repeat;
    background-size: 16px 15px; } }

.cartodb-share-dialog .block .buttons li a.twitter {
  background: #3D8FCA url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/twitter.png") no-repeat 10px 50%; }

.cartodb-share-dialog .block .buttons li a.twitter:hover {
  background-color: #3272A0; }

.cartodb-share-dialog .block .buttons li a.facebook {
  background: #3B5998 url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/facebook.png") no-repeat 10px 50%; }

.cartodb-share-dialog .block .buttons li a.facebook:hover {
  background-color: #283C65; }

.cartodb-share-dialog .block .buttons li a.link {
  background: #f37f7b url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/link.png") no-repeat 10px 50%; }

.cartodb-share-dialog .block .buttons li a.link:hover {
  background-color: #DC6161; }

.cartodb-share-dialog .block h3, .cartodb-share-dialog .block p, .cartodb-share-dialog .block a, .cartodb-share-dialog .block label {
  letter-spacing: 0; }

.cartodb-share-dialog .block div.head {
  position: relative;
  padding: 5px 26px;
  border-bottom: 1px solid #E5E5E5; }

.cartodb-share-dialog .block h3 {
  margin: 1em 0;
  font-size: 15px;
  font-weight: bold; }

.cartodb-share-dialog .block h4 {
  font-size: 13px;
  font-weight: bold;
  color: #666666;
  padding: 0;
  margin: 0;
  margin: 0 0 9px 0; }

.cartodb-share-dialog .block .content .buttons,
.cartodb-share-dialog .block .content .embed_code {
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top; }

.cartodb-share-dialog .block .content .embed_code {
  padding-left: 24px; }

.cartodb-share-dialog .block .content .embed_code textarea {
  resize: none;
  padding: 5px;
  width: 153px;
  height: 104px;
  border: 1px solid #C3C3C3;
  background: #F5F5F5;
  font-size: 11px;
  color: #666666;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px; }

.cartodb-share-dialog .block .content {
  padding: 20px 26px 30px 26px; }

/* MOBILE */
.cartodb-mobile {
  width: 100%;
  height: 100%;
  z-index: 100000000; }

.cartodb-mobile .cartodb-header {
  background: none;
  z-index: 100000; }

.cartodb-mobile .cartodb-header .content {
  padding: 0; }

.cartodb-mobile .cartodb-header .hgroup {
  position: relative;
  height: 40px;
  padding: 10px; }

.cartodb-mobile.with-fullscreen .cartodb-header .hgroup {
  position: relative;
  margin-left: 60px;
  margin-right: 70px; }

.cartodb-mobile.with-header .cartodb-header .content .hgroup .title,
.cartodb-mobile.with-header .cartodb-header .content .hgroup .description {
  display: block; }

.cartodb-mobile .cartodb-header .content .title,
.cartodb-mobile .cartodb-header .content .description {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.cartodb-mobile .cartodb-header .content .button {
  height: 58px;
  width: 58px;
  background-color: rgba(0, 0, 0, 0.5);
  line-height: normal;
  z-index: 99999; }

.cartodb-mobile.with-slides .cartodb-header,
.cartodb-mobile.with-header .cartodb-header {
  background-color: rgba(0, 0, 0, 0.5); }

.cartodb-mobile.with-fullscreen .cartodb-header .content .fullscreen {
  display: block; }

.cartodb-mobile.with-header .cartodb-header .content .fullscreen {
  background: none; }

.cartodb-mobile .cartodb-header .content .fullscreen {
  display: none;
  position: relative;
  top: 0px;
  left: 0px;
  float: left;
  width: 60px;
  height: 60px;
  margin: auto;
  padding: 0;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  z-index: 10;
  -webkit-border-radius: 0 0 5px 0;
  -moz-border-radius: 0 0 5px 0;
  -ms-border-radius: 0 0 5px 0;
  -o-border-radius: 0 0 5px 0;
  border-radius: 0 0 5px 0;
  -webkit-transform-style: "ease-in";
  -moz-transform-style: "ease-in";
  -ms-transform-style: "ease-in";
  -o-transform-style: "ease-in";
  transform-style: "ease-in";
  -webkit-transition-property: background;
  -moz-transition-property: background;
  -o-transition-property: background;
  transition-property: background;
  -webkit-transition-duration: 150ms;
  -moz-transition-duration: 150ms;
  -o-transition-duration: 150ms;
  transition-duration: 150ms; }

.cartodb-mobile.with-header .cartodb-header .content .fullscreen {
  border-right: 1px solid rgba(255, 255, 255, 0.35);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0; }

.cartodb-mobile .cartodb-header .content .fullscreen:hover,
.cartodb-mobile.with-header .cartodb-header .content .fullscreen:hover {
  background: rgba(0, 0, 0, 0.3); }

.cartodb-mobile .cartodb-header .content .fullscreen:before {
  content: '';
  width: 60px;
  height: 60px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/fullscreen_mobile.png") no-repeat 50% 50%;
  background-size: 28px 28px;
  position: absolute; }

.cartodb-mobile.with-search .cartodb-header .content .toggle,
.cartodb-mobile.with-layers .cartodb-header .content .toggle {
  display: block; }

.cartodb-mobile .cartodb-header .content .toggle {
  display: none;
  position: relative;
  top: 0;
  right: 0;
  float: right;
  width: 70px;
  height: 60px;
  margin: auto;
  padding: 0;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  z-index: 10;
  -webkit-border-radius: 0 0 0 5px;
  -moz-border-radius: 0 0 0 5px;
  -ms-border-radius: 0 0 0 5px;
  -o-border-radius: 0 0 0 5px;
  border-radius: 0 0 0 5px;
  -webkit-transform-style: "ease-in";
  -moz-transform-style: "ease-in";
  -ms-transform-style: "ease-in";
  -o-transform-style: "ease-in";
  transform-style: "ease-in";
  -webkit-transition-property: background;
  -moz-transition-property: background;
  -o-transition-property: background;
  transition-property: background;
  -webkit-transition-duration: 150ms;
  -moz-transition-duration: 150ms;
  -o-transition-duration: 150ms;
  transition-duration: 150ms; }

.cartodb-mobile .cartodb-header .content .toggle:hover,
.cartodb-mobile.with-header .cartodb-header .content .toggle:hover {
  background: rgba(0, 0, 0, 0.3); }

.cartodb-mobile.with-header .cartodb-header .content .toggle {
  background: none;
  border-left: 1px solid rgba(255, 255, 255, 0.35);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0; }

.cartodb-mobile .cartodb-header .content .toggle:before {
  content: '';
  width: 70px;
  height: 60px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/toggle_aside.png") no-repeat 50% 50%;
  background-size: 30px 30px;
  position: absolute; }

.cartodb-mobile.with-zoom .cartodb-zoom {
  float: left;
  position: relative;
  z-index: 100000; }

.cartodb-mobile .aside {
  position: absolute;
  width: 250px;
  height: 100%;
  top: 0;
  right: -250px;
  background: #2D2D2D;
  cursor: default;
  z-index: 1000010; }

.cartodb-mobile .aside .cartodb-searchbox {
  position: relative;
  display: none;
  float: none;
  margin: 0;
  width: 100%;
  height: auto;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: transparent;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #505050;
  z-index: 105; }

.cartodb-mobile .aside .cartodb-searchbox input.text {
  border: none;
  position: initial;
  top: initial;
  left: initial;
  height: 39px;
  padding: 10px 18px;
  width: 185px;
  font-size: 13px;
  color: #fff; }

.cartodb-mobile .aside .cartodb-searchbox input.text::-webkit-input-placeholder {
  font-style: italic; }

.cartodb-mobile .aside .cartodb-searchbox input.text:-moz-placeholder {
  /* Firefox 18- */
  font-style: italic; }

.cartodb-mobile .aside .cartodb-searchbox input.text::-moz-placeholder {
  /* Firefox 19+ */
  font-style: italic; }

.cartodb-mobile .aside .cartodb-searchbox input.text:-ms-input-placeholder {
  font-style: italic; }

.cartodb-mobile .aside .cartodb-searchbox span.loader {
  left: initial;
  top: 18px;
  right: 14px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark_loader.gif") no-repeat center center; }

.cartodb-mobile .aside .cartodb-searchbox input.submit {
  right: 18px;
  top: 23px;
  background: #f1f1f1;
  width: 14px;
  height: 14px;
  left: initial;
  outline: none;
  cursor: pointer;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/mobile_zoom.png") no-repeat 0 0; }

.cartodb-mobile .aside .layer-container {
  position: relative;
  height: 100%; }

.cartodb-mobile .aside .scrollpane {
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: none;
  /*padding-bottom: 25px;*/ }

.cartodb-mobile .aside .scrollpane .jspContainer {
  overflow: hidden;
  position: relative; }

.cartodb-mobile .aside .scrollpane .jspPane {
  position: absolute; }

.cartodb-mobile .aside .scrollpane .jspVerticalBar {
  position: absolute;
  top: 0;
  right: 7px;
  width: 5px;
  height: 100%;
  background: none;
  z-index: 20; }

.cartodb-mobile .aside .scrollpane .jspVerticalBar * {
  margin: 0;
  padding: 0; }

.cartodb-mobile .aside .scrollpane .jspCap {
  display: none; }

.cartodb-mobile .aside .scrollpane .jspTrack {
  background: none;
  position: relative; }

.cartodb-mobile .aside .scrollpane .jspDrag {
  background: rgba(187, 187, 187, 0.5);
  border-radius: 5px;
  position: relative;
  top: 0;
  left: 0;
  cursor: pointer; }

.cartodb-mobile .aside .scrollpane .jspArrow {
  background: none;
  text-indent: -20000px;
  display: block;
  cursor: pointer; }

.cartodb-mobile .aside .scrollpane .jspVerticalBar .jspArrow {
  height: 10px; }

.cartodb-mobile .aside .scrollpane .jspVerticalBar .jspArrow:focus {
  outline: none; }

.cartodb-mobile .aside .scrollpane .jspCorner {
  background: #eeeef4;
  float: left;
  height: 100%; }

.cartodb-mobile .aside .layer-container > h3 {
  padding: 23px 20px;
  color: #999999;
  font: bold 12px "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  background: #292929;
  border-bottom: 1px solid #585858; }

.cartodb-mobile .aside .layer-container .layers {
  margin: 0;
  padding: 0 10px; }

.cartodb-mobile .aside .layer-container .layers > li {
  padding: 5px 10px;
  color: #fff;
  list-style: none;
  border-bottom: 1px solid #585858; }

.cartodb-mobile .aside .layer-container .layers > li:last-child h3,
.cartodb-mobile .aside .layer-container .layers > li:last-child {
  border: none; }

.cartodb-mobile .aside .layer-container .layers > li a.toggle {
  background: none;
  width: 21px;
  height: 10px;
  background: #191919;
  position: relative;
  top: 2px;
  float: right;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px; }

.cartodb-mobile .aside .layer-container .layers > li a.toggle.hide {
  display: none; }

.cartodb-mobile .aside .layer-container .layers > li.hidden a.toggle:before {
  left: 0; }

.cartodb-mobile .aside .layer-container .layers > li a.toggle:before {
  position: absolute;
  content: '';
  top: 1px;
  right: 0;
  width: 7px;
  height: 7px;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  -ms-border-radius: 100px;
  -o-border-radius: 100px;
  border-radius: 100px;
  background: #fff; }

.cartodb-mobile .aside .layer-container .layers > li h3 {
  font: bold 12px "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  padding: 12px 0 13px 0; }

.cartodb-mobile .aside .layer-container .layers > li.has-toggle h3 {
  cursor: pointer; }

.cartodb-mobile .aside .layer-container .layers > li.has-legend.hidden h3,
.cartodb-mobile .aside .layer-container .layers > li.hidden h3 {
  color: #666666;
  border: none;
  padding: 12px 0 13px 0; }

.cartodb-mobile .aside .layer-container .layers > li.hidden.has-legend div.cartodb-legend {
  display: none !important; }

.cartodb-mobile .aside .layer-container .layers > li.hidden.has-legend h3 {
  margin-bottom: 0; }

.cartodb-mobile .aside .layer-container .layers > li.has-legend h3 {
  border-bottom: 1px solid #585858; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend {
  position: relative;
  border: none;
  webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
  padding: 0;
  margin: 10px 0 18px 0;
  padding: 2px 0 0 0;
  bottom: auto;
  right: auto;
  cursor: text; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend.bubble ul li.graph {
  border: none; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend.bubble ul li.graph .bubbles {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/dark_bubbles.png") no-repeat 0 0; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend .graph {
  border: 1px solid #1A1108; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend ul li {
  height: auto;
  padding: 0;
  font-size: 12px;
  color: #fff;
  font-weight: normal;
  font-family: "Helvetica", Arial, sans-serif;
  text-transform: none;
  line-height: normal; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend.intensity ul li.graph {
  height: 22px; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend ul li .bullet {
  margin-top: 2px; }

.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend ul li.max,
.cartodb-mobile .aside .layer-container .layers > li div.cartodb-legend ul li.min {
  font-size: 10px; }

.cartodb-mobile div.cartodb-timeslider .slider-wrapper {
  position: absolute;
  top: 17px; }

.cartodb-mobile div.cartodb-timeslider .slider {
  width: 100%; }

.cartodb-mobile div.cartodb-timeslider {
  height: 40px;
  width: auto;
  margin-bottom: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  border: 1px solid #E5E5E5;
  border-left: none;
  border-right: none;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  z-index: 1000001; }

.cartodb-mobile div.cartodb-timeslider .slider-wrapper {
  display: block;
  width: 100%;
  height: 4px;
  padding: 0; }

.cartodb-mobile div.cartodb-timeslider {
  width: 100% !important; }

.cartodb-mobile div.cartodb-timeslider ul {
  width: 100%;
  position: relative;
  clear: both;
  overflow: hidden; }

.cartodb-mobile div.cartodb-timeslider ul li {
  display: block;
  background: #fff;
  float: left; }

.cartodb-mobile div.cartodb-timeslider ul li.controls {
  width: 50px; }

.cartodb-mobile div.cartodb-timeslider ul li.time {
  width: 120px; }

.cartodb-mobile div.cartodb-timeslider ul li.last {
  position: absolute;
  left: 180px;
  right: 10px; }

.cartodb-mobile div.cartodb-timeslider ul li.controls a.button {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0; }

.cartodb-mobile .cartodb-attribution {
  display: none;
  list-style: none;
  background: #fff;
  position: absolute;
  padding: 9px 12px;
  margin: 0;
  right: 20px;
  bottom: 20px;
  color: #999999;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  z-index: 10000001;
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif; }

.cartodb-mobile .cartodb-attribution a {
  color: #0078A8; }

.cartodb-mobile .cartodb-attribution li {
  padding: 0;
  margin: 3px;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
  color: #999999; }

.cartodb-mobile .cartodb-attribution li a {
  text-transform: capitalize;
  color: #0078A8; }

.cartodb-mobile .backdrop {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
  filter: alpha(opacity=20);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
  opacity: 0.2;
  z-index: 10000000; }

.cartodb-mobile.with-torque .cartodb-attribution-button {
  bottom: 59px; }

.cartodb-mobile .cartodb-attribution-button {
  display: none;
  width: 20px;
  height: 20px;
  background: #fff;
  position: absolute;
  right: 20px;
  bottom: 20px;
  color: #999999;
  text-align: center;
  text-decoration: none;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  -ms-border-radius: 100px;
  -o-border-radius: 100px;
  border-radius: 100px;
  background: #fff url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/bg-attribution-button.png") no-repeat 49% 50%;
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
  z-index: 10; }

.cartodb-mobile .cartodb-attribution-button:before {
  position: absolute;
  content: '';
  top: -3px;
  left: -3px;
  width: 20px;
  height: 20px;
  border: 3px solid rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  -ms-border-radius: 100px;
  -o-border-radius: 100px;
  border-radius: 100px;
  -webkit-transform-style: "ease-in";
  -moz-transform-style: "ease-in";
  -ms-transform-style: "ease-in";
  -o-transform-style: "ease-in";
  transform-style: "ease-in";
  -webkit-transition-property: border;
  -moz-transition-property: border;
  -o-transition-property: border;
  transition-property: border;
  -webkit-transition-duration: 150ms;
  -moz-transition-duration: 150ms;
  -o-transition-duration: 150ms;
  transition-duration: 150ms; }

.cartodb-mobile .cartodb-attribution-button:hover:before {
  border: 3px solid rgba(0, 0, 0, 0.7); }

.cartodb-mobile .cartodb-slides-controller {
  position: absolute;
  bottom: 0;
  top: auto;
  padding: 0;
  line-height: 0;
  z-index: 9; }

.cartodb-mobile .cartodb-slides-controller .slides-controller-content {
  padding: 20px 0; }

.cartodb-mobile .cartodb-slides-controller .slides-controller-content .prev {
  margin: 0 20px 0 0; }

.cartodb-mobile .cartodb-slides-controller .slides-controller-content .next {
  margin: 0 0 0 20px; }

.cartodb-mobile .cartodb-slides-controller .slides-controller-content .prev:after,
.cartodb-mobile .cartodb-slides-controller .slides-controller-content .next:before,
.cartodb-mobile .cartodb-slides-controller .slides-controller-content ul {
  display: none; }

/* LEGENDS */
div.cartodb-legend-stack {
  position: absolute;
  bottom: 35px;
  right: 20px;
  webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  background: white;
  z-index: 105;
  cursor: text; }

div.cartodb-legend-stack div.cartodb-legend {
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  bottom: auto;
  background: none;
  border: none;
  margin: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0px;
  border-bottom: 1px solid #999;
  webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  cursor: text; }

div.cartodb-legend-stack div.cartodb-legend:last-child {
  border-bottom: none; }

div.cartodb-legend {
  position: absolute;
  bottom: 35px;
  right: 20px;
  padding: 13px 15px 14px 15px;
  font: normal 13px "Helvetica",Arial;
  color: #858585;
  text-align: left;
  webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  background: white;
  z-index: 105; }

div.cartodb-legend .legend-title {
  margin: 0 0 10px 0;
  text-align: left;
  color: #666;
  font-weight: bold;
  font-size: 11px;
  text-transform: uppercase; }

div.cartodb-legend ul {
  padding: 0;
  margin: 0;
  list-style: none; }

div.cartodb-legend ul li {
  padding: 0;
  margin: 0;
  font-size: 10px;
  color: #666666;
  font-weight: bold;
  font-family: "Helvetica", Arial;
  text-transform: uppercase;
  line-height: normal; }

/* None legend */
div.cartodb-legend-stack div.cartodb-legend.none,
div.cartodb-legend.none {
  display: none; }

div.map div.cartodb-legend-stack div.cartodb-legend.wrapper .cartodb-legend {
  padding: 0;
  display: block; }

div.cartodb-legend.wrapper .cartodb-legend {
  display: block;
  padding: 0; }

/* Custom legend */
div.cartodb-legend.custom ul li,
div.cartodb-legend.category ul li,
div.cartodb-legend.color ul li {
  position: relative;
  margin: 0 0 7px 0;
  font-size: 10px;
  color: #666666;
  font-weight: bold;
  font-family: "Helvetica", Arial;
  text-transform: uppercase;
  text-align: left;
  height: 10px;
  line-height: 10px;
  vertical-align: middle; }

div.cartodb-legend.custom ul li.bkg,
div.cartodb-legend.category ul li.bkg,
div.cartodb-legend.color ul li.bkg {
  height: 20px;
  line-height: 24px;
  margin: 0 0 15px 0; }

div.cartodb-legend.custom ul li.bkg .bullet,
div.cartodb-legend.category ul li.bkg .bullet,
div.cartodb-legend.color ul li.bkg .bullet {
  height: 20px;
  width: 20px;
  border: 1px solid rgba(0, 0, 0, 0.3);
  border: none;
  background-size: 26px 26px !important;
  background-position: center center !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0; }

div.cartodb-legend.custom ul li.bkg:last-child,
div.cartodb-legend.color ul li.bkg:last-child,
div.cartodb-legend.category ul li.bkg:last-child {
  margin: 0 0 5px 0; }

div.cartodb-legend.custom ul li:last-child,
div.cartodb-legend.color ul li:last-child,
div.cartodb-legend.category ul li:last-child {
  margin: 0; }

div.cartodb-legend.custom ul li .bullet,
div.cartodb-legend.category ul li .bullet,
div.cartodb-legend.color ul li .bullet {
  float: left;
  margin: 0 5px 0 0;
  width: 3px;
  height: 3px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  padding: 2px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  z-index: 1000; }

/* Bubble legend */
div.cartodb-legend.bubble {
  text-align: center; }

div.cartodb-legend.bubble ul {
  clear: both;
  overflow: hidden;
  display: -moz-inline-stack;
  display: inline-block; }

div.cartodb-legend.bubble ul li {
  position: relative;
  float: left;
  top: 15px; }

div.cartodb-legend.bubble ul li.graph {
  top: 0;
  width: 120px;
  height: 40px;
  margin: 0 10px;
  background: #f1f1f1; }

div.cartodb-legend.bubble ul li.graph .bubbles {
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/bubbles.png") no-repeat 0 0;
  width: 120px;
  height: 40px; }

/* Choropleth legend */
div.cartodb-legend.choropleth {
  padding: 13px 15px 15px 15px; }

div.cartodb-legend.choropleth ul {
  min-width: 210px; }

div.cartodb-legend.choropleth li.min {
  float: left;
  margin: 0 0 5px 0; }

div.cartodb-legend.choropleth li.max {
  float: right;
  margin: 0 0 5px 0; }

div.cartodb-legend.choropleth li.graph div {
  width: 10px;
  height: 22px; }

div.cartodb-legend.choropleth li.graph .quartile {
  display: table-cell; }

div.cartodb-legend.choropleth li.graph.count_7 .quartile {
  width: 30px; }

div.cartodb-legend.choropleth li.graph.count_5 .quartile {
  width: 42px; }

div.cartodb-legend.choropleth li.graph.count_3 .quartile {
  width: 70px; }

div.cartodb-legend.choropleth li.graph .colors {
  display: table-row; }

div.cartodb-legend.choropleth li.graph {
  clear: both;
  overflow: hidden;
  display: table;
  width: 100%;
  height: 22px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  /*box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);*/
  border: 1px solid #b3b3b3; }

/* Density legend */
div.cartodb-legend.density {
  padding: 13px 15px 15px 15px; }

div.cartodb-legend.density ul {
  min-width: 210px; }

div.cartodb-legend.density li.min {
  float: left;
  margin: 0 0 5px 0; }

div.cartodb-legend.density li.max {
  float: right;
  margin: 0 0 5px 0; }

div.cartodb-legend.density li.graph div {
  width: 10px;
  height: 22px; }

div.cartodb-legend.density li.graph .quartile {
  display: table-cell; }

div.cartodb-legend.density li.graph.count_7 .quartile {
  width: 30px; }

div.cartodb-legend.density li.graph.count_5 .quartile {
  width: 42px; }

div.cartodb-legend.density li.graph.count_3 .quartile {
  width: 70px; }

div.cartodb-legend.density li.graph .colors {
  display: table-row; }

div.cartodb-legend.density li.graph {
  clear: both;
  overflow: hidden;
  display: table;
  width: 100%;
  height: 22px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  /*box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);*/
  border: 1px solid #b3b3b3; }

/* Intensity legend */
div.cartodb-legend.intensity {
  padding: 13px 15px 15px 15px; }

div.cartodb-legend.intensity ul {
  min-width: 210px; }

div.cartodb-legend.intensity li.min {
  float: left;
  margin: 0 0 5px 0; }

div.cartodb-legend.intensity li.max {
  float: right;
  margin: 0 0 5px 0; }

div.cartodb-legend.intensity li.graph {
  clear: both;
  width: 100%;
  height: 22px;
  background: #f1f1f1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  /*border: 1px solid #b3b3b3;*/
  -webkit-box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);
  -o-box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.2); }

/* CartoDB Zoom styles */
div.cartodb-zoom {
  position: relative;
  float: left;
  display: block;
  margin: 20px 0 0 20px;
  width: 28px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  z-index: 105; }

div.cartodb-zoom a {
  position: relative;
  display: block;
  width: 28px;
  height: 28px;
  padding: 0;
  font: bold 20px "Arial";
  color: #999999;
  text-align: center;
  text-decoration: none;
  text-indent: -9999px;
  line-height: 0;
  font-size: 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other.png") no-repeat 0 0; }

div.cartodb-zoom a.zoom_in {
  border-bottom: 1px solid #E6E6E6;
  background-position: -68px 10px;
  -webkit-border-top-left-radius: 4px;
  -webkit-border-top-right-radius: 4px;
  -moz-border-radius-topleft: 4px;
  -moz-border-radius-topright: 4px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px; }

div.cartodb-zoom a.zoom_in:hover {
  background-position: -68px -14px;
  cursor: pointer; }

div.cartodb-zoom a.zoom_out {
  background-position: -94px 10px;
  -webkit-border-bottom-left-radius: 4px;
  -webkit-border-bottom-right-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -moz-border-radius-bottomright: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

div.cartodb-zoom a.zoom_out:hover {
  background-position: -94px -14px;
  cursor: pointer; }

div.cartodb-zoom a.disabled {
  filter: alpha(opacity=20);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
  opacity: 0.2; }

div.cartodb-zoom a.disabled:hover {
  cursor: default;
  color: #999999; }

/* CartoDB zoom info control */
div.cartodb-zoom-info {
  position: absolute;
  display: block;
  top: 100px;
  left: 20px;
  margin: 20px 0 0 0;
  width: 28px;
  height: 28px;
  font: normal 13px "Helvetica",Arial;
  color: #858585;
  text-align: center;
  line-height: 28px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  background: white;
  z-index: 105; }

/* Tiles loader control */
div.cartodb-tiles-loader {
  float: left;
  display: block;
  clear: both; }

div.cartodb-tiles-loader div.loader {
  position: relative;
  display: block;
  margin: 15px 0 0 20px;
  width: 28px;
  height: 28px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/loader.gif") no-repeat center center white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  z-index: 105; }

/* CartoDB layer selector box */
div.cartodb-layer-selector-box {
  display: none;
  position: relative;
  float: right;
  margin: 20px 20px 0 0;
  width: 142px;
  height: 29px;
  color: #CCCCCC;
  font-size: 13px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  z-index: 100000; }

div.cartodb-layer-selector-box a.layers {
  float: left;
  width: 126px;
  padding: 6px 8px;
  line-height: 20px;
  color: #CCC;
  text-decoration: none;
  font-family: "robotoregular", Helvetica, Arial, Sans-serif; }

div.cartodb-layer-selector-box a.layers:hover {
  color: #bbb; }

div.cartodb-layer-selector-box a.layers:hover .count {
  background: #ccc; }

div.cartodb-layer-selector-box a.layers .count {
  position: absolute;
  right: 6px;
  top: 6px;
  width: auto;
  padding: 3px 6px;
  margin: 0;
  font-size: 10px;
  color: #fff;
  line-height: 12px;
  background: #DDDDDD;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px; }

div.cartodb-layer-selector-box div.cartodb-dropdown {
  padding: 0;
  margin: 0; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul {
  padding: 0;
  margin: 0;
  list-style: none;
  border: 1px solid 999999; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li {
  border-bottom: 1px solid #EDEDED;
  position: relative; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li:last-child {
  border-bottom: none; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li:hover {
  background: #fff; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.layer {
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  width: 104px;
  padding: 13px 13px 15px 13px;
  zoom: 1;
  color: #666666;
  font: normal 13px "Helvetica Neue","Helvetica",Arial;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li:hover a.layer {
  text-decoration: underline;
  color: #545454; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch {
  position: absolute;
  top: 13px;
  right: 10px;
  text-indent: -9999px;
  vertical-align: middle;
  width: 23px;
  height: 12px;
  padding: 0;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  -o-border-radius: 12px;
  border-radius: 12px;
  -webkit-transform-style: "linear";
  -moz-transform-style: "linear";
  -ms-transform-style: "linear";
  -o-transform-style: "linear";
  transform-style: "linear";
  -webkit-transition-property: left;
  -moz-transition-property: left;
  -o-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 180ms;
  -moz-transition-duration: 180ms;
  -o-transition-duration: 180ms;
  transition-duration: 180ms;
  text-decoration: none;
  border: 1px solid #44759E; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch:before {
  position: absolute;
  content: ' ';
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  -o-border-radius: 12px;
  border-radius: 12px;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.18)), color-stop(100%, rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0));
  background: -moz-linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0));
  background: -o-linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0));
  background: linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0));
  z-index: 0; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch span.handle {
  position: absolute;
  top: 0px;
  left: 12px;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  -o-border-radius: 12px;
  border-radius: 12px;
  border: 1px solid #44759e;
  background: #F2F2F2;
  z-index: 2;
  -webkit-transform-style: "linear";
  -moz-transform-style: "linear";
  -ms-transform-style: "linear";
  -o-transform-style: "linear";
  transform-style: "linear";
  -webkit-transition-property: left;
  -moz-transition-property: left;
  -o-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 180ms;
  -moz-transition-duration: 180ms;
  -o-transition-duration: 180ms;
  transition-duration: 180ms; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch.enabled {
  border-color: #44759E;
  background: #56AFEF; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch.enabled span.handle {
  left: 12px;
  border-color: #44759E; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch.disabled {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=100)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=1);
  filter: alpha(opacity=100);
  border-color: #CCCCCC;
  background: #D8D8D8; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch span.handle {
  left: 0;
  border-color: #999999; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch:hover {
  cursor: pointer !important; }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch.working {
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=50)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=.5);
  filter: alpha(opacity=50); }

div.cartodb-layer-selector-box div.cartodb-dropdown ul li a.switch.working:hover {
  cursor: default !important; }

/* CartoDB search box control */
div.cartodb-searchbox {
  position: relative;
  display: none;
  float: right;
  margin: 20px 20px 0 0;
  width: 142px;
  height: 29px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  z-index: 105; }

div.cartodb-searchbox span.loader {
  position: absolute;
  display: none;
  top: 3px;
  left: 3px;
  width: 22px;
  height: 22px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/loader.gif") no-repeat center center white;
  z-index: 105; }

div.cartodb-searchbox input.text {
  position: absolute;
  top: 6px;
  left: 30px;
  width: 103px;
  padding: 0;
  margin: 0;
  line-height: 17px;
  border: none;
  background: none;
  border-bottom: 1px dotted #CCCCCC;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  font: normal 14px Arial;
  color: #999999;
  text-align: left;
  z-index: 2; }

div.cartodb-searchbox input.text:focus {
  outline: none;
  border-color: #999999;
  color: #666666; }

div.cartodb-searchbox input.submit {
  position: absolute;
  left: 8px;
  top: 8px;
  width: 12px;
  height: 12px;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
  text-transform: uppercase;
  border: none;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/other.png") no-repeat -56px 0;
  z-index: 1; }

div.cartodb-searchbox input.submit:hover {
  cursor: pointer; }

/* CartoDB infobox control */
div.cartodb-infobox {
  padding: 20px;
  position: absolute;
  display: inline-block;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  text-align: left;
  z-index: 105; }

/* CartoDB dropdown */
div.cartodb-dropdown {
  position: absolute;
  display: none;
  background: white;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  border: none;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 1px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 1px;
  -ms-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 1px;
  -o-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 1px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 1px;
  z-index: 150; }

div.cartodb-dropdown.border {
  border: 1px solid #999999; }

div.cartodb-dropdown div.tail {
  position: absolute;
  top: -6px;
  right: 10px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #999;
  z-index: 0; }

div.cartodb-dropdown div.tail span.border {
  position: absolute;
  top: 1px;
  left: -6px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  z-index: 2; }

/* Gmaps attribution */
div#cartodb-gmaps-attribution {
  position: absolute;
  display: block;
  bottom: 13px;
  right: 0;
  height: 10px;
  line-height: 10px;
  padding: 0 6px 4px 6px;
  background: white;
  background: rgba(245, 245, 245, 0.7);
  font-family: "Roboto", Arial, sans-serif !important;
  font-size: 11px;
  font-weight: 400;
  color: #444 !important;
  white-space: nowrap;
  direction: ltr;
  text-align: right;
  background-position: initial initial;
  background-repeat: initial initial;
  border: none;
  z-index: 10000; }

div#cartodb-gmaps-attribution a {
  color: #444;
  text-decoration: none; }

/* SLIDER */
div.cartodb-timeslider {
  position: absolute;
  display: inline-block;
  height: 40px;
  width: auto !important;
  margin-bottom: 30px;
  padding: 0;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0 4px 2px;
  background: white;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999999;
  text-align: left;
  z-index: 105; }

div.cartodb-timeslider ul {
  display: block;
  height: 40px;
  margin: 0;
  padding: 0;
  line-height: 40px;
  list-style: none;
  cursor: default; }

div.cartodb-timeslider ul li {
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
  height: 40px;
  _height: 40px;
  width: auto;
  line-height: 40px;
  border-right: 1px solid #E5E5E5; }

div.cartodb-timeslider ul li.last {
  border-right: none; }

div.cartodb-timeslider a.button {
  display: block;
  width: 48px;
  height: 40px;
  text-indent: -9999px;
  line-height: 0;
  font-size: 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slider.png") no-repeat -2px -55px; }

div.cartodb-timeslider a.button:hover {
  background-position: -42px -55px; }

div.cartodb-timeslider a.button.stop {
  background-position: -2px -4px; }

div.cartodb-timeslider a.button.stop:hover {
  background-position: -42px -4px; }

div.cartodb-timeslider p {
  width: 120px;
  height: 40px;
  margin: 0;
  padding: 0 5px 0 0;
  line-height: 40px;
  font-size: 13px;
  font-weight: bold;
  font-family: 'Helvetica',Arial;
  text-align: center;
  color: #999999; }

.cartodb-header {
  display: none;
  position: relative;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  line-height: normal;
  z-index: 99999; }

.cartodb-header .content {
  padding: 10px; }

.cartodb-header .content a {
  color: #fff; }

.cartodb-header .content a:hover {
  color: #ccc; }

.cartodb-header .content .title {
  display: none;
  margin: 0 0 5px 0;
  line-height: normal;
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  font-weight: bold;
  font-size: 15px;
  color: #fff; }

.cartodb-header .content .description {
  display: none;
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  line-height: normal;
  color: #fff;
  font-size: 13px; }

.cartodb-overlay.overlay-annotation {
  display: none; }

.cartodb-overlay.overlay-text,
.cartodb-overlay.overlay-annotation {
  position: absolute;
  display: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  font-size: 20px;
  line-height: normal;
  color: #fff;
  -ms-word-break: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  z-index: 11; }

.cartodb-overlay.overlay-text .content,
.cartodb-overlay.overlay-annotation .content {
  padding: 10px; }

.cartodb-overlay.overlay-text .text {
  font-size: 20px;
  line-height: normal;
  color: #fff;
  -ms-word-break: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; }

.cartodb-overlay.overlay-text .text strong,
.cartodb-overlay.overlay-annotation .text strong {
  font-weight: bold; }

.cartodb-overlay.overlay-text .text em,
.cartodb-overlay.overlay-annotation .text em {
  font-style: italic; }

.cartodb-overlay.overlay-text div.text a,
.cartodb-overlay.overlay-annotation div.text a {
  color: inherit; }

.cartodb-overlay.overlay-text .text a:hover,
.cartodb-overlay.overlay-annotation .text a:hover {
  color: inherit;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8; }

.cartodb-overlay.overlay-annotation {
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px; }

.cartodb-overlay.overlay-annotation .content {
  padding: 5px; }

.cartodb-overlay.overlay-annotation.align-right .stick .ball {
  left: auto;
  right: -6px; }

.cartodb-overlay.overlay-annotation .stick {
  position: absolute;
  top: 50%;
  left: -50px;
  margin-top: -1px;
  width: 50px;
  height: 2px;
  background: #333; }

.cartodb-overlay.overlay-annotation .stick .ball {
  position: absolute;
  left: -6px;
  top: 50%;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  background: #333;
  -webkit-border-radius: 200px;
  -moz-border-radius: 200px;
  -ms-border-radius: 200px;
  -o-border-radius: 200px;
  border-radius: 200px; }

.cartodb-overlay.image-overlay {
  display: none;
  position: absolute;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  z-index: 11; }

.cartodb-overlay.image-overlay .content {
  padding: 10px; }

.cartodb-overlay.image-overlay img {
  display: block; }

@font-face {
  font-family: 'Droid Sans';
  font-style: normal;
  font-weight: 400;
  src: local("droid sans"), local("DroidSans"), url(../../../../../../static/fonts/droidsans/v4/s-biyweupv0v-yrb-cjcil3hpw3pgy2gai-ip7wpmi0.woff) format("woff"); }

@font-face {
  font-family: 'Droid Sans';
  font-style: bold;
  font-weight: 700;
  src: local("Droid Sans Bold"), local("DroidSans-Bold"), url(../../../../../../static/fonts/droidsans/v4/efpqqyg9gqcrobxxl-krmxbfhgvwbfsbdvg11qabg8w.woff) format("woff"); }

@font-face {
  font-family: 'Vollkorn';
  font-style: normal;
  font-weight: 400;
  src: local("Vollkorn Regular"), local("Vollkorn-Regular"), url(../../../../../../static/fonts/vollkorn/v4/bcfbp4rt5gxxfrx6f12dknyhjbspvc47ee6xr_80hnw.woff) format("woff"); }

@font-face {
  font-family: 'Vollkorn';
  font-style: normal;
  font-weight: 400;
  src: local("Vollkorn Regular"), local("Vollkorn-Regular"), url(../../../../../../static/fonts/vollkorn/v4/bcfbp4rt5gxxfrx6f12dknyhjbspvc47ee6xr_80hnw.woff) format("woff"); }

@font-face {
  font-family: 'Vollkorn';
  font-style: bold;
  font-weight: 700;
  src: local("Vollkorn Bold"), local("Vollkorn-Bold"), url(../../../../../../static/fonts/vollkorn/v4/wmzpbutcco9guabw9joderria-7acmaedbvuclsi6gc.woff) format("woff"); }

@font-face {
  font-family: 'Open Sans';
  font-style: bold;
  font-weight: 400;
  src: local("Open Sans"), local("OpenSans"), url(../../../../../../static/fonts/opensans/v8/cjzkeoubrn4kerxqtauh3bo3ldcazywl9si6vvxl-qu.woff) format("woff"); }

@font-face {
  font-family: 'Open Sans';
  font-style: bold;
  font-weight: 600;
  src: local("Open Sans Semibold"), local("OpenSans-Semibold"), url(../../../../../../static/fonts/opensans/v8/mtp_ysujh_bn48vbg8snsqrdozjipcynfooougcosrk.woff) format("woff"); }

@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: local("Roboto Slab Regular"), local("RobotoSlab-Regular"), url(../../../../../../static/fonts/robotoslab/v3/y7lebkjgrebjk96vqi37zrria-7acmaedbvuclsi6gc.woff) format("woff"); }

@font-face {
  font-family: 'Roboto Slab';
  font-style: bold;
  font-weight: 700;
  src: local("Roboto Slab Bold"), local("RobotoSlab-Bold"), url(../../../../../../static/fonts/robotoslab/v3/dazs1prqqucxc3ioajfejrbnbkkeowrkgshdregcocg.woff) format("woff"); }

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local("Lato Regular"), local("Lato-Regular"), url(../../../../../../s/lato/v11/8qcew_nrk_5heccpydju8btbgvql8ndjpwnre27mub0.woff) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }

/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local("Lato Regular"), local("Lato-Regular"), url(../../../../../../s/lato/v11/mdadn8dq_3ot6kvnuq_2rxtbgvql8ndjpwnre27mub0.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local("Lato Bold"), local("Lato-Bold"), url(../../../../../../s/lato/v11/rzpi2ghxi8zxujnybc2zqfkpgs1zzpmvnhx-7fpouac.woff) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }

/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local("Lato Bold"), local("Lato-Bold"), url(../../../../../../s/lato/v11/mgnnr5y1c_tieulemiclm1kpgs1zzpmvnhx-7fpouac.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: local("Lato Italic"), local("Lato-Italic"), url(../../../../../../s/lato/v11/ct2gn3krbux69gvj2b2hxn-_kf6byyo6clydb4hqe-y.woff) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: local("Lato Italic"), local("Lato-Italic"), url(../../../../../../s/lato/v11/1kwmyx7m-l0fkqgwyhwwun-_kf6byyo6clydb4hqe-y.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: local("Lato Bold Italic"), local("Lato-BoldItalic"), url(../../../../../../s/lato/v11/acvtq8q0lykknxrll28rn4x0hvgzzqufrduzrpvh3d8.woff) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: local("Lato Bold Italic"), local("Lato-BoldItalic"), url(../../../../../../s/lato/v11/hkf_qi1x_noxlxhrhmqyeix0hvgzzqufrduzrpvh3d8.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Graduate';
  font-style: normal;
  font-weight: 400;
  src: local("Graduate"), local("Graduate-Regular"), url(../../../../../../s/graduate/v4/xbqulozic3rrbjsts3biebkaz4ryn47zy2rvigwqf6w.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Old Standard TT';
  font-style: normal;
  font-weight: 400;
  src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(../../../../../../s/oldstandardtt/v7/n6rtcdcipwse8unba4k-dlf-2nvkvf-roudmuqmzvvm.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Old Standard TT';
  font-style: normal;
  font-weight: 700;
  src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(../../../../../../s/oldstandardtt/v7/5ywdce7xebtsbxs__4x1_c-wbzwrdxnfg8s-xrzijwl3rgvtstkpsbdajuo5ueqw.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Old Standard TT';
  font-style: italic;
  font-weight: 400;
  src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(../../../../../../s/oldstandardtt/v7/qqt_ausp4av4dpjfin7u5l2k6drqid5gep8wjk7yglo.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

@font-face {
  font-family: 'Gravitas One';
  font-style: normal;
  font-weight: 400;
  src: local("Gravitas One"), local("GravitasOne"), url(../../../../../../s/gravitasone/v6/nbhdbv6zvnu8mtp6w9fwtrvuxpl7xtnjpllhhhglvqc.woff) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; }

/* HELVETICA */
.cartodb-overlay.overlay-annotation .content > .text,
.cartodb-overlay.overlay-text .content > .text {
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation .content > .text strong,
.cartodb-overlay.overlay-text .content > .text strong {
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  font-weight: 700; }

/* DROID */
.cartodb-overlay.overlay-annotation.droid .content > .text,
.cartodb-overlay.overlay-text.droid .content > .text {
  font-family: 'Droid Sans', serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.droid .content > .text strong,
.cartodb-overlay.overlay-text.droid .content > .text strong {
  font-family: 'Droid Sans', Helvetica, sans-serif;
  font-weight: 700; }

/* ROBOTO */
.cartodb-overlay.overlay-annotation.roboto .content > .text,
.cartodb-overlay.overlay-text.roboto .content > .text {
  font-family: 'Roboto Slab', serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.roboto .content > .text strong,
.cartodb-overlay.overlay-text.roboto .content > .text strong {
  font-family: 'Roboto Slab', serif;
  font-weight: 700; }

/* VOLLKORN */
.cartodb-overlay.overlay-annotation.vollkorn .content > .text,
.cartodb-overlay.overlay-text.vollkorn .content > .text {
  font-family: 'Vollkorn', serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.vollkorn .content > .text strong,
.cartodb-overlay.overlay-text.vollkorn .content > .text strong {
  font-family: 'Vollkorn', serif;
  font-weight: 700; }

/* OPEN SANS */
.cartodb-overlay.overlay-annotation.open_sans .content > .text,
.cartodb-overlay.overlay-text.open_sans .content > .text {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.open_sans .content > .text strong,
.cartodb-overlay.overlay-text.open_sans .content > .text strong {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700; }

/* LATO */
.cartodb-overlay.overlay-annotation.lato .content > .text,
.cartodb-overlay.overlay-text.lato .content > .text {
  font-family: 'Lato', sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.lato .content > .text strong,
.cartodb-overlay.overlay-text.lato .content > .text strong {
  font-family: 'Lato', sans-serif;
  font-weight: 700; }

/* GRADUATE */
.cartodb-overlay.overlay-annotation.graduate .content > .text,
.cartodb-overlay.overlay-text.graduate .content > .text {
  font-family: 'Graduate', sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.graduate .content > .text strong,
.cartodb-overlay.overlay-text.graduate .content > .text strong {
  font-family: 'Graduate', sans-serif;
  font-weight: 400; }

/* OLD STANDARD TT */
.cartodb-overlay.overlay-annotation.old_standard_tt .content > .text,
.cartodb-overlay.overlay-text.old_standard_tt .content > .text {
  font-family: 'Old Standard TT', sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.old_standard_tt .content > .text strong,
.cartodb-overlay.overlay-text.old_standard_tt .content > .text strong {
  font-family: 'Old Standard TT', sans-serif;
  font-weight: 700; }

/* GRAVITAS ONE */
.cartodb-overlay.overlay-annotation.gravitas_one .content > .text,
.cartodb-overlay.overlay-text.gravitas_one .content > .text {
  font-family: 'Gravitas One', sans-serif;
  font-weight: 400; }

.cartodb-overlay.overlay-annotation.gravitas_one .content > .text strong,
.cartodb-overlay.overlay-text.gravitas_one .content > .text strong {
  font-family: 'Gravitas One', sans-serif;
  font-weight: 400; }

.cartodb-header .cartodb-slides-controller {
  background: none; }

.cartodb-slides-controller {
  position: relative;
  width: 100%;
  text-align: center;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  line-height: 0;
  z-index: 1000000; }

.cartodb-slides-controller .slides-controller-content {
  margin: auto;
  padding: 10px; }

.cartodb-slides-controller .slides-controller-content .prev,
.cartodb-slides-controller .slides-controller-content .next {
  position: relative; }

.cartodb-slides-controller .slides-controller-content .prev {
  display: inline-block;
  *display: inline;
  vertical-align: middle;
  width: 16px;
  height: 15px;
  margin: 0 30px 0 0;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slide_left.png") no-repeat;
  border-radius: 100px;
  opacity: .5; }

.cartodb-slides-controller .slides-controller-content .next {
  display: inline-block;
  *display: inline;
  vertical-align: middle;
  margin: 0 0 0 30px;
  width: 16px;
  height: 15px;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slide_right.png") no-repeat;
  border-radius: 100px;
  opacity: .5; }

.cartodb-slides-controller .slides-controller-content .prev:hover,
.cartodb-slides-controller .slides-controller-content .next:hover {
  opacity: .8; }

.cartodb-slides-controller .slides-controller-content .prev:hover,
.cartodb-slides-controller .slides-controller-content .next:hover {
  opacity: .8; }

.cartodb-slides-controller .slides-controller-content .prev:after {
  content: '';
  position: absolute;
  top: -5px;
  left: 31px;
  height: 25px;
  width: 2px;
  background: #fff;
  opacity: .5; }

.cartodb-slides-controller .slides-controller-content .next:before {
  content: '';
  position: absolute;
  top: -5px;
  left: -17px;
  height: 25px;
  width: 2px;
  background: #fff;
  opacity: .5; }

.cartodb-slides-controller .slides-controller-content .counter {
  color: #fff; }

.cartodb-slides-controller .slides-controller-content .counter,
.cartodb-slides-controller .slides-controller-content ul {
  display: inline-block;
  *display: inline;
  text-align: center;
  padding: 0; }

.cartodb-slides-controller .slides-controller-content .counter.loading {
  opacity: .2;
  animation: loading .35s infinite ease-out  alternate;
  -ms-animation: loading .35s infinite ease-out  alternate;
  -moz-animation: loading .35s infinite ease-out  alternate;
  -webkit-animation: loading .35s infinite ease-out  alternate; }

.cartodb-slides-controller .slides-controller-content ul li {
  display: inline-block;
  *display: inline;
  vertical-align: middle;
  margin: 0 2px; }

.cartodb-slides-controller .slides-controller-content ul li a {
  width: 10px;
  height: 10px;
  display: block;
  background: #fff;
  border-radius: 100px;
  opacity: .4; }

.cartodb-slides-controller .slides-controller-content ul li a.active {
  opacity: 1; }

.cartodb-slides-controller .slides-controller-content ul li a.active.time {
  width: 10px;
  height: 10px;
  opacity: .5;
  transform: scale(0.5);
  -ms-transform: scale(0.5);
  -moz-transform: scale(0.5);
  -webkit-transform: scale(0.5);
  animation: pulse .35s infinite ease-out  alternate;
  -ms-animation: pulse .35s infinite ease-out  alternate;
  -moz-animation: pulse .35s infinite ease-out  alternate;
  -webkit-animation: pulse .35s infinite ease-out  alternate; }

div.cartodb-timeslider .slider-wrapper {
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
  width: 253px;
  height: 4px;
  _height: 4px;
  padding: 18px 15px; }

div.cartodb-timeslider .slider {
  width: 253px;
  height: 4px; }

div.cartodb-timeslider .ui-helper-hidden {
  display: none; }

div.cartodb-timeslider .ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

div.cartodb-timeslider .ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none; }

div.cartodb-timeslider .ui-helper-clearfix:before,
div.cartodb-timeslider .ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse; }

div.cartodb-timeslider .ui-helper-clearfix:after {
  clear: both; }

div.cartodb-timeslider .ui-helper-clearfix {
  min-height: 0; }

div.cartodb-timeslider .ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0); }

div.cartodb-timeslider .ui-front {
  z-index: 100; }

div.cartodb-timeslider .ui-state-disabled {
  cursor: default !important; }

div.cartodb-timeslider .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat; }

div.cartodb-timeslider .ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

div.cartodb-timeslider .ui-slider {
  background-color: #E0E0E0;
  position: relative;
  text-align: left;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px; }

div.cartodb-timeslider .ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 102;
  width: 9px;
  height: 10px;
  cursor: default;
  background: url("../../../../../../cartodbui/assets/editor/1.0.1/images/themes/slider.png") no-repeat -98px -18px white;
  border: 1px solid #555555;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px;
  outline: none; }

div.cartodb-timeslider .ui-slider .ui-slider-handle:hover {
  cursor: col-resize;
  background-position: -112px -18px; }

div.cartodb-timeslider .ui-slider .ui-slider-range {
  position: absolute;
  z-index: 100;
  font-size: .7em;
  display: block;
  border: 0;
  background-position: 0 0;
  background-color: #397DBA;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px; }

div.cartodb-timeslider .ui-slider.ui-state-disabled .ui-slider-handle,
div.cartodb-timeslider .ui-slider.ui-state-disabled .ui-slider-range {
  filter: inherit; }

div.cartodb-timeslider .ui-slider-horizontal {
  height: 4px;
  cursor: pointer; }

div.cartodb-timeslider .ui-slider-horizontal .ui-slider-handle {
  top: -4px;
  margin-left: -6px; }

div.cartodb-timeslider .ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
  cursor: pointer; }

div.cartodb-timeslider .ui-slider-horizontal .ui-slider-range-min {
  left: 0; }

div.cartodb-timeslider .ui-slider-horizontal .ui-slider-range-max {
  right: 0; }

div.cartodb-timeslider .ui-slider-vertical {
  width: .8em;
  height: 100px; }

div.cartodb-timeslider .ui-slider-vertical .ui-slider-handle {
  left: -.3em;
  margin-left: 0;
  margin-bottom: -.6em; }

div.cartodb-timeslider .ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%; }

div.cartodb-timeslider .ui-slider-vertical .ui-slider-range-min {
  bottom: 0; }

div.cartodb-timeslider .ui-slider-vertical .ui-slider-range-max {
  top: 0; }

/* Starting new media queries */
@media only screen and (min-width: 360px) and (max-width: 500px) {
  div.cartodb-timeslider .slider-wrapper {
    width: 130px; }
  div.cartodb-timeslider .slider {
    width: 130px; } }

@media only screen and (min-width: 180px) and (max-width: 360px) {
  div.cartodb-timeslider .slider-wrapper {
    width: 90px; }
  div.cartodb-timeslider .slider {
    width: 90px; }
  div.cartodb-timeslider p.value {
    width: 90px;
    font-size: 12px; } }

/* required styles */
.leaflet-map-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-pane,
.leaflet-tile-container,
.leaflet-overlay-pane,
.leaflet-shadow-pane,
.leaflet-marker-pane,
.leaflet-popup-pane,
.leaflet-overlay-pane svg,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0; }

.leaflet-container {
  overflow: hidden;
  -ms-touch-action: none; }

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none; }

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block; }

/* map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container img {
  max-width: none !important; }

/* stupid Android 2 doesn't understand "max-width: none" properly */
.leaflet-container img.leaflet-image-layer {
  max-width: 15000px !important; }

.leaflet-tile {
  filter: inherit;
  visibility: hidden; }

.leaflet-tile-loaded {
  visibility: inherit; }

.leaflet-zoom-box {
  width: 0;
  height: 0; }

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none; }

.leaflet-tile-pane {
  z-index: 2; }

.leaflet-objects-pane {
  z-index: 3; }

.leaflet-overlay-pane {
  z-index: 4; }

.leaflet-shadow-pane {
  z-index: 5; }

.leaflet-marker-pane {
  z-index: 6; }

.leaflet-popup-pane {
  z-index: 7; }

.leaflet-vml-shape {
  width: 1px;
  height: 1px; }

.lvml {
  behavior: url(https://cartodb-libs.global.ssl.fastly.net/cartodbui/assets/editor/1.0.1/stylesheets/cartodb.css#default#VML);
  display: inline-block;
  position: absolute; }

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 7;
  pointer-events: auto; }

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none; }

.leaflet-top {
  top: 0; }

.leaflet-right {
  right: 0; }

.leaflet-bottom {
  bottom: 0; }

.leaflet-left {
  left: 0; }

.leaflet-control {
  float: left;
  clear: both; }

.leaflet-right .leaflet-control {
  float: right; }

.leaflet-top .leaflet-control {
  margin-top: 10px; }

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px; }

.leaflet-left .leaflet-control {
  margin-left: 10px; }

.leaflet-right .leaflet-control {
  margin-right: 10px; }

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile,
.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear; }

.leaflet-fade-anim .leaflet-tile-loaded,
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1; }

.leaflet-zoom-anim .leaflet-zoom-animated {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1); }

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile,
.leaflet-touching .leaflet-zoom-animated {
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none; }

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden; }

/* cursors */
.leaflet-clickable {
  cursor: pointer; }

.leaflet-container {
  cursor: -webkit-grab;
  cursor: -moz-grab; }

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto; }

.leaflet-dragging .leaflet-container,
.leaflet-dragging .leaflet-clickable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing; }

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline: 0; }

.leaflet-container a {
  color: #0078A8; }

.leaflet-container a.leaflet-active {
  outline: 2px solid orange; }

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5); }

/* general typography */
.leaflet-container {
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif; }

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px; }

.leaflet-bar a,
.leaflet-bar a:hover {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black; }

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block; }

.leaflet-bar a:hover {
  background-color: #f4f4f4; }

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px; }

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none; }

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb; }

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px; }

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px 'Lucida Console', Monaco, monospace;
  text-indent: 1px; }

.leaflet-control-zoom-out {
  font-size: 20px; }

.leaflet-touch .leaflet-control-zoom-in {
  font-size: 22px; }

.leaflet-touch .leaflet-control-zoom-out {
  font-size: 24px; }

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px; }

.leaflet-control-layers-toggle {
  background-image: url(https://cartodb-libs.global.ssl.fastly.net/cartodbui/assets/editor/1.0.1/stylesheets/images/layers.png);
  width: 36px;
  height: 36px; }

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(https://cartodb-libs.global.ssl.fastly.net/cartodbui/assets/editor/1.0.1/stylesheets/images/layers-2x.png);
  background-size: 26px 26px; }

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px; }

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none; }

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative; }

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff; }

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px; }

.leaflet-control-layers label {
  display: block; }

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px; }

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.7);
  margin: 0; }

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333; }

.leaflet-control-attribution a {
  text-decoration: none; }

.leaflet-control-attribution a:hover {
  text-decoration: underline; }

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
  font-size: 11px; }

.leaflet-left .leaflet-control-scale {
  margin-left: 5px; }

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px; }

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5); }

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px; }

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777; }

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none; }

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box; }

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center; }

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px; }

.leaflet-popup-content {
  margin: 13px 19px;
  line-height: 1.4; }

.leaflet-popup-content p {
  margin: 18px 0; }

.leaflet-popup-tip-container {
  margin: 0 auto;
  width: 40px;
  height: 20px;
  position: relative;
  overflow: hidden; }

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4); }

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 0 0;
  text-align: center;
  width: 18px;
  height: 14px;
  font: 16px/14px Tahoma, Verdana, sans-serif;
  color: #c3c3c3;
  text-decoration: none;
  font-weight: bold;
  background: transparent; }

.leaflet-container a.leaflet-popup-close-button:hover {
  color: #999; }

.leaflet-popup-scrolled {
  overflow: auto;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd; }

.leaflet-oldie .leaflet-popup-content-wrapper {
  zoom: 1; }

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(m11=0.70710678, m12=0.70710678, m21=-0.70710678, m22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678); }

.leaflet-oldie .leaflet-popup-tip-container {
  margin-top: -1px; }

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999; }

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666; }

/**
   *  CartoDB tooltip dark styles
   */
div.cartodb-tooltip-content-wrapper.dark {
  background: black;
  background: rgba(0, 0, 0, 0.75);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#bf000000, endColorstr=#bf000000);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#bf000000, endColorstr=#bf000000)"; }

div.cartodb-tooltip-content-wrapper.dark h4 {
  color: #999; }

div.cartodb-tooltip-content-wrapper.dark p {
  color: #FFFFFF; }

div.cartodb-tooltip-content-wrapper.dark a {
  color: #397DB9; }

/**
   *  CartoDB2.0 tooltip styles (DEFAULT)
   */
div.cartodb-tooltip {
  position: absolute;
  display: none;
  min-width: 120px;
  max-width: 180px;
  overflow-y: hidden;
  z-index: 50; }

div.cartodb-tooltip-content-wrapper {
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  background: white;
  background: rgba(255, 255, 255, 0.9);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#E5FFFFFF, endColorstr=#E5FFFFFF);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#E5FFFFFF, endColorstr=#E5FFFFFF)";
  zoom: 1; }

div.cartodb-tooltip-content {
  display: block;
  padding: 8px 8px 8px 9px; }

div.cartodb-tooltip-content h4 {
  display: block;
  margin: 0 0 1px 0;
  text-transform: uppercase;
  font: normal 10px "Helvetica Neue","Helvetica",Arial;
  color: #AAA;
  word-wrap: break-word; }

div.cartodb-tooltip-content p {
  display: block;
  margin: 0 0 4px 0;
  padding: 0 0 7px;
  font: normal 12px "Helvetica Neue", "Helvetica", Arial;
  color: #333333;
  word-wrap: break-word; }

div.cartodb-tooltip-content p:last-child {
  padding: 0;
  margin: 0; }

div.cartodb-tooltip-content a {
  color: #0078A8; }

/* Old tooltip styles */
div.cartodb-tooltip > p {
  font-family: "robotoregular", Helvetica, Arial, Sans-serif;
  font-size: 15px;
  color: #333;
  text-align: center;
  text-shadow: -1px -1px 0 #FFF, 1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px 1px 0 #FFF; }

/**
   *  CartoDB tooltip light styles
   */

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiY2FydG9kYi5jc3MiLAoJInNvdXJjZXMiOiBbCgkJIi4uLy4uLy4uLy4uLy4uLy4uL3RtcC9zYXNzL3ZlbmRvci9jYXJ0b2RiLnNjc3MiCgldLAoJInNvdXJjZXNDb250ZW50IjogWwoJCSJcbiAgLyoqXG4gICAqICBDYXJ0b0RCIGluZm93aW5kb3cgZGFyayBzdHlsZXNcbiAgICovXG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuZGFyayAuanNwQ29udGFpbmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgwJSwgcmdiYSgwLDAsMCwwKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLDAsMCwxKSkpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSwgcmdiYSgwLDAsMCwxKSk7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApLCByZ2JhKDAsMCwwLDEpKTtcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApLCByZ2JhKDAsMCwwLDEpKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApLCByZ2JhKDAsMCwwLDEpKTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmRhcmsgLmpzcENvbnRhaW5lcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsMCwwLDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDAsMCwwLDApKSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDEpLCByZ2JhKDAsMCwwLDApKTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMSksIHJnYmEoMCwwLDAsMCkpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMSksIHJnYmEoMCwwLDAsMCkpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMSksIHJnYmEoMCwwLDAsMCkpO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuZGFyayB7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2RhcmsucG5nJykgbm8tcmVwZWF0IC0yMjZweCAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuZGFyayBkaXYuY2FydG9kYi1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9kYXJrLnBuZycpIHJlcGVhdC15IC00NTJweCAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuZGFyayBkaXYuY2FydG9kYi1wb3B1cC10aXAtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvZGFyay5wbmcnKSBuby1yZXBlYXQgMCAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuZGFyayBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvZGFyay5wbmcnKSBuby1yZXBlYXQgMCAtMjNweDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmRhcmsgaDQge1xuICAgIGNvbG9yOiM5OTk7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5kYXJrIHAge1xuICAgIGNvbG9yOiNGRkZGRkY7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5kYXJrIGEge1xuICAgIGNvbG9yOiMzOTdEQjk7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5kYXJrIHAuZW1wdHkge1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIGNvbG9yOiNBQUE7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5kYXJrIC5qc3BEcmFnIHtcbiAgICBiYWNrZ3JvdW5kOiAjQUFBQUFBO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmRhcmsgLmpzcERyYWc6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNERURFREU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuICB9XG5cblxuXG4gIC8qIE5FVyBDYXJ0b0RCIDIuMCBkYXJrIHBvcHVwcyAqL1xuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcmsge1xuICAgIGJhY2tncm91bmQ6IzAwMDAwMDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcms6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOmJsYWNrO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAudjIuZGFyayBkaXYuY2FydG9kYi1wb3B1cC10aXAtY29udGFpbmVyOmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiMwMDA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5kYXJrIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IzAwMDAwMDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcmsgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpiZWZvcmUsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcmsgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgfVxuXG4gIC8qIEhlbGxvIElFICovXG4gIEBtZWRpYSBcXDBzY3JlZW5cXCxzY3JlZW5cXDkge1xuICAgIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcmsge1xuICAgICAgYm9yZGVyOjRweCBzb2xpZCAjQUFBO1xuICAgIH1cblxuICAgIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmRhcmsgZGl2LmNhcnRvZGItcG9wdXAtdGlwLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItdG9wOjE4cHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICBkaXYuY2FydG9kYi1wb3B1cC52Mi5kYXJrIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAjQUFBO1xuICAgICAgY29sb3I6d2hpdGU7XG4gICAgfVxuXG4gICAgZGl2LmNhcnRvZGItcG9wdXAudjIuZGFyayBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJvcmRlcjoycHggc29saWQgI0JCQjtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqICBDYXJ0b0RCIHBvcHVwIHN0eWxlcyAoREVGQVVMVClcbiAgICovXG5cbiAgZGl2LmNhcnRvZGItaW5mb3dpbmRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEyO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHdpZHRoOjIyNnB4O1xuICAgIGhlaWdodDphdXRvO1xuICAgIHBhZGRpbmc6N3B4IDAgMCAwO1xuICAgIG1hcmdpbjowO1xuICAgIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9saWdodC5wbmcnKSBuby1yZXBlYXQgLTIyNnB4IDA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBkaXYuY2FydG9kYi1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOjE5MHB4O1xuICAgIG1heC13aWR0aDogMTkwcHg7XG4gICAgcGFkZGluZzoxMnB4IDE5cHggMTJweCAxOXB4O1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvbGlnaHQucG5nJykgcmVwZWF0LXkgLTQ1MnB4IDA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBkaXYuY2FydG9kYi1wb3B1cC1jb250ZW50IHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjE5MHB4O1xuICAgIG1heC13aWR0aDogMTkwcHg7XG4gICAgbWluLWhlaWdodDo1cHg7XG4gICAgaGVpZ2h0OmF1dG87XG4gICAgbWF4LWhlaWdodDoxODVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbiFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cblxuICAvKiBDdXN0b20gZ3JhZGllbnRzIGZvciBzY3JvbGwgY29udGVudCAqL1xuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BDb250YWluZXI6YWZ0ZXIsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BDb250YWluZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OicnO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDoxMnB4O1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgaGVpZ2h0OjEwcHg7XG4gICAgd2lkdGg6MTkwcHg7XG4gICAgei1pbmRleDogNTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BDb250YWluZXI6YWZ0ZXIge1xuICAgIGJvdHRvbTowcHg7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDUwJSAwJSwgNTAlIDEwMCUsIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LDI1NSwyNTUsMSkpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMCksIHJnYmEoMjU1LDI1NSwyNTUsMSkpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwKSwgcmdiYSgyNTUsMjU1LDI1NSwxKSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwKSwgcmdiYSgyNTUsMjU1LDI1NSwxKSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwKSwgcmdiYSgyNTUsMjU1LDI1NSwxKSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNmZmZmZmYnLCBlbmRDb2xvcnN0cj0nIzAwZmZmZmZmJyxHcmFkaWVudFR5cGU9MCApO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgLmpzcENvbnRhaW5lcjpiZWZvcmUge1xuICAgIHRvcDowcHg7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDUwJSAwJSwgNTAlIDEwMCUsIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LDI1NSwyNTUsMSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMSksIHJnYmEoMjU1LDI1NSwyNTUsMCkpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSwgcmdiYSgyNTUsMjU1LDI1NSwwKSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSwgcmdiYSgyNTUsMjU1LDI1NSwwKSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSwgcmdiYSgyNTUsMjU1LDI1NSwwKSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNmZmZmZmYnLCBlbmRDb2xvcnN0cj0nIzAwZmZmZmZmJyxHcmFkaWVudFR5cGU9MCApO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgZGl2LmNhcnRvZGItcG9wdXAtdGlwLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6MjI2cHg7XG4gICAgaGVpZ2h0OjIwcHg7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2xpZ2h0LnBuZycpIG5vLXJlcGVhdCAwIDA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6LTlweDtcbiAgICByaWdodDotOXB4O1xuICAgIHdpZHRoOjI2cHg7XG4gICAgaGVpZ2h0OjI2cHg7XG4gICAgcGFkZGluZzowO1xuICAgIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9saWdodC5wbmcnKSBuby1yZXBlYXQgMCAtMjNweDtcbiAgICB0ZXh0LWluZGVudDotOTk5OXB4O1xuICAgIGZvbnQtc2l6ZTowO1xuICAgIGxpbmUtaGVpZ2h0OjA7XG4gICAgb3BhY2l0eToxO1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MSk7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIHotaW5kZXg6MztcbiAgfVxuXG4gIC8qIFdoZW4gdGhlcmUgYXJlIG5vIGZpZWxkcyBpbiBoZWFkZXIgcG9wdXAgdGhlbWVzICovXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5ub19maWVsZHMgZGl2LmNhcnRvZGItcG9wdXAtY29udGVudCB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5ub19maWVsZHNcbiAgZGl2LmNhcnRvZGItcG9wdXAtY29udGVudC13cmFwcGVyXG4gIGRpdi5jYXJ0b2RiLWVkaXQtYnV0dG9ucyB7XG4gICAgcGFkZGluZy10b3A6NXB4O1xuICAgIG1hcmdpbi10b3A6MDtcbiAgfVxuICBkaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIubm9fZmllbGRzIGRpdi5jYXJ0b2RiLWVkaXQtYnV0dG9ucyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctdG9wOjA7XG4gIH1cblxuXG4gIC8qIEN1c3RvbSBzY3JvbGwgaW4gQ2FydG9EQiBjb250ZW50ICovXG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgLmpzcENvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BDb250YWluZXIgKiB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BQYW5lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzo0cHggMCAwIDAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6MTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BWZXJ0aWNhbEJhciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHotaW5kZXg6MTA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwSG9yaXpvbnRhbEJhciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDsgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgLmpzcFZlcnRpY2FsQmFyICosXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BIb3Jpem9udGFsQmFyICoge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgLmpzcENhcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BIb3Jpem9udGFsQmFyIC5qc3BDYXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgLmpzcFRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwRHJhZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDsgbGVmdDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgIGJhY2tncm91bmQ6ICM5OTk5OTk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjE2KTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BEcmFnOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwSG9yaXpvbnRhbEJhciAuanNwVHJhY2ssXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BIb3Jpem9udGFsQmFyIC5qc3BEcmFnIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwQXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICM1MDUwNmQ7XG4gICAgdGV4dC1pbmRlbnQ6IC0yMDAwMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BBcnJvdy5qc3BEaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGJhY2tncm91bmQ6ICM4MDgwOGQ7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwVmVydGljYWxCYXIgLmpzcEFycm93IHtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwSG9yaXpvbnRhbEJhciAuanNwQXJyb3cge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIC5qc3BWZXJ0aWNhbEJhciAuanNwQXJyb3c6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCAuanNwQ29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlZWY0O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gICogaHRtbCBkaXYuY2FydG9kYi1wb3B1cCAuanNwQ29ybmVyIHtcbiAgICBtYXJnaW46IDAgLTNweCAwIDA7XG4gIH1cblxuXG4gIC8qIENhcnRvREIgbGlnaHQgY29udGVudCBzdHlsZXMgKi9cbiAgZGl2LmNhcnRvZGItcG9wdXAgaDIge1xuICAgIGxpbmUtaGVpZ2h0Om5vcm1hbDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIGgxLFxuICBkaXYuY2FydG9kYi1wb3B1cCBoMixcbiAgZGl2LmNhcnRvZGItcG9wdXAgaDMsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIGg0LFxuICBkaXYuY2FydG9kYi1wb3B1cCBoNSxcbiAgZGl2LmNhcnRvZGItcG9wdXAgaDYge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTkwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC13ZWlnaHQgOmJvbGQ7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgQXJpYWw7XG4gICAgY29sb3I6I0NDQ0NDQztcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICB9XG4gIGRpdi5jYXJ0b2RiLXBvcHVwIGgxIHtcbiAgICBmb250LXNpemU6MjRweDtcbiAgfVxuICBkaXYuY2FydG9kYi1wb3B1cCBoMiB7XG4gICAgZm9udC1zaXplOjIwcHg7XG4gIH1cbiAgZGl2LmNhcnRvZGItcG9wdXAgaDMge1xuICAgIGZvbnQtc2l6ZToxNXB4O1xuICB9XG4gIGRpdi5jYXJ0b2RiLXBvcHVwIGg0IHtcbiAgICBmb250LXNpemU6MTFweDtcbiAgfVxuICBkaXYuY2FydG9kYi1wb3B1cCBoNSB7XG4gICAgZm9udC1zaXplOjEwcHg7XG4gIH1cbiAgZGl2LmNhcnRvZGItcG9wdXAgaDYge1xuICAgIGZvbnQtc2l6ZTo5cHg7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBwIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjE5MHB4O1xuICAgIG1heC13aWR0aDogMTkwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6MCAwIDdweDtcbiAgICBmb250Om5vcm1hbCAxM3B4IFwiSGVsdmV0aWNhXCIsQXJpYWw7XG4gICAgY29sb3I6IzMzMzMzMztcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBwLml0YWxpYyB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgcC5sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjE3MHB4O1xuICAgIG1heC13aWR0aDogMTcwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6MCAwIDAgMzBweDtcbiAgICBmb250Om5vcm1hbCAxM3B4IFwiSGVsdmV0aWNhXCIsQXJpYWw7XG4gICAgY29sb3I6Izg4ODtcbiAgICBmb250LXN0eWxlOml0YWxpYztcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgbGluZS1oZWlnaHQ6MjFweDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIHAuZXJyb3Ige1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTcwcHg7XG4gICAgbWF4LXdpZHRoOjE3MHB4O1xuICAgIG1hcmdpbjowO1xuICAgIHBhZGRpbmc6MDtcbiAgICBmb250Om5vcm1hbCAxM3B4IFwiSGVsdmV0aWNhXCIsQXJpYWw7XG4gICAgY29sb3I6I0ZGN0Y3RjtcbiAgICBmb250LXN0eWxlOml0YWxpYztcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgbGluZS1oZWlnaHQ6MThweDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIHAuZW1wdHkge1xuICAgIGNvbG9yOiM5OTk5OTk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgZGl2LnNwaW5uZXIge1xuICAgIHBvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OmlubGluZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgbWFyZ2luOjEwcHggMCAwIDEwcHg7XG4gIH1cblxuXG4gIC8qIE5FVyBDYXJ0b0RCIDIuMCBwb3B1cHMgKi9cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiB7XG4gICAgd2lkdGg6MjI2cHg7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowIDAgMTRweCAwO1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMCwwLDAsMC4xNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMCwwLDAsMC4xNSk7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjJweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgYm90dG9tOi0xNHB4O1xuICAgIGxlZnQ6MDtcbiAgICB3aWR0aDowO1xuICAgIGhlaWdodDowO1xuICAgIG1hcmdpbi1sZWZ0OjI4cHg7XG4gICAgYm9yZGVyLWxlZnQ6MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDoxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6MTRweCBzb2xpZCB3aGl0ZTtcbiAgICB6LWluZGV4OjI7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MlxuICBkaXYuY2FydG9kYi1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nOjEycHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjJweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQge1xuICAgIHdpZHRoOmF1dG87XG4gICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiBkaXYuY2FydG9kYi1wb3B1cC1jb250ZW50IHAsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDEsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDIsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDMsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDQsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDUsXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGRpdi5jYXJ0b2RiLXBvcHVwLWNvbnRlbnQgaDYge1xuICAgIHdpZHRoOmF1dG87XG4gICAgbWF4LXdpZHRoOjk1JTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAudjIgZGl2LmNhcnRvZGItcG9wdXAtdGlwLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgYm90dG9tOi0yMHB4O1xuICAgIGxlZnQ6LTRweDtcbiAgICB3aWR0aDoyMHB4O1xuICAgIGhlaWdodDoxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OjI4cHg7XG4gICAgYmFja2dyb3VuZDpub25lO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB6LWluZGV4OjA7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiBkaXYuY2FydG9kYi1wb3B1cC10aXAtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoyMHB4O1xuICAgIGhlaWdodDoyMHB4O1xuICAgIGxlZnQ6MDtcbiAgICB0b3A6LTEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3KDAsLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwLC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDAsLTQ1ZGVnKTtcbiAgICBib3JkZXItcmFkaXVzOjAgMCAwIDEwcHg7XG4gICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMTUpO1xuICAgIHotaW5kZXg6MDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmNlbnRlcmVkOmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDowcHg7XG4gICAgaGVpZ2h0OjBweDtcbiAgICBsZWZ0OiAtMTBweDtcbiAgICBib3R0b206IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OjUwJTtcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHNrZXcoMCwwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwLDApO1xuICAgIHRyYW5zZm9ybTogc2tldygwLDApO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgei1pbmRleDoxO1xuICB9XG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmNlbnRlcmVkIHAge1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5jZW50ZXJlZCBkaXYuY2FydG9kYi1wb3B1cC10aXAtY29udGFpbmVyIHtcbiAgICBsZWZ0OiAtMTJweDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmNlbnRlcmVkIGRpdi5jYXJ0b2RiLXBvcHVwLXRpcC1jb250YWluZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDBweDtcbiAgICBoZWlnaHQ6IDBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMTJweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNrZXcoMCwwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwLDApO1xuICAgIHRyYW5zZm9ybTogc2tldygwLDApO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIHJpZ2h0Oi0xMnB4O1xuICAgIHRvcDotMTJweDtcbiAgICB3aWR0aDoyMHB4O1xuICAgIGhlaWdodDoyMHB4O1xuICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjE4cHg7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOjE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czoxOHB4O1xuICAgIGJveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4xNSk7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmJlZm9yZSxcbiAgZGl2LmNhcnRvZGItcG9wdXAudjIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6OXB4O1xuICAgIGxlZnQ6NnB4O1xuICAgIHdpZHRoOjhweDtcbiAgICBoZWlnaHQ6MnB4O1xuICAgIGJhY2tncm91bmQ6IzM5N0RCQTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czozcHg7XG4gICAgYm9yZGVyLXJhZGl1czozcHg7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmJlZm9yZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52MiBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmFmdGVyIHtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246aG92ZXIge1xuICAgIGJveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4yNSk7XG4gIH1cblxuICAvKiBIZWxsbyBJRSAqL1xuICBAbWVkaWEgXFwwc2NyZWVuXFwsc2NyZWVuXFw5IHtcbiAgICBkaXYuY2FydG9kYi1wb3B1cC52MiB7XG4gICAgICBib3JkZXI6NHB4IHNvbGlkICNDQ0M7XG4gICAgfVxuXG4gICAgZGl2LmNhcnRvZGItcG9wdXAudjIgZGl2LmNhcnRvZGItcG9wdXAtdGlwLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHdpZHRoOjA7XG4gICAgICBoZWlnaHQ6MDtcbiAgICAgIG1hcmdpbi1sZWZ0OjI4cHg7XG4gICAgICB6LWluZGV4OjI7XG4gICAgICBib3R0b206LTE4cHg7XG4gICAgICBsZWZ0Oi00cHg7XG4gICAgICBib3JkZXItbGVmdDowcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6MThweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6MThweCBzb2xpZCB3aGl0ZTtcbiAgICB9XG5cbiAgICBkaXYuY2FydG9kYi1wb3B1cC52MiBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICAgIHJpZ2h0Oi0xNHB4O1xuICAgICAgdG9wOi0xNHB4O1xuICAgICAgd2lkdGg6MThweDtcbiAgICAgIHBhZGRpbmc6MCAwIDAgMnB4O1xuICAgICAgdGV4dC1pbmRlbnQ6MDtcbiAgICAgIGZvbnQ6Ym9sZCAxMXB4IEFyaWFsO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OjIwcHg7XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICNDQ0M7XG4gICAgfVxuXG4gICAgZGl2LmNhcnRvZGItcG9wdXAudjIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpiZWZvcmUsXG4gICAgZGl2LmNhcnRvZGItcG9wdXAudjIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuXG4gICAgZGl2LmNhcnRvZGItcG9wdXAudjIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICM5OTk7XG4gICAgfVxuICB9XG5cbi8qKlxuICogIENhcnRvREIgYmx1ZSBoZWFkZXIgcG9wdXAgc3R5bGVzXG4gKi9cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLmJsdWUgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2hlYWRlcnMucG5nJykgbm8tcmVwZWF0IDAgLTQwcHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5ibHVlLmhlYWRlciAuY2FydG9kYi1wb3B1cC1oZWFkZXIgYSB7XG4gIGNvbG9yOndoaXRlO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIuYmx1ZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgaDQge1xuICBjb2xvcjojMUY0QzdGO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIuYmx1ZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgc3Bhbi5zZXBhcmF0b3Ige1xuICBiYWNrZ3JvdW5kOiMyMjUzODY7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5ibHVlIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgLTIyNnB4IC00MHB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIuYmx1ZSBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjotMjI2cHggLTY2cHg7XG59XG5cblxuLyogTkVXIENhcnRvREIgMi4wIGJsdWUgaGVhZGVyIHBvcHVwcyAqL1xuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIuYmx1ZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzRGOUNENywgIzJCNjhBOCk7IFxuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQocmlnaHQsICM0RjlDRDcsICMyQjY4QTgpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM0RjlDRDcsICMyQjY4QTgpOyBcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQocmlnaHQsICM0RjlDRDcsICMyQjY4QTgpO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5HcmFkaWVudChzdGFydENvbG9yU3RyPScjNEY5Q0Q3JyxlbmRDb2xvclN0cj0nIzJCNjhBOCcsR3JhZGllbnRUeXBlPTApXCI7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci5ibHVlIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOndoaXRlO1xufVxuLyoqXG4gKiAgQ2FydG9EQiBoZWFkZXIgcG9wdXAgc3R5bGVzIChERUZBVUxUKVxuICovXG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlciB7XG4gIHBhZGRpbmc6MDtcbiAgYmFja2dyb3VuZDpub25lO1xuICBib3gtc2hhZG93Om5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzpub25lO1xuICAtbW96LWJveC1zaGFkb3c6bm9uZTtcbiAgLW8tYm94LXNoYWRvdzpub25lO1xuICBib3JkZXItYm90dG9tOm5vbmU7XG4gIGJvcmRlci1yYWRpdXM6MDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czowO1xuICAtby1ib3JkZXItcmFkaXVzOjA7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlciBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6MTg4cHg7XG4gIGhlaWdodDphdXRvO1xuICBtYXgtaGVpZ2h0OjYycHg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgcGFkZGluZzoxN3B4IDE5cHggMTdweCAxOXB4O1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgMCAtNDBweDtcbn1cblxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGgxIHtcbiAgd2lkdGg6MTAwJTtcbiAgbWFyZ2luOjA7XG4gIGZvbnQ6Ym9sZCAyMXB4IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgQXJpYWw7XG4gIGNvbG9yOiNGRkZGRkY7XG4gIGxpbmUtaGVpZ2h0OjIzcHg7XG4gIHRleHQtc2hhZG93OiAwIDFweCByZ2JhKDAsMCwwLDAuNSk7XG4gIHdvcmQtd3JhcDpicmVhay13b3JkO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGgxIGEge1xuICBjb2xvcjp3aGl0ZTtcbiAgZm9udC1zaXplOjIxcHg7XG4gIHdvcmQtd3JhcDpicmVhay13b3JkO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGgxIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBoMS5sb2FkaW5nIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHdpZHRoOmF1dG87XG4gIHBhZGRpbmctcmlnaHQ6MDtcbiAgcGFkZGluZy1sZWZ0OjMwcHg7XG4gIGZvbnQtc2l6ZToxNHB4O1xuICBmb250LXdlaWdodDpub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OjE5cHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlciBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgaDEuZXJyb3Ige1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgZGlzcGxheTpibG9jaztcbiAgd2lkdGg6YXV0bztcbiAgcGFkZGluZy1yaWdodDowO1xuICBwYWRkaW5nLWxlZnQ6MDtcbiAgZm9udC1zaXplOjE0cHg7XG4gIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDoxOXB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGg0IHtcbiAgY29sb3I6IzFGNEM3Rjtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBzcGFuLnNlcGFyYXRvciB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBib3R0b206MDtcbiAgbGVmdDo0cHg7XG4gIHJpZ2h0OjRweDtcbiAgaGVpZ2h0OjFweDtcbiAgYmFja2dyb3VuZDojMjI1Mzg2O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIgZGl2LmNhcnRvZGItcG9wdXAtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6MTUwcHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlciBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2hlYWRlcnMucG5nJykgbm8tcmVwZWF0IC0yMjZweCAtNDBweDtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMjZweCAtNjZweDtcbn1cblxuXG5cbi8qIE5FVyBDYXJ0b0RCIDIuMCBoZWFkZXIgcG9wdXBzICovXG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci52Mi5oZWFkZXIge1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsMCwwLDAuMTUpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgwLDAsMCwwLjE1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjJweDtcbiAgYm9yZGVyLXJhZGl1czoycHg7XG4gIGJhY2tncm91bmQ6d2hpdGU7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlciBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6YXV0bztcbiAgaGVpZ2h0OmF1dG87XG4gIG1heC1oZWlnaHQ6NjJweDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBwYWRkaW5nOjE3cHggMTJweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM0RjlDRDcsICMyQjY4QTgpOyBcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCAjNEY5Q0Q3LCAjMkI2OEE4KTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNEY5Q0Q3LCAjMkI2OEE4KTsgXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCAjNEY5Q0Q3LCAjMkI2OEE4KTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuR3JhZGllbnQoc3RhcnRDb2xvclN0cj0nIzRGOUNENycsZW5kQ29sb3JTdHI9JyMyQjY4QTgnLEdyYWRpZW50VHlwZT0wKVwiO1xuXG4gIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogMnB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlciBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDonJztcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGJvdHRvbTowO1xuICBsZWZ0OjA7XG4gIHJpZ2h0OjA7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDoxcHg7XG4gIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0Oi0xMnB4O1xuICB0b3A6LTEycHg7XG4gIHdpZHRoOjIwcHg7XG4gIGhlaWdodDoyMHB4O1xuICBiYWNrZ3JvdW5kOndoaXRlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MThweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjE4cHg7XG4gIGJvcmRlci1yYWRpdXM6MThweDtcbiAgYm94LXNoYWRvdzowIDAgMCAzcHggcmdiYSgwLDAsMCwwLjE1KTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YmVmb3JlLFxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YWZ0ZXIge1xuICBjb250ZW50OicnO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjlweDtcbiAgbGVmdDo2cHg7XG4gIHdpZHRoOjhweDtcbiAgaGVpZ2h0OjJweDtcbiAgYmFja2dyb3VuZDojMzk3REJBO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6M3B4O1xuICBib3JkZXItcmFkaXVzOjNweDtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YmVmb3JlIHtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YWZ0ZXIge1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4yNSk7XG59XG5cbi8qIEhlbGxvIElFICovXG5AbWVkaWEgXFwwc2NyZWVuXFwsc2NyZWVuXFw5IHtcblxuICBkaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIudjIge1xuICAgIGJvcmRlci1ib3R0b206NHB4IHNvbGlkICNDQ0M7XG4gIH1cbiAgXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlciBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6IzNCN0ZCRDtcbiAgICAtbXMtZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuR3JhZGllbnQoc3RhcnRDb2xvclN0cj0nIzRGOUNENycsZW5kQ29sb3JTdHI9JyMyQjY4QTgnLEdyYWRpZW50VHlwZT0wKTtcbiAgfVxuXG59XG5cbi8qKlxuICogIENhcnRvREIgZ3JlZW4gaGVhZGVyIHBvcHVwIHN0eWxlc1xuICovXG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5ncmVlbiBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgLTI1MnB4IC00MHB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIuZ3JlZW4gZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGg0IHtcbiAgY29sb3I6IzAwOTE2RDtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLmdyZWVuIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBzcGFuLnNlcGFyYXRvciB7XG4gIGJhY2tncm91bmQ6IzAwOEU2QTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLmdyZWVuIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgLTQ3OHB4IC00MHB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIuZ3JlZW4gYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246LTQ3OHB4IC02NnB4O1xufVxuXG5cbi8qIE5FVyBDYXJ0b0RCIDIuMCBncmVlbiBoZWFkZXIgcG9wdXBzICovXG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci5ncmVlbiBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwQ0M5OSwgIzAwQjE4NSk7IFxuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQocmlnaHQsICMwMENDOTksICMwMEIxODUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMENDOTksICMwMEIxODUpOyBcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQocmlnaHQsICMwMENDOTksICMwMEIxODUpO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5HcmFkaWVudChzdGFydENvbG9yU3RyPScjMDBDQzk5JyxlbmRDb2xvclN0cj0nIzAwQjE4NScsR3JhZGllbnRUeXBlPTApXCI7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci5ncmVlbiBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDp3aGl0ZTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLmdyZWVuIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YmVmb3JlLFxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLmdyZWVuIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiMwMENDOTk7XG59XG5cbi8qIEhlbGxvIElFICovXG5AbWVkaWEgXFwwc2NyZWVuXFwsc2NyZWVuXFw5IHtcbiAgZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLmdyZWVuIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIGNvbG9yOiMwMENDOTk7XG4gIH1cbn1cbi8qKlxuICogIENhcnRvREIgb3JhbmdlIGhlYWRlciBwb3B1cCBzdHlsZXNcbiAqL1xuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIub3JhbmdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9oZWFkZXJzLnBuZycpIG5vLXJlcGVhdCAtNzU2cHggLTQwcHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5vcmFuZ2UgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIGg0IHtcbiAgY29sb3I6I0NDMjkyOTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLm9yYW5nZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgc3Bhbi5zZXBhcmF0b3Ige1xuICBiYWNrZ3JvdW5kOiNDQzI5Mjk7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5vcmFuZ2UgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9oZWFkZXJzLnBuZycpIG5vLXJlcGVhdCAtOTgycHggLTQwcHg7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci5vcmFuZ2UgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246LTk4MnB4IC02NnB4O1xufVxuXG5cbi8qIE5FVyBDYXJ0b0RCIDIuMCBvcmFuZ2UgaGVhZGVyIHBvcHVwcyAqL1xuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIub3JhbmdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjRkY2ODI1LCAjRkYzMzMzKTsgXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChyaWdodCwgI0ZGNjgyNSwgI0ZGMzMzMyk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI0ZGNjgyNSwgI0ZGMzMzMyk7IFxuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgI0ZGNjgyNSwgI0ZGMzMzMyk7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkdyYWRpZW50KHN0YXJ0Q29sb3JTdHI9JyNGRjY4MjUnLGVuZENvbG9yU3RyPScjRkYzMzMzJyxHcmFkaWVudFR5cGU9MClcIjtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLm9yYW5nZSBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDp3aGl0ZTtcbn1cblxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLm9yYW5nZSBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmJlZm9yZSxcbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci5vcmFuZ2UgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQ6I0NDMjkyOTtcbn1cblxuLyogSGVsbG8gSUUgKi9cbkBtZWRpYSBcXDBzY3JlZW5cXCxzY3JlZW5cXDkge1xuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIub3JhbmdlIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIGNvbG9yOiNDQzI5Mjk7XG4gIH1cbn1cbiAgLyoqXG4gICAqICBDYXJ0b0RCIGhlYWRlciB3aXRoLWltYWdlIHBvcHVwIHN0eWxlc1xuICAgKi9cblxuICBkaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuXG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2hlYWRlcnMucG5nJykgbm8tcmVwZWF0IC0xMDA4cHggMDtcbiAgICBoZWlnaHQ6MTM4cHg7XG4gICAgbWF4LWhlaWdodDoxMDRweDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciAuY292ZXIge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHdpZHRoOiAyMThweDtcbiAgICBoZWlnaHQ6MTM1cHg7XG4gICAgdG9wOiA0cHg7XG4gICAgbGVmdDogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIC5jb3ZlciAuc2hhZG93IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDogMjE4cHg7XG4gICAgaGVpZ2h0OjU1cHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NoYWRvdy5wbmcnKSBuby1yZXBlYXQ7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIC5jb3ZlciAjc3Bpbm5lciB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOiA2N3B4O1xuICAgIGxlZnQ6IDEwOXB4O1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIC5jb3ZlciBpbWcge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciAuaW1hZ2Vfbm90X2ZvdW5kIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6IDE1cHg7XG4gICAgbGVmdDogMTVweDtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIC5pbWFnZV9ub3RfZm91bmQgYSB7XG4gICAgZGlzcGxheTotbW96LWlubGluZS1zdGFjaztkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7KnZlcnRpY2FsLWFsaWduOmF1dG87em9vbToxOypkaXNwbGF5OmlubGluZTtcbiAgICBtYXJnaW46IDNweCAwIDAgLTJweDtcbiAgICBjb2xvcjogIzg4ODg4ODtcbiAgICBmb250LXNpemU6MTNweDtcbiAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2FcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciAuaW1hZ2Vfbm90X2ZvdW5kIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjODg4ODg4O1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgLmNvdmVyIC5pbWFnZV9ub3RfZm91bmQgaSB7XG4gICAgZGlzcGxheTotbW96LWlubGluZS1zdGFjaztkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7KnZlcnRpY2FsLWFsaWduOmF1dG87em9vbToxOypkaXNwbGF5OmlubGluZTtcbiAgICB3aWR0aDogMzFweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2ltYWdlX25vdF9mb3VuZC5wbmcnKTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBoMSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgYm90dG9tOiAxM3B4O1xuICAgIGxlZnQ6IDE4cHg7XG4gICAgd2lkdGg6IDE4OHB4O1xuICAgIHotaW5kZXg6IDE1MDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBoNCB7XG4gICAgY29sb3I6I0NDQztcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBzcGFuLnNlcGFyYXRvciB7XG4gICAgYmFja2dyb3VuZDojQ0NDO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2hlYWRlcnMucG5nJykgbm8tcmVwZWF0IC0yMjZweCAtNDBweDtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci53aXRoLWltYWdlIGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246LTIyNnB4IC02NnB4O1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgLmNhcnRvZGItcG9wdXAtaGVhZGVyIGgxIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIud2l0aC1pbWFnZSAuY2FydG9kYi1wb3B1cC1oZWFkZXIgaDEub3JkZXIxIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLndpdGgtaW1hZ2UgLmNhcnRvZGItcG9wdXAtY29udGVudC13cmFwcGVyIC5vcmRlcjEge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuXG5cbiAgLyogTkVXIENhcnRvREIgMi4wIGltYWdlIGhlYWRlciBwb3B1cHMgKi9cblxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICMyQzJDMkM7XG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM1MzUzNTMsICMyQzJDMkMpOyBcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQocmlnaHQsICM1MzUzNTMsICMyQzJDMkMpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzUzNTM1MywgIzJDMkMyQyk7IFxuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCAjNTM1MzUzLCAjMkMyQzJDKTtcbiAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5HcmFkaWVudChzdGFydENvbG9yU3RyPScjNTM1MzUzJyxlbmRDb2xvclN0cj0nIzJDMkMyQycsR3JhZGllbnRUeXBlPTApXCI7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgaDEge1xuICAgIHdpZHRoOjg1JTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBzcGFuLnNlcGFyYXRvciB7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgYmFja2dyb3VuZDojQ0NDO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLndpdGgtaW1hZ2UgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci53aXRoLWltYWdlIGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciAuY292ZXIge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTM4cHg7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czoycHggMnB4IDAgMDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MnB4IDJweCAwIDA7XG4gICAgYm9yZGVyLXJhZGl1czoycHggMnB4IDAgMDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgLmNvdmVyIC5zaGFkb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDo1N3B4O1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsMCwwLDApKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDAsMCwwLDAuOCkpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCksIHJnYmEoMCwwLDAsMC44KSk7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApLCByZ2JhKDAsMCwwLDAuOCkpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCksIHJnYmEoMCwwLDAsMC44KSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSwgcmdiYSgwLDAsMCwwLjgpKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAnLEdyYWRpZW50VHlwZT0wICk7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIud2l0aC1pbWFnZSBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIgLmNvdmVyIGltZyB7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOjJweCAycHggMCAwO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czoycHggMnB4IDAgMDtcbiAgICBib3JkZXItcmFkaXVzOjJweCAycHggMCAwO1xuICB9XG4vKipcbiAqICBDYXJ0b0RCIHllbGxvdyBoZWFkZXIgcG9wdXAgc3R5bGVzXG4gKi9cblxuZGl2LmNhcnRvZGItcG9wdXAuaGVhZGVyLnllbGxvdyBkaXYuY2FydG9kYi1wb3B1cC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgLTUwNHB4IC00MHB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIueWVsbG93IGRpdi5jYXJ0b2RiLXBvcHVwLWhlYWRlciBoNCB7XG4gIGNvbG9yOiNEODgzMkE7XG59XG5cbmRpdi5jYXJ0b2RiLXBvcHVwLmhlYWRlci55ZWxsb3cgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIHNwYW4uc2VwYXJhdG9yIHtcbiAgYmFja2dyb3VuZDojQ0M3QTI5O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIueWVsbG93IGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvaGVhZGVycy5wbmcnKSBuby1yZXBlYXQgLTczMHB4IC00MHB4O1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC5oZWFkZXIueWVsbG93IGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOi03MzBweCAtNjZweDtcbn1cblxuLyogTkVXIENhcnRvREIgMi4wIHllbGxvdyBoZWFkZXIgcG9wdXBzICovXG5cbmRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci55ZWxsb3cgZGl2LmNhcnRvZGItcG9wdXAtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNGRkJGMEQsICNGRjk5MzMpOyBcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCAjRkZCRjBELCAjRkY5OTMzKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjRkZCRjBELCAjRkY5OTMzKTsgXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCAjRkZCRjBELCAjRkY5OTMzKTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuR3JhZGllbnQoc3RhcnRDb2xvclN0cj0nI0ZGQkYwRCcsZW5kQ29sb3JTdHI9JyNGRjk5MzMnLEdyYWRpZW50VHlwZT0wKVwiO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIueWVsbG93IGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOndoaXRlO1xufVxuXG5kaXYuY2FydG9kYi1wb3B1cC52Mi5oZWFkZXIueWVsbG93IGEuY2FydG9kYi1wb3B1cC1jbG9zZS1idXR0b246YmVmb3JlLFxuZGl2LmNhcnRvZGItcG9wdXAudjIuaGVhZGVyLnllbGxvdyBhLmNhcnRvZGItcG9wdXAtY2xvc2UtYnV0dG9uOmFmdGVyIHtcbiAgYmFja2dyb3VuZDojQ0M3QTI5O1xufVxuXG4vKiBIZWxsbyBJRSAqL1xuQG1lZGlhIFxcMHNjcmVlblxcLHNjcmVlblxcOSB7XG4gIGRpdi5jYXJ0b2RiLXBvcHVwLnYyLmhlYWRlci55ZWxsb3cgYS5jYXJ0b2RiLXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gICAgY29sb3I6I0NDN0EyOTtcbiAgfVxufVxuICAvKipcbiAgICogIENhcnRvREIgaW5mb3dpbmRvdyBsaWdodCBzdHlsZXNcbiAgICovXG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgaDQge1xuICAgIGNvbG9yOiNDQ0NDQ0M7XG4gIH1cblxuICBkaXYuY2FydG9kYi1wb3B1cCBwIHtcbiAgICBjb2xvcjojMzMzMzMzO1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgcC5sb2FkaW5nIHtcbiAgICBjb2xvcjojODg4O1xuICB9XG5cbiAgZGl2LmNhcnRvZGItcG9wdXAgcC5lcnJvciB7XG4gICAgY29sb3I6I0ZGN0Y3RjtcbiAgfVxuXG4gIGRpdi5jYXJ0b2RiLXBvcHVwIHAuZW1wdHkge1xuICAgIGNvbG9yOiM5OTk5OTk7XG4gIH0vKipcbiAqICBDYXJ0b0RCIG1hcCBzdHlsZSBjb21wb25lbnRzXG4gKi9cbkAtd2Via2l0LWtleWZyYW1lcyBsb2FkaW5nIHtcbiAgdG8geyBvcGFjaXR5OiAxOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgbG9hZGluZyB7XG4gIHRvIHsgb3BhY2l0eTogMTsgfVxufVxuQC1tcy1rZXlmcmFtZXMgbG9hZGluZyB7XG4gIHRvICB7IG9wYWNpdHk6IDE7IH1cbn1cbkBrZXlmcmFtZXMgbG9hZGluZyB7XG4gIHRvIHsgb3BhY2l0eTogMTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICB0byB7IG9wYWNpdHk6IDE7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHB1bHNlIHtcbiAgdG8geyBvcGFjaXR5OiAxOyAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cbkAtbXMta2V5ZnJhbWVzIHB1bHNlIHtcbiAgdG8geyBvcGFjaXR5OiAxOyAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIHRvIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuXG5kaXYuY2FydG9kYi1zaGFyZSB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGZsb2F0OnJpZ2h0O1xuICBtYXJnaW46IDIwcHggMjBweCAwIDA7XG4gIHotaW5kZXg6IDEwNTtcbn1cbmRpdi5jYXJ0b2RiLXNoYXJlIGEge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMzOTdEQjg7XG4gIGZvbnQtc2l6ZToxMHB4O1xuICBmb250LXdlaWdodDpib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogN3B4IDdweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NoYXJlLnBuZycpIG5vLXJlcGVhdCA3cHggOHB4O1xuXG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuXG4gIGJvcmRlci1jb2xvcjogI0MzQzNDMztcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xufVxuZGl2LmNhcnRvZGItc2hhcmUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmYgdXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9zaGFyZS5wbmcnKSBuby1yZXBlYXQgLTI4cHggOHB4O1xufVxuZGl2LmNhcnRvZGItc2hhcmUgYTphY3RpdmUsIGRpdi5jYXJ0b2RiLXNoYXJlIGE6aG92ZXI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NoYXJlLnBuZycpIG5vLXJlcGVhdCA3cHggOHB4O1xufVxuXG4uY2FydG9kYi1mdWxsc2NyZWVuIHtcbiAgZGlzcGxheTpub25lO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgbWFyZ2luOiAxMXB4IDAgMCAyMHB4O1xuICBmbG9hdDpsZWZ0O1xuICBjbGVhcjpib3RoO1xuXG4gIHotaW5kZXg6IDEwNTtcbn1cbi5jYXJ0b2RiLWZ1bGxzY3JlZW4gYSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2Z1bGxzY3JlZW4ucG5nJykgbm8tcmVwZWF0IDdweCAzcHg7XG5cbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG59XG4uY2FydG9kYi1mdWxsc2NyZWVuIGE6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogN3B4IDNweCFpbXBvcnRhbnQ7XG59XG4uY2FydG9kYi1mdWxsc2NyZWVuIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTlweCA1cHg7XG59XG5cbi8qIENhcnRvREIgU2hhcmUgRGlhbG9nIHN0eWxlcyAqL1xuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cge1xuICBkaXNwbGF5Om5vbmU7XG59XG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLm1hbXVmYXMge1xuICBwb3NpdGlvbjpmaXhlZDtcbiAgdG9wOjA7XG4gIGxlZnQ6MDtcbiAgcmlnaHQ6MDtcbiAgYm90dG9tOjA7XG4gIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwgMC41KTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB6LWluZGV4OjEwMDAwMDE7XG59XG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLm1vZGFsIHtcblxuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMTZweDtcbiAgbWFyZ2luLXRvcDogLTEwN3B4O1xuXG4gIHdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTUpIDAgMCAwIDRweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTUpIDAgMCAwIDRweDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE1KSAwIDAgMCA0cHg7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LWZhbWlseTogXCJTZWdvZSBVSSBCb2xkXCIsIFwiSGVsdmV0aWNhIEJvbGRcIiwgXCJIZWx2ZXRpY2FcIiwgQXJpYWw7XG4gIGNvbG9yOiAjMzMzO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuLmNhcnRvZGItc2hhcmUtZGlhbG9nLnNtYWxsIC5tb2RhbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTA4cHg7XG4gIG1hcmdpbi10b3A6IC0xNjVweDtcbn1cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZy5zbWFsbCAuYmxvY2sgLmJ1dHRvbnMge1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG59XG4uY2FydG9kYi1zaGFyZS1kaWFsb2cuc21hbGwgLmJsb2NrIC5idXR0b25zIHVsIHtcbiAgYm9yZGVyOm5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZy5zbWFsbCAuYmxvY2sgLmNvbnRlbnQgLmVtYmVkX2NvZGUge1xuICBwYWRkaW5nOiAwO1xufVxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5tb2RhbCBhLmNsb3NlIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDotMTVweDtcbiAgcmlnaHQ6LTE1cHg7XG4gIHdpZHRoOjMwcHg7XG4gIGhlaWdodDoxNXB4O1xuICBwYWRkaW5nOjdweCAwIDhweDtcbiAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgZm9udDpub3JtYWwgMTNweCBcIkhlbHZldGljYVwiLEFyaWFsO1xuICB0ZXh0LWRlY29yYXRpb246bm9uZTtcblxuICB3ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE1KSAwIDAgMCA0cHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE1KSAwIDAgMCA0cHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xNSkgMCAwIDAgNHB4O1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogNTBweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcblxuICBsaW5lLWhlaWdodDoxNHB4O1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgei1pbmRleDoxMDU7XG59XG5cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZyAuYmxvY2sge1xuICBiYWNrZ3JvdW5kOndoaXRlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gIHdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTUpIDAgMCA0cHggM3B4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xNSkgMCAwIDRweCAzcHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xNSkgMCAwIDRweCAzcHg7XG5cbn1cblxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAyNHB4IDAgMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0U1RTVFNTtcbn1cblxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyBsaSB7XG4gIGxpc3Qtc3R5bGU6bm9uZTtcbiAgbWFyZ2luOiAwIDAgNHB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZyAuYmxvY2sgLmJ1dHRvbnMgbGkgYSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTNweCAxMXB4IDMwcHg7XG4gIHdpZHRoOiAxMjFweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDpib2xkO1xuICBjb2xvcjojZmZmO1xuICBiYWNrZ3JvdW5kOiMzRDhGQ0E7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtby1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuXG4vKiBpUGhvbmUgbGFuZHNjYXBlICovXG5AbWVkaWEgb25seSBzY3JlZW5cbmFuZCAobWluLWRldmljZS13aWR0aCA6IDMyMHB4KVxuYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogNDgwcHgpXG5hbmQgKG9yaWVudGF0aW9uIDogbGFuZHNjYXBlKSB7XG5cbiAgLyouY2FydG9kYi1tYXAtd3JhcHBlciBkaXYuY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5kZXNrdG9wIHsgZGlzcGxheTpub25lOyB9Ki9cbiAgLyouY2FydG9kYi1tYXAtd3JhcHBlciBkaXYuY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5tb2JpbGUgIHsgZGlzcGxheTpibG9jazsgfSovXG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNjBweCkgYW5kIChtYXgtd2lkdGg6IDQ5MHB4KSB7XG5cbiAgLypkaXYuY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5kZXNrdG9wIHsgZGlzcGxheTpub25lOyB9Ki9cbiAgLypkaXYuY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5tb2JpbGUgIHsgZGlzcGxheTpibG9jazsgfSovXG5cbn1cblxuLyogaVBob25lIHBvcnRyYWl0ICovXG5AbWVkaWEgb25seSBzY3JlZW5cbmFuZCAobWluLWRldmljZS13aWR0aCA6IDMyMHB4KVxuYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogNDgwcHgpIHtcblxuICAvKi5jYXJ0b2RiLW1hcC13cmFwcGVyIGRpdi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LmRlc2t0b3AgeyBkaXNwbGF5Om5vbmU7IH0qL1xuICAvKi5jYXJ0b2RiLW1hcC13cmFwcGVyIGRpdi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0Lm1vYmlsZSAgeyBkaXNwbGF5OmJsb2NrOyB9Ki9cblxuICBkaXYuY2FydG9kYi1oZWFkZXIgaDEge1xuICAgIHdpZHRoOjc4JTtcbiAgfVxuICBkaXYuY2FydG9kYi1oZWFkZXIgPiBwIHtcbiAgICB3aWR0aDo4MCU7XG4gIH1cblxufVxuXG4vKiBpUGFkICovXG5AbWVkaWEgb25seSBzY3JlZW5cbmFuZCAobWluLWRldmljZS13aWR0aCA6IDc2OHB4KVxuYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogMTAyNHB4KSB7XG5cbiAgZGl2LmNhcnRvZGItaGVhZGVyIGgxIHtcbiAgICB3aWR0aDo3OCU7XG4gIH1cbiAgZGl2LmNhcnRvZGItaGVhZGVyID4gcCB7XG4gICAgd2lkdGg6ODAlO1xuICB9XG5cbn1cblxuQG1lZGlhXG5vbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG5vbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG5vbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbm9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbm9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxub25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG5cbiAgZGl2LmNhcnRvZGItaGVhZGVyIGgxIHtcbiAgICB3aWR0aDo3OCU7XG4gIH1cbiAgZGl2LmNhcnRvZGItaGVhZGVyID4gcCB7XG4gICAgd2lkdGg6ODAlO1xuICB9XG4gIGRpdi5jYXJ0b2RiLXpvb20gYSB7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL290aGVyQDJ4LnBuZycpIG5vLXJlcGVhdCAwIDAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEzcHggMzRweCFpbXBvcnRhbnQ7XG4gIH1cbiAgZGl2LmNhcnRvZGItem9vbSBhLnpvb21faW4ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02OHB4IDlweCFpbXBvcnRhbnRcbiAgfVxuICBkaXYuY2FydG9kYi16b29tIGEuem9vbV9vdXQge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246LTk0cHggMTBweCFpbXBvcnRhbnQ7XG4gIH1cbiAgZGl2LmNhcnRvZGItaGVhZGVyIGRpdi5zb2NpYWwgYS5mYWNlYm9vayB7XG4gICAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL290aGVyQDJ4LnBuZycpIG5vLXJlcGVhdCAwIDAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEzcHggMzRweCFpbXBvcnRhbnQ7XG4gIH1cbiAgZGl2LmNhcnRvZGItaGVhZGVyIGRpdi5zb2NpYWwgYS50d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvb3RoZXJAMngucG5nJykgbm8tcmVwZWF0IC0yNnB4IDAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEzcHggMzRweCFpbXBvcnRhbnQ7XG4gIH1cbiAgZGl2LmNhcnRvZGItc2VhcmNoYm94IHNwYW4ubG9hZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2xvYWRlckAyeC5naWYnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHghaW1wb3J0YW50O1xuICB9XG4gIGRpdi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgZGl2LmNhcnRvZGItc2VhcmNoYm94IHNwYW4ubG9hZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2RhcmtfbG9hZGVyQDJ4LmdpZicpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyICMyOTI5MjkhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4IWltcG9ydGFudDtcbiAgfVxuICBkaXYuY2FydG9kYi10aWxlcy1sb2FkZXIgZGl2LmxvYWRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9sb2FkZXJAMnguZ2lmJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgd2hpdGUhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4IWltcG9ydGFudDtcbiAgfVxuICBkaXYuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQuc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvb3RoZXJAMngucG5nJykgbm8tcmVwZWF0IC01NnB4IDAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEzcHggMzRweCFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQuc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvbW9iaWxlX3pvb20ucG5nJykgbm8tcmVwZWF0IDAgMCFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIGRpdi5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IGEucHJldiB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9zbGlkZV9sZWZ0QDJ4LnBuZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTVweDtcbiAgfVxuICAuY2FydG9kYi1tb2JpbGUgZGl2LmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgZGl2LnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgYS5uZXh0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NsaWRlX3JpZ2h0QDJ4LnBuZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTVweDtcbiAgfVxufVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIC5idXR0b25zIGxpIGEudHdpdHRlciB7XG4gIGJhY2tncm91bmQ6IzNEOEZDQSB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3R3aXR0ZXIucG5nJykgbm8tcmVwZWF0IDEwcHggNTAlO1xufVxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyBsaSBhLnR3aXR0ZXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiMzMjcyQTA7IH1cblxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyBsaSBhLmZhY2Vib29rIHtcbiAgYmFja2dyb3VuZDojM0I1OTk4IHVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvZmFjZWJvb2sucG5nJykgbm8tcmVwZWF0IDEwcHggNTAlO1xufVxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyBsaSBhLmZhY2Vib29rOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzI4M0M2NTsgfVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIC5idXR0b25zIGxpIGEubGluayB7XG4gIGJhY2tncm91bmQ6I2YzN2Y3YiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2xpbmsucG5nJykgbm8tcmVwZWF0IDEwcHggNTAlO1xufVxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayAuYnV0dG9ucyBsaSBhLmxpbms6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiNEQzYxNjE7IH1cblxuLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayBoMywgLmNhcnRvZGItc2hhcmUtZGlhbG9nIC5ibG9jayBwLCAuY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIGEsIC5jYXJ0b2RiLXNoYXJlLWRpYWxvZyAuYmxvY2sgbGFiZWwge2xldHRlci1zcGFjaW5nOjA7fVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIGRpdi5oZWFkIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHBhZGRpbmc6IDVweCAyNnB4O1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRTVFNUU1O1xufVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIGgzIHsgbWFyZ2luOiAxZW0gMDsgZm9udC1zaXplOiAxNXB4OyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIGg0IHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIHBhZGRpbmc6IDA7IG1hcmdpbjogMDtcbiAgbWFyZ2luOiAwIDAgOXB4IDA7XG59XG5cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZyAuYmxvY2sgLmNvbnRlbnQgLmJ1dHRvbnMsXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIC5jb250ZW50IC5lbWJlZF9jb2RlIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7IHpvb206IDE7ICpkaXNwbGF5OiBpbmxpbmU7IHZlcnRpY2FsLWFsaWduOnRvcDtcbn1cbi5jYXJ0b2RiLXNoYXJlLWRpYWxvZyAuYmxvY2sgLmNvbnRlbnQgLmVtYmVkX2NvZGUge1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG59XG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIC5jb250ZW50IC5lbWJlZF9jb2RlIHRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lO1xuICBwYWRkaW5nOiA1cHg7XG4gIHdpZHRoOiAxNTNweDtcbiAgaGVpZ2h0OiAxMDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MzQzNDMztcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxufVxuXG4uY2FydG9kYi1zaGFyZS1kaWFsb2cgLmJsb2NrIC5jb250ZW50IHtcbiAgcGFkZGluZzogMjBweCAyNnB4IDMwcHggMjZweDtcbn1cblxuLyogTU9CSUxFICovXG5cbi5jYXJ0b2RiLW1vYmlsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDAwMDAwMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50ICB7XG4gIHBhZGRpbmc6IDA7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItaGVhZGVyIC5oZ3JvdXAge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtZnVsbHNjcmVlbiAuY2FydG9kYi1oZWFkZXIgLmhncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gIG1hcmdpbi1yaWdodDogNzBweDtcbn1cblxuLmNhcnRvZGItbW9iaWxlLndpdGgtaGVhZGVyIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAuaGdyb3VwIC50aXRsZSxcbi5jYXJ0b2RiLW1vYmlsZS53aXRoLWhlYWRlciAuY2FydG9kYi1oZWFkZXIgLmNvbnRlbnQgLmhncm91cCAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1oZWFkZXIgLmNvbnRlbnQgLnRpdGxlICxcbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1oZWFkZXIgLmNvbnRlbnQgLmRlc2NyaXB0aW9uICB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA1OHB4O1xuICB3aWR0aDogNThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB6LWluZGV4OiA5OTk5OTtcbn1cbi5jYXJ0b2RiLW1vYmlsZS53aXRoLXNsaWRlcyAuY2FydG9kYi1oZWFkZXIsXG4uY2FydG9kYi1tb2JpbGUud2l0aC1oZWFkZXIgLmNhcnRvZGItaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtZnVsbHNjcmVlbiAuY2FydG9kYi1oZWFkZXIgLmNvbnRlbnQgLmZ1bGxzY3JlZW4ge1xuICBkaXNwbGF5OmJsb2NrO1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtaGVhZGVyIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAuZnVsbHNjcmVlbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC5mdWxsc2NyZWVuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCA1cHggMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDAgNXB4IDA7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAwIDAgNXB4IDA7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDAgMCA1cHggMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCAwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBcImVhc2UtaW5cIjtcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC1vLXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIHRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG59XG4uY2FydG9kYi1tb2JpbGUud2l0aC1oZWFkZXIgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC5mdWxsc2NyZWVuIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMzUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDA7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC5mdWxsc2NyZWVuOmhvdmVyLFxuLmNhcnRvZGItbW9iaWxlLndpdGgtaGVhZGVyIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAuZnVsbHNjcmVlbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjMpO1xufVxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAuZnVsbHNjcmVlbjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2Z1bGxzY3JlZW5fbW9iaWxlLnBuZycpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI4cHggMjhweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtc2VhcmNoIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudG9nZ2xlLFxuLmNhcnRvZGItbW9iaWxlLndpdGgtbGF5ZXJzIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudG9nZ2xlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC50b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIC41KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgMCA1cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDAgNXB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMCAwIDAgNXB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAwIDAgMCA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDVweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IFwiZWFzZS1pblwiO1xuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC1tcy10cmFuc2Zvcm0tc3R5bGU6IFwiZWFzZS1pblwiO1xuICAtby10cmFuc2Zvcm0tc3R5bGU6IFwiZWFzZS1pblwiO1xuICB0cmFuc2Zvcm0tc3R5bGU6IFwiZWFzZS1pblwiO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7XG4gIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbiAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbiAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xufVxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudG9nZ2xlOmhvdmVyLFxuLmNhcnRvZGItbW9iaWxlLndpdGgtaGVhZGVyIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMyk7XG59XG4uY2FydG9kYi1tb2JpbGUud2l0aC1oZWFkZXIgLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC50b2dnbGUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjM1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAwO1xuICAtby1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudG9nZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvdG9nZ2xlX2FzaWRlLnBuZycpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtem9vbSAuY2FydG9kYi16b29tIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB6LWluZGV4OjEwMDAwMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0yNTBweDtcbiAgYmFja2dyb3VuZDojMkQyRDJEO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHotaW5kZXg6IDEwMDAwMTA7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5jYXJ0b2RiLXNlYXJjaGJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDA7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjpub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzUwNTA1MDtcbiAgei1pbmRleDogMTA1O1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQudGV4dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgcG9zaXRpb246IGluaXRpYWw7XG4gIHRvcDppbml0aWFsO1xuICBsZWZ0OmluaXRpYWw7XG4gIGhlaWdodDogMzlweDtcbiAgcGFkZGluZzogMTBweCAxOHB4O1xuICB3aWR0aDogMTg1cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5jYXJ0b2RiLXNlYXJjaGJveCBpbnB1dC50ZXh0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQudGV4dDotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOC0gKi9cbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQudGV4dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTkrICovXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmNhcnRvZGItc2VhcmNoYm94IGlucHV0LnRleHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggc3Bhbi5sb2FkZXIge1xuICBsZWZ0OiBpbml0aWFsO1xuICB0b3A6IDE4cHg7XG4gIHJpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2RhcmtfbG9hZGVyLmdpZicpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQuc3VibWl0IHtcbiAgcmlnaHQ6IDE4cHg7XG4gIHRvcDogMjNweDtcbiAgYmFja2dyb3VuZDojZjFmMWYxO1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBsZWZ0OmluaXRpYWw7XG4gIG91dGxpbmU6bm9uZTtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9tb2JpbGVfem9vbS5wbmcnKSBuby1yZXBlYXQgMCAwO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLnNjcm9sbHBhbmUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdXRsaW5lOm5vbmU7XG4gIC8qcGFkZGluZy1ib3R0b206IDI1cHg7Ki9cbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLnNjcm9sbHBhbmUgLmpzcENvbnRhaW5lciB7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwUGFuZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwVmVydGljYWxCYXIgICB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogN3B4OyB3aWR0aDogNXB4OyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6IG5vbmU7IHotaW5kZXg6IDIwOyB9XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5zY3JvbGxwYW5lIC5qc3BWZXJ0aWNhbEJhciAqIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5zY3JvbGxwYW5lIC5qc3BDYXAgeyBkaXNwbGF5OiBub25lOyB9XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5zY3JvbGxwYW5lIC5qc3BUcmFjayB7IGJhY2tncm91bmQ6IG5vbmU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwRHJhZyB7IGJhY2tncm91bmQ6IHJnYmEoI0JCQiwgLjUpOyBib3JkZXItcmFkaXVzOjVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDA7IGxlZnQ6IDA7IGN1cnNvcjogcG9pbnRlcjsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwQXJyb3cgeyBiYWNrZ3JvdW5kOiBub25lOyB0ZXh0LWluZGVudDogLTIwMDAwcHg7IGRpc3BsYXk6IGJsb2NrOyBjdXJzb3I6IHBvaW50ZXI7IH1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLnNjcm9sbHBhbmUgLmpzcFZlcnRpY2FsQmFyIC5qc3BBcnJvdyB7IGhlaWdodDogMTBweDsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwVmVydGljYWxCYXIgLmpzcEFycm93OmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAuc2Nyb2xscGFuZSAuanNwQ29ybmVyIHsgYmFja2dyb3VuZDogI2VlZWVmNDsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMTAwJTsgfVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyID4gaDMge1xuICBwYWRkaW5nOiAyM3B4IDIwcHg7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBmb250OiBib2xkIDEycHggXCJIZWx2ZXRpY2FcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQ6ICMyOTI5Mjk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNTg1ODU4O1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNTg1ODU4O1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaTpsYXN0LWNoaWxkIGgzLFxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaSBhLnRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgd2lkdGg6IDIxcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogIzE5MTkxOTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRvcDogMnB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpIGEudG9nZ2xlLmhpZGUge1xuICBkaXNwbGF5Om5vbmU7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpLmhpZGRlbiBhLnRvZ2dsZTpiZWZvcmUge1xuICBsZWZ0OiAwO1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaSBhLnRvZ2dsZTpiZWZvcmUge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgY29udGVudDonJztcbiAgdG9wOjFweDtcbiAgcmlnaHQ6MDtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiA3cHg7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG5cbiAgYmFja2dyb3VuZDogI2ZmZjtcblxufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaSBoMyB7XG5cbiAgZm9udDogYm9sZCAxMnB4IFwiSGVsdmV0aWNhXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAxMnB4IDAgMTNweCAwO1xufVxuXG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpLmhhcy10b2dnbGUgaDMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpLmhhcy1sZWdlbmQuaGlkZGVuIGgzLFxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaS5oaWRkZW4gaDMge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgYm9yZGVyOm5vbmU7XG4gIHBhZGRpbmc6IDEycHggMCAxM3B4IDA7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpLmhpZGRlbi5oYXMtbGVnZW5kIGRpdi5jYXJ0b2RiLWxlZ2VuZCB7XG4gIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpLmhpZGRlbi5oYXMtbGVnZW5kIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkuaGFzLWxlZ2VuZCBoMyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNTg1ODU4O1xufVxuLmNhcnRvZGItbW9iaWxlIC5hc2lkZSAubGF5ZXItY29udGFpbmVyIC5sYXllcnMgPiBsaSBkaXYuY2FydG9kYi1sZWdlbmQge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgYm9yZGVyOm5vbmU7XG4gIHdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMTBweCAwIDE4cHggMDtcbiAgcGFkZGluZzogMnB4IDAgMCAwO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBjdXJzb3I6IHRleHQ7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpIGRpdi5jYXJ0b2RiLWxlZ2VuZC5idWJibGUgdWwgbGkuZ3JhcGgge1xuICBib3JkZXI6bm9uZTtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkgZGl2LmNhcnRvZGItbGVnZW5kLmJ1YmJsZSB1bCBsaS5ncmFwaCAuYnViYmxlcyB7XG4gIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9kYXJrX2J1YmJsZXMucG5nJykgbm8tcmVwZWF0IDAgMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkgZGl2LmNhcnRvZGItbGVnZW5kIC5ncmFwaCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxQTExMDg7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpIGRpdi5jYXJ0b2RiLWxlZ2VuZCB1bCBsaSB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkgZGl2LmNhcnRvZGItbGVnZW5kLmludGVuc2l0eSB1bCBsaS5ncmFwaCB7XG4gIGhlaWdodDogMjJweDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYXNpZGUgLmxheWVyLWNvbnRhaW5lciAubGF5ZXJzID4gbGkgZGl2LmNhcnRvZGItbGVnZW5kIHVsIGxpIC5idWxsZXQge1xuICBtYXJnaW4tdG9wOiAycHg7XG59XG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpIGRpdi5jYXJ0b2RiLWxlZ2VuZCB1bCBsaS5tYXgsXG4uY2FydG9kYi1tb2JpbGUgLmFzaWRlIC5sYXllci1jb250YWluZXIgLmxheWVycyA+IGxpIGRpdi5jYXJ0b2RiLWxlZ2VuZCB1bCBsaS5taW4ge1xuICBmb250LXNpemU6IDEwcHg7XG59XG4uY2FydG9kYi1tb2JpbGUgZGl2LmNhcnRvZGItdGltZXNsaWRlciAuc2xpZGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOiAxN3B4O1xufVxuLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnNsaWRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIge1xuICBoZWlnaHQ6NDBweDtcbiAgd2lkdGg6YXV0bztcbiAgbWFyZ2luLWJvdHRvbTowO1xuXG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAtbXMtYm9yZGVyLXJhZGl1czogMDtcbiAgLW8tYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjRTVFNUU1O1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwgLjIpO1xuICB6LWluZGV4OiAxMDAwMDAxO1xufVxuLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnNsaWRlci13cmFwcGVyIHtcbiAgZGlzcGxheTpibG9jaztcbiAgd2lkdGg6MTAwJTtcbiAgaGVpZ2h0OjRweDtcbiAgcGFkZGluZzowO1xufVxuLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIge1xuICB3aWR0aDoxMDAlIWltcG9ydGFudDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSBkaXYuY2FydG9kYi10aW1lc2xpZGVyIHVsIHtcbiAgd2lkdGg6MTAwJTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGNsZWFyOmJvdGg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbi5jYXJ0b2RiLW1vYmlsZSBkaXYuY2FydG9kYi10aW1lc2xpZGVyIHVsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6I2ZmZjtcbiAgZmxvYXQ6bGVmdDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSBkaXYuY2FydG9kYi10aW1lc2xpZGVyIHVsIGxpLmNvbnRyb2xzIHtcbiAgd2lkdGg6IDUwcHg7XG59XG4uY2FydG9kYi1tb2JpbGUgZGl2LmNhcnRvZGItdGltZXNsaWRlciB1bCBsaS50aW1lIHtcbiAgd2lkdGg6IDEyMHB4O1xufVxuLmNhcnRvZGItbW9iaWxlIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgdWwgbGkubGFzdCB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBsZWZ0OiAxODBweDtcbiAgcmlnaHQ6IDEwcHg7XG59XG4uY2FydG9kYi1tb2JpbGUgZGl2LmNhcnRvZGItdGltZXNsaWRlciB1bCBsaS5jb250cm9scyBhLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAtbXMtYm9yZGVyLXJhZGl1czogMDtcbiAgLW8tYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1hdHRyaWJ1dGlvbiB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDlweCAxMnB4O1xuICBtYXJnaW46IDA7XG4gIHJpZ2h0OiAyMHB4O1xuICBib3R0b206IDIwcHg7XG4gIGNvbG9yOiM5OTk5OTk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHotaW5kZXg6IDEwMDAwMDAxO1xuICBmb250OjEycHgvMS41IFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1hdHRyaWJ1dGlvbiBhIHtcbiAgY29sb3I6ICMwMDc4QTg7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItYXR0cmlidXRpb24gbGkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDNweDtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7IHpvb206IDE7ICpkaXNwbGF5OiBpbmxpbmU7IHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItYXR0cmlidXRpb24gbGkgYSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBjb2xvcjogIzAwNzhBODtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuYmFja2Ryb3Age1xuICBkaXNwbGF5Om5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDowOyBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0yMCk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MjApO1xuICBvcGFjaXR5OiAwLjI7XG4gIHotaW5kZXg6IDEwMDAwMDAwO1xufVxuLmNhcnRvZGItbW9iaWxlLndpdGgtdG9ycXVlIC5jYXJ0b2RiLWF0dHJpYnV0aW9uLWJ1dHRvbiB7XG4gIGJvdHRvbTogNTlweDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1hdHRyaWJ1dGlvbi1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyMHB4O1xuICBib3R0b206IDIwcHg7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9iZy1hdHRyaWJ1dGlvbi1idXR0b24ucG5nJykgbm8tcmVwZWF0IDQ5JSA1MCU7XG4gIGZvbnQ6MTJweC8xLjUgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLWF0dHJpYnV0aW9uLWJ1dHRvbjpiZWZvcmUge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogLTNweDtcbiAgbGVmdDogLTNweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcblxuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBcImVhc2UtaW5cIjtcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC1vLXRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIHRyYW5zZm9ybS1zdHlsZTogXCJlYXNlLWluXCI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyO1xuICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlcjtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3JkZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gIC1tb3otdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gIC1vLXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1hdHRyaWJ1dGlvbi1idXR0b246aG92ZXI6YmVmb3JlIHtcbiAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuLmNhcnRvZGItbW9iaWxlIC5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgei1pbmRleDogOTtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAucHJldiB7XG4gIG1hcmdpbjogMCAyMHB4IDAgMDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAubmV4dCB7XG4gIG1hcmdpbjogMCAwIDAgMjBweDtcbn1cbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAucHJldjphZnRlcixcbi5jYXJ0b2RiLW1vYmlsZSAuY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAubmV4dDpiZWZvcmUsXG4uY2FydG9kYi1tb2JpbGUgLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMRUdFTkRTICovXG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC1zdGFjayB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBib3R0b206IDM1cHg7XG4gIHJpZ2h0OiAyMHB4O1xuXG4gIHdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgei1pbmRleDogMTA1O1xuXG4gIGN1cnNvcjogdGV4dDtcbn1cbmRpdi5jYXJ0b2RiLWxlZ2VuZC1zdGFjayBkaXYuY2FydG9kYi1sZWdlbmQge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdG9wOiBhdXRvOyByaWdodDogYXV0bzsgbGVmdDogYXV0bzsgYm90dG9tOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6bm9uZTtcbiAgbWFyZ2luOiAwO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAtbXMtYm9yZGVyLXJhZGl1czogMDtcbiAgLW8tYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTk5O1xuXG4gIHdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgY3Vyc29yOiB0ZXh0O1xufVxuZGl2LmNhcnRvZGItbGVnZW5kLXN0YWNrIGRpdi5jYXJ0b2RiLWxlZ2VuZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbmRpdi5jYXJ0b2RiLWxlZ2VuZCB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBib3R0b206IDM1cHg7XG4gIHJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAxM3B4IDE1cHggMTRweCAxNXB4O1xuXG4gIGZvbnQ6bm9ybWFsIDEzcHggXCJIZWx2ZXRpY2FcIixBcmlhbDtcbiAgY29sb3I6Izg1ODU4NTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtby1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgei1pbmRleDogMTA1O1xufVxuZGl2LmNhcnRvZGItbGVnZW5kIC5sZWdlbmQtdGl0bGUge1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgY29sb3I6IzY2NjtcbiAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgZm9udC1zaXplOjExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5kaXYuY2FydG9kYi1sZWdlbmQgdWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5kaXYuY2FydG9kYi1sZWdlbmQgdWwgbGkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYVwiLCBBcmlhbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cbi8qIE5vbmUgbGVnZW5kICovXG5kaXYuY2FydG9kYi1sZWdlbmQtc3RhY2sgZGl2LmNhcnRvZGItbGVnZW5kLm5vbmUsXG5kaXYuY2FydG9kYi1sZWdlbmQubm9uZSB7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuZGl2Lm1hcCBkaXYuY2FydG9kYi1sZWdlbmQtc3RhY2sgZGl2LmNhcnRvZGItbGVnZW5kLndyYXBwZXIgLmNhcnRvZGItbGVnZW5kIHtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTpibG9jaztcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLndyYXBwZXIgLmNhcnRvZGItbGVnZW5kIHtcbiAgZGlzcGxheTpibG9jaztcbiAgcGFkZGluZzogMDtcbn1cblxuLyogQ3VzdG9tIGxlZ2VuZCAqL1xuXG5kaXYuY2FydG9kYi1sZWdlbmQuY3VzdG9tIHVsIGxpLFxuZGl2LmNhcnRvZGItbGVnZW5kLmNhdGVnb3J5IHVsIGxpLFxuZGl2LmNhcnRvZGItbGVnZW5kLmNvbG9yIHVsIGxpIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDdweCAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXdlaWdodDpib2xkO1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2FcIiwgQXJpYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGhlaWdodDogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbn1cblxuXG5kaXYuY2FydG9kYi1sZWdlbmQuY3VzdG9tIHVsIGxpLmJrZyxcbmRpdi5jYXJ0b2RiLWxlZ2VuZC5jYXRlZ29yeSB1bCBsaS5ia2csXG5kaXYuY2FydG9kYi1sZWdlbmQuY29sb3IgdWwgbGkuYmtnIHtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWFyZ2luOiAwIDAgMTVweCAwO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuY3VzdG9tIHVsIGxpLmJrZyAuYnVsbGV0LFxuZGl2LmNhcnRvZGItbGVnZW5kLmNhdGVnb3J5IHVsIGxpLmJrZyAuYnVsbGV0LFxuZGl2LmNhcnRvZGItbGVnZW5kLmNvbG9yIHVsIGxpLmJrZyAuYnVsbGV0IHtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMyk7XG4gIGJvcmRlcjpub25lO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjZweCFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIhaW1wb3J0YW50O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDA7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5jdXN0b20gdWwgbGkuYmtnOmxhc3QtY2hpbGQsXG5kaXYuY2FydG9kYi1sZWdlbmQuY29sb3IgdWwgbGkuYmtnOmxhc3QtY2hpbGQsXG5kaXYuY2FydG9kYi1sZWdlbmQuY2F0ZWdvcnkgdWwgbGkuYmtnOmxhc3QtY2hpbGQgeyBtYXJnaW46IDAgMCA1cHggMDsgfVxuXG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5jdXN0b20gdWwgbGk6bGFzdC1jaGlsZCxcbmRpdi5jYXJ0b2RiLWxlZ2VuZC5jb2xvciB1bCBsaTpsYXN0LWNoaWxkLFxuZGl2LmNhcnRvZGItbGVnZW5kLmNhdGVnb3J5IHVsIGxpOmxhc3QtY2hpbGQgeyBtYXJnaW46IDA7IH1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmN1c3RvbSB1bCBsaSAuYnVsbGV0LFxuZGl2LmNhcnRvZGItbGVnZW5kLmNhdGVnb3J5IHVsIGxpIC5idWxsZXQsXG5kaXYuY2FydG9kYi1sZWdlbmQuY29sb3IgdWwgbGkgLmJ1bGxldCB7XG4gIGZsb2F0OmxlZnQ7XG4gIG1hcmdpbjogMCA1cHggMCAwO1xuICB3aWR0aDogM3B4O1xuICBoZWlnaHQ6IDNweDtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIHBhZGRpbmc6IDJweDtcbiAgYmFja2dyb3VuZDojZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgei1pbmRleDogMTAwMDtcbn1cblxuLyogQnViYmxlIGxlZ2VuZCAqL1xuZGl2LmNhcnRvZGItbGVnZW5kLmJ1YmJsZSB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuYnViYmxlIHVsIHtcbiAgY2xlYXI6Ym90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBkaXNwbGF5OiAtbW96LWlubGluZS1zdGFjaztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuYnViYmxlIHVsIGxpIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB0b3A6IDE1cHg7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5idWJibGUgdWwgbGkuZ3JhcGgge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IDAgMTBweDtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmJ1YmJsZSB1bCBsaS5ncmFwaCAuYnViYmxlcyB7XG4gIGJhY2tncm91bmQ6dXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9idWJibGVzLnBuZycpIG5vLXJlcGVhdCAwIDA7XG4gIHdpZHRoOjEyMHB4OyBoZWlnaHQ6NDBweDtcbn1cblxuXG4vKiBDaG9yb3BsZXRoIGxlZ2VuZCAqL1xuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGgge1xuICBwYWRkaW5nOiAxM3B4IDE1cHggMTVweCAxNXB4O1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuY2hvcm9wbGV0aCB1bCB7XG4gIG1pbi13aWR0aDogMjEwcHg7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5jaG9yb3BsZXRoIGxpLm1pbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMCA1cHggMDtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkubWF4IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCA1cHggMDtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkuZ3JhcGggZGl2IHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMjJweDtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkuZ3JhcGggLnF1YXJ0aWxlIHsgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkuZ3JhcGguY291bnRfNyAucXVhcnRpbGUgeyB3aWR0aDogMzBweDsgfVxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkuZ3JhcGguY291bnRfNSAucXVhcnRpbGUgeyB3aWR0aDogNDJweDsgfVxuZGl2LmNhcnRvZGItbGVnZW5kLmNob3JvcGxldGggbGkuZ3JhcGguY291bnRfMyAucXVhcnRpbGUgeyB3aWR0aDogNzBweDsgfVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuY2hvcm9wbGV0aCBsaS5ncmFwaCAuY29sb3JzIHtcbiAgZGlzcGxheTogdGFibGUtcm93O1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuY2hvcm9wbGV0aCBsaS5ncmFwaCB7XG4gIGNsZWFyOmJvdGg7XG4gIG92ZXJmbG93OmhpZGRlbjtcblxuICBkaXNwbGF5OiB0YWJsZTtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMnB4O1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgLypib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpOyovXG4gIGJvcmRlcjogMXB4IHNvbGlkICNiM2IzYjM7XG59XG5cbi8qIERlbnNpdHkgbGVnZW5kICovXG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSB7XG4gIHBhZGRpbmc6IDEzcHggMTVweCAxNXB4IDE1cHg7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5kZW5zaXR5IHVsIHtcbiAgbWluLXdpZHRoOiAyMTBweDtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmRlbnNpdHkgbGkubWluIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwIDVweCAwO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5tYXgge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDVweCAwO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5ncmFwaCBkaXYge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5ncmFwaCAucXVhcnRpbGUgeyBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5ncmFwaC5jb3VudF83IC5xdWFydGlsZSB7IHdpZHRoOiAzMHB4OyB9XG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5ncmFwaC5jb3VudF81IC5xdWFydGlsZSB7IHdpZHRoOiA0MnB4OyB9XG5kaXYuY2FydG9kYi1sZWdlbmQuZGVuc2l0eSBsaS5ncmFwaC5jb3VudF8zIC5xdWFydGlsZSB7IHdpZHRoOiA3MHB4OyB9XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5kZW5zaXR5IGxpLmdyYXBoIC5jb2xvcnMge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5kZW5zaXR5IGxpLmdyYXBoIHtcbiAgY2xlYXI6Ym90aDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMnB4O1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgLypib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpOyovXG4gIGJvcmRlcjogMXB4IHNvbGlkICNiM2IzYjM7XG59XG5cbi8qIEludGVuc2l0eSBsZWdlbmQgKi9cblxuZGl2LmNhcnRvZGItbGVnZW5kLmludGVuc2l0eSB7XG4gIHBhZGRpbmc6IDEzcHggMTVweCAxNXB4IDE1cHg7XG59XG5cbmRpdi5jYXJ0b2RiLWxlZ2VuZC5pbnRlbnNpdHkgdWwge1xuICBtaW4td2lkdGg6IDIxMHB4O1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuaW50ZW5zaXR5IGxpLm1pbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMCA1cHggMDtcbn1cblxuZGl2LmNhcnRvZGItbGVnZW5kLmludGVuc2l0eSBsaS5tYXgge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDVweCAwO1xufVxuXG5kaXYuY2FydG9kYi1sZWdlbmQuaW50ZW5zaXR5IGxpLmdyYXBoIHtcbiAgY2xlYXI6Ym90aDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMnB4O1xuICBiYWNrZ3JvdW5kOiNmMWYxZjE7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtby1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAvKmJvcmRlcjogMXB4IHNvbGlkICNiM2IzYjM7Ki9cbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtby1ib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC1tcy1ib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG59XG5cbi8qIENhcnRvREIgWm9vbSBzdHlsZXMgKi9cblxuZGl2LmNhcnRvZGItem9vbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6bGVmdDtcbiAgZGlzcGxheTpibG9jaztcbiAgbWFyZ2luOiAyMHB4IDAgMCAyMHB4O1xuICB3aWR0aDogMjhweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICB6LWluZGV4OiAxMDU7XG59XG5cbmRpdi5jYXJ0b2RiLXpvb20gYSB7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogMDtcbiAgZm9udDogYm9sZCAyMHB4IFwiQXJpYWxcIjtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL290aGVyLnBuZycpIG5vLXJlcGVhdCAwIDA7XG59XG5cbmRpdi5jYXJ0b2RiLXpvb20gYS56b29tX2luIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNkU2RTY7XG4gIGJhY2tncm91bmQtcG9zaXRpb246LTY4cHggMTBweDtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiA0cHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbn1cblxuZGl2LmNhcnRvZGItem9vbSBhLnpvb21faW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOi02OHB4IC0xNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmRpdi5jYXJ0b2RiLXpvb20gYS56b29tX291dCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246LTk0cHggMTBweDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbn1cblxuZGl2LmNhcnRvZGItem9vbSBhLnpvb21fb3V0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjotOTRweCAtMTRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5kaXYuY2FydG9kYi16b29tIGEuZGlzYWJsZWQge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjApO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTIwKTtcbiAgb3BhY2l0eTogMC4yO1xufVxuXG5kaXYuY2FydG9kYi16b29tIGEuZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG5cbi8qIENhcnRvREIgem9vbSBpbmZvIGNvbnRyb2wgKi9cblxuZGl2LmNhcnRvZGItem9vbS1pbmZvIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHRvcDoxMDBweDtcbiAgbGVmdDoyMHB4O1xuICBtYXJnaW46MjBweCAwIDAgMDtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDoyOHB4O1xuICBmb250Om5vcm1hbCAxM3B4IFwiSGVsdmV0aWNhXCIsQXJpYWw7XG4gIGNvbG9yOiM4NTg1ODU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgei1pbmRleDogMTA1O1xufVxuXG5cbi8qIFRpbGVzIGxvYWRlciBjb250cm9sICovXG5cbmRpdi5jYXJ0b2RiLXRpbGVzLWxvYWRlciB7XG4gIGZsb2F0OmxlZnQ7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5kaXYuY2FydG9kYi10aWxlcy1sb2FkZXIgZGl2LmxvYWRlciB7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBkaXNwbGF5OmJsb2NrO1xuICBtYXJnaW46IDE1cHggMCAwIDIwcHg7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6MjhweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDAgMCA0cHggMnB4O1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJhY2tncm91bmQ6IHVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvbG9hZGVyLmdpZicpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIHdoaXRlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICB6LWluZGV4OiAxMDU7XG59XG5cbi8qIENhcnRvREIgbGF5ZXIgc2VsZWN0b3IgYm94ICovXG5cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDpyaWdodDtcbiAgbWFyZ2luOiAyMHB4IDIwcHggMCAwO1xuICB3aWR0aDogMTQycHg7XG4gIGhlaWdodDogMjlweDtcbiAgY29sb3I6ICNDQ0NDQ0M7XG4gIGZvbnQtc2l6ZToxM3B4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gIHotaW5kZXg6MTAwMDAwO1xufVxuXG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggYS5sYXllcnMge1xuICBmbG9hdDpsZWZ0O1xuICB3aWR0aDogMTI2cHg7XG4gIHBhZGRpbmc6IDZweCA4cHg7XG4gIGxpbmUtaGVpZ2h0OjIwcHg7XG4gIGNvbG9yOiAjQ0NDO1xuICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgZm9udC1mYW1pbHk6IFwicm9ib3RvcmVndWxhclwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBTYW5zLXNlcmlmO1xufVxuXG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggYS5sYXllcnM6aG92ZXIge1xuICBjb2xvcjojYmJiO1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGEubGF5ZXJzOmhvdmVyIC5jb3VudCB7XG4gIGJhY2tncm91bmQ6I2NjYztcbn1cblxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGEubGF5ZXJzIC5jb3VudCB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICByaWdodDo2cHg7XG4gIHRvcDo2cHg7XG4gIHdpZHRoOmF1dG87XG4gIHBhZGRpbmc6IDNweCA2cHg7XG4gIG1hcmdpbjowO1xuICBmb250LXNpemU6MTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OjEycHg7XG4gIGJhY2tncm91bmQ6I0RERERERDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCBkaXYuY2FydG9kYi1kcm9wZG93biB7XG4gIHBhZGRpbmc6MDtcbiAgbWFyZ2luOjA7XG59XG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggZGl2LmNhcnRvZGItZHJvcGRvd24gdWwge1xuICBwYWRkaW5nOjA7XG4gIG1hcmdpbjowO1xuICBsaXN0LXN0eWxlOm5vbmU7XG4gIGJvcmRlcjoxcHggc29saWQgOTk5OTk5O1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIHtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI0VERURFRDtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggZGl2LmNhcnRvZGItZHJvcGRvd24gdWwgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206bm9uZTtcbn1cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCBkaXYuY2FydG9kYi1kcm9wZG93biB1bCBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQ6I2ZmZjtcbn1cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCBkaXYuY2FydG9kYi1kcm9wZG93biB1bCBsaSBhLmxheWVyIHtcbiAgZGlzcGxheTogLW1vei1pbmxpbmUtc3RhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6MTA0cHg7XG4gIHBhZGRpbmc6IDEzcHggMTNweCAxNXB4IDEzcHg7XG4gIHpvb206IDE7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250Om5vcm1hbCAxM3B4IFwiSGVsdmV0aWNhIE5ldWVcIixcIkhlbHZldGljYVwiLEFyaWFsO1xuICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCBkaXYuY2FydG9kYi1kcm9wZG93biB1bCBsaTpob3ZlciBhLmxheWVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiM1NDU0NTQ7XG59XG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggZGl2LmNhcnRvZGItZHJvcGRvd24gdWwgbGkgYS5zd2l0Y2gge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcblxuICB0b3A6IDEzcHg7XG4gIHJpZ2h0OiAxMHB4O1xuXG4gIHRleHQtaW5kZW50Oi05OTk5cHg7XG4gIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbiAgd2lkdGg6MjNweDtcbiAgaGVpZ2h0OjEycHg7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMTJweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcblxuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogXCJsaW5lYXJcIjtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IFwibGluZWFyXCI7XG4gIC1tcy10cmFuc2Zvcm0tc3R5bGU6IFwibGluZWFyXCI7XG4gIC1vLXRyYW5zZm9ybS1zdHlsZTogXCJsaW5lYXJcIjtcbiAgdHJhbnNmb3JtLXN0eWxlOiBcImxpbmVhclwiO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7XG4gIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMTgwbXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDE4MG1zO1xuXG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICBib3JkZXI6MXB4IHNvbGlkICM0NDc1OUU7XG59XG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggZGl2LmNhcnRvZGItZHJvcGRvd24gdWwgbGkgYS5zd2l0Y2g6YmVmb3JlIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGNvbnRlbnQ6JyAnO1xuICB0b3A6MDtcbiAgbGVmdDowO1xuICB3aWR0aDoxMDAlO1xuICBoZWlnaHQ6MTAwJTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsIDAsIDAsIDAuMTgpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC4xOCksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDAuMTgpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC4xOCksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjE4KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG5cbiAgei1pbmRleDowO1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoIHNwYW4uaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMTJweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNDQ3NTllO1xuICBiYWNrZ3JvdW5kOiAjRjJGMkYyO1xuICB6LWluZGV4OiAyO1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogXCJsaW5lYXJcIjtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IFwibGluZWFyXCI7XG4gIC1tcy10cmFuc2Zvcm0tc3R5bGU6IFwibGluZWFyXCI7XG4gIC1vLXRyYW5zZm9ybS1zdHlsZTogXCJsaW5lYXJcIjtcbiAgdHJhbnNmb3JtLXN0eWxlOiBcImxpbmVhclwiO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7XG4gIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMTgwbXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDE4MG1zO1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoLmVuYWJsZWQge1xuICBib3JkZXItY29sb3I6IzQ0NzU5RTtcbiAgYmFja2dyb3VuZDojNTZBRkVGO1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoLmVuYWJsZWQgc3Bhbi5oYW5kbGUge1xuICBsZWZ0OjEycHg7XG4gIGJvcmRlci1jb2xvcjojNDQ3NTlFO1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoLmRpc2FibGVkIHtcbiAgb3BhY2l0eToxO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gIGJvcmRlci1jb2xvcjojQ0NDQ0NDO1xuICBiYWNrZ3JvdW5kOiNEOEQ4RDg7XG59XG5kaXYuY2FydG9kYi1sYXllci1zZWxlY3Rvci1ib3ggZGl2LmNhcnRvZGItZHJvcGRvd24gdWwgbGkgYS5zd2l0Y2ggc3Bhbi5oYW5kbGUge1xuICBsZWZ0OjA7XG4gIGJvcmRlci1jb2xvcjojOTk5OTk5O1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoOmhvdmVyIHtcbiAgY3Vyc29yOnBvaW50ZXIhaW1wb3J0YW50O1xufVxuZGl2LmNhcnRvZGItbGF5ZXItc2VsZWN0b3ItYm94IGRpdi5jYXJ0b2RiLWRyb3Bkb3duIHVsIGxpIGEuc3dpdGNoLndvcmtpbmcge1xuICBvcGFjaXR5OjAuNTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT01MClcIjtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0uNSk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbmRpdi5jYXJ0b2RiLWxheWVyLXNlbGVjdG9yLWJveCBkaXYuY2FydG9kYi1kcm9wZG93biB1bCBsaSBhLnN3aXRjaC53b3JraW5nOmhvdmVyIHtjdXJzb3I6ZGVmYXVsdCFpbXBvcnRhbnQ7fVxuXG5cbi8qIENhcnRvREIgc2VhcmNoIGJveCBjb250cm9sICovXG5cbmRpdi5jYXJ0b2RiLXNlYXJjaGJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTpub25lO1xuICBmbG9hdDpyaWdodDtcbiAgbWFyZ2luOiAyMHB4IDIwcHggMCAwO1xuICB3aWR0aDogMTQycHg7XG4gIGhlaWdodDoyOXB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gIHotaW5kZXg6MTA1O1xufVxuXG5kaXYuY2FydG9kYi1zZWFyY2hib3ggc3Bhbi5sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6bm9uZTtcbiAgdG9wOjNweDtcbiAgbGVmdDozcHg7XG4gIHdpZHRoOjIycHg7XG4gIGhlaWdodDoyMnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL2xvYWRlci5naWYnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB3aGl0ZTtcbiAgei1pbmRleDoxMDU7XG59XG5cbmRpdi5jYXJ0b2RiLXNlYXJjaGJveCBpbnB1dC50ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6NnB4O1xuICBsZWZ0OjMwcHg7XG4gIHdpZHRoOjEwM3B4O1xuICBwYWRkaW5nOjA7XG4gIG1hcmdpbjowO1xuICBsaW5lLWhlaWdodDoxN3B4O1xuICBib3JkZXI6bm9uZTtcbiAgYmFja2dyb3VuZDpub25lO1xuICBib3JkZXItYm90dG9tOjFweCBkb3R0ZWQgI0NDQ0NDQztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAwO1xuICAtby1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250Om5vcm1hbCAxNHB4IEFyaWFsO1xuICBjb2xvcjojOTk5OTk5O1xuICB0ZXh0LWFsaWduOmxlZnQ7XG4gIHotaW5kZXg6Mjtcbn1cblxuZGl2LmNhcnRvZGItc2VhcmNoYm94IGlucHV0LnRleHQ6Zm9jdXMge1xuICBvdXRsaW5lOm5vbmU7XG4gIGJvcmRlci1jb2xvcjojOTk5OTk5O1xuICBjb2xvcjojNjY2NjY2O1xufVxuXG5kaXYuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQuc3VibWl0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OjhweDtcbiAgdG9wOjhweDtcbiAgd2lkdGg6MTJweDtcbiAgaGVpZ2h0OjEycHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6bm9uZTtcbiAgYmFja2dyb3VuZDogdXJsKCcvL2NhcnRvZGItbGlicy5nbG9iYWwuc3NsLmZhc3RseS5uZXQvY2FydG9kYnVpL2Fzc2V0cy9lZGl0b3IvMS4wLjEvaW1hZ2VzL3RoZW1lcy9vdGhlci5wbmcnKSBuby1yZXBlYXQgLTU2cHggMDtcbiAgei1pbmRleDoxO1xufVxuXG5kaXYuY2FydG9kYi1zZWFyY2hib3ggaW5wdXQuc3VibWl0OmhvdmVyIHtcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG5cblxuLyogQ2FydG9EQiBpbmZvYm94IGNvbnRyb2wgKi9cblxuZGl2LmNhcnRvZGItaW5mb2JveCB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgei1pbmRleDoxMDU7XG59XG5cbi8qIENhcnRvREIgZHJvcGRvd24gKi9cbmRpdi5jYXJ0b2RiLWRyb3Bkb3duIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGRpc3BsYXk6bm9uZTtcbiAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtby1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOm5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLDAsMCwwLjIpIDAgMCA0cHggMXB4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwwLDAsMC4yKSAwIDAgNHB4IDFweDtcbiAgLW1zLWJveC1zaGFkb3c6IHJnYmEoMCwwLDAsMC4yKSAwIDAgNHB4IDFweDtcbiAgLW8tYm94LXNoYWRvdzogcmdiYSgwLDAsMCwwLjIpIDAgMCA0cHggMXB4O1xuICBib3gtc2hhZG93OiByZ2JhKDAsMCwwLDAuMikgMCAwIDRweCAxcHg7XG4gIHotaW5kZXg6MTUwO1xufVxuXG5kaXYuY2FydG9kYi1kcm9wZG93bi5ib3JkZXIge1xuICBib3JkZXI6MXB4IHNvbGlkICM5OTk5OTk7XG59XG5cbmRpdi5jYXJ0b2RiLWRyb3Bkb3duIGRpdi50YWlsIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDotNnB4O1xuICByaWdodDoxMHB4O1xuICB3aWR0aDowO1xuICBoZWlnaHQ6MDtcbiAgYm9yZGVyLWxlZnQ6NnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6NnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOjZweCBzb2xpZCAjOTk5O1xuICB6LWluZGV4OjA7XG59XG5cbmRpdi5jYXJ0b2RiLWRyb3Bkb3duIGRpdi50YWlsIHNwYW4uYm9yZGVyIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDoxcHg7XG4gIGxlZnQ6LTZweDtcbiAgd2lkdGg6MDtcbiAgaGVpZ2h0OjA7XG4gIGJvcmRlci1sZWZ0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTo2cHggc29saWQgd2hpdGU7XG4gIHotaW5kZXg6Mjtcbn1cblxuLyogR21hcHMgYXR0cmlidXRpb24gKi9cbmRpdiNjYXJ0b2RiLWdtYXBzLWF0dHJpYnV0aW9uIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGJvdHRvbToxM3B4O1xuICByaWdodDowO1xuICBoZWlnaHQ6MTBweDtcbiAgbGluZS1oZWlnaHQ6MTBweDtcbiAgcGFkZGluZzowIDZweCA0cHggNnB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNDUsMjQ1LDI0NSwwLjcpO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWYhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjNDQ0IWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmluaXRpYWwgaW5pdGlhbDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IGluaXRpYWwgaW5pdGlhbDtcbiAgYm9yZGVyOm5vbmU7XG4gIHotaW5kZXg6MTAwMDA7XG59XG5cbmRpdiNjYXJ0b2RiLWdtYXBzLWF0dHJpYnV0aW9uIGEge1xuICBjb2xvcjogIzQ0NDtcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG59XG5cbi8qIFNMSURFUiAqL1xuZGl2LmNhcnRvZGItdGltZXNsaWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6NDBweDtcbiAgd2lkdGg6YXV0byFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206MzBweDtcbiAgcGFkZGluZzowO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAwIDRweCAycHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDAgNHB4IDJweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgei1pbmRleDoxMDU7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgdWwge1xuICBkaXNwbGF5OmJsb2NrO1xuICBoZWlnaHQ6NDBweDtcbiAgbWFyZ2luOjA7XG4gIHBhZGRpbmc6MDtcbiAgbGluZS1oZWlnaHQ6NDBweDtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgdWwgbGkge1xuICBkaXNwbGF5OmlubGluZS1ibG9jazsgem9vbTogMTsgKmRpc3BsYXk6IGlubGluZTsgdmVydGljYWwtYWxpZ246dG9wO1xuICBoZWlnaHQ6NDBweDtcbiAgX2hlaWdodDo0MHB4O1xuICB3aWR0aDphdXRvO1xuICBsaW5lLWhlaWdodDo0MHB4O1xuICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNFNUU1RTU7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgdWwgbGkubGFzdCB7XG4gIGJvcmRlci1yaWdodDpub25lO1xufVxuXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIGEuYnV0dG9uIHtcbiAgZGlzcGxheTpibG9jaztcbiAgd2lkdGg6NDhweDtcbiAgaGVpZ2h0OjQwcHg7XG4gIHRleHQtaW5kZW50Oi05OTk5cHg7XG4gIGxpbmUtaGVpZ2h0OjA7XG4gIGZvbnQtc2l6ZTowO1xuICBiYWNrZ3JvdW5kOnVybCgnLy9jYXJ0b2RiLWxpYnMuZ2xvYmFsLnNzbC5mYXN0bHkubmV0L2NhcnRvZGJ1aS9hc3NldHMvZWRpdG9yLzEuMC4xL2ltYWdlcy90aGVtZXMvc2xpZGVyLnBuZycpIG5vLXJlcGVhdCAtMnB4IC01NXB4O1xufVxuXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIGEuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjotNDJweCAtNTVweDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciBhLmJ1dHRvbi5zdG9wIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjotMnB4IC00cHg7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgYS5idXR0b24uc3RvcDpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246LTQycHggLTRweDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciBwIHtcbiAgd2lkdGg6MTIwcHg7XG4gIGhlaWdodDo0MHB4O1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzowIDVweCAwIDA7XG4gIGxpbmUtaGVpZ2h0OjQwcHg7XG4gIGZvbnQtc2l6ZToxM3B4O1xuICBmb250LXdlaWdodDpib2xkO1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYScsQXJpYWw7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBjb2xvcjojOTk5OTk5O1xufVxuXG4uY2FydG9kYi1oZWFkZXIge1xuICBkaXNwbGF5Om5vbmU7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB6LWluZGV4OiA5OTk5OTtcbn1cbi5jYXJ0b2RiLWhlYWRlciAuY29udGVudCB7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4uY2FydG9kYi1oZWFkZXIgLmNvbnRlbnQgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IGE6aG92ZXIge1xuICBjb2xvcjogI2NjYztcbn1cbi5jYXJ0b2RiLWhlYWRlciAuY29udGVudCAudGl0bGUge1xuICBkaXNwbGF5Om5vbmU7XG4gIG1hcmdpbjogMCAwIDVweCAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOjE1cHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNhcnRvZGItaGVhZGVyIC5jb250ZW50IC5kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZToxM3B4O1xufVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24ge1xuICBkaXNwbGF5Om5vbmU7XG59XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dCxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGRpc3BsYXk6bm9uZTtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmY7XG5cbiAgLW1zLXdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbW96LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG5cbiAgei1pbmRleDogMTE7XG59XG5cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0IC5jb250ZW50LFxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24gLmNvbnRlbnQge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dCAudGV4dCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmY7XG5cbiAgLW1zLXdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbW96LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0IC50ZXh0IHN0cm9uZyxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uIC50ZXh0IHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LXRleHQgLnRleHQgZW0sXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbiAudGV4dCBlbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0IGRpdi50ZXh0IGEsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbiBkaXYudGV4dCBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dCAudGV4dCBhOmhvdmVyLFxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24gLnRleHQgYTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTgwKTtcbiAgb3BhY2l0eTogMC44O1xufVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24gIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtby1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uIC5jb250ZW50IHtcbiAgcGFkZGluZzogNXB4O1xufVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24uYWxpZ24tcmlnaHQgLnN0aWNrIC5iYWxsIHsgbGVmdDogYXV0bzsgcmlnaHQ6IC02cHg7IH1cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uIC5zdGljayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IC01MHB4O1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG59XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbiAuc3RpY2sgLmJhbGwge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgbGVmdDogLTZweDtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICAtbXMtYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICBib3JkZXItcmFkaXVzOiAyMDBweDtcbn1cblxuLmNhcnRvZGItb3ZlcmxheS5pbWFnZS1vdmVybGF5IHtcbiAgZGlzcGxheTpub25lO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gIHotaW5kZXg6IDExO1xufVxuXG4uY2FydG9kYi1vdmVybGF5LmltYWdlLW92ZXJsYXkgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4uY2FydG9kYi1vdmVybGF5LmltYWdlLW92ZXJsYXkgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb2lkIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0Ryb2lkIFNhbnMnKSwgbG9jYWwoJ0Ryb2lkU2FucycpLCB1cmwoLy90aGVtZXMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL3N0YXRpYy9mb250cy9kcm9pZHNhbnMvdjQvcy1CaXl3ZVVQVjB2LXlSYi1jamNpTDNocHczcGd5MmdBaS1JcDdXUE1pMC53b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRHJvaWQgU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGJvbGQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ0Ryb2lkIFNhbnMgQm9sZCcpLCBsb2NhbCgnRHJvaWRTYW5zLUJvbGQnKSwgdXJsKC8vdGhlbWVzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9zdGF0aWMvZm9udHMvZHJvaWRzYW5zL3Y0L0VGcFFReUc5R3FDcm9iWHhMLUtSTVhiRmhndldiZlNiZFZnMTFRYWJHOHcud29mZikgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGxrb3JuJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdWb2xsa29ybiBSZWd1bGFyJyksIGxvY2FsKCdWb2xsa29ybi1SZWd1bGFyJyksIHVybCgvL3RoZW1lcy5nb29nbGV1c2VyY29udGVudC5jb20vc3RhdGljL2ZvbnRzL3ZvbGxrb3JuL3Y0L0JDRkJwNHJ0NWd4eEZyWDZGMTJES25ZaGpiU3B2YzQ3ZWU2eFJfODBIbncud29mZikgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGxrb3JuJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdWb2xsa29ybiBSZWd1bGFyJyksIGxvY2FsKCdWb2xsa29ybi1SZWd1bGFyJyksIHVybCgvL3RoZW1lcy5nb29nbGV1c2VyY29udGVudC5jb20vc3RhdGljL2ZvbnRzL3ZvbGxrb3JuL3Y0L0JDRkJwNHJ0NWd4eEZyWDZGMTJES25ZaGpiU3B2YzQ3ZWU2eFJfODBIbncud29mZikgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGxrb3JuJztcbiAgZm9udC1zdHlsZTogYm9sZDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnVm9sbGtvcm4gQm9sZCcpLCBsb2NhbCgnVm9sbGtvcm4tQm9sZCcpLCB1cmwoLy90aGVtZXMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL3N0YXRpYy9mb250cy92b2xsa29ybi92NC93TVpwYlV0Y0NvOUdVYWJ3OUpPRGVycklhLTdhY01BZURCVnVjbHNpNkdjLndvZmYpIGZvcm1hdCgnd29mZicpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBib2xkO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdPcGVuIFNhbnMnKSwgbG9jYWwoJ09wZW5TYW5zJyksIHVybCgvL3RoZW1lcy5nb29nbGV1c2VyY29udGVudC5jb20vc3RhdGljL2ZvbnRzL29wZW5zYW5zL3Y4L2NKWktlT3VCcm40a0VSeHF0YVVIM2JPM0xkY0FaWVdsOVNpNnZ2eEwtcVUud29mZikgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGJvbGQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHNyYzogbG9jYWwoJ09wZW4gU2FucyBTZW1pYm9sZCcpLCBsb2NhbCgnT3BlblNhbnMtU2VtaWJvbGQnKSwgdXJsKC8vdGhlbWVzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9zdGF0aWMvZm9udHMvb3BlbnNhbnMvdjgvTVRQX3lTVUpIX2JuNDhWQkc4c05TcVJET3pqaVBjWW5Gb29PVUdDT3NSay53b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIFNsYWInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBTbGFiIFJlZ3VsYXInKSwgbG9jYWwoJ1JvYm90b1NsYWItUmVndWxhcicpLCB1cmwoLy90aGVtZXMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL3N0YXRpYy9mb250cy9yb2JvdG9zbGFiL3YzL3k3bGVia2pnUkVCSks5NlZRaTM3WnJySWEtN2FjTUFlREJWdWNsc2k2R2Mud29mZikgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byBTbGFiJztcbiAgZm9udC1zdHlsZTogYm9sZDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIFNsYWIgQm9sZCcpLCBsb2NhbCgnUm9ib3RvU2xhYi1Cb2xkJyksIHVybCgvL3RoZW1lcy5nb29nbGV1c2VyY29udGVudC5jb20vc3RhdGljL2ZvbnRzL3JvYm90b3NsYWIvdjMvZGF6UzFQclFRdUN4QzNpT0FKRkVKUmJuQktLRU93Uktnc0hEcmVHY29jZy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnTGF0byBSZWd1bGFyJyksIGxvY2FsKCdMYXRvLVJlZ3VsYXInKSwgdXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YxMS84cWNFd19ucmtfNUhFY0NwWWRKdThCVGJnVnFsOG5ESnB3bnJFMjdtdWIwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMjRGLCBVKzFFMDAtMUVGRiwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG59XG4vKiBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnTGF0byBSZWd1bGFyJyksIGxvY2FsKCdMYXRvLVJlZ3VsYXInKSwgdXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YxMS9NRGFkbjhEUV8zb1Q2a3ZuVXFfMnJ4VGJnVnFsOG5ESnB3bnJFMjdtdWIwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xufVxuLyogbGF0aW4tZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdMYXRvIEJvbGQnKSwgbG9jYWwoJ0xhdG8tQm9sZCcpLCB1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjExL3JaUEkyZ0hYaTh6eFVqbnliYzJaUUZLUEdzMVp6cE12bkhYLTdmUE91QWMud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMUUwMC0xRUZGLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdMYXRvIEJvbGQnKSwgbG9jYWwoJ0xhdG8tQm9sZCcpLCB1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjExL01nTk5yNXkxQ190SUV1TEVtaWNMbTFLUEdzMVp6cE12bkhYLTdmUE91QWMud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMjEyLCBVKzIyMTUsIFUrRTBGRiwgVStFRkZELCBVK0YwMDA7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdMYXRvIEl0YWxpYycpLCBsb2NhbCgnTGF0by1JdGFsaWMnKSwgdXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YxMS9jVDJHTjNLUkJVWDY5R1ZKMmIyaHhuLV9rZjZCeVlPNkNMWWRCNEhRRS1ZLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMjRGLCBVKzFFMDAtMUVGRiwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdMYXRvIEl0YWxpYycpLCBsb2NhbCgnTGF0by1JdGFsaWMnKSwgdXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YxMS8xS1dNeXg3bS1MMGZrUUd3WWhXd3VuLV9rZjZCeVlPNkNMWWRCNEhRRS1ZLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnTGF0byBCb2xkIEl0YWxpYycpLCBsb2NhbCgnTGF0by1Cb2xkSXRhbGljJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MTEvQWN2VHE4UTBseUtLTnhSbEwyOFJuNFgwaFZnelpRVWZSRHVaclB2SDNEOC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSsxRTAwLTFFRkYsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDRiwgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnTGF0byBCb2xkIEl0YWxpYycpLCBsb2NhbCgnTGF0by1Cb2xkSXRhbGljJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MTEvSGtGX3FJMXhfbm94bHhocmhNUVlFSVgwaFZnelpRVWZSRHVaclB2SDNEOC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR3JhZHVhdGUnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0dyYWR1YXRlJyksIGxvY2FsKCdHcmFkdWF0ZS1SZWd1bGFyJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ3JhZHVhdGUvdjQveEJxdUxPemljM3JSYkpzVHMzQmlFQmtBejRyWW40N1p5MnJ2aWdXUWY2dy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT2xkIFN0YW5kYXJkIFRUJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdPbGQgU3RhbmRhcmQgVFQgUmVndWxhcicpLCBsb2NhbCgnT2xkU3RhbmRhcmRUVC1SZWd1bGFyJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb2xkc3RhbmRhcmR0dC92Ny9uNlJUQ0RjSVBXU0U4VU5CYTRrLURMRi0yTlZrdmYtck91RG1VcW16dlZNLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT2xkIFN0YW5kYXJkIFRUJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdPbGQgU3RhbmRhcmQgVFQgQm9sZCcpLCBsb2NhbCgnT2xkU3RhbmRhcmRUVC1Cb2xkJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb2xkc3RhbmRhcmR0dC92Ny81WXdkY2U3WEViVFNieHNfXzRYMV9DLXdCWndyZFhuRmc4Uy14UlppaldMM3JHVnRzVGtQc2JEYWp1TzV1ZVF3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT2xkIFN0YW5kYXJkIFRUJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdPbGQgU3RhbmRhcmQgVFQgSXRhbGljJyksIGxvY2FsKCdPbGRTdGFuZGFyZFRULUl0YWxpYycpLCB1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL29sZHN0YW5kYXJkdHQvdjcvUVFUX0FVU3A0QVY0ZHBKZklON1U1TDJLNkRScWlENWdlcDhXaks3eUdsby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR3Jhdml0YXMgT25lJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdHcmF2aXRhcyBPbmUnKSwgbG9jYWwoJ0dyYXZpdGFzT25lJyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ3Jhdml0YXNvbmUvdjYvbkJIZEJ2NnpWTlU4TXRQNnc5RndUUlZ1WHBsN1h0TmpwTGxoaGhHbFZxYy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cblxuXG4vKiBIRUxWRVRJQ0EgKi9cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uIC5jb250ZW50ID4gLnRleHQsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dCAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24gLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dCAuY29udGVudCA+IC50ZXh0IHN0cm9uZyB7IGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogRFJPSUQgKi9cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uLmRyb2lkIC5jb250ZW50ID4gLnRleHQsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5kcm9pZCAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdEcm9pZCBTYW5zJywgc2VyaWY7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uLmRyb2lkIC5jb250ZW50ID4gLnRleHQgc3Ryb25nLFxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LXRleHQuZHJvaWQgLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcgeyBmb250LWZhbWlseTogJ0Ryb2lkIFNhbnMnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogUk9CT1RPICovXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5yb2JvdG8gLmNvbnRlbnQgPiAudGV4dCxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LnJvYm90byAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdSb2JvdG8gU2xhYicsIHNlcmlmOyBmb250LXdlaWdodDogNDAwOyB9XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5yb2JvdG8gLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5yb2JvdG8gLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcgeyBmb250LWZhbWlseTogJ1JvYm90byBTbGFiJywgc2VyaWY7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogVk9MTEtPUk4gKi9cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uLnZvbGxrb3JuIC5jb250ZW50ID4gLnRleHQsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC52b2xsa29ybiAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdWb2xsa29ybicsIHNlcmlmOyBmb250LXdlaWdodDogNDAwOyB9XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi52b2xsa29ybiAuY29udGVudCA+IC50ZXh0IHN0cm9uZyxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LnZvbGxrb3JuIC5jb250ZW50ID4gLnRleHQgc3Ryb25nIHsgZm9udC1mYW1pbHk6ICdWb2xsa29ybicsIHNlcmlmOyBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qIE9QRU4gU0FOUyAqL1xuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24ub3Blbl9zYW5zIC5jb250ZW50ID4gLnRleHQsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5vcGVuX3NhbnMgLmNvbnRlbnQgPiAudGV4dCB7IGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24ub3Blbl9zYW5zIC5jb250ZW50ID4gLnRleHQgc3Ryb25nLFxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LXRleHQub3Blbl9zYW5zIC5jb250ZW50ID4gLnRleHQgc3Ryb25nIHsgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qIExBVE8gKi9cbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS1hbm5vdGF0aW9uLmxhdG8gLmNvbnRlbnQgPiAudGV4dCxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LmxhdG8gLmNvbnRlbnQgPiAudGV4dCB7IGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA0MDA7fVxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LWFubm90YXRpb24ubGF0byAuY29udGVudCA+IC50ZXh0IHN0cm9uZyxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LmxhdG8gLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcgeyBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qIEdSQURVQVRFICovXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5ncmFkdWF0ZSAuY29udGVudCA+IC50ZXh0LFxuLmNhcnRvZGItb3ZlcmxheS5vdmVybGF5LXRleHQuZ3JhZHVhdGUgLmNvbnRlbnQgPiAudGV4dCB7IGZvbnQtZmFtaWx5OiAnR3JhZHVhdGUnLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNDAwOyB9XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5ncmFkdWF0ZSAuY29udGVudCA+IC50ZXh0IHN0cm9uZyxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LmdyYWR1YXRlIC5jb250ZW50ID4gLnRleHQgc3Ryb25nIHsgZm9udC1mYW1pbHk6ICdHcmFkdWF0ZScsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLyogT0xEIFNUQU5EQVJEIFRUICovXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5vbGRfc3RhbmRhcmRfdHQgLmNvbnRlbnQgPiAudGV4dCxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0Lm9sZF9zdGFuZGFyZF90dCAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdPbGQgU3RhbmRhcmQgVFQnLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNDAwOyB9XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5vbGRfc3RhbmRhcmRfdHQgLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5vbGRfc3RhbmRhcmRfdHQgLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcgeyBmb250LWZhbWlseTogJ09sZCBTdGFuZGFyZCBUVCcsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogR1JBVklUQVMgT05FICovXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5ncmF2aXRhc19vbmUgLmNvbnRlbnQgPiAudGV4dCxcbi5jYXJ0b2RiLW92ZXJsYXkub3ZlcmxheS10ZXh0LmdyYXZpdGFzX29uZSAuY29udGVudCA+IC50ZXh0IHsgZm9udC1mYW1pbHk6ICdHcmF2aXRhcyBPbmUnLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNDAwOyB9XG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktYW5ub3RhdGlvbi5ncmF2aXRhc19vbmUgLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcsXG4uY2FydG9kYi1vdmVybGF5Lm92ZXJsYXktdGV4dC5ncmF2aXRhc19vbmUgLmNvbnRlbnQgPiAudGV4dCBzdHJvbmcgeyBmb250LWZhbWlseTogJ0dyYXZpdGFzIE9uZScsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmNhcnRvZGItaGVhZGVyIC5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC41KTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHotaW5kZXg6IDEwMDAwMDA7XG59XG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCB7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgLnByZXYsXG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAubmV4dCB7IHBvc2l0aW9uOnJlbGF0aXZlOyB9XG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAucHJldiB7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrOyAqZGlzcGxheTppbmxpbmU7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTVweDtcbiAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NsaWRlX2xlZnQucG5nJykgbm8tcmVwZWF0O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgb3BhY2l0eTogLjU7XG59XG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAubmV4dCB7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrOyAqZGlzcGxheTppbmxpbmU7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NsaWRlX3JpZ2h0LnBuZycpIG5vLXJlcGVhdDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIG9wYWNpdHk6IC41O1xufVxuXG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAucHJldjpob3Zlcixcbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IC5uZXh0OmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cblxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgLnByZXY6aG92ZXIsXG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAubmV4dDpob3ZlciB7IG9wYWNpdHk6IC44OyB9XG5cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IC5wcmV2OmFmdGVyIHsgY29udGVudDogJyc7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAtNXB4OyBsZWZ0OiAzMXB4OyBoZWlnaHQ6IDI1cHg7IHdpZHRoOiAycHg7IGJhY2tncm91bmQ6I2ZmZjsgb3BhY2l0eTogLjU7IH1cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IC5uZXh0OmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTVweDsgbGVmdDogLTE3cHg7IGhlaWdodDogMjVweDsgd2lkdGg6IDJweDsgYmFja2dyb3VuZDojZmZmOyBvcGFjaXR5OiAuNTsgfVxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgLmNvdW50ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IC5jb3VudGVyLFxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgdWwge1xuICBkaXNwbGF5OmlubGluZS1ibG9jazsgKmRpc3BsYXk6aW5saW5lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG59XG4uY2FydG9kYi1zbGlkZXMtY29udHJvbGxlciAuc2xpZGVzLWNvbnRyb2xsZXItY29udGVudCAuY291bnRlci5sb2FkaW5nIHtcbiAgb3BhY2l0eTogLjI7XG4gIGFuaW1hdGlvbjogbG9hZGluZyAuMzVzIGluZmluaXRlIGVhc2Utb3V0ICBhbHRlcm5hdGU7XG4gIC1tcy1hbmltYXRpb246IGxvYWRpbmcgLjM1cyBpbmZpbml0ZSBlYXNlLW91dCAgYWx0ZXJuYXRlO1xuICAtbW96LWFuaW1hdGlvbjogbG9hZGluZyAuMzVzIGluZmluaXRlIGVhc2Utb3V0ICBhbHRlcm5hdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkaW5nIC4zNXMgaW5maW5pdGUgZWFzZS1vdXQgIGFsdGVybmF0ZTtcbn1cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IHVsIGxpIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7ICpkaXNwbGF5OmlubGluZTsgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICBtYXJnaW46IDAgMnB4O1xufVxuLmNhcnRvZGItc2xpZGVzLWNvbnRyb2xsZXIgLnNsaWRlcy1jb250cm9sbGVyLWNvbnRlbnQgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBvcGFjaXR5OiAuNDtcbn1cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IHVsIGxpIGEuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5jYXJ0b2RiLXNsaWRlcy1jb250cm9sbGVyIC5zbGlkZXMtY29udHJvbGxlci1jb250ZW50IHVsIGxpIGEuYWN0aXZlLnRpbWUge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBvcGFjaXR5OiAuNTtcbiAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgYW5pbWF0aW9uOiBwdWxzZSAuMzVzIGluZmluaXRlIGVhc2Utb3V0ICBhbHRlcm5hdGU7XG4gIC1tcy1hbmltYXRpb246IHB1bHNlIC4zNXMgaW5maW5pdGUgZWFzZS1vdXQgIGFsdGVybmF0ZTtcbiAgLW1vei1hbmltYXRpb246IHB1bHNlIC4zNXMgaW5maW5pdGUgZWFzZS1vdXQgIGFsdGVybmF0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHB1bHNlIC4zNXMgaW5maW5pdGUgZWFzZS1vdXQgIGFsdGVybmF0ZTtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnNsaWRlci13cmFwcGVyIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgd2lkdGg6MjUzcHg7XG4gIGhlaWdodDo0cHg7XG4gIF9oZWlnaHQ6NHB4O1xuICBwYWRkaW5nOjE4cHggMTVweDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAuc2xpZGVyIHtcbiAgd2lkdGg6MjUzcHg7XG4gIGhlaWdodDo0cHg7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLWhlbHBlci1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLWhlbHBlci1yZXNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLWhlbHBlci1jbGVhcmZpeDpiZWZvcmUsXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktaGVscGVyLWNsZWFyZml4IHtcbiAgbWluLWhlaWdodDogMDtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLWhlbHBlci16Zml4IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjpBbHBoYShPcGFjaXR5PTApO1xufVxuXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1mcm9udCB7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc3RhdGUtZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLXdpZGdldC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlci1yYWRpdXM6MnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6MnB4O1xuICAtby1ib3JkZXItcmFkaXVzOjJweDtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAyO1xuICB3aWR0aDogOXB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDp1cmwoJy8vY2FydG9kYi1saWJzLmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9jYXJ0b2RidWkvYXNzZXRzL2VkaXRvci8xLjAuMS9pbWFnZXMvdGhlbWVzL3NsaWRlci5wbmcnKSBuby1yZXBlYXQgLTk4cHggLTE4cHggd2hpdGU7XG4gIGJvcmRlcjoxcHggc29saWQgIzU1NTU1NTtcbiAgYm9yZGVyLXJhZGl1czoycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czoycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czoycHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6MnB4O1xuICBvdXRsaW5lOm5vbmU7XG59XG5cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gIGN1cnNvcjpjb2wtcmVzaXplO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMTJweCAtMThweDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyIC51aS1zbGlkZXItcmFuZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgZm9udC1zaXplOiAuN2VtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IzM5N0RCQTtcbiAgYm9yZGVyLXJhZGl1czoycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czoycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czoycHg7XG4gIC1vLWJvcmRlci1yYWRpdXM6MnB4O1xufVxuXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1oYW5kbGUsXG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGZpbHRlcjogaW5oZXJpdDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyLWhvcml6b250YWwge1xuICBoZWlnaHQ6IDRweDtcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHRvcDogLTRweDtcbiAgbWFyZ2luLWxlZnQ6IC02cHg7XG59XG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlIHtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjpwb2ludGVyO1xufVxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuICBsZWZ0OiAwO1xufVxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuICByaWdodDogMDtcbn1cblxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyLXZlcnRpY2FsIHtcbiAgd2lkdGg6IC44ZW07XG4gIGhlaWdodDogMTAwcHg7XG59XG5kaXYuY2FydG9kYi10aW1lc2xpZGVyIC51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAtLjNlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IC0uNmVtO1xufVxuZGl2LmNhcnRvZGItdGltZXNsaWRlciAudWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2Uge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG4gIGJvdHRvbTogMDtcbn1cbmRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7XG4gIHRvcDogMDtcbn1cblxuLyogU3RhcnRpbmcgbmV3IG1lZGlhIHF1ZXJpZXMgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNjBweCkgYW5kIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnNsaWRlci13cmFwcGVyIHsgd2lkdGg6IDEzMHB4IH1cbiAgZGl2LmNhcnRvZGItdGltZXNsaWRlciAuc2xpZGVyIHsgd2lkdGg6IDEzMHB4IH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxODBweCkgYW5kIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgLnNsaWRlci13cmFwcGVyIHsgd2lkdGg6IDkwcHggfVxuICBkaXYuY2FydG9kYi10aW1lc2xpZGVyIC5zbGlkZXIgeyB3aWR0aDogOTBweCB9XG4gIGRpdi5jYXJ0b2RiLXRpbWVzbGlkZXIgcC52YWx1ZSB7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59LyogcmVxdWlyZWQgc3R5bGVzICovXHJcblxyXG4ubGVhZmxldC1tYXAtcGFuZSxcclxuLmxlYWZsZXQtdGlsZSxcclxuLmxlYWZsZXQtbWFya2VyLWljb24sXHJcbi5sZWFmbGV0LW1hcmtlci1zaGFkb3csXHJcbi5sZWFmbGV0LXRpbGUtcGFuZSxcclxuLmxlYWZsZXQtdGlsZS1jb250YWluZXIsXHJcbi5sZWFmbGV0LW92ZXJsYXktcGFuZSxcclxuLmxlYWZsZXQtc2hhZG93LXBhbmUsXHJcbi5sZWFmbGV0LW1hcmtlci1wYW5lLFxyXG4ubGVhZmxldC1wb3B1cC1wYW5lLFxyXG4ubGVhZmxldC1vdmVybGF5LXBhbmUgc3ZnLFxyXG4ubGVhZmxldC16b29tLWJveCxcclxuLmxlYWZsZXQtaW1hZ2UtbGF5ZXIsXHJcbi5sZWFmbGV0LWxheWVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1jb250YWluZXIge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcclxuXHR9XHJcbi5sZWFmbGV0LXRpbGUsXHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLFxyXG4ubGVhZmxldC1tYXJrZXItc2hhZG93IHtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0ICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcclxuXHR9XHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLFxyXG4ubGVhZmxldC1tYXJrZXItc2hhZG93IHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbi8qIG1hcCBpcyBicm9rZW4gaW4gRkYgaWYgeW91IGhhdmUgbWF4LXdpZHRoOiAxMDAlIG9uIHRpbGVzICovXHJcbi5sZWFmbGV0LWNvbnRhaW5lciBpbWcge1xyXG5cdG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuLyogc3R1cGlkIEFuZHJvaWQgMiBkb2Vzbid0IHVuZGVyc3RhbmQgXCJtYXgtd2lkdGg6IG5vbmVcIiBwcm9wZXJseSAqL1xyXG4ubGVhZmxldC1jb250YWluZXIgaW1nLmxlYWZsZXQtaW1hZ2UtbGF5ZXIge1xyXG5cdG1heC13aWR0aDogMTUwMDBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuLmxlYWZsZXQtdGlsZSB7XHJcblx0ZmlsdGVyOiBpbmhlcml0O1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR9XHJcbi5sZWFmbGV0LXRpbGUtbG9hZGVkIHtcclxuXHR2aXNpYmlsaXR5OiBpbmhlcml0O1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1ib3gge1xyXG5cdHdpZHRoOiAwO1xyXG5cdGhlaWdodDogMDtcclxuXHR9XHJcbi8qIHdvcmthcm91bmQgZm9yIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTg4ODMxOSAqL1xyXG4ubGVhZmxldC1vdmVybGF5LXBhbmUgc3ZnIHtcclxuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LXRpbGUtcGFuZSAgICB7IHotaW5kZXg6IDI7IH1cclxuLmxlYWZsZXQtb2JqZWN0cy1wYW5lIHsgei1pbmRleDogMzsgfVxyXG4ubGVhZmxldC1vdmVybGF5LXBhbmUgeyB6LWluZGV4OiA0OyB9XHJcbi5sZWFmbGV0LXNoYWRvdy1wYW5lICB7IHotaW5kZXg6IDU7IH1cclxuLmxlYWZsZXQtbWFya2VyLXBhbmUgIHsgei1pbmRleDogNjsgfVxyXG4ubGVhZmxldC1wb3B1cC1wYW5lICAgeyB6LWluZGV4OiA3OyB9XHJcblxyXG4ubGVhZmxldC12bWwtc2hhcGUge1xyXG5cdHdpZHRoOiAxcHg7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0fVxyXG4ubHZtbCB7XHJcblx0YmVoYXZpb3I6IHVybCgjZGVmYXVsdCNWTUwpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0fVxyXG5cclxuXHJcbi8qIGNvbnRyb2wgcG9zaXRpb25pbmcgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiA3O1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9wLFxyXG4ubGVhZmxldC1ib3R0b20ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9wIHtcclxuXHR0b3A6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1yaWdodCB7XHJcblx0cmlnaHQ6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1ib3R0b20ge1xyXG5cdGJvdHRvbTogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWxlZnQge1xyXG5cdGxlZnQ6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRjbGVhcjogYm90aDtcclxuXHR9XHJcbi5sZWFmbGV0LXJpZ2h0IC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdGZsb2F0OiByaWdodDtcclxuXHR9XHJcbi5sZWFmbGV0LXRvcCAubGVhZmxldC1jb250cm9sIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtYm90dG9tIC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG4ubGVhZmxldC1sZWZ0IC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtcmlnaHQgLmxlYWZsZXQtY29udHJvbCB7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdH1cclxuXHJcblxyXG4vKiB6b29tIGFuZCBmYWRlIGFuaW1hdGlvbnMgKi9cclxuXHJcbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC10aWxl