/*!
 * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
 *
 * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
 */

.datepicker {
  padding: 4px;
  border-radius: 4px;
  direction: ltr;
}
.datepicker-inline {
  width: 220px;
}
.datepicker-rtl {
  direction: rtl;
}
.datepicker-rtl.dropdown-menu {
  left: auto;
}
.datepicker-rtl table tr td span {
  float: right;
}
.datepicker-dropdown {
  top: 0;
  left: 0;
}
.datepicker-dropdown:before {
  content: '';
  display: inline-block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #999;
  border-top: 0;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}
.datepicker-dropdown:after {
  content: '';
  display: inline-block;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-top: 0;
  position: absolute;
}
.datepicker-dropdown.datepicker-orient-left:before {
  left: 6px;
}
.datepicker-dropdown.datepicker-orient-left:after {
  left: 7px;
}
.datepicker-dropdown.datepicker-orient-right:before {
  right: 6px;
}
.datepicker-dropdown.datepicker-orient-right:after {
  right: 7px;
}
.datepicker-dropdown.datepicker-orient-bottom:before {
  top: -7px;
}
.datepicker-dropdown.datepicker-orient-bottom:after {
  top: -6px;
}
.datepicker-dropdown.datepicker-orient-top:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid #999;
}
.datepicker-dropdown.datepicker-orient-top:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid #fff;
}
.datepicker table {
  margin: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}
.datepicker td,
.datepicker th {
  text-align: center;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: none;
}
.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
  background-color: transparent;
}
.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused {
  background: #eee;
  cursor: pointer;
}
.datepicker table tr td.old,
.datepicker table tr td.new {
  color: #999;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #999;
  cursor: default;
}
.datepicker table tr td.highlighted {
  background: #d9edf7;
  border-radius: 0;
}
.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
  background-color: #fde19a;
  background-image: linear-gradient(to bottom, #fdd49a, #fdf59a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
  border-color: #fdf59a #fdf59a #fbed50;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #000;
}
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today[disabled],
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today.disabled:hover[disabled] {
  background-color: #fdf59a;
}
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active {
  background-color: #fbf069 \9;
}
.datepicker table tr td.today:hover:hover {
  color: #000;
}
.datepicker table tr td.today.active:hover {
  color: #fff;
}
.datepicker table tr td.range,
.datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover {
  background: #eee;
  border-radius: 0;
}
.datepicker table tr td.range.today,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover {
  background-color: #f3d17a;
  background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
  border-color: #f3e97a #f3e97a #edde34;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  border-radius: 0;
}
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today[disabled],
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today.disabled:hover[disabled] {
  background-color: #f3e97a;
}
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active {
  background-color: #efe24b \9;
}
.datepicker table tr td.selected,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover {
  background-color: #9e9e9e;
  background-image: linear-gradient(to bottom, #b3b3b3, #808080);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
  border-color: #808080 #808080 #595959;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected[disabled],
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected.disabled:hover[disabled] {
  background-color: #808080;
}
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active {
  background-color: #666666 \9;
}
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
  background-color: #006dcc;
  background-image: linear-gradient(to bottom, #08c, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled] {
  background-color: #0044cc;
}
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active {
  background-color: #003399 \9;
}
.datepicker table tr td span {
  display: block;
  width: 23%;
  height: 54px;
  line-height: 54px;
  float: left;
  margin: 1%;
  cursor: pointer;
  border-radius: 4px;
}
.datepicker table tr td span:hover,
.datepicker table tr td span.focused {
  background: #eee;
}
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  background: none;
  color: #999;
  cursor: default;
}
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
  background-color: #006dcc;
  background-image: linear-gradient(to bottom, #08c, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled] {
  background-color: #0044cc;
}
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
  background-color: #003399 \9;
}
.datepicker table tr td span.old,
.datepicker table tr td span.new {
  color: #999;
}
.datepicker .datepicker-switch {
  width: 145px;
}
.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next,
.datepicker tfoot tr th {
  cursor: pointer;
}
.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
  background: #eee;
}
.datepicker .prev.disabled,
.datepicker .next.disabled {
  visibility: hidden;
}
.datepicker .cw {
  font-size: 10px;
  width: 12px;
  padding: 0 2px 0 5px;
  vertical-align: middle;
}
.input-append.date .add-on,
.input-prepend.date .add-on {
  cursor: pointer;
}
.input-append.date .add-on i,
.input-prepend.date .add-on i {
  margin-top: 3px;
}
.input-daterange input {
  text-align: center;
}
.input-daterange input:first-child {
  border-radius: 3px 0 0 3px;
}
.input-daterange input:last-child {
  border-radius: 0 3px 3px 0;
}
.input-daterange .add-on {
  display: inline-block;
  width: auto;
  min-width: 16px;
  height: 20px;
  padding: 4px 5px;
  font-weight: normal;
  line-height: 20px;
  text-align: center;
  text-shadow: 0 1px 0 #fff;
  vertical-align: middle;
  background-color: #eee;
  border: 1px solid #ccc;
  margin-left: -5px;
  margin-right: -5px;
}
.datepicker.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  float: left;
  display: none;
  min-width: 160px;
  list-style: none;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  *border-right-width: 2px;
  *border-bottom-width: 2px;
  color: #333333;
  font-size: 13px;
  line-height: 20px;
}
.datepicker.dropdown-menu th,
.datepicker.datepicker-inline th,
.datepicker.dropdown-menu td,
.datepicker.datepicker-inline td {
  padding: 4px 5px;
}
/*# sourceMappingURL=bootstrap-datepicker.standalone.css.map */

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9ycy1ub2RlX21vZHVsZXNfYm9vdHN0cmFwLWRhdGVwaWNrZXJfZGlzdF9qc19ib290c3RyYXAtZGF0ZXBpY2tlcl9qcy1ub2RlX21vZHVsZXNfYm9vdHN0LWNmMWVkOS5jc3MiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7RUN5QlU7O0FDbkJWO0VGSEMsWUFBQztFQUlELGtCQUFDO0VBQ0E7QUVJRjtBRkhFO0VBQWtCO0FFTXBCO0FGUkM7RUFJRTtBRU9IO0FGSkM7RUFDQztBRU1GO0FBQ0E7RUZMRSxZQUhBO0FFVUY7QUFDQTtFRkxHO0VBQ0E7QUVPSDtBQUNBO0VGTEc7RUFDQTtFRU9ELGtDQUFrQztFRkxsQyxtQ0FBQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FFT0g7QUFDQTtFRkxHO0VFT0QscUJBQXFCO0VGTHJCLGtDQUFDO0VBQW1DO0VFUXBDLDZCQUE2QjtFRlA3QixhQXZCQTtFQXVCb0M7QUVVdEM7QUZURTtFQUFvQztBRVl0QztBRlhFO0VBQW9DO0FFY3RDO0FGYkU7RUFBb0M7QUVnQnRDO0FGZkU7RUFBb0M7QUVrQnRDO0FGakJFO0VBQ0M7QUVtQkg7QUFDQTtFQUNFLFNBQVM7QUZqQlQ7QUVtQkY7RUZqQkc7RUFDQTtFRW1CRCwwQkFBMEI7QUZyRTVCO0FFdUVBO0VGaEJFO0VBQ0E7RUFDQTtBRWtCRjtBQUNBO0VGaEJFO0VFa0JBLDJCQUEyQjtFRjlFN0IseUJBOERDO0VBR0M7QUVtQkY7QUFDQTs7RUZqQkU7RUVvQkEsV0FBVztFRmhCWixZQUFlO0VFb0JkLGtCQUFrQjtFRmRsQixZQUREO0FBRUM7QUVnQkY7O0VBRUUsNkJBQTZCO0FGZDdCO0FBQ0E7O0VFaUJBLGdCQUFnQjtFRmRoQixlQVZLO0FBV0w7QUVnQkY7O0VGYkc7QUVnQkg7QUZkRTs7RUFFQztFRWdCRCxXQUFXO0VGZFgsZUFwQks7QUFxQkw7QUFDQTtFQUNBLG1CQXZCUTtFQ3JCTjtBQzZESjtBQUNBOzs7O0VEeERJLHlCQUFrQjtFRHlDbkI7RUUwQkQsMkJBQTJCO0VEakczQixrSEFBQztFQUFELHFDQUFDO0VBQUQsdUVBQUM7RUFBRCxpRUFBQztFQUFRLFdENkNWO0FDN0NVO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBSVQseUJENkRDO0FDN0REO0FBQUE7Ozs7Ozs7O0VEMEVDO0FFeURIO0FGdkRFO0VBQ0EsV0FwQ0Q7QUFxQ0M7QUFDQTtFQUNDO0FFeURIO0FBQ0E7Ozs7RUZ0REUsZ0JBM0NLO0VDckJIO0FDOEhKO0FBQ0E7Ozs7RUR6SEkseUJBQWtCO0VBdkNwQjtFQUNHO0VBQ0s7RUMyS1IscUNBQXFDO0VEcEtyQyx1RUFBQztFQUFELGlFQUFDO0VBQVEsZ0JENkNKO0FDN0NJO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBSVQseUJEbUZDO0FDbkZEO0FBQUE7Ozs7Ozs7O0VBb0JFO0FDa0xKO0FBQ0E7Ozs7RUQ3S0kseUJBQWtCO0VEc0VuQjtFQUNBO0VFa0hELGtIQUFrSDtFRHZObEgscUNBQUM7RUFBRCx1RUFBQztFQUFELGlFQUFDO0VBQUQsV0Q2Q0Q7RUM3Q1UseUNBQUM7QUFBRDtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUlULHlCRDJGQztBQzNGRDtBQUFBOzs7Ozs7OztFQW9CRTtBQ3FPSjtBQUNBOzs7O0VEaE9JLHlCQUFrQjtFRDhFbkI7RUFDQTtFRTZKRCwrR0FBK0c7RUQxUS9HLHFDQUFDO0VBQUQsdUVBQUM7RUFBRCxpRUFBQztFQUFELFdENkNEO0VDN0NVLHlDQUFDO0FBQUQ7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFJVCx5QkRtR0M7QUNuR0Q7QUFBQTs7Ozs7Ozs7RUQrR0M7QUU2TEg7QUFDQTtFRjNMRztFQy9IRDtFQUNHO0VBQ0s7RUM2VFIsV0FBVztFRjlMVixVQTNFRjtFQTRFRSxlQTVFSTtFQStFSixrQkEvRU87QUFnRlA7QUVnTUg7O0VGN0xJO0FFZ01KO0FGOUxHOztFQUVBLGdCQXZGSTtFQXdGSixXQXhGRjtFQ3JCRztBQzhTSjtBQUNBOzs7O0VEelNJLHlCQUFrQjtFRHlHbEI7RUFDQTtFRTJNRiwrR0FBK0c7RURuVi9HLHFDQUFDO0VBQUQsdUVBQUM7RUFBRCxpRUFBQztFQUFELFdENkNEO0VDN0NVLHlDQUFDO0FBQUQ7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFJVCx5QkQyR0E7QUMzR0E7QUFBQTs7Ozs7Ozs7RURwQ0YsNEJBaUxDO0FFd09EO0FBQ0E7O0VGMVpBLFdBc0xDO0FBdExEO0FBQUE7RUF5TEU7QUV1T0Y7QUZ0T0U7Ozs7RUFDQztBRTJPSDtBRnRPRTs7OztFQWhNRixnQkFzTUM7QUVzT0Q7QUFDQTs7RUZuT0U7QUVzT0Y7QUZqT0M7RUFBQSxlQUFDO0VBQ0E7RUVvT0Esb0JBQW9CO0VGck9yQixzQkFBTztBQUFQO0FFd09EOztFRmhPQSxlQUNDO0FFa09EO0FBQ0E7O0VEcGFFO0FDdWFGO0FBQ0E7RUFDRSxrQkFBa0I7QUZ6T3BCO0FFMk9BO0VBR0UsMEJBQTBCO0FGOU81QjtBRWdQQTtFRmxPRTtBRXNPRjtBQUNBO0VGcE9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUVzT0EseUJBQXlCO0VDcmJ6QixzQkFBQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FEdWJKO0FBQ0E7RUNyYkk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRnBCRjtFQUNHO0VBQ0s7RUVEUjtFQUNHO0VBQ0s7RUFzQkU7RUFLUjtFQUNBO0VBQ0E7RUR5YkYsNEJBQTRCO0dDdGI1Qix1QkFDRTtHQURlLHdCQUFDO0VBQWxCLGNBQUM7RUFBZ0IsZUFBQztFQUVkO0FEMGJOO0FBQ0E7Ozs7RUFJRSxnQkFBZ0I7QUFDbEI7QUFDQSw4REFBOEQsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtZGF0ZXBpY2tlci9kaXN0L2Nzcy9sZXNzL2RhdGVwaWNrZXIubGVzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvZGlzdC9jc3MvYnVpbGQvYnVpbGQubGVzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvZGlzdC9jc3MvYm9vdHN0cmFwLWRhdGVwaWNrZXIuc3RhbmRhbG9uZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1kYXRlcGlja2VyL2Rpc3QvY3NzL2J1aWxkL2J1aWxkX3N0YW5kYWxvbmUubGVzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIuZGF0ZXBpY2tlciB7XG5cdHBhZGRpbmc6IDRweDtcblx0LmJvcmRlci1yYWRpdXMoQGJhc2VCb3JkZXJSYWRpdXMpO1xuXHQmLWlubGluZSB7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHR9XG5cdGRpcmVjdGlvbjogbHRyO1xuXHQmLXJ0bCB7XG5cdFx0ZGlyZWN0aW9uOiBydGw7XG5cdFx0Ji5kcm9wZG93bi1tZW51IHsgbGVmdDogYXV0bzsgfVxuXHRcdHRhYmxlIHRyIHRkIHNwYW4ge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdH1cblx0fVxuXHQmLWRyb3Bkb3duIHtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJvcmRlci1sZWZ0OiAgIDdweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1yaWdodDogIDdweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1ib3R0b206IDdweCBzb2xpZCBAZ3JheUxpZ2h0O1xuXHRcdFx0Ym9yZGVyLXRvcDogICAgMDtcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwwLDAsLjIpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0Ym9yZGVyLWxlZnQ6ICAgNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAgNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIEB3aGl0ZTtcblx0XHRcdGJvcmRlci10b3A6ICAgIDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0fVxuXHRcdCYuZGF0ZXBpY2tlci1vcmllbnQtbGVmdDpiZWZvcmUgICB7IGxlZnQ6IDZweDsgfVxuXHRcdCYuZGF0ZXBpY2tlci1vcmllbnQtbGVmdDphZnRlciAgICB7IGxlZnQ6IDdweDsgfVxuXHRcdCYuZGF0ZXBpY2tlci1vcmllbnQtcmlnaHQ6YmVmb3JlICB7IHJpZ2h0OiA2cHg7IH1cblx0XHQmLmRhdGVwaWNrZXItb3JpZW50LXJpZ2h0OmFmdGVyICAgeyByaWdodDogN3B4OyB9XG5cdFx0Ji5kYXRlcGlja2VyLW9yaWVudC1ib3R0b206YmVmb3JlIHsgdG9wOiAtN3B4OyB9XG5cdFx0Ji5kYXRlcGlja2VyLW9yaWVudC1ib3R0b206YWZ0ZXIgIHsgdG9wOiAtNnB4OyB9XG5cdFx0Ji5kYXRlcGlja2VyLW9yaWVudC10b3A6YmVmb3JlIHtcblx0XHRcdGJvdHRvbTogLTdweDtcblx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRib3JkZXItdG9wOiAgICA3cHggc29saWQgQGdyYXlMaWdodDtcblx0XHR9XG5cdFx0Ji5kYXRlcGlja2VyLW9yaWVudC10b3A6YWZ0ZXIge1xuXHRcdFx0Ym90dG9tOiAtNnB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdGJvcmRlci10b3A6ICAgIDZweCBzb2xpZCBAd2hpdGU7XG5cdFx0fVxuXHR9XG5cdHRhYmxlIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHRcdHVzZXItc2VsZWN0OiBub25lO1xuXHR9XG5cdHRkLCB0aCB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHdpZHRoOiAyMHB4O1xuXHRcdGhlaWdodDogMjBweDtcblx0XHQuYm9yZGVyLXJhZGl1cyg0cHgpO1xuXG5cdFx0Ym9yZGVyOiBub25lO1xuXHR9XG5cdC8vIElubGluZSBkaXNwbGF5IGluc2lkZSBhIHRhYmxlIHByZXNlbnRzIHNvbWUgcHJvYmxlbXMgd2l0aFxuXHQvLyBib3JkZXIgYW5kIGJhY2tncm91bmQgY29sb3JzLlxuXHQudGFibGUtc3RyaXBlZCAmIHRhYmxlIHRyIHtcblx0XHR0ZCwgdGgge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHR9XG5cdHRhYmxlIHRyIHRkIHtcblx0XHQmLmRheTpob3Zlcixcblx0XHQmLmRheS5mb2N1c2VkIHtcblx0XHRcdGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cdFx0Ji5vbGQsXG5cdFx0Ji5uZXcge1xuXHRcdFx0Y29sb3I6IEBncmF5TGlnaHQ7XG5cdFx0fVxuXHRcdCYuZGlzYWJsZWQsXG5cdFx0Ji5kaXNhYmxlZDpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0Y29sb3I6IEBncmF5TGlnaHQ7XG5cdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XG5cdFx0fVxuXHRcdCYuaGlnaGxpZ2h0ZWQge1xuXHRcdFx0YmFja2dyb3VuZDogQGluZm9CYWNrZ3JvdW5kO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHR9XG5cdFx0Ji50b2RheSxcblx0XHQmLnRvZGF5OmhvdmVyLFxuXHRcdCYudG9kYXkuZGlzYWJsZWQsXG5cdFx0Ji50b2RheS5kaXNhYmxlZDpob3ZlciB7XG5cdFx0XHRAdG9kYXlCYWNrZ3JvdW5kOiBsaWdodGVuKEBvcmFuZ2UsIDMwJSk7XG5cdFx0XHQuYnV0dG9uQmFja2dyb3VuZChAdG9kYXlCYWNrZ3JvdW5kLCBzcGluKEB0b2RheUJhY2tncm91bmQsIDIwKSk7XG5cdFx0XHRjb2xvcjogIzAwMDtcblx0XHR9XG5cdFx0Ji50b2RheTpob3Zlcjpob3ZlciB7IC8vIFRoYW5rIGJvb3RzdHJhcCAyLjAgZm9yIHRoaXMgc2VsZWN0b3IuLi5cblx0XHRcdC8vIFRPRE86IEJ1bXAgbWluIEJTIHRvIDIuMSwgdXNlIEB0ZXh0Q29sb3IgaW4gYnV0dG9uQmFja2dyb3VuZCBhYm92ZVxuXHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0fVxuXHRcdCYudG9kYXkuYWN0aXZlOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0XHQmLnJhbmdlLFxuXHRcdCYucmFuZ2U6aG92ZXIsXG5cdFx0Ji5yYW5nZS5kaXNhYmxlZCxcblx0XHQmLnJhbmdlLmRpc2FibGVkOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcblx0XHRcdC5ib3JkZXItcmFkaXVzKDApO1xuXHRcdH1cblx0XHQmLnJhbmdlLnRvZGF5LFxuXHRcdCYucmFuZ2UudG9kYXk6aG92ZXIsXG5cdFx0Ji5yYW5nZS50b2RheS5kaXNhYmxlZCxcblx0XHQmLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyIHtcblx0XHRcdEB0b2RheUJhY2tncm91bmQ6IG1peChAb3JhbmdlLCBAZ3JheUxpZ2h0ZXIsIDUwJSk7XG5cdFx0XHQuYnV0dG9uQmFja2dyb3VuZChAdG9kYXlCYWNrZ3JvdW5kLCBzcGluKEB0b2RheUJhY2tncm91bmQsIDIwKSk7XG5cdFx0XHQuYm9yZGVyLXJhZGl1cygwKTtcblx0XHR9XG5cdFx0Ji5zZWxlY3RlZCxcblx0XHQmLnNlbGVjdGVkOmhvdmVyLFxuXHRcdCYuc2VsZWN0ZWQuZGlzYWJsZWQsXG5cdFx0Ji5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlciB7XG5cdFx0XHQuYnV0dG9uQmFja2dyb3VuZChsaWdodGVuKEBncmF5TGlnaHQsIDEwKSwgZGFya2VuKEBncmF5TGlnaHQsIDEwKSk7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XG5cdFx0fVxuXHRcdCYuYWN0aXZlLFxuXHRcdCYuYWN0aXZlOmhvdmVyLFxuXHRcdCYuYWN0aXZlLmRpc2FibGVkLFxuXHRcdCYuYWN0aXZlLmRpc2FibGVkOmhvdmVyIHtcblx0XHRcdC5idXR0b25CYWNrZ3JvdW5kKEBidG5QcmltYXJ5QmFja2dyb3VuZCwgc3BpbihAYnRuUHJpbWFyeUJhY2tncm91bmQsIDIwKSk7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XG5cdFx0fVxuXHRcdHNwYW4ge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMjMlO1xuXHRcdFx0aGVpZ2h0OiA1NHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDU0cHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbjogMSU7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQuYm9yZGVyLXJhZGl1cyg0cHgpO1xuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCYuZm9jdXNlZCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcblx0XHRcdH1cblx0XHRcdCYuZGlzYWJsZWQsXG5cdFx0XHQmLmRpc2FibGVkOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0Y29sb3I6IEBncmF5TGlnaHQ7XG5cdFx0XHRcdGN1cnNvcjogZGVmYXVsdDtcblx0XHRcdH1cblx0XHRcdCYuYWN0aXZlLFxuXHRcdFx0Ji5hY3RpdmU6aG92ZXIsXG5cdFx0XHQmLmFjdGl2ZS5kaXNhYmxlZCxcblx0XHRcdCYuYWN0aXZlLmRpc2FibGVkOmhvdmVyIHtcblx0XHRcdFx0LmJ1dHRvbkJhY2tncm91bmQoQGJ0blByaW1hcnlCYWNrZ3JvdW5kLCBzcGluKEBidG5QcmltYXJ5QmFja2dyb3VuZCwgMjApKTtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XG5cdFx0XHR9XG5cdFx0XHQmLm9sZCxcblx0XHRcdCYubmV3IHtcblx0XHRcdFx0Y29sb3I6IEBncmF5TGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmRhdGVwaWNrZXItc3dpdGNoIHtcblx0XHR3aWR0aDogMTQ1cHg7XG5cdH1cblxuXHQuZGF0ZXBpY2tlci1zd2l0Y2gsXG5cdC5wcmV2LFxuXHQubmV4dCxcblx0dGZvb3QgdHIgdGgge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcblx0XHR9XG5cdH1cblxuXHQucHJldiwgLm5leHQge1xuXHRcdCYuZGlzYWJsZWQge1xuXHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdH1cblx0fVxuXG5cdC8vIEJhc2ljIHN0eWxpbmcgZm9yIGNhbGVuZGFyLXdlZWsgY2VsbHNcblx0LmN3IHtcblx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0d2lkdGg6IDEycHg7XG5cdFx0cGFkZGluZzogMCAycHggMCA1cHg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxufVxuLmlucHV0LWFwcGVuZCxcbi5pbnB1dC1wcmVwZW5kIHtcblx0Ji5kYXRlIC5hZGQtb24ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdGkge1xuXHRcdFx0bWFyZ2luLXRvcDogM3B4O1xuXHRcdH1cblx0fVxufVxuLmlucHV0LWRhdGVyYW5nZSB7XG5cdGlucHV0IHtcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0fVxuXHRpbnB1dDpmaXJzdC1jaGlsZCB7XG5cdFx0LmJvcmRlci1yYWRpdXMoM3B4IDAgMCAzcHgpO1xuXHR9XG5cdGlucHV0Omxhc3QtY2hpbGQge1xuXHRcdC5ib3JkZXItcmFkaXVzKDAgM3B4IDNweCAwKTtcblx0fVxuXHQuYWRkLW9uIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0bWluLXdpZHRoOiAxNnB4O1xuXHRcdGhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuXHRcdHBhZGRpbmc6IDRweCA1cHg7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR0ZXh0LXNoYWRvdzogMCAxcHggMCBAd2hpdGU7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcblx0XHRtYXJnaW4tbGVmdDogLTVweDtcblx0XHRtYXJnaW4tcmlnaHQ6IC01cHg7XG5cdH1cbn1cbiIsIi8vIERhdGVwaWNrZXIgLmxlc3MgYnVpbGRmaWxlLiAgSW5jbHVkZXMgc2VsZWN0IG1peGlucy92YXJpYWJsZXMgZnJvbSBib290c3RyYXBcbi8vIGFuZCBpbXBvcnRzIHRoZSBpbmNsdWRlZCBkYXRlcGlja2VyLmxlc3MgdG8gb3V0cHV0IGEgbWluaW1hbCBkYXRlcGlja2VyLmNzc1xuLy9cbi8vIFVzYWdlOlxuLy8gICAgIGxlc3NjIGJ1aWxkLmxlc3MgZGF0ZXBpY2tlci5jc3Ncbi8vXG4vLyBWYXJpYWJsZXMgYW5kIG1peGlucyBjb3BpZWQgZnJvbSBib290c3RyYXAgMi4wLjJcblxuLy8gVmFyaWFibGVzXG5AZ3JheUxpZ2h0OiAgICAgICAgICAgICAjOTk5O1xuQGdyYXlMaWdodGVyOiAgICAgICAgICAgI2VlZTtcbkB3aGl0ZTogICAgICAgICAgICAgICAgICNmZmY7XG5AbGlua0NvbG9yOiAgICAgICAgICAgICAjMDhjO1xuQGJ0blByaW1hcnlCYWNrZ3JvdW5kOiAgQGxpbmtDb2xvcjtcbkBvcmFuZ2U6ICAgICAgICAgICAgICAgICNmODk0MDY7XG5AaW5mb0JhY2tncm91bmQ6ICAgICAgICAjZDllZGY3O1xuQGJhc2VMaW5lSGVpZ2h0OiAgICAgICAgMThweDtcbkBiYXNlQm9yZGVyUmFkaXVzOiAgICAgIDRweDtcblxuLy8gTWl4aW5zXG5cbi8vIEJvcmRlciBSYWRpdXNcbi5ib3JkZXItcmFkaXVzKEByYWRpdXM6IDVweCkge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xufVxuXG4vLyBCdXR0b24gYmFja2dyb3VuZHNcbi5idXR0b25CYWNrZ3JvdW5kKEBzdGFydENvbG9yLCBAZW5kQ29sb3IpIHtcbiAgLmdyYWRpZW50QmFyKEBzdGFydENvbG9yLCBAZW5kQ29sb3IpO1xuICAucmVzZXQtZmlsdGVyKCk7XG4gICY6aG92ZXIsICY6YWN0aXZlLCAmLmFjdGl2ZSwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBlbmRDb2xvcjtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZW5kQ29sb3IsIDEwJSkgZShcIlxcOVwiKTtcbiAgfVxufVxuXG4vLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLnJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cblxuLy8gR3JhZGllbnQgQmFyIENvbG9ycyBmb3IgYnV0dG9ucyBhbmQgYWxlcnRzXG4uZ3JhZGllbnRCYXIoQHByaW1hcnlDb2xvciwgQHNlY29uZGFyeUNvbG9yKSB7XG4gICNncmFkaWVudCA+IC52ZXJ0aWNhbChAcHJpbWFyeUNvbG9yLCBAc2Vjb25kYXJ5Q29sb3IpO1xuICBib3JkZXItY29sb3I6IEBzZWNvbmRhcnlDb2xvciBAc2Vjb25kYXJ5Q29sb3IgZGFya2VuKEBzZWNvbmRhcnlDb2xvciwgMTUlKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xKSByZ2JhKDAsMCwwLC4xKSBmYWRlaW4ocmdiYSgwLDAsMCwuMSksIDE1JSk7XG59XG5cbi8vIEdyYWRpZW50c1xuI2dyYWRpZW50IHtcbiAgLnZlcnRpY2FsKEBzdGFydENvbG9yOiAjNTU1LCBAZW5kQ29sb3I6ICMzMzMpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoQHN0YXJ0Q29sb3IsIEBlbmRDb2xvciwgNjAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBJRTEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKEBzdGFydENvbG9yKSwgdG8oQGVuZENvbG9yKSk7IC8vIFNhZmFyaSA0KywgQ2hyb21lIDIrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gT3BlcmEgMTEuMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gVGhlIHN0YW5kYXJkXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsQHN0YXJ0Q29sb3IsQGVuZENvbG9yKSk7IC8vIElFOSBhbmQgZG93blxuICB9XG59XG5cbkBpbXBvcnQgXCIuLi9sZXNzL2RhdGVwaWNrZXIubGVzc1wiO1xuIiwiLyohXG4gKiBEYXRlcGlja2VyIGZvciBCb290c3RyYXAgdjEuOS4wIChodHRwczovL2dpdGh1Yi5jb20vdXhzb2x1dGlvbnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIpXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlIHYyLjAgKGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMClcbiAqL1xuXG4uZGF0ZXBpY2tlciB7XG4gIHBhZGRpbmc6IDRweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuLmRhdGVwaWNrZXItaW5saW5lIHtcbiAgd2lkdGg6IDIyMHB4O1xufVxuLmRhdGVwaWNrZXItcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4uZGF0ZXBpY2tlci1ydGwuZHJvcGRvd24tbWVudSB7XG4gIGxlZnQ6IGF1dG87XG59XG4uZGF0ZXBpY2tlci1ydGwgdGFibGUgdHIgdGQgc3BhbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd246YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAjOTk5O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xuICBib3JkZXItdG9wOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1sZWZ0OmJlZm9yZSB7XG4gIGxlZnQ6IDZweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LWxlZnQ6YWZ0ZXIge1xuICBsZWZ0OiA3cHg7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1yaWdodDpiZWZvcmUge1xuICByaWdodDogNnB4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtcmlnaHQ6YWZ0ZXIge1xuICByaWdodDogN3B4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtYm90dG9tOmJlZm9yZSB7XG4gIHRvcDogLTdweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LWJvdHRvbTphZnRlciB7XG4gIHRvcDogLTZweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LXRvcDpiZWZvcmUge1xuICBib3R0b206IC03cHg7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci10b3A6IDdweCBzb2xpZCAjOTk5O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtdG9wOmFmdGVyIHtcbiAgYm90dG9tOiAtNnB4O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiA2cHggc29saWQgI2ZmZjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5kYXRlcGlja2VyIHRkLFxuLmRhdGVwaWNrZXIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IG5vbmU7XG59XG4udGFibGUtc3RyaXBlZCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCxcbi50YWJsZS1zdHJpcGVkIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kYXk6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kYXkuZm9jdXNlZCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLm9sZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLm5ldyB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZCB7XG4gIGJhY2tncm91bmQ6ICNkOWVkZjc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGUxOWE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmRkNDlhLCAjZmRmNTlhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmZGQ0OWEpLCB0bygjZmRmNTlhKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZGQ0OWEsICNmZGY1OWEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmRkNDlhLCAjZmRmNTlhKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmRkNDlhJywgZW5kQ29sb3JzdHI9JyNmZGY1OWEnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogI2ZkZjU5YSAjZmRmNTlhICNmYmVkNTA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICMwMDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXlbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXJbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWRbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjU5YTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmYwNjkgXFw5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXI6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZDE3YTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmM2MxN2EsICNmM2U5N2EpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oI2YzYzE3YSksIHRvKCNmM2U5N2EpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2YzYzE3YSwgI2YzZTk3YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmM2MxN2EsICNmM2U5N2EpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmM2MxN2EnLCBlbmRDb2xvcnN0cj0nI2YzZTk3YScsIEdyYWRpZW50VHlwZT0wKTtcbiAgYm9yZGVyLWNvbG9yOiAjZjNlOTdhICNmM2U5N2EgI2VkZGUzNDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQ9ZmFsc2UpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheVtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3ZlcltkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNlOTdhO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZTI0YiBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjYjNiM2IzLCAjODA4MDgwKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNiM2IzYjMpLCB0bygjODA4MDgwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNiM2IzYjMsICM4MDgwODApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjYjNiM2IzLCAjODA4MDgwKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjYjNiM2IzJywgZW5kQ29sb3JzdHI9JyM4MDgwODAnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzgwODA4MCAjODA4MDgwICM1OTU5NTk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDgwODA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2IFxcOTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDZkY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4YywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDhjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwOGMpLCB0bygjMDA0NGNjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4YywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwOGMsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDhjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDhjJywgZW5kQ29sb3JzdHI9JyMwMDQ0Y2MnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzAwNDRjYyAjMDA0NGNjICMwMDJhODA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmVbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDRjYztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzM5OSBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyMyU7XG4gIGhlaWdodDogNTRweDtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDElO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uZm9jdXNlZCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDZkY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4YywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDhjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwOGMpLCB0bygjMDA0NGNjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4YywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwOGMsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDhjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDhjJywgZW5kQ29sb3JzdHI9JyMwMDQ0Y2MnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzAwNDRjYyAjMDA0NGNjICMwMDJhODA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ0Y2M7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMzk5IFxcOTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ub2xkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5uZXcge1xuICBjb2xvcjogIzk5OTtcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCB7XG4gIHdpZHRoOiAxNDVweDtcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCxcbi5kYXRlcGlja2VyIC5wcmV2LFxuLmRhdGVwaWNrZXIgLm5leHQsXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaDpob3Zlcixcbi5kYXRlcGlja2VyIC5wcmV2OmhvdmVyLFxuLmRhdGVwaWNrZXIgLm5leHQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG4uZGF0ZXBpY2tlciAucHJldi5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIC5uZXh0LmRpc2FibGVkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmRhdGVwaWNrZXIgLmN3IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMTJweDtcbiAgcGFkZGluZzogMCAycHggMCA1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uaW5wdXQtYXBwZW5kLmRhdGUgLmFkZC1vbixcbi5pbnB1dC1wcmVwZW5kLmRhdGUgLmFkZC1vbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pbnB1dC1hcHBlbmQuZGF0ZSAuYWRkLW9uIGksXG4uaW5wdXQtcHJlcGVuZC5kYXRlIC5hZGQtb24gaSB7XG4gIG1hcmdpbi10b3A6IDNweDtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0OmZpcnN0LWNoaWxkIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0Omxhc3QtY2hpbGQge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgLmFkZC1vbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiA0cHggNXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xufVxuLmRhdGVwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICpib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgKmJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4uZGF0ZXBpY2tlci5kcm9wZG93bi1tZW51IHRoLFxuLmRhdGVwaWNrZXIuZGF0ZXBpY2tlci1pbmxpbmUgdGgsXG4uZGF0ZXBpY2tlci5kcm9wZG93bi1tZW51IHRkLFxuLmRhdGVwaWNrZXIuZGF0ZXBpY2tlci1pbmxpbmUgdGQge1xuICBwYWRkaW5nOiA0cHggNXB4O1xufVxuLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLWRhdGVwaWNrZXIuc3RhbmRhbG9uZS5jc3MubWFwICovIiwiLy8gRGF0ZXBpY2tlciBzdGFuZGFsb25lIC5sZXNzIGJ1aWxkZmlsZS4gIEluY2x1ZGVzIGFsbCBuZWNlc3NhcnkgbWl4aW5zL3ZhcmlhYmxlcy9ydWxlcyBmcm9tIGJvb3RzdHJhcFxuLy8gYW5kIGltcG9ydHMgdGhlIGluY2x1ZGVkIGRhdGVwaWNrZXIubGVzcyB0byBvdXRwdXQgYSBtaW5pbWFsIHN0YW5kYWxvbmUgZGF0ZXBpY2tlci5jc3Ncbi8vXG4vLyBVc2FnZTpcbi8vICAgICBsZXNzYyBidWlsZF9zdGFuZGFsb25lLmxlc3MgZGF0ZXBpY2tlci5jc3Ncbi8vXG4vLyBWYXJpYWJsZXMsIG1peGlucywgYW5kIHJ1bGVzIGNvcGllZCBmcm9tIGJvb3RzdHJhcCAyLjAuMlxuXG5AaW1wb3J0IFwiYnVpbGQubGVzc1wiO1xuXG4vLyBEcm9wZG93biBjc3NcblxuQHppbmRleERyb3Bkb3duOiAgICAgICAgICAgICAgICAxMDAwO1xuQGdyYXlEYXJrOiAgICAgICAgICAgICAgICAgICAgICAjMzMzO1xuQGJhc2VMaW5lSGVpZ2h0OiAgICAgICAgICAgICAgICAyMHB4O1xuQHRhYmxlQmFja2dyb3VuZDogICAgICAgICAgICAgICB0cmFuc3BhcmVudDsgLy8gb3ZlcmFsbCBiYWNrZ3JvdW5kLWNvbG9yXG5AZHJvcGRvd25CYWNrZ3JvdW5kOiAgICAgICAgICAgIEB3aGl0ZTtcbkBkcm9wZG93bkJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMik7XG5AZHJvcGRvd25MaW5rQ29sb3I6ICAgICAgICAgICAgIEBncmF5RGFyaztcbkBkcm9wZG93bkxpbmtDb2xvckhvdmVyOiAgICAgICAgQHdoaXRlO1xuQGRyb3Bkb3duTGlua0JhY2tncm91bmRIb3ZlcjogICBAbGlua0NvbG9yO1xuXG4vLyBEcm9wIHNoYWRvd3Ncbi5ib3gtc2hhZG93KEBzaGFkb3cpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBAc2hhZG93O1xuICAgICAtbW96LWJveC1zaGFkb3c6IEBzaGFkb3c7XG4gICAgICAgICAgYm94LXNoYWRvdzogQHNoYWRvdztcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmRhdGVwaWNrZXJ7XG4gICYuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IEB6aW5kZXhEcm9wZG93bjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd25CYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMik7XG4gICAgLmJvcmRlci1yYWRpdXMoNXB4KTtcbiAgICAuYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpKTtcbiAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICpib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgICAqYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuXG4gICAgLy8gTm9ybWFsbHkgaW5oZXJpdGVkIGZyb20gYm9vdHN0cmFwJ3MgYGJvZHlgXG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgZm9udC1zaXplOjEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgfVxuXG4gICYuZHJvcGRvd24tbWVudSwgJi5kYXRlcGlja2VyLWlubGluZSB7XG4gICAgdGgsIHRkIHtcbiAgICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/