/*!********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/beware-datatable.css ***!
  \********************************************************************************************************************************/
@charset "UTF-8";
:root {
  --dt-row-selected: 13, 110, 253;
  --dt-row-selected-text: 255, 255, 255;
  --dt-row-selected-link: 9, 10, 11;
  --dt-row-stripe: 0, 0, 0;
  --dt-row-hover: 0, 0, 0;
  --dt-column-ordering: 0, 0, 0;
  --dt-html-background: white;
}
:root.dark {
  --dt-html-background: rgb(33, 37, 41);
}

/* DATATABLE OVERRIDE */
.dataTable.sticky-header thead{ position: sticky; top: 60px; background: #FFF; border-bottom: 1px solid #e0e0e0; box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);z-index: 1;}



/* DATATABLE LIBS */
table.dataTable td.dt-control {
  text-align: center;
  cursor: pointer;
}
table.dataTable td.dt-control:before {
  display: inline-block;
  box-sizing: border-box;
  content: "";
  border-top: 5px solid transparent;
  border-left: 10px solid rgba(0, 0, 0, 0.5);
  border-bottom: 5px solid transparent;
  border-right: 0px solid transparent;
}
table.dataTable tr.dt-hasChild td.dt-control:before {
  border-top: 10px solid rgba(0, 0, 0, 0.5);
  border-left: 5px solid transparent;
  border-bottom: 0px solid transparent;
  border-right: 5px solid transparent;
}

html.dark table.dataTable td.dt-control:before,
:root[data-bs-theme=dark] table.dataTable td.dt-control:before {
  border-left-color: rgba(255, 255, 255, 0.5);
}
html.dark table.dataTable tr.dt-hasChild td.dt-control:before,
:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before {
  border-top-color: rgba(255, 255, 255, 0.5);
  border-left-color: transparent;
}

div.dt-scroll-body thead tr,
div.dt-scroll-body tfoot tr {
  height: 0;
}
div.dt-scroll-body thead tr th, div.dt-scroll-body thead tr td,
div.dt-scroll-body tfoot tr th,
div.dt-scroll-body tfoot tr td {
  height: 0 !important;
  padding-top: 0px !important;
  padding-bottom: 0px !important;
  border-top-width: 0px !important;
  border-bottom-width: 0px !important;
}
div.dt-scroll-body thead tr th div.dt-scroll-sizing, div.dt-scroll-body thead tr td div.dt-scroll-sizing,
div.dt-scroll-body tfoot tr th div.dt-scroll-sizing,
div.dt-scroll-body tfoot tr td div.dt-scroll-sizing {
  height: 0 !important;
  overflow: hidden !important;
}

table.dataTable thead > tr > th:active,
table.dataTable thead > tr > td:active {
  outline: none;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before {
  position: absolute;
  display: block;
  bottom: 50%;
  content: "▲";
  content: "▲"/"";
}
table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  position: absolute;
  display: block;
  top: 50%;
  content: "▼";
  content: "▼"/"";
}
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc,
table.dataTable thead > tr > td.dt-orderable-asc,
table.dataTable thead > tr > td.dt-orderable-desc,
table.dataTable thead > tr > td.dt-ordering-asc,
table.dataTable thead > tr > td.dt-ordering-desc {
  position: relative;
  padding-right: 30px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order {
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  width: 12px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  left: 0;
  opacity: 0.125;
  line-height: 9px;
  font-size: 0.8em;
}
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc,
table.dataTable thead > tr > td.dt-orderable-asc,
table.dataTable thead > tr > td.dt-orderable-desc {
  cursor: pointer;
}
table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover,
table.dataTable thead > tr > td.dt-orderable-asc:hover,
table.dataTable thead > tr > td.dt-orderable-desc:hover {
  outline: 2px solid rgba(0, 0, 0, 0.05);
  outline-offset: -2px;
}
table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  opacity: 0.6;
}
table.dataTable thead > tr > th.sorting_desc_disabled span.dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled span.dt-column-order:before,
table.dataTable thead > tr > td.sorting_desc_disabled span.dt-column-order:after,
table.dataTable thead > tr > td.sorting_asc_disabled span.dt-column-order:before {
  display: none;
}
table.dataTable thead > tr > th:active,
table.dataTable thead > tr > td:active {
  outline: none;
}

div.dt-scroll-body > table.dataTable > thead > tr > th,
div.dt-scroll-body > table.dataTable > thead > tr > td {
  overflow: hidden;
}

:root.dark table.dataTable thead > tr > th.dt-orderable-asc:hover, :root.dark table.dataTable thead > tr > th.dt-orderable-desc:hover,
:root.dark table.dataTable thead > tr > td.dt-orderable-asc:hover,
:root.dark table.dataTable thead > tr > td.dt-orderable-desc:hover,
:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-asc:hover,
:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-desc:hover,
:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-asc:hover,
:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-desc:hover {
  outline: 2px solid rgba(255, 255, 255, 0.05);
}

/* div.dt-processing {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200px;
  margin-left: -100px;
  margin-top: -22px;
  text-align: center;
  padding: 2px;
  z-index: 10;
} */

div.dt-processing {
  position: absolute;
  width: 100%;
  text-align: center;
  padding: 2px;
  z-index: 10;
  background: rgba(25, 31, 52, 0.4);
  height: 100%;
}
div.dt-processing > div:last-child {
  display: none;
}
div.dt-processing > div:last-child > div {
  position: absolute;
  top: 0;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: rgb(13, 110, 253);
  background: rgb(var(--dt-row-selected));
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
div.dt-processing > div:last-child > div:nth-child(1) {
  left: 8px;
  animation: datatables-loader-1 0.6s infinite;
}
div.dt-processing > div:last-child > div:nth-child(2) {
  left: 8px;
  animation: datatables-loader-2 0.6s infinite;
}
div.dt-processing > div:last-child > div:nth-child(3) {
  left: 32px;
  animation: datatables-loader-2 0.6s infinite;
}
div.dt-processing > div:last-child > div:nth-child(4) {
  left: 56px;
  animation: datatables-loader-3 0.6s infinite;
}

@keyframes datatables-loader-1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes datatables-loader-3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes datatables-loader-2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}
table.dataTable.nowrap th, table.dataTable.nowrap td {
  white-space: nowrap;
}
table.dataTable th,
table.dataTable td {
  box-sizing: border-box;
}
table.dataTable th.dt-left,
table.dataTable td.dt-left {
  text-align: left;
}
table.dataTable th.dt-center,
table.dataTable td.dt-center {
  text-align: center;
}
table.dataTable th.dt-right,
table.dataTable td.dt-right {
  text-align: right;
}
table.dataTable th.dt-justify,
table.dataTable td.dt-justify {
  text-align: justify;
}
table.dataTable th.dt-nowrap,
table.dataTable td.dt-nowrap {
  white-space: nowrap;
}
table.dataTable th.dt-empty,
table.dataTable td.dt-empty {
  text-align: center;
  vertical-align: top;
}
/* table.dataTable th.dt-type-numeric, table.dataTable th.dt-type-date,
table.dataTable td.dt-type-numeric,
table.dataTable td.dt-type-date {
  text-align: right;
} */
table.dataTable thead th,
table.dataTable thead td,
table.dataTable tfoot th,
table.dataTable tfoot td {
  text-align: left;
}
table.dataTable thead th.dt-head-left,
table.dataTable thead td.dt-head-left,
table.dataTable tfoot th.dt-head-left,
table.dataTable tfoot td.dt-head-left {
  text-align: left;
}
table.dataTable thead th.dt-head-center,
table.dataTable thead td.dt-head-center,
table.dataTable tfoot th.dt-head-center,
table.dataTable tfoot td.dt-head-center {
  text-align: center;
}
table.dataTable thead th.dt-head-right,
table.dataTable thead td.dt-head-right,
table.dataTable tfoot th.dt-head-right,
table.dataTable tfoot td.dt-head-right {
  text-align: right;
}
table.dataTable thead th.dt-head-justify,
table.dataTable thead td.dt-head-justify,
table.dataTable tfoot th.dt-head-justify,
table.dataTable tfoot td.dt-head-justify {
  text-align: justify;
}
table.dataTable thead th.dt-head-nowrap,
table.dataTable thead td.dt-head-nowrap,
table.dataTable tfoot th.dt-head-nowrap,
table.dataTable tfoot td.dt-head-nowrap {
  white-space: nowrap;
}
table.dataTable tbody th.dt-body-left,
table.dataTable tbody td.dt-body-left {
  text-align: left;
}
table.dataTable tbody th.dt-body-center,
table.dataTable tbody td.dt-body-center {
  text-align: center;
}
table.dataTable tbody th.dt-body-right,
table.dataTable tbody td.dt-body-right {
  text-align: right;
}
table.dataTable tbody th.dt-body-justify,
table.dataTable tbody td.dt-body-justify {
  text-align: justify;
}
table.dataTable tbody th.dt-body-nowrap,
table.dataTable tbody td.dt-body-nowrap {
  white-space: nowrap;
}

/*
 * Table styles
 */
table.dataTable {
  width: 100%;
  margin: 0 auto;
  border-spacing: 0;
  /*
   * Header and footer styles
   */
  /*
   * Body styles
   */
}
table.dataTable thead th,
table.dataTable tfoot th {
  font-weight: bold;
}
table.dataTable > thead > tr > th,
table.dataTable > thead > tr > td {
  padding: 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
table.dataTable > thead > tr > th:active,
table.dataTable > thead > tr > td:active {
  outline: none;
}
table.dataTable > tfoot > tr > th,
table.dataTable > tfoot > tr > td {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  padding: 10px 10px 6px 10px;
}
table.dataTable > tbody > tr {
  background-color: transparent;
}
table.dataTable > tbody > tr:first-child > * {
  border-top: none;
}
table.dataTable > tbody > tr:last-child > * {
  border-bottom: none;
}
table.dataTable > tbody > tr.selected > * {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.9);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.9);
  color: rgb(255, 255, 255);
  color: rgb(var(--dt-row-selected-text));
}
table.dataTable > tbody > tr.selected a {
  color: rgb(9, 10, 11);
  color: rgb(var(--dt-row-selected-link));
}
table.dataTable > tbody > tr > th,
table.dataTable > tbody > tr > td {
  padding: 8px 10px;
  vertical-align: middle;
}
table.dataTable.row-border > tbody > tr > *, table.dataTable.display > tbody > tr > * {
  border-top: 1px solid rgba(0, 0, 0, 0.15);
}
table.dataTable.row-border > tbody > tr:first-child > *, table.dataTable.display > tbody > tr:first-child > * {
  border-top: none;
}
table.dataTable.row-border > tbody > tr.selected + tr.selected > td, table.dataTable.display > tbody > tr.selected + tr.selected > td {
  border-top-color: rgba(13, 110, 253, 0.65);
  border-top-color: rgba(var(--dt-row-selected), 0.65);
}
table.dataTable.cell-border > tbody > tr > * {
  border-top: 1px solid rgba(0, 0, 0, 0.15);
  border-right: 1px solid rgba(0, 0, 0, 0.15);
}
table.dataTable.cell-border > tbody > tr > *:first-child {
  border-left: 1px solid rgba(0, 0, 0, 0.15);
}
table.dataTable.cell-border > tbody > tr:first-child > * {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
}
table.dataTable.stripe > tbody > tr:nth-child(odd) > *, table.dataTable.display > tbody > tr:nth-child(odd) > * {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.023);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe), 0.023);
}
table.dataTable.stripe > tbody > tr:nth-child(odd).selected > *, table.dataTable.display > tbody > tr:nth-child(odd).selected > * {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.923);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.923);
}
table.dataTable.hover > tbody > tr:hover > *, table.dataTable.display > tbody > tr:hover > * {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.035);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.035);
}
table.dataTable.hover > tbody > tr.selected:hover > *, table.dataTable.display > tbody > tr.selected:hover > * {
  box-shadow: inset 0 0 0 9999px #0d6efd !important;
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 1) !important;
}
table.dataTable.order-column > tbody tr > .sorting_1,
table.dataTable.order-column > tbody tr > .sorting_2,
table.dataTable.order-column > tbody tr > .sorting_3, table.dataTable.display > tbody tr > .sorting_1,
table.dataTable.display > tbody tr > .sorting_2,
table.dataTable.display > tbody tr > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.019);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.019);
}
table.dataTable.order-column > tbody tr.selected > .sorting_1,
table.dataTable.order-column > tbody tr.selected > .sorting_2,
table.dataTable.order-column > tbody tr.selected > .sorting_3, table.dataTable.display > tbody tr.selected > .sorting_1,
table.dataTable.display > tbody tr.selected > .sorting_2,
table.dataTable.display > tbody tr.selected > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.919);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.919);
}
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.054);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.054);
}
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.047);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.047);
}
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.039);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.039);
}
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.954);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.954);
}
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.947);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.947);
}
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.939);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.939);
}
table.dataTable.display > tbody > tr.even > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.019);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.019);
}
table.dataTable.display > tbody > tr.even > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.011);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.011);
}
table.dataTable.display > tbody > tr.even > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.003);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.003);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.919);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.919);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.911);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.911);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.903);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.903);
}
table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.082);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.082);
}
table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.074);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.074);
}
table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.062);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.062);
}
table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.982);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.982);
}
table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.974);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.974);
}
table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.962);
  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.962);
}
table.dataTable.compact thead th,
table.dataTable.compact thead td,
table.dataTable.compact tfoot th,
table.dataTable.compact tfoot td,
table.dataTable.compact tbody th,
table.dataTable.compact tbody td {
  padding: 4px;
}

/*
 * Control feature layout
 */
div.dt-container {
  /* position: relative; */
  display:block;
  clear: both;
}
div.dt-container div.dt-layout-row {
  display: table;
  clear: both;
  width: 100%;
}
div.dt-container div.dt-layout-row.dt-layout-table {
  display: block;
}
div.dt-container div.dt-layout-row.dt-layout-table div.dt-layout-cell {
  display: block;
}
div.dt-container div.dt-layout-cell {
  display: table-cell;
  vertical-align: middle;
  padding: 5px 0;
}
div.dt-container div.dt-layout-cell.dt-full {
  text-align: center;
}
div.dt-container div.dt-layout-cell.dt-start {
  text-align: left;
}
div.dt-container div.dt-layout-cell.dt-end {
  text-align: right;
}
div.dt-container div.dt-layout-cell:empty {
  display: none;
}
div.dt-container .dt-search input {
  border: 1px solid #aaa;
  border-radius: 3px;
  padding: 5px;
  background-color: transparent;
  color: inherit;
  margin-left: 3px;
}
div.dt-container .dt-input {
  border: 1px solid #aaa;
  border-radius: 3px;
  padding: 5px;
  background-color: transparent;
  color: inherit;
}
div.dt-container select.dt-input {
  padding: 4px;
}
div.dt-container .dt-paging .dt-paging-button {
  box-sizing: border-box;
  display: inline-block;
  min-width: 1.5em;
  padding: 0.5em 1em;
  margin-left: 2px;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  color: inherit !important;
  border: 1px solid transparent;
  border-radius: 2px;
  background: transparent;
}
div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover {
  color: inherit !important;
  border: 1px solid rgba(0, 0, 0, 0.3);
  background-color: rgba(0, 0, 0, 0.05);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(230, 230, 230, 0.05)), color-stop(100%, rgba(0, 0, 0, 0.05))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* FF3.6+ */
  background: -ms-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* IE10+ */
  background: -o-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Opera 11.10+ */
  background: linear-gradient(to bottom, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* W3C */
}
div.dt-container .dt-paging .dt-paging-button.disabled, div.dt-container .dt-paging .dt-paging-button.disabled:hover, div.dt-container .dt-paging .dt-paging-button.disabled:active {
  cursor: default;
  color: rgba(0, 0, 0, 0.5) !important;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
}
div.dt-container .dt-paging .dt-paging-button:hover {
  color: white !important;
  border: 1px solid #111;
  background-color: #111;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #585858 0%, #111 100%); /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, #585858 0%, #111 100%); /* FF3.6+ */
  background: -ms-linear-gradient(top, #585858 0%, #111 100%); /* IE10+ */
  background: -o-linear-gradient(top, #585858 0%, #111 100%); /* Opera 11.10+ */
  background: linear-gradient(to bottom, #585858 0%, #111 100%); /* W3C */
}
div.dt-container .dt-paging .dt-paging-button:active {
  outline: none;
  background-color: #0c0c0c;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* FF3.6+ */
  background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* IE10+ */
  background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); /* Opera 11.10+ */
  background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%); /* W3C */
  box-shadow: inset 0 0 3px #111;
}
div.dt-container .dt-paging .ellipsis {
  padding: 0 1em;
}
div.dt-container .dt-length,
div.dt-container .dt-search,
div.dt-container .dt-info,
div.dt-container .dt-processing,
div.dt-container .dt-paging {
  color: inherit;
}
div.dt-container .dataTables_scroll {
  clear: both;
}
div.dt-container .dataTables_scroll div.dt-scroll-body {
  -webkit-overflow-scrolling: touch;
}
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td {
  vertical-align: middle;
}
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th > div.dataTables_sizing,
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td > div.dataTables_sizing, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th > div.dataTables_sizing,
div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td > div.dataTables_sizing {
  height: 0;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
}
div.dt-container.dt-empty-footer tbody > tr:last-child > * {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
div.dt-container.dt-empty-footer .dt-scroll-body {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
div.dt-container.dt-empty-footer .dt-scroll-body tbody > tr:last-child > * {
  border-bottom: none;
}

@media screen and (max-width: 767px) {
  div.dt-container div.dt-layout-row {
    display: block;
  }
  div.dt-container div.dt-layout-cell {
    display: block;
  }
  div.dt-container div.dt-layout-cell.dt-full, div.dt-container div.dt-layout-cell.dt-start, div.dt-container div.dt-layout-cell.dt-end {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  .dt-container .dt-length,
  .dt-container .dt-search {
    float: none;
    text-align: center;
  }
  .dt-container .dt-search {
    margin-top: 0.5em;
  }
}
html.dark {
  --dt-row-hover: 255, 255, 255;
  --dt-row-stripe: 255, 255, 255;
  --dt-column-ordering: 255, 255, 255;
}
html.dark table.dataTable > thead > tr > th,
html.dark table.dataTable > thead > tr > td {
  border-bottom: 1px solid rgb(89, 91, 94);
}
html.dark table.dataTable > thead > tr > th:active,
html.dark table.dataTable > thead > tr > td:active {
  outline: none;
}
html.dark table.dataTable > tfoot > tr > th,
html.dark table.dataTable > tfoot > tr > td {
  border-top: 1px solid rgb(89, 91, 94);
}
html.dark table.dataTable.row-border > tbody > tr > *, html.dark table.dataTable.display > tbody > tr > * {
  border-top: 1px solid rgb(64, 67, 70);
}
html.dark table.dataTable.row-border > tbody > tr:first-child > *, html.dark table.dataTable.display > tbody > tr:first-child > * {
  border-top: none;
}
html.dark table.dataTable.row-border > tbody > tr.selected + tr.selected > td, html.dark table.dataTable.display > tbody > tr.selected + tr.selected > td {
  border-top-color: rgba(13, 110, 253, 0.65);
  border-top-color: rgba(var(--dt-row-selected), 0.65);
}
html.dark table.dataTable.cell-border > tbody > tr > th,
html.dark table.dataTable.cell-border > tbody > tr > td {
  border-top: 1px solid rgb(64, 67, 70);
  border-right: 1px solid rgb(64, 67, 70);
}
html.dark table.dataTable.cell-border > tbody > tr > th:first-child,
html.dark table.dataTable.cell-border > tbody > tr > td:first-child {
  border-left: 1px solid rgb(64, 67, 70);
}
html.dark .dt-container.dt-empty-footer table.dataTable {
  border-bottom: 1px solid rgb(89, 91, 94);
}
html.dark .dt-container .dt-search input,
html.dark .dt-container .dt-length select {
  border: 1px solid rgba(255, 255, 255, 0.2);
  background-color: var(--dt-html-background);
}
html.dark .dt-container .dt-paging .dt-paging-button.current, html.dark .dt-container .dt-paging .dt-paging-button.current:hover {
  border: 1px solid rgb(89, 91, 94);
  background: rgba(255, 255, 255, 0.15);
}
html.dark .dt-container .dt-paging .dt-paging-button.disabled, html.dark .dt-container .dt-paging .dt-paging-button.disabled:hover, html.dark .dt-container .dt-paging .dt-paging-button.disabled:active {
  color: #666 !important;
}
html.dark .dt-container .dt-paging .dt-paging-button:hover {
  border: 1px solid rgb(53, 53, 53);
  background: rgb(53, 53, 53);
}
html.dark .dt-container .dt-paging .dt-paging-button:active {
  background: #3a3a3a;
}

/*
 * Overrides for RTL support
 */
*[dir=rtl] table.dataTable thead th,
*[dir=rtl] table.dataTable thead td,
*[dir=rtl] table.dataTable tfoot th,
*[dir=rtl] table.dataTable tfoot td {
  text-align: right;
}
*[dir=rtl] table.dataTable th.dt-type-numeric, *[dir=rtl] table.dataTable th.dt-type-date,
*[dir=rtl] table.dataTable td.dt-type-numeric,
*[dir=rtl] table.dataTable td.dt-type-date {
  text-align: left;
}
*[dir=rtl] div.dt-container div.dt-layout-cell.dt-start {
  text-align: right;
}
*[dir=rtl] div.dt-container div.dt-layout-cell.dt-end {
  text-align: left;
}
*[dir=rtl] div.dt-container div.dt-search input {
  margin: 0 3px 0 0;
}

.dt-layout-cell div:first-child #dt-loader{ background: white; padding: 15px; width: 450px; border-radius: 5px; position: relative; top: 40%; margin: 0 auto;}

/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/reset.css ***!
  \*********************************************************************************************************************/
html, body, div {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit; 
  font-weight: bold;
}

a, p, ul, ol, li, img, span, strong, em {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

table, tbody, tfoot, thead, tr, th, td {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

applet, object, iframe, blockquote, pre, abbr, acronym, address, big, cite, code,
del, dfn, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var,
b, u, i, center, dl, dt, dd, caption, fieldset, form, label, legend {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

article, aside, figure, footer, header, hgroup, section {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0;
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

canvas, details, embed, figcaption, menu, nav, output, ruby, summary, time, mark, audio, video {
  margin: 0; 
  padding: 0; 
  border: 0; 
  outline: 0; 
  font-size: 100%; 
  vertical-align: baseline; 
  font: inherit;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

b,
strong {
  font-weight: bold;
}

em,
i {
  font-style: italic;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

/* remember to define focus styles! */
:focus {
  outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

img { vertical-align:middle;}
/*!*************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/alpha-fluid-normal-12.css ***!
  \*************************************************************************************************************************************/
/*
 * ==========================================================
 * Grid
 * ==========================================================
 */

.grid-1, .grid-2, .grid-3, .grid-4, .grid-5, .grid-6, .grid-7, .grid-8, .grid-9, .grid-10, 
.grid-11, .grid-12 {
  display: inline;
  float: left;
  position: relative;
  margin-left: 1%;
  margin-right: 1%;
}

.push-1, .pull-1, .push-2, .pull-2, .push-3, .pull-3, .push-4, .pull-4,
.push-5, .pull-5, .push-6, .pull-6, .push-7, .pull-7, .push-8, .pull-8,
.push-9, .pull-9, .push-10, .pull-10, .push-11, .pull-11, .push-12, .pull-12 {
  position: relative;
}

/*
 * ==========================================================
 * Alpha - Omega
 * ==========================================================
 */

.alpha {
  margin-left: 0;
}

.omega {
  margin-right: 0;
}

/*
 * ==========================================================
 * Container
 * ==========================================================
 */

.container-12 {
  width:100%;
}

/*
 * ==========================================================
 * Columns
 * ==========================================================
 */

.container-12 .grid-1 {
  width: 6.333%;
}

.container-12 .grid-2 {
  width: 14.667%;
}

.container-12 .grid-3 {
  width: 23.0%;
}

.container-12 .grid-4 {
  width: 31.333%;
}

.container-12 .grid-5 {
  width: 39.667%;
}

.container-12 .grid-6 {
  width: 48.0%;
}

.container-12 .grid-7 {
  width: 56.333%;
}

.container-12 .grid-8 {
  width: 64.667%;
}

.container-12 .grid-9 {
  width: 73.0%;
}

.container-12 .grid-10 {
  width: 81.333%;
}

.container-12 .grid-11 {
  width: 89.667%;
}

.container-12 .grid-12 {
  width: 98.0%;
}

/*
 * ==========================================================
 * Prefix
 * ==========================================================
 */

.container-12 .prefix-1 {
  padding-left: 8.333%;
}

.container-12 .prefix-2 {
  padding-left: 16.667%;
}

.container-12 .prefix-3 {
  padding-left: 25.0%;
}

.container-12 .prefix-4 {
  padding-left: 33.333%;
}

.container-12 .prefix-5 {
  padding-left: 41.667%;
}

.container-12 .prefix-6 {
  padding-left: 50.0%;
}

.container-12 .prefix-7 {
  padding-left: 58.333%;
}

.container-12 .prefix-8 {
  padding-left: 66.667%;
}

.container-12 .prefix-9 {
  padding-left: 75.0%;
}

.container-12 .prefix-10 {
  padding-left: 83.333%;
}

.container-12 .prefix-11 {
  padding-left: 91.667%;
}

/*
 * ==========================================================
 * Suffix
 * ==========================================================
 */

.container-12 .suffix-1 {
  padding-right: 8.333%;
}

.container-12 .suffix-2 {
  padding-right: 16.667%;
}

.container-12 .suffix-3 {
  padding-right: 25.0%;
}

.container-12 .suffix-4 {
  padding-right: 33.333%;
}

.container-12 .suffix-5 {
  padding-right: 41.667%;
}

.container-12 .suffix-6 {
  padding-right: 50.0%;
}

.container-12 .suffix-7 {
  padding-right: 58.333%;
}

.container-12 .suffix-8 {
  padding-right: 66.667%;
}

.container-12 .suffix-9 {
  padding-right: 75.0%;
}

.container-12 .suffix-10 {
  padding-right: 83.333%;
}

.container-12 .suffix-11 {
  padding-right: 91.667%;
}

/*
 * ==========================================================
 * Push
 * ==========================================================
 */

.container-12 .push-1 {
  left: 8.333%;
}

.container-12 .push-2 {
  left: 16.667%;
}

.container-12 .push-3 {
  left: 25.0%;
}

.container-12 .push-4 {
  left: 33.333%;
}

.container-12 .push-5 {
  left: 41.667%;
}

.container-12 .push-6 {
  left: 50.0%;
}

.container-12 .push-7 {
  left: 58.333%;
}

.container-12 .push-8 {
  left: 66.667%;
}

.container-12 .push-9 {
  left: 75.0%;
}

.container-12 .push-10 {
  left: 83.333%;
}

.container-12 .push-11 {
  left: 91.667%;
}

/*
 * ==========================================================
 * Pull
 * ==========================================================
 */

.container-12 .pull-1 {
  left: -8.333%;
}

.container-12 .pull-2 {
  left: -16.667%;
}

.container-12 .pull-3 {
  left: -25.0%;
}

.container-12 .pull-4 {
  left: -33.333%;
}

.container-12 .pull-5 {
  left: -41.667%;
}

.container-12 .pull-6 {
  left: -50.0%;
}

.container-12 .pull-7 {
  left: -58.333%;
}

.container-12 .pull-8 {
  left: -66.667%;
}

.container-12 .pull-9 {
  left: -75.0%;
}

.container-12 .pull-10 {
  left: -83.333%;
}

.container-12 .pull-11 {
  left: -91.667%;
}
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/fonts.css ***!
  \*********************************************************************************************************************/
/*********************************************************\
 * FONTS
 * Déclaration des fonts:
\*********************************************************/


	/**
	 * ROBOTO
	 *************************************/

		@font-face {
			font-family: 'robotoregular';
			src: url(/build/fonts/Roboto-Regular-webfont.cfc3cf7f.eot);
			src: url(/build/fonts/Roboto-Regular-webfont.cfc3cf7f.eot?#iefix) format('embedded-opentype'),
				 url(/build/fonts/Roboto-Regular-webfont.112fa84d.ttf) format('truetype'),
				 url(/build/fonts/Roboto-Regular-webfont.ccc2dd0b.woff),
			     url(/build/images/Roboto-Regular-webfont.dd7cadf7.svg#robotoregular) format('svg');
		}

		@font-face {
		  font-family: 'robotothin';
		  src: url(/build/fonts/Roboto-Thin-webfont.daff3e42.eot);
		  src: url(/build/fonts/Roboto-Thin-webfont.daff3e42.eot?#iefix) format('embedded-opentype'),
		  	   url(/build/fonts/Roboto-Thin-webfont.9f0bd535.ttf) format('truetype'),
		  	   url(/build/fonts/Roboto-Thin-webfont.afab0292.woff),
		       url(/build/images/Roboto-Thin-webfont.24dfd745.svg#robotothin) format('svg');
		}

		@font-face {
		  font-family: 'robotolight';
		  src: url(/build/fonts/Roboto-Light-webfont.4baa4794.eot);
		  src: url(/build/fonts/Roboto-Light-webfont.4baa4794.eot?#iefix) format('embedded-opentype'),
		  	   url(/build/fonts/Roboto-Light-webfont.c0e9e7b5.ttf) format('truetype'),
		  	   url(/build/fonts/Roboto-Light-webfont.0ee1beee.woff),
		       url(/build/images/Roboto-Light-webfont.bc07576b.svg#robotolight) format('svg');
		}

		@font-face {
		  font-family: 'robotomedium';
		  src: url(/build/fonts/Roboto-Medium-webfont.6ff2746e.eot);
		  src: url(/build/fonts/Roboto-Medium-webfont.6ff2746e.eot?#iefix) format('embedded-opentype'),
		  	   url(/build/fonts/Roboto-Medium-webfont.0261b473.ttf) format('truetype'),
		  	   url(/build/fonts/Roboto-Medium-webfont.bd453e22.woff),
		       url(/build/images/Roboto-Medium-webfont.66c91618.svg#robotomedium) format('svg');
		}

		@font-face {
		  font-family: 'robotobold';
		  src: url(/build/fonts/Roboto-Bold-webfont.ec969e4d.eot);
		  src: url(/build/fonts/Roboto-Bold-webfont.ec969e4d.eot?#iefix) format('embedded-opentype'),
		  	   url(/build/fonts/Roboto-Bold-webfont.89d2f8a3.ttf) format('truetype'),
		  	   url(/build/fonts/Roboto-Bold-webfont.e806af2d.woff),
		       url(/build/images/Roboto-Bold-webfont.fc010a56.svg#robotobold) format('svg');
		}

		@font-face {
		  font-family: 'robotoblack';
		  src: url(/build/fonts/Roboto-Black-webfont.7a2722f8.eot);
		  src: url(/build/fonts/Roboto-Black-webfont.7a2722f8.eot?#iefix) format('embedded-opentype'),
		  	   url(/build/fonts/Roboto-Black-webfont.7bace957.ttf) format('truetype'),
		  	   url(/build/fonts/Roboto-Black-webfont.5ded5eab.woff),
		       url(/build/images/Roboto-Black-webfont.b43d1e8e.svg#robotoblack) format('svg');
		}


		@font-face {
		  font-family: 'droidSansMono';
		  src: url(/build/fonts/DroidSansMono.c8126ff4.ttf) format('truetype');
		}
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/popup.css ***!
  \*********************************************************************************************************************/
/*!
 *  Form 1 by @davidliverneaux - http://davidliverneaux.fr
 *  License - none (CSS: MIT License)
 */

	/**
   * TRANSITIONS
   *************************************/
   .popup,
   .popup-wrapper,
   .popup .close,
   .popup .btn {
    -webkit-transition: all 0.2s ease;
       -moz-transition: all 0.2s ease;
         -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
    }
 
 
  /**
   * SHADOW
   *************************************/
   .popup .popup-wrapper {
    -moz-box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.25);
    -webkit-box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.25);
    -o-box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.25);
    filter:progid:DXImageTransform.Microsoft.Shadow(color=#656565, Direction=NaN, Strength=40);
   }
 
 
  /* INIT */
  .popup { position:fixed; z-index:8; top:-1000%; left:0; display:block; width:100%; height:100%; background:rgba(0,0,0,0.5);}
    .popup .popup-wrapper { display:block; margin:0 auto; margin-top:40px; min-width:500px; max-width:900px; width:80%; max-height:calc(100% - 80px); overflow:auto; background:#ffffff; color:#333333; }
      .popup .popup-wrapper .popup-content { position:relative; display:block; padding:30px 20px 20px 20px; }
        .popup .popup-wrapper .popup-content .close { position:absolute; z-index:1; top:0; right:0; display:block; padding:0; width:30px; height:30px; line-height:30px; text-align:center; color:#ffffff; background:rgb(237,89,94); cursor:pointer;}
        .popup .popup-wrapper .popup-content .close::before { content:'\f00d'; }
        .popup .popup-wrapper .popup-content .close:hover { background:rgba(237,89,94, 0.8);}
        .popup .popup-wrapper .popup-content h2 { position:relative; margin:0 0 30px 0; font-size:15px; border-bottom:solid 2px #E6EAEB;}
        .popup .popup-wrapper .popup-content h2::before { content:''; position:absolute; left:0; bottom:-2px; width:140px; height:2px; background:#333;}
        .popup .popup-wrapper .popup-content .popup-body {}
        .popup .popup-wrapper .popup-content .popup-action { display:flex; flex-wrap:wrap; justify-content:flex-end; }
          .popup .popup-wrapper .popup-content .popup-action .btn { margin:0 4px; }
          .popup .popup-wrapper .popup-content .popup-action [type="submit"] { margin:0 4px; } 
 
    /* HOVER */
    .popup.active { top:0;}
 
    .popup .zone-message { padding:10px 0;}
 
 
    .popup .popup-wrapper .popup-content .close::before {
      font-family:'fontawesome';
      font-weight:normal;
    }
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/table.css ***!
  \*********************************************************************************************************************/
  /**
   * TABLE
   *************************************/
    /* Base */
    tr { display:table-row;}
    /*th { font-weight:bold;}*/
    
    td,th { display:table-cell;}

table { 
  display:table; 
  margin-bottom:20px;
  /* width:100%;  */
  max-width:100%; 
  background-color:#ffffff;
  overflow-y:hidden;
  -ms-overflow-style:-ms-autohiding-scrollbar;
}

  table>thead>tr>th,
  table>tbody>tr>th,
  table>tfoot>tr>th,
  table>thead>tr>td,
  table>tbody>tr>td,
  table>tfoot>tr>td {
    padding:0 8px;
    line-height:28px;
    vertical-align:top;
    text-align:left;
    border-top:1px solid #dddddd;
    /* white-space: break-spaces; */
  }

  /* table>tbody>tr>th { padding:0 4px; height:28px; line-height:28px; border-bottom:1px solid #e5e5e5; background:#f5f5f5; text-align:left;} */

  table>thead>tr>th {
    vertical-align:middle;
    border:0;
    font-weight:600;
  }

  table>tbody>tr.disabled { background:#e5e5e5;}

  /* TR COLORS */
  table.striped>tbody>tr:nth-of-type(odd) { background-color:#e5e5e5;}
  table>tbody>tr:hover,
  table.striped>tbody>tr:nth-of-type(odd):hover,
  table>tbody>tr.valid:hover,
  table.striped>tbody>tr:nth-of-type(odd).valid:hover,
  table>tbody>tr.unvalid:hover,
  table.striped>tbody>tr:nth-of-type(odd).unvalid:hover { background-color:#f5f5f5;}

  /* TR valid */
  table.striped>tbody>tr.valid { background-color:rgba(16,196,135,0.25);}
  table.striped>tbody>tr:nth-of-type(odd).valid { background-color:rgba(16,196,135,0.45);}
  /* table>tbody>tr.valid:hover,
  table.striped>tbody>tr:nth-of-type(odd).valid:hover { background-color:rgba(26,188,156,0.55);} */
  /* TR unvalid */
  table.striped>tbody>tr.unvalid { background-color:rgba(253,85,120,0.25);}
  table.striped>tbody>tr:nth-of-type(odd).unvalid { background-color:rgba(253,85,120,0.35);}
  table>tbody>tr.unvalid:hover,
  table.striped>tbody>tr:nth-of-type(odd).unvalid:hover { background-color:rgba(253,85,120,0.55);}

  /* TR warning */
  table.striped>tbody>tr.warning { background-color:rgba(221,197,35,0.25);}
  table.striped>tbody>tr:nth-of-type(odd).warning { background-color:rgba(221,197,35,0.35);}
  table>tbody>tr.warning:hover,
  table.striped>tbody>tr:nth-of-type(odd).warning:hover { background-color:rgba(221,197,35,0.55);}


  table.stripe>tbody>tr.no-hover:nth-of-type(odd):hover,
  table>tbody>tr.no-hover:hover { background:inherit;}


  /* TD ALIGN */
  table>thead>tr>th.ta-center,
  table>tbody>tr>td.ta-center { text-align:center;}
  table>thead>tr>th.ta-right,
  table>tbody>tr>td.ta-right { text-align:right;}


table>tbody>tr {
-webkit-transition: all 0.2s ease;
   -moz-transition: all 0.2s ease;
     -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
}



/* MOBILE VERSION */
@media screen and (min-width: 0px) and (max-width:720px) {

table.responsive-table,
table.responsive-table>thead,
table.responsive-table>tbody,
table.responsive-table>thead>th,
table.responsive-table>tbody>tr,
table.responsive-table>tbody>tr>td { box-sizing:border-box; display:block; width:300px; max-width:100%;}

table.responsive-table { position:relative;}
table.responsive-table>thead>tr>th {  position:absolute; top:-9999px; left:-9999px;}


table.responsive-table>thead>tr>th.ta-center,
table.responsive-table>tbody>tr>td.ta-center,
table.responsive-table>thead>tr>th.ta-right,
table.responsive-table>tbody>tr>td.ta-right { text-align:left;}

table.responsive-table>tbody>tr>td,
table.responsive-table>tbody>tr>td::before { height:30px; line-height:30px; }


table.responsive-table>tbody>tr>td { position:relative; padding:0 0 0 130px; width:170px;}
table.responsive-table>tbody>tr>td::before {
content: attr(data-th) ": ";
position:absolute;
top:0;
left:0;
display:block;
padding-left:10px;
width:110px;
background:rgba(3,169,244,1);
color:#ffffff;
}

}


/* FORMULAIRE */

/* form table { margin:0 0 30px 0; width:auto; background:transparent;}
form table>thead {}
form table>thead>tr {}
  form table>thead>tr>th { padding:8px 14px; border:0px;}
form table>tbody {}
form table>tbody>tr {}
form table>tbody>tr:hover { background-color:transparent;}
  form table>tbody>tr>td { padding:8px 5px; padding:8px 14px; border:0px;}
  form table.no-padding>tbody>tr>td { padding:0 4px;}

form table label { display:block; height:36px; line-height:36px;} */
/*!********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/form.css ***!
  \********************************************************************************************************************/
/*!
 *  License - none (CSS: MIT License)
 */

	/**
   * TRANSITIONS
   *************************************/
   form input,
   form label,
   .checkbox-item label::before,
   .checkbox-item label::after,
   .radio-item label::before,
   .radio-item label::after,
   .select-item .select-arrow,
   .select-item ul.select-list,
   form button[type="submit"],
   .select-item .select {
     -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
          -o-transition: all 0.2s ease;
             transition: all 0.2s ease;
   }


form { }

   /* fieldset */
   fieldset { display:block; margin-bottom:20px; padding:20px; width:auto; min-width:10px; background:#f5f5f5;}
   fieldset.center { text-align:center;}
 

   /* Form item */
   .form-item { margin:0 0 10px; }

     .form-item label { display:block;}
       .form-item.label-inline label { display:inline-block;}
     .form-item input,
     .form-item select,
     .form-item textarea { }

     .form-item.inline { display:inline-block; margin-left:10px; margin-right:10px; /* min-width:225px; */}
     .form-item.inline.first { margin-left:0;}
     .form-item.inline.last { margin-right:0;}

     .form-item.no-margin-bottom { margin-bottom:0;}
     
     .form-item-info { position:relative;}
     .form-item-info>label { margin-left:30px; }
     .form-item .form-item-info-item { position:absolute; top:0; left:0; height:20px; line-height:20px; cursor:help!important;}

     
     .form-item.txt-center { text-align:center;}
       .form-item.txt-center input { display:inline-block;}


      .form-item small.error{color:rgb(237,89,94)}

     .form-action { margin-top:10px; margin-bottom:10px;}
     .form-action.txt-right { text-align:right;}
     .form-action.txt-center { text-align:center;}

     form table .form-item { margin:0;}
       form table td { line-height:30px;}

    .require::after,
   label.required::after { content:'*'; color:rgb(237,89,94);}

    label,
     input,
     button,
     select,
     textarea { font-size:12px; line-height:20px; }

    textarea,
   input[type="text"],
   input[type="password"],
   input[type="datetime"],
   input[type="datetime-local"],
   input[type="date"],
   input[type="month"],
   input[type="time"],
   input[type="week"],
   input[type="number"],
   input[type="email"],
   input[type="url"],
   input[type="search"],
   input[type="tel"],
   input[type="color"] {
     display:block;
     margin:0;
     padding:0 0 0 10px;
     width:250px;
     max-width:100%;
     height:25px;
     line-height:25px;
     background-color:#FFFFFF;
     border:solid 1px #E6EAEB;
     vertical-align:middle;
     -webkit-box-sizing:border-box;
     -moz-box-sizing:border-box;
     box-sizing:border-box;
   }


 /* INPUT */


 /* Input inline */
   .input-inline textarea,
   .input-inline input[type="text"],
   .input-inline input[type="password"],
   .input-inline input[type="datetime"],
   .input-inline input[type="datetime-local"],
   .input-inline input[type="date"],
   .input-inline input[type="month"],
   .input-inline input[type="time"],
   .input-inline input[type="week"],
   .input-inline input[type="number"],
   .input-inline input[type="email"],
   .input-inline input[type="url"],
   .input-inline input[type="search"],
   .input-inline input[type="tel"],
   .input-inline input[type="color"] { display:inline-block;}


 /* TEXTAREA */
 textarea {
   width: 100%;
   min-height:100px;
   line-height:18px;
   -webkit-appearance: textarea;
   -webkit-rtl-ordering: logical;
   -webkit-user-select: text;
   flex-direction: column;
   resize: auto;
   cursor: auto;
   white-space: pre-wrap;
   word-wrap: break-word;
 }

   textarea:focus,
   textarea:hover,
   input[type="text"]:focus,
   input[type="text"]:hover,
   input[type="password"]:focus,
   input[type="password"]:hover,
   input[type="datetime"]:focus,
   input[type="datetime"]:hover,
   input[type="datetime-local"]:focus,
   input[type="datetime-local"]:hover,
   input[type="date"]:focus,
   input[type="date"]:hover,
   input[type="month"]:focus,
   input[type="month"]:hover,
   input[type="time"]:focus,
   input[type="time"]:hover,
   input[type="week"]:focus,
   input[type="week"]:hover,
   input[type="number"]:focus,
   input[type="number"]:hover,
   input[type="email"]:focus,
   input[type="email"]:hover,
   input[type="url"]:focus,
   input[type="url"]:hover,
   input[type="search"]:focus,
   input[type="search"]:hover,
   input[type="tel"]:focus,
   input[type="tel"]:hover,
   input[type="color"]:focus,
   input[type="color"]:hover {  box-shadow:none; border-color:#2f6b88; }





   input:disabled, input:read-only { color:#828282; background-color:#f5f5f5;border: solid 1px #E6EAEB;}
   input:disabled:hover { border-color:#E6EAEB;}

   input[type="number"],
   input.decimal { width:100px; }
   input.hour { width:100px; }
   input.number { width:45px; }
   input.price { display:inline-block; position:relative; padding:0; width:65px; text-align:center;}
   input.price::after {content:"€"}

   .input-small input { width:100px;}
   .input-moyen input { width:120px;}
   .input-datepicker input { width:120px;}


   input:-moz-placeholder,
   textarea:-moz-placeholder {  color: #999999;}
   input:-ms-input-placeholder,
   textarea:-ms-input-placeholder {  color: #999999;}
   input::-webkit-input-placeholder,
   textarea::-webkit-input-placeholder {  color: #999999;}


   .form-textarea-wrapper textarea{  height: 250%; margin:5px 0 0;}
   input.form-checkbox, input.form-radio{ vertical-align: top;}


 /**
   * File item
   **************************/
   .file-item-wrapper { display:flex; flex-wrap:wrap;}

   .file-item,
   .file-item-add { position:relative; width:200px; margin:10px; padding:10px; background:#e6eaeb; border:1px dashed #e6eaeb; border-radius:10px; overflow:hidden;}
   .file-item-once { margin:0;}
   .file-item:hover,
   .file-item-add:hover { border:1px dashed #3653b8;}
   .file-item .thumb { box-sizing:border-box; display:flex; flex-wrap:wrap; justify-content:center; align-content:center; margin:0 0 10px 0; width:180px; min-height:110px; border:1px solid rgb(46 108 137); border-radius:3px; overflow:hidden;text-align: center;}
   .file-item .thumb a { display:block; width:100%; height:100%;}
   .file-item .thumb img { max-width:100%;}
   .file-item .thumb::after {content: '\f03e';font-family: "Font Awesome 5 Free" !important;font-size: 20px;font-weight:900;}

   .file-item .thumb.thumb-apercu::after {display: none;}
   .file-item .upload { position:relative; margin:0 0 10px 0;}
   .file-item .upload input[type="file"] { position:absolute; z-index:-1; width:0.1px; height:0.1px; opacity:0; overflow:hidden;}
   .file-item .upload input[type="file"] + label,
   .file-item .upload label { display:block; padding:0; width:100%; line-height:28px; text-align:center; font-size:14px; text-overflow:ellipsis; white-space:nowrap; color:rgb(81, 139, 165); background:#fff; cursor:pointer; overflow:hidden;}
   .file-item .upload input[type="file"]:hover + label,
   .file-item .upload label:hover { background:#3653b8; color:#eee;}
   /* .file-item .upload input[type="file"]:focus + label { outline:1px dotted #000; outline:-webkit-focus-ring-color auto 5px; background:rgb(81, 139, 165);} */
   .file-item .upload input[type="file"] + label svg,
   .file-item .upload label svg { width:1em; height:1em; vertical-align:middle; fill:currentColor;}

   .file-item p { margin:0; line-height:18px; font-size:12px; text-align:center; color:#737373;}

   .file-item-add { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; }
   .file-item-add-delete { position:absolute; top:0; right:0;}

    #galerie_photo{display: flex; max-width:900px;flex-wrap: wrap;}


 /**
  * PLACEHOLDER
  *************************************/
   .placeholder { position:relative;}
     .placeholder label { position:absolute; z-index:1; top:0; left:0; font-size:12px; display:block; width:610px; height:34px; line-height:34px; padding-left:10px; text-align:left; background-color:#ffffff;}
     .placeholder input { position:relative; z-index:2; background-color:transparent;}
     .placeholder.focus input { background-color:#ffffff;}

   .placeholder.inline-medium label { width:192px; }
   .placeholder.inline-medium input { margin-right:0; width:192px;}




 /**
  * SELECT
  *************************************/
  .select-custom::after {
    font-family: "Font Awesome 5 Free" !important;
    font-weight:900;
  }
  .select-custom select {-webkit-appearance: none;-moz-appearance: none;-ms-appearance: none;appearance: none;outline: 0;box-shadow: none;border:0;background-image: none;}
  /* Style su select */
  .select-custom > select {flex: 1;padding: 0 25px 0 5px;color: #000;cursor: pointer;}
  .select-custom > select option {font-size: 12px;line-height:1;}
  .select-custom > select.secteur option {font-size: 20px;line-height:2;}
  .select-custom > select option:checked {background-color:#2f6c898c !important; /* for IE */}
  .select-custom > select option:hover:before {display: inline;}
  /* Custom Select */
  .select-custom {position: relative;display: flex;/*min-width: 102%;*/height: 23px;line-height: 23px;overflow: hidden;border: solid 1px #E6EAEB;}
  /* Fleche */
  .select-custom::after {font-size:14px;content: "\f078";position: absolute;top: 0;right: 0;background: #2f6c89;color:#FFF;cursor: pointer;pointer-events: none;-webkit-transition: .25s all ease;-o-transition: .25s all ease;transition: .25s all ease;font-stretch: ultra-condensed;width: 28px;text-align: center;line-height: 23px;}
  /* Transition */
  .select-custom:hover::after {color: #FFF;background-color:#a0a09d}

  .select-custom.disabled::after {background-color:#6e6e6e8c !important; /* for IE */}

 /**
  * INPUT : Submit
  *************************************/
   input[type="submit"],
   button[type="submit"] {
     display:inline-block; 
     margin:10px 0 0 0;
     padding:0 15px;
     width:auto;
     height:32px;
     line-height:32px;
     font-size:13px; 
     text-align:center; 
     white-space:nowrap; 
     vertical-align:middle;
     -ms-touch-action:manipulation; 
     touch-action:manipulation;
     -webkit-user-select:none; 
     -moz-user-select:none; 
     -ms-user-select:none; 
     user-select:none;
     border:none;
     border:none; 
     border-radius:4px;
      background:none; /* Remove */
      background-color:#2f6c89;
      color:#FFFFFF;
     text-transform:initial;
      cursor:pointer;
   }
   form input[type="submit"]:hover,
   form button[type="submit"]:hover { background-color:#436f84;}



   /* Checkbox */
   .checkbox-item {}
     .checkbox-item input { display:none;}
     .checkbox-item label { position:relative; display:inline-block; margin-right:20px; padding-left:34px; height:34px; line-height:34px; cursor:pointer;}
     /* .checkbox-item label {position: relative;display: inline-block;margin: 0;padding-left: 25px;height: 20px;line-height: 20px;cursor: pointer;text-align: left;} */
     .checkbox-item label::before { content:''; position:absolute; top:50%; left:0; display:block; margin-top:-11px; width:20px; height:20px; line-height:20px; border:2px solid #8e8e8e;}
     .checkbox-item label::after { content:'\f00c'; position:absolute; top:50%; left:1px; display:block; margin-top:-10px; width:20px; height:20px; line-height:20px; border:1px solid transparent; text-align:center; color:rgb(38,51,87); transform-origin:center center; transform:scale(0);}
     .checkbox-item label.disabled::before { border-color:#c1c1c1;}

     .checkbox-item label.checked::before,
     .checkbox-item label:hover::before { border-color:rgb(38,51,87);}
     .checkbox-item label.checked::after { transform:scale(1);}

     .checkbox-item.no-valid label::before { border-color:rgb(237,89,94);}

     /* .checkbox-item:hover label::before { border-color:rgb(76,139,151);} */

  

   /* Radio */
   .radio-item {}
   .form-item.radio-item { margin-bottom:0;}
     .radio-item input { display:none;}
     .radio-item label { position:relative; display:flex; align-items: center; margin-right:10px; padding-left:27px; height:34px; line-height:34px; cursor:pointer;}
     .radio-item label::before { content:''; -webkit-transition: all .12s, border-color .08s; transition: all .12s, border-color .08s; position:absolute; top:50%; left:0; display:block; margin-top:-11px; width:20px; height:20px; line-height:20px; background-color: white; border:2px solid #787878; border-radius:100%;}
     .radio-item label::after {display: none;}
     .radio-item input:checked + label::before {border: 2px solid green;background: transparent;width: 8px;top: 35%;left: 5px;border-radius: 0;opacity: 1;border-top-color: transparent;border-left-color: transparent;-webkit-transform: rotate(405deg);transform: rotate(405deg);}
     /* .radio-item input:checked + label::after { content:'\f00c'; color: green; position:absolute; top:50%; left:0; display:block; margin-top:-11px; width:20px; height:20px; line-height:20px; border:1px solid transparent; text-align:center;} */

     .radio-item label.checked::before{ border-color:rgb(38,51,87); background-color:rgb(38,51,87);}
     .radio-item label:hover::before { border-color:rgb(38,51,87);}
     .radio-item label.checked::after { transform:scale(1);}


 /* FONTS */
 .checkbox-item label:after,
 .radio-item label::after {
   font-family:'FontAwesome';
   font-weight:normal;
 }


 /**
  * REQUIRED : required="required"
  *************************************/
   input:required {}
     input:required.valid,
     textarea:required.valid { border-color:#2ecc71;}
     input:required.no-valid,
     textarea:required.no-valid { border-color:rgb(237,89,94);}




 /***
 * FORM MATERIEL 
 **********************************/
 #form-materiel-wrapper fieldset.materiel_tarif_row .ligneTarification h4, #form-variants-wrapper fieldset.materiel_tarif_row .ligneTarification h4{font-size: 13px}
 #form-materiel-wrapper fieldset.materiel_tarif_row .ligneTarification, #form-variants-wrapper fieldset.materiel_tarif_row .ligneTarification{padding-top: 20px;border-top: rgba(31,124,205,0.16) solid 0.5px;}

/* Lien upgrade tiny mce*/
a.tox-promotion-link {
  display: none!important;
}

/***
 * Overwrite select2
 **********************************/
 .select2 .select2-search__field { min-height: auto!important; }
 .select2 .select2-selection__choice button { line-height: normal!important; }

/***
 * Overwrite dropzone
 **********************************/
 .dropzone { border: 1px solid rgb(46 108 137);}
 .dropzone .dz-preview { padding: 10px; margin: 10px; background: #e6eaeb!important; border: 1px solid #e6eaeb; border-radius: 10px;}
 .dropzone .dz-preview:hover { border: 1px dashed #3653b8; }
 .dropzone .dz-preview .dz-image { border-radius: 0px; }
 .dropzone .js-delete { border-right: 1px solid #eee!important; }
 .dropzone .js-delete, .dropzone .js-preview { width: 60px; display: inline-block!important; color: rgb(81, 139, 165); background: #FFF; transition: all 0.3s; height: 25px;line-height: 25px; margin-top: 10px;}
 .dropzone .js-delete svg, .dropzone .js-preview svg{ cursor: pointer;}
 .dropzone .js-delete:hover, .dropzone .js-preview:hover { background: #3653b8; color: #eee; }
 
/*!***********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/collaps.css ***!
  \***********************************************************************************************************************/
/**
 * Collapsable
 **********************/
    /* Nav */
    .collaps-nav { cursor:pointer; }
    .collaps-nav:hover { color:#3AB6C2; }
    .collaps-nav.active { background:#ffffff; }

    /* Item */
    .collaps-item { display:none; }
    .collaps-item.active { display:block; }
/*!**********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/global.css ***!
  \**********************************************************************************************************************/
/* This file will hold styles for the mobile version of your website (mobile first). */
/* This also can include ANY global CSS that applies site-wide. Unless overwritten by a more specific style rule, CSS declarations in global.css will apply site-wide. */
/*********************************************************\
*
* commun.css
*
* Feuille de style commune à tout les projets basés sur
* la methode SMACCS
*
\*********************************************************/


/*********************************************************\
 * BASE
 * Structure de base du contenu:
\*********************************************************/
  html { height:100%;}
  body {
    margin:0; padding:0;
    word-wrap:break-word;
    height:100%;
    text-rendering:optimizelegibility;
    font-size:12px;
    letter-spacing:0;
    color:#333333;
    background:#fff;
  }


  /**
   * SELECTION
   *************************************/
    *::selection { color:#ffffff ; background:#323240; }
    *::-moz-selection { color:#ffffff; background:#323240; }


  /**
   * TITRES
   *************************************/
    h1,h2,h3 {
      margin:0;
      padding:0;
      line-height:20px;
      color:inherit;
      letter-spacing:normal;
      text-rendering:optimizelegibility;
    }

    .header-block { position: relative; }
    .header-block::before { content:''; position:absolute; bottom: 0; left:0; width:100%; height:1px;}

    h1#page-title { position:relative; line-height:30px; font-size:20px; color:#3b434c; margin: 0 0 10px 0;}
      h1#page-title::before { content:''; position:absolute; bottom:-10px; left:0; width:100%; height:1px;}
      h1#page-title svg { margin-right:10px; }


    h2 { margin:0 0 20px 0; font-size:16px; }
    h3 { margin:15px 0 5px 0; font-size:14px; }
    h4 { margin:15px 0 5px 0; font-size:13px; }
    p  { margin:0 0 20px 0; line-height:18px; }

  /**
   * LINKS
   *************************************/
    a:link, a:visited { text-decoration:none; color:#333333;}
    a:focus, a:hover, a:active { color:#2f6c89; outline:0;}

  /**
   * NUMBER
   *************************************/
    .number { font-size:12px;}
    .big-number { display:block; margin:0 0 20px 0; text-align:center;  font-size:25px; letter-spacing:-2px;}
      .big-number>span { font-size:20px;}

  /**
   * TAILLE
   *************************************/
    .size-medium { font-size:20px;}
    .size-big { font-size:30px;}

    .w-auto {width:auto !important}



  /**
   * Default
   *************************************/    
    .field-name-body { font-size:12px; color:#333333; /* color:#787878; */}
      .field-name-body h2,
      .site-map-menus h2 { position:relative; margin:0; margin-bottom:20px; line-height:30px; font-size:25px; color:#323240; text-transform:uppercase; font-weight:900 !important;}
      /* .field-name-body h3 { margin:0; margin-bottom:20px; font-size:24px; line-height:26px; color:#54586b; text-transform:uppercase; font-weight:800 !important;} */
      .field-name-body h3 { margin:0; margin-bottom:10px; font-size:18px; line-height:20px; color:#333333;}
      .field-name-body h4 { margin:0; margin-bottom:20px; font-size:20px; line-height:22px; text-transform:uppercase; font-weight:800 !important;}
        .field-name-body h2 small { font-size:0.5em; text-transform:none;}
        .field-name-body h3 small,
        .field-name-body h4 small { font-size:0.8em;}

      .field-name-body p { margin-bottom:20px; line-height:16px;}
      .field-name-body p.cke-lead { display:block; margin-bottom:30px; font-size:16px; text-transform:uppercase;}

      .field-name-body strong,
      .field-name-body b { font-weight:bold;}

      .field-name-body em,
      .field-name-body i { font-style:italic;}
      .field-name-body u { text-decoration:underline;}
      .field-name-body s { text-decoration:line-through;}

      .small { font-size:10px;}
      small { font-size:0.8em;}



  /**
   * LISTES
   *************************************/
      .field-name-body ol,
      .field-name-body ul,
      ul.field-list,
      .site-map-menus ul.site-map-menu { display:block; margin:0 0 20px; padding:0;}
      .field-name-body ol { counter-reset:item;}
      .field-name-body ul,
      ul.field-list,
      .site-map-menus ul.site-map-menu { list-style:none;}
      .field-name-body ol li,
      .field-name-body ul li,
      ul.field-list li,
      .site-map-menus ul.site-map-menu li { margin-left:0; margin-bottom:0; line-height:18px; text-align:-webkit-match-parent;}
      .field-name-body ul li,
      ul.field-list li,
      .site-map-menus ul.site-map-menu li { }
      .field-name-body ul li::before,
      ul.field-list li::before,
      .site-map-menus ul.site-map-menu li::before { content:'-'; margin:0 10px; font-size:18px; color:#323240;}
      .field-name-body ol li::before,
      ol.field-list li::before,
      .site-map-menus ol.site-map-menu li::before { content:counter(item); counter-increment:item; display:inline-block; margin:0 8px 0 0; padding:0px 8px; height:20px; background:#323240; color:#f2e72d; font-size:12px; line-height:20px; border-radius:50%;}
      .field-name-body ol li {}
      .field-name-body ol>li>ol,
      .field-name-body ul>li>ul,
      .site-map-menus ul.site-map-menu>li>ul { margin:4px 0; padding:0 0 0 20px;}


  /**
   * INDICES : Sub/Sup
   *************************************/
    sub,
    sup { position:relative; font-size:75%; line-height:0; vertical-align:baseline; }
    sup { top: -0.5em;}
    sub { bottom: -0.25em;}



/*********************************************************\
 * LAYOUT
 * Structure des pages:
 * Header/ Content/ Footer/ etc;
\*********************************************************/
  /**
   * HEADER
   **************************************/
    .section-header { position:fixed; top:0; left:0; right:0; z-index:20; height:60px; border-bottom:1px solid #ebebeb; background:#ffffff;}
      #region-branding { float:left; width:230px; height:100%; text-align:center;}
        #region-branding a { display:inline-block; height:100%; line-height:55px;}
          #region-branding a img {}

      #region-main-menu { float:left; height:100%; font-size:0;}
          #region-main-menu>li { position:relative; margin:14px 0;}
            #region-main-menu>li>a {    position: relative;font-size: 16px;}
            #region-main-menu>li>a:hover,
            #region-main-menu>li>a.active-trail { color:#2f6c89;}
            #region-main-menu>li>ul { position:absolute; top:46px; left:0; width:150px; max-height:0; background:#383f56; overflow:hidden;}
            #region-main-menu>li:hover>ul { max-height:9999px;}
              #region-main-menu>li>ul>li { display:block; padding:0;}
                #region-main-menu>li>ul>li>a { display:block; padding:0 10px; color:#f5f5f5;}
                #region-main-menu>li>ul>li>a:hover,
                #region-main-menu>li>ul>li>a.active-trail { color:#ffffff; background:#2f6c89;}

                #region-main-menu>li>#header-recherche-sku{height: 31px; border-radius: 5px 0 0 5px;}
                #region-main-menu>li>#header-recherche-sku-btn{width: 34px; border-radius: 0 5px 5px 0; margin-left: -5px;}
                #region-main-menu>li>#header-recherche-sku-btn svg{margin: 10px -4px;}



      #region-admin-links { float:right; display:block; margin:0 20px 0; height:60px; font-size:0;}
        #region-admin-links>li { position:relative; margin:0; padding:14px 15px;}
          #region-admin-links>li>a { position:relative; color:#333333;}
          #region-admin-links>li:hover>a,
          #region-admin-links>li>a:hover,
          #region-admin-links>li>a.active-trail { color:#112630/*#2f6c89*/;}

           #region-admin-links>li>ul { position:absolute; top:57px; left:0; width:150px; max-height:0; background:/*#141f38*/ #3C444B; overflow:hidden;}
          #region-admin-links>li:hover>ul { max-height:9999px;}
            #region-admin-links>li>ul>li { display:block; padding:0;}
                #region-admin-links>li>ul>li>a { display:block; padding:0 10px; color:#f5f5f5;}
                #region-admin-links>li>ul>li>a:hover,
                #region-admin-links>li>ul>li>a.active-trail { color:#ffffff; background:#2f6c89;}
          
          /* User */
          li#user-link {}
          li#user-link .gradient-default { padding:2px; border-radius:18px; background:#fff;}
          li#user-link a { position:relative; padding:0 10px 0 40px; border-radius:18px; background:#fff;}
          li#user-link a div.user-avatar { position:absolute; top:1px; left:1px; display:block; width:30px; height:30px; border-radius:50%; overflow:hidden; background:#f5f6fa; color:#333333;}
          li#user-link a div.user-avatar svg { line-height:30px; width:30px; text-align:center;}

          li#user-link a:hover,
          li#user-link:hover a { color:/*#3C444B*/#3641b7; }
          /* li#user-link a:hover div.user-avatar img { opacity:0.8; } */


  /**
   * CONTENT
   **************************************/
    .section-content { 
      width:100%; 
      /* height:100%; */
    }
      /* .section-content .section-wrapper { position:relative; width:100%; height:100%;} */
      .section-content .section-wrapper { padding: 60px 0 0 0; min-height:100%; display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:flex;}
      .section-content .section-wrapper { -webkit-flex-direction:row; -ms-flex-direction:row; flex-direction:row; -webkit-flex-wrap:nowrap; -ms-flex-wrap:nowrap; flex-wrap:nowrap;}
      .section-content .section-wrapper { -webkit-flex-wrap:nowrap; -ms-flex-wrap:nowrap; flex-wrap:nowrap;}
      .section-content .section-wrapper { -webkit-box-align:stretch; -moz-box-align:stretch; -webkit-align-items:stretch; -ms-flex-align:stretch; align-items:stretch;}

        /* .zone-side { position:fixed; top:60px; z-index:1; padding:10px; width:110px; min-height:100%; background:#42557d;} */
        .zone-side { padding:10px; width:110px; min-height:100%; background:#F5F6FA; /* background:#42557d; */}
        .zone-left { order:1; }
        .zone-right { order:3;}
        .zone-left.large,
        .zone-right.large { min-width:230px;}
        .zone-left.medium,
        .zone-right.medium { width:200px;}

        /* MENU SIDE BAR */
          .region-menu { position:relative; margin:0 0 20px; width:90px;}
            .region-menu h2 { padding:10px; width:70px; min-height:50px; line-height:16px; font-size:12px; border-radius:4px; text-align:center; color:#3f465d; background:transparent;}
              .region-menu h2 a:link,
              .region-menu h2 a:visited { color:#3f465d; font-size:14px;}  
              .region-menu h2 svg { /*margin-bottom:8px;*/ width:35px; font-size:16px;}
            .region-menu:hover h2,
            .region-menu.active-trail h2 { background:#ffffff;}
            .region-menu:hover h2 svg,
            .region-menu.active-trail h2 svg { color:#2f6c89;}

            .region-menu ul { padding:0px; border:0px solid transparent;}
            .region-menu:hover ul { border:4px solid #383f56;}
            .zone-left .region-menu ul { left:90px; }
            .zone-right .region-menu ul { right:90px; }

              .zone-left .region-menu::before { position:absolute; top:15px; right:0; z-index:9999; content:''; display:block; width: 0; height:0; border-style:solid; border-width:7.5px 0 7.5px 0; border-color:transparent #383f56 transparent transparent;}
              .zone-left .region-menu:hover::before { border-width:7.5px 10px 7.5px 0;}
              .zone-right .region-menu::before { position:absolute; top:15px; left:0; z-index:9999; content:''; display:block; width: 0; height:0; border-style:solid; border-width:7.5px 0 7.5px 0; border-color:transparent transparent transparent #383f56;}
              .zone-right .region-menu:hover::before { border-width:7.5px 10px 7.5px 10px;}

              .region-menu ul li { display:block; width:240px; height:auto;/* height:28px; */}
                /* .region-menu ul li a { display:block; padding:0 15px; height:28px; line-height:28px; color:#3f465d;} */
                .region-menu ul li a { display:table-cell; box-sizing:border-box; vertical-align:middle; padding:4px 15px; width:210px; height:auto; min-height:28px; line-height:16px; color:#3f465d;}
                .region-menu ul li a:hover,
                .region-menu ul li a.active-trail { background:#2f6c89; color:#ffffff;}
          /* Large */
            .large .region-menu::before { display:none;}
            .large .region-menu { margin:0 0 20px; width:auto; border-radius:4px;}
            .large .region-menu h2 { margin:0; padding:10px; width:auto; min-height:auto; line-height:16px; color:#3b434c; border-radius:4px 4px 0 0; text-align:left; cursor:default; background:#ffffff;}
              .large .region-menu h2 svg { margin:0 8px 0; width:auto; color:#2f6c89;}
            .large .region-menu:hover h2,
            .large .region-menu.active-trail h2 { margin:0; background:#ffffff;}

            .large .region-menu ul { overflow:hidden; padding:0px; background:#ffffff; border:0px;}
            .large .region-menu:hover ul,
            .large .region-menu.active-trail ul { background:#ffffff;}
              .large .region-menu ul li { padding:0 10px; width:auto;}
                .large .region-menu ul li a { color:#616177; border-radius:4px;}

                .large .region-menu ul li:hover a,
                .large .region-menu ul li a:hover,
                .large .region-menu.active-trail ul li a.active-trail { background:rgba(58,183,194,1); color:#ffffff;}

            /* menu reduce */
              .large.reduce .region-menu h2 { cursor:pointer;}
              .large.reduce .region-menu h2:hover { color:#2f6c89;}
              .large.reduce .region-menu ul { display:none;}
              .large.reduce .region-menu.show ul { display:block;}


        /**
         * MENU ACTION
         **************************/
          .menu-action-wrapper {}
            .menu-action-wrapper h2 { margin:0 0 20px 0;}
            .menu-action-wrapper ul.menu-action {}
              .menu-action-wrapper ul.menu-action li.menu-action-item { margin:0 0 10px 0;}
                .menu-action-wrapper ul.menu-action li.menu-action-item a {}




        /* .zone-content { padding:60px 0 0 0; width:100%; min-height:100%; background:#f8f8f8;} */
        .zone-content { width:100%; min-height:100%; min-width:500px; background:#F5F6FA; order:2; flex-grow:1; -webkit-flex-grow:1; -moz-flex-grow:1;}
        /* .zone-content.padding-left { padding-left:110px;}
        .zone-content.padding-left-large { padding-left:230px;}
        .zone-content.padding-right { padding-right:110px;}
        .zone-content.padding-right-large { padding-right:230px;} */

          .region-content { margin:10px; padding:10px; background:#fff; border-radius:4px;}
            .region-content .block-content-body { /* overflow:hidden; */}

          #region-cover { margin:0 0 10px; }
            #region-cover p { margin:10px; padding:10px 10px 10px; line-height:20px; border-bottom:1px solid #ebebeb;}
        
        .box {
          box-sizing: border-box; /* Opera/IE 8+ */
          -moz-box-sizing: border-box; /* Firefox, autres Gecko */
          -webkit-box-sizing: border-box; /* Safari/Chrome, autres WebKit */
        }

  /**
   * FOOTER
   **************************************/





/*********************************************************\
 * MODULE
 * Objets/structures réutilisables :
 * Menu/ Blocks/ Boutons/ Etc;
\*********************************************************/
 /**
   * FONTS
   **************************************/
    /* Thin */
    /* {
      font-family:'robotothin', sans-serif;
      font-weight:normal;
    } */

    /* Light */
      /*{
       font-family:'robotolight', sans-serif;
       font-weight:normal;
     }*/

    /* Regular */
    body,
    h1,
    #region-main-menu li a,
    .region-menu h2 {
      font-family:'robotoregular', sans-serif;
      font-weight:normal;
    }

    /* Medium */
    .breadcrumb,
    div.messages h3 {
      font-family:'robotomedium', sans-serif;
      font-weight:normal;
    }
  
    /* Bold */
    b, strong,
    .bold,
    .breadcrumb>a,
    .block-content h2,
    .block-content h3,
    .block-content h4,
    .large .region-menu h2 {
      font-family:'robotobold', sans-serif;
      font-weight:normal;
    }

    /* Droid Sans Mono */
      .number,
      .big-number {
        font-family:'droidSansMono', sans-serif;
        font-weight:normal;
      }

      .bold,
      strong,
      b { font-weight:900!important;}

    
    /*FontAwesome*/
    div.messages::before {
      font-family:'fontawesome';
      font-weight:normal;
    }


/**
   * TRANSITIONS
    *************************************/

    a,
    .gradient-default,
    .region-menu h2,
    #region-main-menu>li>ul,
    .region-menu::before,
    #notification-link::before,
    #notification-link ul,
    /* .region-menu ul, */
    img,
    #scroll-top,
    .stat-item h2 {
    -webkit-transition: all 0.2s ease;
       -moz-transition: all 0.2s ease;
         -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
    }

    /* {
    -webkit-transition: all 0.35s ease;
       -moz-transition: all 0.35s ease;
         -o-transition: all 0.35s ease;
            transition: all 0.35s ease;
       } */


  /**
   * SHADOW
   *************************************/    
    #region-main-menu>li>ul,
    #notification-link ul,
    .region-menu ul {
      -moz-box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.5);
      -webkit-box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.5);
      -o-box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.5);
      box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.5);
      filter:progid:DXImageTransform.Microsoft.Shadow(color=#656565, Direction=NaN, Strength=40);
    }

    .region-login {
      -moz-box-shadow: 2px 2px 15px 0px rgba(0,0,0,0.15);
      -webkit-box-shadow: 2px 2px 15px 0px rgba(0,0,0,0.15);
      -o-box-shadow: 2px 2px 15px 0px rgba(0,0,0,0.15);
      box-shadow: 2px 2px 15px 0px rgba(0,0,0,0.15);
      filter:progid:DXImageTransform.Microsoft.Shadow(color=#656565, Direction=NaN, Strength=40);
    }


    .large .region-menu ul{
      -moz-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
      -webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
      -o-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
      box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
      filter:progid:DXImageTransform.Microsoft.Shadow(color=#656565, Direction=NaN, Strength=0);
    }

  /**
   * GRADIENT
   *************************************/
    .gradient-default,
    li#user-link:hover .gradient-default,
    h1#page-title::before,
    .header-block::before,
    #scroll-top:hover {
      background:rgba(54,65,183,1);
      background:-moz-linear-gradient(45deg, rgba(54,65,183,1) 0%, rgba(58,183,194,1) 100%);
      background:-webkit-gradient(left bottom, right top, color-stop(0%, rgba(54,65,183,1)), color-stop(100%, rgba(58,183,194,1)));
      background:-webkit-linear-gradient(45deg, rgba(54,65,183,1) 0%, rgba(58,183,194,1) 100%);
      background:-o-linear-gradient(45deg, rgba(54,65,183,1) 0%, rgba(58,183,194,1) 100%);
      background:-ms-linear-gradient(45deg, rgba(54,65,183,1) 0%, rgba(58,183,194,1) 100%);
      background:linear-gradient(45deg, rgba(54,65,183,1) 0%, rgba(58,183,194,1) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3641b7', endColorstr='#3ab7c2', GradientType=1 );
    }

    .header-block::before{z-index: 1;}


    .text-gradient-default {
      background: #2f6c89;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }


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


  /**
   * Container-flex
   *************************************/
    .container-flex { 
      display:-webkit-box;
      display:-moz-box;
      display:-ms-flexbox;
      display:-moz-flex;
      display:-webkit-flex;
      display:flex;
      flex-flow:row wrap;
    }
    .container-flex-center { justify-content:center;}
    .container-flex .block-flex { margin:10px;}

    .flex-wrapper { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:flex;}
    .flex-wrapper .flex-main { flex-grow:1; -webkit-flex-grow:1; -moz-flex-grow:1;}


  /**
   * MESSAGES
    *************************************/
    div.messages { position:relative; margin:0 0 10px; padding:10px 20px;}
        div.messages h3 { margin:0 0 4px 50px; color:#ffffff; font-size:13px; line-height:18px;}
        div.messages p { margin:0 0 10px 50px; color:#ffffff; font-size:13px; line-height:18px;}
        div.messages::before { position:absolute; top:50%; left:20px; display:block; margin-top:-15px; width:30px; height:25px; line-height:25px; text-align:center; color:#ffffff; font-size:30px; }

      div.success { background-color:rgb(0, 189, 157);}
        div.success::before { content:'\f00c';}

      div.error,
      div.negative { background-color:rgb(254, 94, 120);}
        div.error::before,
        div.negative::before { content:'\f00d';}

      div.warning { background-color:rgb(221,197,35);}
        div.warning::before { content:'\f129'; color:#694900;}
        div.warning h3,
        div.warning p { color:#694900;}
    
      div.info-grey { background-color:#efefef;}
        div.info-grey::before { content:'\f129';}
        div.info-grey div.messages-close:hover { color:#efefef; background:#ffffff; }
        div.info-grey::before,
        div.info-grey h3,
        div.info-grey p { color:#8e8e8e;}

  /**
   * SCROLL TOP
    *************************************/
    #scroll-top { position:fixed; z-index:999999; bottom:-100px; right:20px; display:block; width:50px; height:50px; color:#ffffff; text-align:center; background:rgba(39,154,173, 0.55); cursor:pointer; border-radius:4px;}
      #scroll-top svg { font-size:18px; line-height:50px;}
    #scroll-top:hover { /*background:rgba(39,154,173, 0.9);*/ }
    #scroll-top.show { bottom:20px;}

  /* Backgrounds */
  tr.bg-error, .bg-error{ background: #f8d7da!important; }
  .bg-success{ background: #d1e7dd!important; }
  .bg-info{ background: #d1ecf1!important; }
  .bg-warning{ background: #F5DFC0!important; }

  /* Borders checkbox */
  .checkbox-error{ outline: 1px solid #f8d7da !important; }
  .checkbox-success{ outline: 1px solid #d1e7dd !important; }
  .checkbox-info{ outline: 1px solid #d1ecf1 !important; }

  /**
   * BREADCRUMBS
    *************************************/
    /* .breadcrumb { margin:0 0 20px; padding:0 0 10px; border-bottom:1px solid #ebebeb;} */
    .breadcrumb { margin:0 0 20px;}
    .breadcrumb,
    .breadcrumb>a { font-size:13px; line-height:20px; text-decoration:none; }
    span.crumbs-separator { padding:0 8px; font-size:16px;}


  /* Wrapper colums */
        .wrapper-colums { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap;}
        .wrapper-colums.center { justify-content:center; }
          .wrapper-colums .block-colums { margin:10px; }
          .wrapper-colums .block-colums-1 { width:200px;}
          .wrapper-colums .block-colums-2 { width:300px;}
          .wrapper-colums .block-colums-3 { width:400px;}
          .wrapper-colums .block-colums-4 { width:500px;}
          .wrapper-colums .block-colums-5 { width:600px;}
          .wrapper-colums .block-colums-6 { width:700px;}
          .wrapper-colums .block-colums-7 { width:800px;}
          .wrapper-colums .block-colums-8 { width:900px;}
          .wrapper-colums .block-colums-full { width:960px;}

          .wrapper-colums .alpha { margin-left:0;}
          .wrapper-colums .omega { margin-right:0;}

          .wrapper-colums .block-content-body { order:1; flex:1; margin-right:20px;}
          .wrapper-colums .block-content-side { order:2; width:200px;}


  /**
   * WRAPPER COLOMNS
   *************************************/
    .wrapper-colomns { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap;}
        .wrapper-colomns.center { justify-content:center; }
          .wrapper-colomns .block-colomns { margin:10px; }
          /* .wrapper-colomns .block-colomns-1 { width:200px;}
          .wrapper-colomns .block-colomns-2 { width:300px;}
          .wrapper-colomns .block-colomns-3 { width:400px;}
          .wrapper-colomns .block-colomns-4 { width:500px;}
          .wrapper-colomns .block-colomns-5 { width:600px;}
          .wrapper-colomns .block-colomns-6 { width:700px;}
          .wrapper-colomns .block-colomns-7 { width:800px;}
          .wrapper-colomns .block-colomns-8 { width:940px;} */

          .wrapper-colomns .block-colomns-1 { width:60px;}
          .wrapper-colomns .block-colomns-2 { width:140px;}
          .wrapper-colomns .block-colomns-3 { width:220px;}
          .wrapper-colomns .block-colomns-4 { width:300px;}
          .wrapper-colomns .block-colomns-5 { width:380px;}
          .wrapper-colomns .block-colomns-6 { width:460px;}
          .wrapper-colomns .block-colomns-7 { width:540px;}
          .wrapper-colomns .block-colomns-8 { width:620px;}
          .wrapper-colomns .block-colomns-9 { width:700px;}
          .wrapper-colomns .block-colomns-10 { width:780px;}
          .wrapper-colomns .block-colomns-11 { width:860px;}
          .wrapper-colomns .block-colomns-12 { width:940px;}
          .wrapper-colomns .block-colomns-full { width:960px;}

          /* Prefix */
          .wrapper-colomns .block-colomns-prefix-1 { margin:10px 10px 10px 70px;}
          .wrapper-colomns .block-colomns-prefix-2 { margin:10px 10px 10px 150px;}
          .wrapper-colomns .block-colomns-prefix-3 { margin:10px 10px 10px 230px;}
          .wrapper-colomns .block-colomns-prefix-4 { margin:10px 10px 10px 310px;}
          .wrapper-colomns .block-colomns-prefix-5 { margin:10px 10px 10px 390px;}
          .wrapper-colomns .block-colomns-prefix-6 { margin:10px 10px 10px 470px;}
          .wrapper-colomns .block-colomns-prefix-7 { margin:10px 10px 10px 550px;}
          .wrapper-colomns .block-colomns-prefix-8 { margin:10px 10px 10px 630px;}
          .wrapper-colomns .block-colomns-prefix-9 { margin:10px 10px 10px 710px;}
          .wrapper-colomns .block-colomns-prefix-10 { margin:10px 10px 10px 790px;}
          .wrapper-colomns .block-colomns-prefix-11 { margin:10px 10px 10px 870px;}


          .wrapper-colomns .block-colomns .block-colomns { margin-top:0;}

          .wrapper-colomns .alpha { margin-left:0;}
          .wrapper-colomns .omega { margin-right:0;}
      

  
  /**
   * MENU 
   *************************************/
    .base-menu { font-size:0;}
      .base-menu li { display:inline-block; padding:0 15px;}
        .base-menu li a { display:block; height:100%; line-height:32px; font-size:12px;}
          .base-menu li a span svg { line-height:32px; font-size:16px;}


  /**
   * NOTIFICATION
   ************************************/
      #notification-link { position:relative;}
      #notification-link::before { position:absolute; bottom:-14px; right:15px; content:''; width:0; height:0; border-style:solid; border-width:0 7.5px 0 7.5px; border-color:transparent transparent #383f56 transparent;}
      #notification-link ul { position:absolute; top:46px; right:-20px; padding:0; width:350px; max-height:0; background:#383f56; overflow:hidden;}
      #notification-link ul li { display:block; margin:0; padding:0 4px; background:#ffffff; border-bottom:1px solid #ddd;}
      #notification-link>ul>li>a { display:block; color:#000 !important; position: relative;}

      #notification-link:hover::before { border-width:0 7.5px 10px 7.5px;}
      #notification-link:hover ul { padding:2px;max-height:9999px;width: 250px;}
      #notification-link:hover li { height: auto;}

      #notification-link ul li:hover { background:#ccc; border-color:#000}
      #notification-link ul li a:hover { color:#000;}

      #notification-link>ul>li>a:hover{background: #e5e5e5 !important;}

      #notification-link .check-demande{     
          position: absolute;
          top: 5px;
          right: 5px;
          background: #1d367c;
          width: 15px;
          height: 15px;
          font-size: 15px;
          line-height: 15px;
          color: #fff;
          cursor: pointer;
          z-index: 999;
      }


  /**
   *  THUMB
   ************************************/
    .thumb {content: '\f03e';font-family: 'fontawesome';font-size: 20px}
      .thumb a { display:block;}
        .thumb a img { }


  /**
   *  BADGE
   ************************************/
    span.badge { display:inline-block; padding:0px 5px; max-height:0; line-height:initial; border-radius:4px; text-align:center; color:#ffffff; font-size:10px; background:#fa3e3e; overflow:hidden;}
      span.badge { position:absolute; left:7px; top:0px;}
    span.badge.active { padding:2px 5px; max-height:40px;}


   /**
   * TXT
   *************************************/
    .txt-green,
     .btn-neutre .fa.txt-green,
     .btn-neutre.txt-green .fa { color:rgb(0, 189, 157)!important;}
     .txt-orange,
     .btn-neutre .fa.txt-orange,
     .btn-neutre.txt-orange .fa { color:rgb(253, 154, 66)!important;}
     .txt-red,
     .btn-neutre .fa.txt-red,
     .btn-neutre.txt-red .fa { color:rgb(254, 94, 120)!important;}


   /**
   * BTN
   *************************************/
    .btn { display:inline-block; padding:0 15px; line-height:32px; border:0; border-radius:4px; background:rgb(254, 94, 120); color:#ffffff!important; cursor:pointer; }
      .btn span { color:#ffffff;}
    .btn:hover { background:rgba(254, 94, 120,0.8);}

    .btn-small { height:20px; line-height:20px;}
    .btn-ultraSmall { height:15px; line-height:15px;}

    .btn-neutre,
    .btn-neutre:hover,
    .btn-neutre .fa { color:#333333!important; background:transparent; cursor:default;}

    .btn-return { display:block; margin:0 0 20px; padding:0 0 0 8px; background:#141f38; color:#cbced7!important;}
      .btn-return span { margin-right:4px; color:#cbced7;}
    .btn-return:hover { color:#141f38!important; background:#cbced7;}
      .btn-return:hover span { color:#141f38!important;}

    .btn-green { background:#2da1b2; }
      .btn-green:hover { background:#3cb9c5; }

    .btn-blue { background:#2f6c89; }
      .btn-blue:hover { background:#3e718997; }

    .btn-lightblue { background:#2c88d9; }
      .btn-lightblue:hover { background:#3299f3; }

    .btn-yellow { background:#fad018; }
      .btn-blue:hover { background:#3e718997; }

    .btn-tiny { line-height: 22px; padding: 0px 10px;  margin-right: 2px; }

    /* .btn-blue {
        background: rgb(94,132,178);
        background: -moz-linear-gradient(left, rgba(94,132,178,1) 1%, rgba(58,182,194,1) 100%);
        background: -webkit-linear-gradient(left, rgba(94,132,178,1) 1%,rgba(58,182,194,1) 100%);
        background: linear-gradient(to right, rgba(94,132,178,1) 1%,rgba(58,182,194,1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5e84b2', endColorstr='#2f6c89',GradientType=1 );
      }
      .btn-blue:hover {
        background: rgba(58,182,194, 0.8);
        background: -moz-linear-gradient(left, rgba(58,182,194,0.8) 0%, rgba(24,31,46,0.8) 100%);
        background: -webkit-linear-gradient(left, rgba(58,182,194,0.8) 0%,rgba(24,31,46,0.8) 100%);
        background: linear-gradient(to right, rgba(58,182,194,0.8) 0%,rgba(24,31,46,0.8) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2f6c89', endColorstr='#181f2e',GradientType=1 );
       } */

      .btn-orange { background:rgb(255,148,38);}
      .btn-orange:hover { background:rgba(255,148,38,0.8);}
 
    .btn-valide { background:rgb(0,189,157);}
      .btn-valide:hover { background:rgba(0,189,157,0.8);}

    .btn-grey { background:rgb(173,173,161); cursor:default;}
      .btn-grey:hover { background:rgb(173,173,161);}

    .btn-select { background:rgb(173,173,161);}
      .btn-select:hover,
      .btn-select.active { background:rgb(49, 189, 112) /*rgb(113,175,66)*/;}

    .btn-onglet { background:#ffffff!important; color:#2da1b2!important;}
      .btn-onglet .fa,
      .btn-onglet span { color:#2da1b2!important;}
      .btn-onglet:hover,
      .btn-onglet.active { background:#2da1b2!important; color:#ffffff!important;}
        .btn-onglet:hover .fa,
        .btn-onglet.active .fa,
        .btn-onglet:hover span,
        .btn-onglet.active span  { color:#ffffff!important;}


 /**
  * LOGIN PAGE
  ********************************************/
  body#login { background:url(/build/images/bg_logo_login.50111e62.svg) bottom right no-repeat transparent; background-size:400px;}
  .section-login { display:flex; justify-content:center;}
    .region-login { box-sizing:border-box; margin-top:50px; padding:20px; width:400px; background:#F5F6FA; border-radius:4px;}
      .region-login h1 { margin:0 0 20px; font-size:20px;}
      .region-login .branding { margin:0 0 30px; text-align:center;}
      
      .region-login form {}
        .region-login .form-item { position:relative; margin:0 0 7px;}
          .region-login form .form-item .fa { position: absolute; top:0; left:0; box-sizing:border-box; padding:0 8px; height:36px; font-size:20px; line-height:36px; background:#ffffff; border:1px solid #F5F6FA;}
          .region-login form input { box-sizing:border-box; margin:0; padding:0 4px 0 44px; width:100%; height:36px; line-height:36px; border:1px solid #e5e5e5; background:#ffffff;}
          .region-login form input[type="text"] {}
          .region-login form input[type="password"] {}

        .region-login .form-action { margin:10px 0; text-align:center;}
          .region-login button { width:100%; line-height:14px; font-size:14px; color:#ffffff; text-align:center; background:#2f6c89; border:0; cursor:pointer;}
          .region-login button:hover { background:rgba(39, 154, 173, 0.8);}


  /**
   * STAT-ITEM
   *************************************/
    .stat-item { display:inline-block; box-sizing:border-box; margin:0 0 20px 0; width:200px; border-radius:4px; overflow:hidden; font-size:0; background:#ffffff;}
      .stat-item h2 { margin:0; padding:10px 0; color:#ffffff; line-height:30px; font-size:20px; text-align:center; background:rgb(237,89,94);}
        .stat-item h2 .fa { display:block; margin-bottom:4px; font-size:40px; color:rgb(165, 41, 45);}
      
      /* Full */
      .stat-item .stat-item-box-full { display:block; padding:20px 0; width:100%; min-height:79px; line-height:38px; box-sizing:border-box; font-size:24px; color:#4d4d4d; background:#ffffff; text-align:center;}

      /* 2 Box */
      .stat-item .stat-item-box { display:inline-block; padding:20px 0; width:100px; box-sizing:border-box; font-size:24px; color:#4d4d4d; background:#ffffff; text-align:center;}
      .stat-item .stat-item-box:nth-child(even) { border-right:1px solid #dadada;}
        .stat-item .stat-item-box span:nth-of-type(1) { display:block; margin-bottom:4px; font-size:11px; color:#98998b; text-transform:uppercase;}

    .stat-item.red h2 { background:#ed396d; color:#fff;}
      .stat-item.red h2 .fa { color:#bb2d56;}

    .stat-item.green h2 { background:##14af55; color:#fff;}
      .stat-item.green h2 .fa { color:#fff;}

    .stat-item.yellow a h2 { background:##f9bb57; }
      .stat-item.yellow h2 .fa { color:##f9bb57;}

    /* .stat-item.pink h2 { background:linear-gradient(45deg, rgb(255, 32, 93) 0%, rgb(156, 0, 43) 100%);} */
    .stat-item.pink a h2 { background:#FF205D; }
      .stat-item.pink h2 .fa { color:#fff;}

    .stat-item.blue h2 { background:#2793c4;}
      .stat-item.blue h2 .fa { color:#1f749a;}

    .stat-item.turquoise h2 { background:#2f6c89; color:#fff;}
      .stat-item.turquoise h2 .fa { /*color:#1f646b;*/ color:#fff;}

    .stat-item.purple h2 { background:#3640b7; color:#fff;}
      .stat-item.purple h2 .fa { color:#fff;}


  /**
   * STATS
   *************************************/
    .stats-item-normal {/*  margin:10px 20px!important; */ }
      .stats-item-normal span.libelle { display:block; margin:10px 0; font-size:13px; /* font-size:15px; */ text-align:center;}
      .stats-item-normal span.value { display:block; text-align:center; font-size:14px; /* font-size:24px; */ font-family:'robotoblack';}
        .stats-item-normal span.value sub { font-size:14px;}


  /**
   * CONTACT LOAD
   **************************************/
    .upload-contacts {}

    .upload-contacts.contact-load { margin:0 0 10px 0;}
    .upload-contacts.contact-load.active { background:#ffffff;}
      .contact-teaser { padding:8px 0 8px 10px; cursor:pointer;}
      .contact-teaser:hover { background:#ffffff;}

      .upload-contacts.contact-load .upload-contacts-input,
      .upload-contacts.contact-load .upload-contacts-action { padding:0 10px; max-height:0; overflow:hidden;}
      .upload-contacts.contact-load.active .upload-contacts-input,
      .upload-contacts.contact-load.active .upload-contacts-action { padding:10px; max-height:999px;overflow: initial;}
      
  

    .contact-teaser,
    .upload-contacts-input {
    -webkit-transition: all 0.2s ease;
       -moz-transition: all 0.2s ease;
         -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
    }

  /**
   * PERMISSIONS
   **********************************/
   .permission-checkbox.sous-permission label { padding-left:54px; background:url(/build/images/arrow-sub-item.b5a57f86.svg) 38px 0 no-repeat transparent; background-size:10px;}


  /**
   * ELEMENTS CACHES  
   **********************************/
   .hidden-elt{
     display:none;
   }


  /**
   * LOADER PAGE
   ************************************/
   #loader-page { position:fixed; z-index:999; top:0; right:0; bottom:0; left:0; width:auto; height:auto; background:rgba(255,255,255,0.6);} 
   #loader-page #loader-page-content { position:fixed; z-index:1; top:50%; left:50%; display:block; padding:20px; width:300px; height:auto; color:#FFF; background:rgba(56, 63, 86, 0.8); text-align:center; border-radius:3px; transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); -moz-transform:translate(-50%,-50%); -o-transform:translate(-50%,-50%); animation-duration:0.35s; animation-name:fadeIn;}
   @keyframes fadeIn {
     0% { opacity:0;}
     100% { opacity:1;}
   }
   
   .wrapper-loader{ position: relative;}
   .wrapper-loader .loader-form{position: absolute;background-color: rgba(255, 255, 255, 0.70);top: 0;left: 0;width: 100%;height: 100%;color: black;text-align: center;display:flex; justify-content: center; align-items: center;z-index: 9;}
   .wrapper-loader .loader-form .loader-form-text{padding: 12px;border-radius: 10px;color: #FFF;background: rgba(56, 63, 86, 0.8);}

    /**
    * SEO SNIPPETS
    ***************************/
    #seo-snippet-google { margin:0 0 20px 0; padding:20px; width:600px; background:#fff; border-radius:0px; border:1px solid #e2dbd3;}
    #seo-snippet-google a.title { display:block; overflow:hidden; /*width:512px;*/ color:#1a0dab; font-size:18px; line-height:1.2; white-space:nowrap; text-overflow:ellipsis;}
    #seo-snippet-google .url { color:#006621; font-size:14px; line-height:17px;}
    #seo-snippet-google .desc { font-size:small; line-height:1.4; word-wrap:break-word; color:#545454; font-family:arial,sans-serif; font-size:small; line-height:1.4; word-wrap:break-word;}

  /**
   * Texte class
   *************************************/
   .red { color:#db2a48;}
   .green { color:rgb(113,175,66);}
   .blue { color:rgb(2, 151, 197);}
   .violet { color:rgb(56, 79, 184);}
   .grey { color:rgb(137, 137, 137);}


   /**
    * Ajout David
    */
  .qte{
    position: relative;
    top: 0;
    float: right;
    padding: 2px 5px;
    max-height: 40px;
    border-radius: 4px;
    text-align: center;
    line-height: initial;
    color: #fff;
    font-size: 10px;
    background: #fa3e3e;
    overflow: hidden;
    box-sizing: border-box;
  }
  .justify-content-between{
    justify-content: space-between;
  }
/* POSITION */
.p-absolute {
  position: absolute !important;
}

.p-fixed {
  position: fixed !important;
}

.p-relative {
  position: relative !important;
}
.w-95 {width: 95% !important;}   
.zi10 {z-index:10 !important;}

.d-flex {
  display: flex !important;
}

.r15 {
  right: 15px !important;
}

.t-25 {
  top: -25px !important;
}

.t-15 {
  top: -15px !important;
}

.t-10 {
  top: -10px !important;
}


/* LARGEUR */
.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-33 {
  width: 33.33333333% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

.w-55 {
  width: 55% !important;
}

.w-60 {
  width: 60% !important;
}

.w-65 {
  width: 65% !important;
}

.w-70 {
  width: 70% !important;
}

.w-75 {
  width: 75% !important;
}

.w-80 {
  width: 80% !important;
}

.w-85 {
  width: 85% !important;
}

.w-90 {
  width: 90% !important;
}

.w-95 {
  width: 95% !important;
}

.w-98 {
  width: 98% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto{
  width: auto !important;
}

.w-fit-content{
  width: fit-content !important;
}

.min-w-100{
  min-width: 100% !important;
}

.w-px-250 {
  width: 250px ! important;
}

.w-px-300 {
  width: 300px ! important;
}

/* MIN LARGEUR */
.min-w-100px {
  min-width: 100px;
}

.min-w-150px {
  min-width: 150px;
}

.min-w-200px {
  min-width: 200px;
}

.min-w-250px {
  min-width: 250px;
}

.min-w-300px {
  min-width: 300px;
}

.min-w-110px {
  min-width: 110px;
}

/* MAX LARGEUR */
.max-w-100 {
  max-width: 100px !important;
}

.max-w-120 {
  max-width: 120px !important;
}

.max-w-200 {
  max-width: 200px;
}

.max-w-250 {
  max-width: 250px;
}

.max-w-300 {
  max-width: 300px;
}

.max-w-110 {
  max-width: 110px;
}

/* HAUTEUR */
.h-0 {
  height: 0 !important;
}

.h-5 {
  height: 5% !important;
}

.h-10 {
  height: 10% !important;
}

.h-15 {
  height: 15% !important;
}

.h-20 {
  height: 20% !important;
}

.h-25 {
  height: 25% !important;
}

.h-30 {
  height: 30% !important;
}

.h-35 {
  height: 35% !important;
}

.h-40 {
  height: 40% !important;
}

.h-45 {
  height: 45% !important;
}

.h-50 {
  height: 50% !important;
}

.h-55 {
  height: 55% !important;
}

.h-60 {
  height: 60% !important;
}

.h-65 {
  height: 65% !important;
}

.h-70 {
  height: 70% !important;
}

.h-75 {
  height: 75% !important;
}

.h-80 {
  height: 80% !important;
}

.h-85 {
  height: 85% !important;
}

.h-90 {
  height: 90% !important;
}

.h-95 {
  height: 95% !important;
}

.h-100 {
  height: 100% !important;
}

/* HAUTEUR PX */
.h-5px {
  height: 5px !important;
}

.h-10px {
  height: 10px !important;
}

.h-15px {
  height: 15px !important;
}

.h-20px {
  height: 20px !important;
}

.h-25px {
  height: 25px !important;
}

.h-30px {
  height: 30px !important;
}

.h-35px {
  height: 35px !important;
}

.h-40px {
  height: 40px !important;
}

.h-45px {
  height: 45px !important;
}

.h-50px {
  height: 50px !important;
}

.h-55px {
  height: 55px !important;
}

.h-60px {
  height: 60px !important;
}

.h-65px {
  height: 65px !important;
}

.h-70px {
  height: 70px !important;
}

.h-75px {
  height: 75px !important;
}

.h-80px {
  height: 80px !important;
}

.h-85px {
  height: 85px !important;
}

.h-90px {
  height: 90px !important;
}

.h-95px {
  height: 95px !important;
}

.h-100px {
  height: 100px !important;
}

.h-1em {
  height: 1em !important;
}


/* MARGE RIGHT */
.mr-5 {
  margin-right: 5px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

.mr-15 {
  margin-right: 15px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.mr-25 {
  margin-right: 25px !important;
}

.mr-30 {
  margin-right: 30px !important;
}

.mr-35 {
  margin-right: 35px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

.mr-45 {
  margin-right: 45px !important;
}

.mr-50 {
  margin-right: 50px !important;
}

.mr-55 {
  margin-right: 55px !important;
}

.mr-60 {
  margin-right: 60px !important;
}

.mr-65 {
  margin-right: 65px !important;
}

.mr-70 {
  margin-right: 70px !important;
}

.mr-75 {
  margin-right: 75px !important;
}

.mr-80 {
  margin-right: 80px !important;
}

.mr-85 {
  margin-right: 85px !important;
}

.mr-90 {
  margin-right: 90px !important;
}

.mr-95 {
  margin-right: 95px !important;
}

.mr-100 {
  margin-right: 100px !important;
}

input[type="checkbox"].checkbox-custom { display: none; }
input[type="checkbox"].checkbox-custom + label {/*display: block;*/color: #333333; position: relative; padding-left: 25px; margin-bottom: 20px; font-family: 'robotoregular', sans-serif; cursor: pointer; /*font-size: 10px;*/ -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none;}
input[type="checkbox"].checkbox-custom + label:last-child { margin-bottom: 0; }
input[type="checkbox"].checkbox-custom + label:before {content: ''; display: block; width: 15px; height: 15px; border: 2px solid #787878; background: white; position: absolute; left: 0; top: 0; opacity: 1; -webkit-transition: all .12s, border-color .08s; transition: all .12s, border-color .08s;}
input[type="checkbox"].checkbox-custom:checked + label:before { border: 2px solid green;background: transparent;width: 8px;left: 5px;border-radius: 0;opacity: 1;border-top-color: transparent;border-left-color: transparent; -webkit-transform: rotate(405deg); transform: rotate(405deg);}

/****************************************************************/
/*                        OVERWRITE DROPZONE                    */
/****************************************************************/

  .dropzone .js-preview {font-size: 14px;text-align: center;display: block;cursor: pointer;border: none;}
  .dropzone .dz-preview .dz-image {z-index: 1;display: flex;justify-content: center;align-items: center;}

/****************************************************************/
/*                        OVERWRITE SWEETALERT                  */
/****************************************************************/

.swal-datatable {font-size: 11px !important;}
.swal-wide {width: 1200px;}
.swal-align-text-left .swal2-html-container{text-align: left;}
.swal-ul-li .swal2-html-container ul{list-style: inside;;}
.form-quantite-swal, .form-raison-swal {width: 95% !important;}
.swal2-title {line-height: 100% !important;}

/****************************************************************/
/*                        OVERWRITE BTN DATATABLE               */
/****************************************************************/
.btn-modif-stock{max-height: 35px; margin: 15px;}


/* Horrible je sais */
#liste_picking_stock_wrapper .dt-layout-row .dt-layout-cell .dt-buttons .btn,
#liste_picking_pas_stock_wrapper .dt-layout-row .dt-layout-cell .dt-buttons .btn {position: absolute;top: -39px;left: 18%;}


/****************************************************************/
/*                        MARKETPLACE MATERIEL                  */
/****************************************************************/
  .marketplace-disabled { display: none!important; }
  .marketplace-flag { display: flex; justify-content: center; flex-direction: column; font-size: 15px;}

  .marketplace-wrapper .marketplace-type-block {display: flex;flex-direction: column;background-color: #eee;position: sticky;top: 60px;z-index: 1;}
  .marketplace-wrapper .marketplace-type-block .marketplace-type-item{height: 40px;display: flex;align-items: center;justify-content: center;cursor: pointer;font-size: 13px;border: 1px solid #d4d4d4;margin-top: -1px;transition: all 0.5s;}
  .marketplace-wrapper .marketplace-type-block .marketplace-type-item.active, .marketplace-wrapper .marketplace-type-block .marketplace-type-item:hover, .marketplace-wrapper .marketplace-item-block .marketplace-item.active, .marketplace-wrapper .marketplace-item-block .marketplace-item:hover{
    background: #3653b8; color: #eee;
  }

  .ligneTarification .col-5.offset-1 select { min-width: 500px!important;}


  .marketplace-wrapper .marketplace-item-block {display: flex;margin-top: -1px; position: sticky;top: 59px;z-index: 2; overflow-x: auto;background: #eee;}
  .marketplace-wrapper .marketplace-item-block::-webkit-scrollbar {width: 5px; height: 5px;}
  .marketplace-wrapper .marketplace-item-block::-webkit-scrollbar-track {background-color: #ebebeb;}
  .marketplace-wrapper .marketplace-item-block::-webkit-scrollbar-thumb {background: #3653b8; }

  .marketplace-wrapper .marketplace-item-block .marketplace-item{height: 40px;padding: 10px;display: flex;align-items: center;justify-content: center;cursor: pointer;font-size: 13px;border: 1px solid #d4d4d4;margin-left: -1px; background: #eee; transition: all 0.5s;}
  .marketplace-wrapper .marketplace-item-block .marketplace-item.marketplace-empty{background-color: #ddd;color: #aaa;pointer-events: none;user-select: none;opacity: 0.7;}
  
  .marketplace-wrapper .marketplace-tarification-list {  }
  .marketplace-wrapper .marketplace-tarification-list h3 { margin: 5px 0 5px 0; }
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper{ border: 1px solid #999; margin: 0px 0 10px 0; }
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-info { display: flex;justify-content: space-between;background: #e0e0e0;align-items: center; position: sticky; z-index: 1; border-top: 1px solid #999;top: 99px;margin-top: -1px;padding: 0px 0px 0px 5px;box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;}
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-info .marketplace-variant-title{display: flex; justify-content: center; align-items: center; justify-content: space-between; min-width: 500px;}
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-info .marketplace-variant-actions{ min-width: 40px; vertical-align: middle;display: flex; min-height: 40px; align-items: center;}
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-info .marketplace-variant-actions .marketplace-variant-actions-item{height: 40px;width: 40px;line-height: 40px;text-align: center;cursor: pointer;transition: all 0.3s;}
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-info .marketplace-variant-actions .marketplace-variant-actions-item:hover{background: #eee;}
  
  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-tarifications {max-height: 9999px; overflow: hidden;}
  
  /* Actions custom */
  .marketplace-wrapper .marketplace-variant-actions-item.marketplace-toggle-action svg{transition: all 0.3s; rotate: 0deg;}
  .marketplace-wrapper .marketplace-variant-actions-item.marketplace-toggle-action.active{background: #eee;}
  .marketplace-wrapper .marketplace-variant-actions-item.marketplace-toggle-action.active svg{rotate: 180deg;}


  .marketplace-wrapper .marketplace-tarification-list .marketplace-variant-wrapper .marketplace-variant-tarifications fieldset { margin-bottom: 0px; }

  .wrapper-marketplace-data {display: flex; justify-content: space-around;align-items: center;}
  .wrapper-marketplace-data .tooltip-marketplace{margin: 0 2px;border: 1px solid transparent; border-radius: .25rem; padding: 7px 14px; cursor: pointer; border-color: #d4d4d4; color: #333333; font-weight: 500; flex: 1 1 auto; position: relative; display: flex; align-items: center; transition: all 0.3s; max-width: max-content;}
  .wrapper-marketplace-data .tooltip-marketplace:hover{background-color: #fff;}
  .wrapper-marketplace-data .tooltip-marketplace.active{background-color: #3653b8; color: #fff !important;}

  .tooltip-marketplace-content .border-normal{border-bottom: 4px solid #7dcd75;}
  .tooltip-marketplace-content .border-warning{border-bottom: 4px solid #e76911;}
  .tooltip-marketplace-content .border-error{border-bottom: 4px solid #c30000;}

  .tooltip-marketplace-content {color: #dedede;}
  .tooltip-marketplace-content .marketplace-content-header {display: flex; justify-content: space-between; }
  .tooltip-marketplace-content .marketplace-content-header .marketplace-header-logo{ font-size: 37px; padding: 0 14px;}
  .tooltip-marketplace-content .marketplace-content-header .marketplace-header-data{display: flex; justify-content: space-between; width: 240px; margin: 0 12px;}
  .tooltip-marketplace-content .marketplace-content-header .marketplace-header-data .block-tarif{display: flex; flex-direction: column; line-height: 24px; background: #3b3b3b; padding: 0 10px; text-align: center}
  .tooltip-marketplace-content .marketplace-content-header .marketplace-header-data .block-tarif .title-tarif{font-weight: bold;}

  .tooltip-marketplace-content .marketplace-content-body { margin: 10px 0; }

  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body {display: flex; flex-wrap: wrap; justify-content: space-around; align-items: center;}
  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body .marketplace-data-block{padding: 5px; margin: 5px; background: #3b3b3b;}
  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body .marketplace-data-block.inactive{opacity: 0.2; background: linear-gradient(to bottom right, #4b4b4b, #4b4b4b 48%, black 50%, #4b4b4b 52%, #4b4b4b);}
  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body .marketplace-data-block .flag{text-align: center;}

  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body .marketplace-data-block .marketplace-data-item{display: flex; justify-content: space-between;}
  .tooltip-marketplace-content .marketplace-content-body .marketplace-data-body .marketplace-data-block .marketplace-data-item .info{min-width: 100px; font-weight: bold;}

/****************************************************************/
/*                        FILTERS                               */
/****************************************************************/
.filter-wrapper { display: flex; justify-content: space-between; background: #f9f9f9; min-height: 45px;}
.filter-wrapper .filter-list{display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; align-items: center; }
.filter-wrapper .filter-list-multiple{display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-start; align-items: center; margin-bottom: 70px;}
.filter-wrapper .filter-list .filter-item{ background-color: #ededed; height: 100%; display: flex; justify-content: center; align-items: center; padding: 0 10px; gap: 5px;}
.filter-wrapper .filter-list .filter-item .btn-group{vertical-align: top; display: inline-flex; position: relative;}
.filter-wrapper .filter-list .filter-item .btn-group .btn-group-item{border: 1px solid transparent; border-radius: .25rem; padding: 7px 14px; cursor: pointer; border-color: #d4d4d4; color: #333333; font-weight: 500; flex: 1 1 auto; position: relative; display: flex; align-items: center; transition: all 0.3s; opacity: 1;}
.filter-wrapper .filter-list .filter-item .btn-group .btn-group-item:hover{background-color: #fff;}
.filter-wrapper .filter-list .filter-item .btn-group .btn-group-item.active{background-color: #3653b8; color: #fff !important;}
.filter-wrapper .filter-list .filter-item .btn-group .btn-group-item.inactive{ background: linear-gradient(to bottom right, #ededed, #ededed 48%, black 50%, #ededed 52%, #ededed); color: #333333 !important; opacity: 0.8}

.filter-wrapper .filter-action-list { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 10px;}

/* Spécifique Marketplace */

.filter-wrapper .filter-list #liste_marketplaces { gap: 1em; }
.filter-wrapper .filter-list #liste_marketplaces .filter-item.marketplace-btn{ padding: 0px; }
.filter-wrapper .filter-list #liste_marketplaces .filter-item.marketplace-btn .btn-group-item{ min-height: 46px; }

/* Bundles */
 .bundle-ul-wrapper {list-style: inherit; margin-left: 50px;}
 .bundle-ul-wrapper li.bundle-li-wrapper {margin: 3px 0;}
 .bundle-ul-wrapper .bundle-li-wrapper a.bundle-article-nom {font-size: 14px; line-height: 32px;}


/*!******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/editable-field.css ***!
  \******************************************************************************************************************************/
/* *************************************************************
 * editable-field.css
 * 
 * * Action :
 *     Permet l'edition d'une valeur d'un tableau
 * 
 *
 * * Package :
 * 		app-editable-field.js / editable-field.css
 * 
 * * Dependencies : 
 *     jquery.js
 *     font-awesome.css / fontawesome.ttf
 *
 * * Structure :
 *
 * 	<td class="field-editable-wrapper">
 *  	<span class="field-editable">Valeur</span>
 *   	<input type="text" name="Field_name" class="field-editabling" value="Valeur">
 *    	<div class="loader"><span class="fa fa-circle-notch fa-spin"></span> Chargement</div>
 * </td>
 *      
 ******************************************************************/

/* Champs editable */

	table.dataTable tbody .field-editable-wrapper input[type="text"] { 
		padding-left:0; height:26px; line-height:26px;
		background:none;
		border:none;
		border-bottom:2px solid rgb(38,51,87);
	}


	.field-editable-wrapper { position:relative; }

		/* field-editable */
		span.field-editable { display:block; height:26px; cursor:pointer; border-radius:4px; border:2px solid transparent}
		span.field-editable:hover { border-color:#00bd9d; }
		span.field-editable.no-save,
		span.field-editable.no-save-force { border-color:#fd9a42;}
		span.field-editable.no-save:hover,
		span.field-editable.no-save-force:hover { border-color:#00bd9d;}

		/* Input/ select */
		input[type="text"].field-editabling,
		select.field-editabling { display:none; }
		.field-editable-wrapper .loader { display:none; position:absolute; top:0; left:4px;}

		/* Hide/Show */
		span.field-editable.hide { display:none; }
		input[type="text"].field-editabling.show,
		select.field-editabling.show { display:inline-block; }
		.field-editable-wrapper .loader.show { display:block;}
/*!****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/styles/grid-colomns.css ***!
  \****************************************************************************************************************************/
/**
 * WRAPPER COLOMNS
 *************************************/


 /**
   * WRAPPER COLOMNS
   *************************************/
   
   .wrapper-colomns { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap;}
   .wrapper-colomns.center { justify-content:center; }
       .wrapper-colomns .block-colomns { margin:10px; }
 
       .wrapper-colomns .block-colomns-1 { width:60px;}
       .wrapper-colomns .block-colomns-2 { width:140px;}
       .wrapper-colomns .block-colomns-3 { width:220px;}
       .wrapper-colomns .block-colomns-4 { width:300px;}
       .wrapper-colomns .block-colomns-5 { width:380px;}
       .wrapper-colomns .block-colomns-6 { width:460px;}
       .wrapper-colomns .block-colomns-7 { width:540px;}
       .wrapper-colomns .block-colomns-8 { width:620px;}
       .wrapper-colomns .block-colomns-9 { width:700px;}
       .wrapper-colomns .block-colomns-10 { width:780px;}
       .wrapper-colomns .block-colomns-11 { width:860px;}
       .wrapper-colomns .block-colomns-12 { width:940px;}
       .wrapper-colomns .block-colomns-full { width:960px;}
 
       /* Prefix */
       .wrapper-colomns .block-colomns-prefix-1 { margin:10px 10px 10px 70px;}
       .wrapper-colomns .block-colomns-prefix-2 { margin:10px 10px 10px 150px;}
       .wrapper-colomns .block-colomns-prefix-3 { margin:10px 10px 10px 230px;}
       .wrapper-colomns .block-colomns-prefix-4 { margin:10px 10px 10px 310px;}
       .wrapper-colomns .block-colomns-prefix-5 { margin:10px 10px 10px 390px;}
       .wrapper-colomns .block-colomns-prefix-6 { margin:10px 10px 10px 470px;}
       .wrapper-colomns .block-colomns-prefix-7 { margin:10px 10px 10px 550px;}
       .wrapper-colomns .block-colomns-prefix-8 { margin:10px 10px 10px 630px;}
       .wrapper-colomns .block-colomns-prefix-9 { margin:10px 10px 10px 710px;}
       .wrapper-colomns .block-colomns-prefix-10 { margin:10px 10px 10px 790px;}
       .wrapper-colomns .block-colomns-prefix-11 { margin:10px 10px 10px 870px;}
 
       .wrapper-colomns .block-colomns .block-colomns { margin-top:0;}
       .wrapper-colomns .alpha { margin-left:0;}
       .wrapper-colomns .omega { margin-right:0;}
 
 
       /* Responsive grid : en pourcentage */
       .wrapper-colomns-responsive { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap; }
       .wrapper-colomns-responsive .block-colomns { box-sizing:border-box; padding:10px; }
       .wrapper-colomns-responsive .block-colomns-main { flex-grow:1; -webkit-flex-grow:1; -moz-flex-grow:1;}
       .wrapper-colomns-responsive .block-colomns-1 { width:8.333333%;}
       .wrapper-colomns-responsive .block-colomns-2 { width:16.666667%;}
       .wrapper-colomns-responsive .block-colomns-3 { width:25%;}
       .wrapper-colomns-responsive .block-colomns-4 { width:33.333333%;}
       .wrapper-colomns-responsive .block-colomns-5 { width:41.666667%;}
       .wrapper-colomns-responsive .block-colomns-6 { width:50%;}
       .wrapper-colomns-responsive .block-colomns-7 { width:58.333333%;}
       .wrapper-colomns-responsive .block-colomns-8 { width:66.666667%;}
       .wrapper-colomns-responsive .block-colomns-9 { width:75%;}
       .wrapper-colomns-responsive .block-colomns-10 { width:83.333333%;}
       .wrapper-colomns-responsive .block-colomns-11 { width:91.666667%;}
       .wrapper-colomns-responsive .block-colomns-12 { width:100%;}
       .wrapper-colomns-responsive .block-colomns-full { width:100%;}
 
       .wrapper-colomns-responsive .block-colomns.no-padding { box-sizing:border-box; margin:10px; padding:0; }
       .wrapper-colomns-responsive .no-padding.block-colomns-1 { width:calc(8.333333% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-2 { width:calc(16.666667% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-3 { width:calc(25% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-4 { width:calc(33.333333% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-5 { width:calc(41.666667% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-6 { width:calc(50% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-7 { width:calc(58.333333% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-8 { width:calc(66.666667% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-9 { width:calc(75% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-10 { width:calc(83.333333% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-11 { width:calc(91.666667% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-12 { width:calc(100% - 20px);}
       .wrapper-colomns-responsive .no-padding.block-colomns-full { width:calc(100% - 20px);}
 
 
 
 
   /* Ancienne grille */
       /* Wrapper colums */
           .wrapper-colums { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap;}
           .wrapper-colums.center { justify-content:center; }
           .wrapper-colums .block-colums { margin:10px; }
           .wrapper-colums .block-colums-1 { width:200px;}
           .wrapper-colums .block-colums-2 { width:300px;}
           .wrapper-colums .block-colums-3 { width:400px;}
           .wrapper-colums .block-colums-4 { width:500px;}
           .wrapper-colums .block-colums-5 { width:600px;}
           .wrapper-colums .block-colums-6 { width:700px;}
           .wrapper-colums .block-colums-7 { width:800px;}
           .wrapper-colums .block-colums-8 { width:900px;}
           .wrapper-colums .block-colums-full { width:960px;}
 
           .wrapper-colums .alpha { margin-left:0;}
           .wrapper-colums .omega { margin-right:0;}
 
           .wrapper-colums .block-content-body { order:1; flex:1; margin-right:20px;}
           .wrapper-colums .block-content-side { order:2; width:200px;}
 
       /* WRAPPER COLUMNS */
           .wrapper-columns { display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-moz-flex; display:-webkit-flex; display:flex; flex-flow:row wrap;}
           .wrapper-columns.center { justify-content:center; }
           .wrapper-columns .block-columns { margin:10px; }
           .wrapper-columns .block-columns-main { flex-grow:1;}
 
           .wrapper-columns .block-columns-1 { width:60px;}
           .wrapper-columns .block-columns-2 { width:140px;}
           .wrapper-columns .block-columns-3 { width:220px;}
           .wrapper-columns .block-columns-4 { width:300px;}
           .wrapper-columns .block-columns-5 { width:380px;}
           .wrapper-columns .block-columns-6 { width:460px;}
           .wrapper-columns .block-columns-7 { width:540px;}
           .wrapper-columns .block-columns-8 { width:620px;}
           .wrapper-columns .block-columns-9 { width:700px;}
           .wrapper-columns .block-columns-10 { width:780px;}
           .wrapper-columns .block-columns-11 { width:860px;}
           .wrapper-columns .block-columns-12 { width:940px;}
           .wrapper-columns .block-columns-full { width:100%;}
 
           /* Prefix */
           .wrapper-columns .block-columns-prefix-1 { margin:10px 10px 10px 70px;}
           .wrapper-columns .block-columns-prefix-2 { margin:10px 10px 10px 150px;}
           .wrapper-columns .block-columns-prefix-3 { margin:10px 10px 10px 230px;}
           .wrapper-columns .block-columns-prefix-4 { margin:10px 10px 10px 310px;}
           .wrapper-columns .block-columns-prefix-5 { margin:10px 10px 10px 390px;}
           .wrapper-columns .block-columns-prefix-6 { margin:10px 10px 10px 470px;}
           .wrapper-columns .block-columns-prefix-7 { margin:10px 10px 10px 550px;}
           .wrapper-columns .block-columns-prefix-8 { margin:10px 10px 10px 630px;}
           .wrapper-columns .block-columns-prefix-9 { margin:10px 10px 10px 710px;}
           .wrapper-columns .block-columns-prefix-10 { margin:10px 10px 10px 790px;}
           .wrapper-columns .block-columns-prefix-11 { margin:10px 10px 10px 870px;}
 
           .wrapper-columns .block-columns .block-columns { margin-top:0;}
 
           .wrapper-columns .alpha { margin-left:0;}
           .wrapper-columns .omega { margin-right:0;}
/*!***************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/components/select2/select2.min.css ***!
  \***************************************************************************************************************************************/
.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline;list-style:none;padding:0}.select2-container .select2-selection--multiple .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;margin-left:5px;padding:0;max-width:100%;resize:none;height:18px;vertical-align:bottom;font-family:sans-serif;overflow:hidden;word-break:keep-all}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option--selectable{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px;padding-right:0px}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;padding-bottom:5px;padding-right:5px;position:relative}.select2-container--default .select2-selection--multiple.select2-selection--clearable{padding-right:25px}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;font-weight:bold;height:20px;margin-right:10px;margin-top:5px;position:absolute;right:0;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:inline-block;margin-left:5px;margin-top:5px;padding:0;padding-left:20px;position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.select2-container--default .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-right:1px solid #aaa;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#999;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px;position:absolute;left:0;top:0}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus{background-color:#f1f1f1;color:#333;outline:none}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-left:1px solid #aaa;border-right:none;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear{float:left;margin-left:10px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid black 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:transparent;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--group{padding:0}.select2-container--default .select2-results__option--disabled{color:#999}.select2-container--default .select2-results__option--selected{background-color:#ddd}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:#5897fb;color:white}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top, #fff 50%, #eee 100%);background-image:-o-linear-gradient(top, #fff 50%, #eee 100%);background-image:linear-gradient(to bottom, #fff 50%, #eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top, #eee 50%, #ccc 100%);background-image:-o-linear-gradient(top, #eee 50%, #ccc 100%);background-image:linear-gradient(to bottom, #eee 50%, #ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top, #fff 0%, #eee 50%);background-image:-o-linear-gradient(top, #fff 0%, #eee 50%);background-image:linear-gradient(to bottom, #fff 0%, #eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top, #eee 50%, #fff 100%);background-image:-o-linear-gradient(top, #eee 50%, #fff 100%);background-image:linear-gradient(to bottom, #eee 50%, #fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0;padding-bottom:5px;padding-right:5px}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;display:inline-block;margin-left:5px;margin-top:5px;padding:0}.select2-container--classic .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#888;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555;outline:none}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option--group{padding:0}.select2-container--classic .select2-results__option--disabled{color:grey}.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}
/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/back/components/tabs/tabs.css ***!
  \*****************************************************************************************************************************/
/*!
 *  Form 1 by @davidliverneaux - http://davidliverneaux.fr
 *  License - none (CSS: MIT License)
 */

  /**
   * TRANSITIONS
   *************************************/
   .tabs .tabs-nav .tabs-nav-item,
   .tabs .tabs-nav .tabs-nav-item span, 
   .tabs-deux .tabs-nav-deux .tabs-nav-item-deux,
   .tabs-deux .tabs-nav-deux .tabs-nav-item-deux span {
    -webkit-transition: all 0.2s ease;
       -moz-transition: all 0.2s ease;
         -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
    }
 
 
    /* INIT */
    .tabs, .tabs-deux { margin-top:10px; }
      
      .tabs .tabs-nav, .tabs-deux .tabs-nav-deux { margin:0; padding:0; height:45px; list-style:none; text-align:left; font-size:0px; border-bottom:3px solid #e2dbd3; background:#F5F6FA;}
      .tabs .tabs-nav .tabs-nav-item, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux { display:inline-block; margin:0; padding:0 20px; height:45px; line-height:50px; font-size:12px; color:#333333; text-align:center; text-transform:uppercase; background:#fff; cursor:pointer;border-bottom: 3px solid #e2dbd3} 
      .tabs .tabs-nav .tabs-nav-item span, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux span { display:inline-block; margin-left:10px; padding:0px 10px; height:25px; line-height:26px; color:#3653b8; font-size:13px; font-weight:900;}
      .tabs .tabs-nav .tabs-nav-item a, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux a {height: 45px;line-height: 50px;width: 100%;display: inline-block;}
      .tabs .tabs-nav .tabs-nav-sub-item, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux { display:inline-block; margin:0; padding:0 20px; height:45px; line-height:50px; font-size:12px; color:#333333; text-align:center; text-transform:uppercase; background:#fff; cursor:pointer;} 
      .tabs .tabs-nav .tabs-nav-sub-item span, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux span { display:inline-block; margin-left:10px; padding:0px 10px; height:25px; line-height:26px; color:#3653b8; font-size:13px; font-weight:900;}
      .tabs .tabs-nav .tabs-nav-sub-item a, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux a {height: 45px;line-height: 50px;width: 100%;display: inline-block;}
 
      /* .tabs .tabs-wrapper { margin-top: 35px; } */
      .tabs .tabs-wrapper.white, .tabs-deux .tabs-wrapper-deux.white { background:#fff;}
      .tabs .tabs-wrapper .tabs-tab, .tabs-deux .tabs-wrapper-deux .tabs-tab-deux{ display:none; padding:10px; }
      .tabs .tabs-wrapper .tabs-tab.active, .tabs-deux .tabs-wrapper-deux .tabs-tab-deux.active { display:block;}
      .tabs-deux .tabs-wrapper-deux .tabs-tab-deux.active { padding:0; background: white; }
    
      .tabs .tabs-wrapper .tabs-sub-tab, .tabs-deux .tabs-wrapper-deux .tabs-sub-tab-deux { display:none; padding:10px; }
      .tabs .tabs-wrapper .tabs-sub-tab.active, .tabs-deux .tabs-wrapper-deux .tabs-sub-tab-deux.active { display:block; }
 
    /* status */
    .tabs .tabs-nav .tabs-nav-item:hover, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux:hover { background:#f5f6fa; border-bottom:3px solid #3653b8;}
    .tabs .tabs-nav .tabs-nav-item.active, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux.active {  border-bottom:3px solid #3653b8;}
 
    .tabs .tabs-nav .tabs-nav-item:hover span, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux:hover span { color:#3653b8;}
    .tabs .tabs-nav .tabs-nav-item.active span, .tabs-deux .tabs-nav-deux .tabs-nav-item-deux.active span { color:#ffffff;}
    .tabs .tabs-nav .tabs-nav-sub-item:hover, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux:hover { background:#f5f6fa; border-bottom:3px solid #3653b8;}
    .tabs .tabs-nav .tabs-nav-sub-item.active, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux.active {  border-bottom:3px solid #3653b8;}
 
    .tabs .tabs-nav .tabs-nav-sub-item:hover span, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux:hover span { color:#3653b8;}
    .tabs .tabs-nav .tabs-nav-sub-item.active span, .tabs-deux .tabs-nav-deux .tabs-nav-sub-item-deux.active span { color:#ffffff;}
 
 
    /* Version avec le menu d'onglets sur la gauche */
      .tabs.tabs-vertical { display:flex; flex-flow:row nowrap; margin:0;}
      .tabs.tabs-vertical .tabs-nav { width:180px; height:auto; border-bottom:none;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-sticky { position:sticky; top: 105px; z-index: 2;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; border-right:3px solid #e2dbd3; text-align:left;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; border-right:3px solid #e2dbd3; text-align:left;}
      
      .tabs.tabs-vertical .tabs-wrapper {flex-grow:1; background:#fff; border:3px solid #efefef; border-left:none;}
 
      /* status */
      .tabs.tabs-vertical .tabs-nav .tabs-nav-item:hover { border:none; border-right:3px solid #3653b8;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-item.active { background:#3653b8; border:none; border-right:3px solid #3653b8; color:#fff;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item:hover { border:none; border-right:3px solid #3653b8;}
      .tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item.active { background:#3653b8; border:none; border-right:3px solid #3653b8; color:#fff;}

      
 
    /* Version avec le sous menu d'onglets sur la gauche */
    .sub-tabs.tabs-vertical { display:flex; flex-flow:row nowrap; margin:0;}
    .sub-tabs.tabs-vertical .tabs-nav { width:180px; height:auto; border-bottom:none;}
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-sticky { position:sticky; top: 105px; z-index: 2;}
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; border-right:3px solid #e2dbd3; text-align:left;}
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; border-right:3px solid #e2dbd3; text-align:left;}
    
    .sub-tabs.tabs-vertical .tabs-wrapper {flex-grow:1; background:#fff; border:3px solid #efefef; border-left:none;}

    /* status */
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-item:hover { border:none; border-right:3px solid #3653b8;}
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-item.active { background:#3653b8; border:none; border-right:3px solid #3653b8; color:#fff;}
    .tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item:hover { border:none; border-right:3px solid #3653b8;}
    .sub-tabs.tabs-vertical .tabs-nav .tabs-nav-sub-item.active { background:#3653b8; border:none; border-right:3px solid #3653b8; color:#fff;}
 
    /* Version avec le menu d'onglets sur le dessus (modif Erwnn) */
      .tabs.tabs-horizontal { display:flex; flex-flow:row wrap; margin:0;}
      .tabs.tabs-horizontal .tabs-nav { width:100%; height:auto; border-bottom:none;}
      .tabs.tabs-horizontal .tabs-nav.tabs-nav-sticky { position: sticky; top: 105px; z-index: 3; display: flex;}
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; text-align:left; border-inline:1px solid #e2dbd3; box-shadow: 0px 5px 5px #00000014;}
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-sub-item { box-sizing:border-box; padding:10px 0 10px 15px; width:100%; height:auto; line-height:20px; text-align:left; border-inline:1px solid #e2dbd3; box-shadow: 0px 5px 5px #00000014;}
      
      .tabs.tabs-horizontal .tabs-wrapper {flex-grow:1; background:#fff;}
 
      /* status */
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-item:hover { border:none; border-inline:1px solid #3653b8;}
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-item.active { background:#3653b8; border:none; border-inline:1px solid #3653b8; color:#fff;}
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-sub-item:hover { border:none; border-inline:1px solid #3653b8;}
      .tabs.tabs-horizontal .tabs-nav .tabs-nav-sub-item.active { background:#3653b8; border:none; border-inline:1px solid #3653b8; color:#fff;}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QixDQUFDO01BQ3hHLDREQUE0RCxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsK0JBQStCLEVBQUUsVUFBVSxDQUFDLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFjay9zdHlsZXMvYmV3YXJlLWRhdGF0YWJsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2JhY2svc3R5bGVzL3Jlc2V0LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFjay9zdHlsZXMvYWxwaGEtZmx1aWQtbm9ybWFsLTEyLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFjay9zdHlsZXMvZm9udHMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9iYWNrL3N0eWxlcy9wb3B1cC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2JhY2svc3R5bGVzL3RhYmxlLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFjay9zdHlsZXMvZm9ybS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2JhY2svc3R5bGVzL2NvbGxhcHMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9iYWNrL3N0eWxlcy9nbG9iYWwuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9iYWNrL3N0eWxlcy9lZGl0YWJsZS1maWVsZC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2JhY2svc3R5bGVzL2dyaWQtY29sb21ucy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2JhY2svY29tcG9uZW50cy9zZWxlY3QyL3NlbGVjdDIubWluLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFjay9jb21wb25lbnRzL3RhYnMvdGFicy5jc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG46cm9vdCB7XHJcbiAgLS1kdC1yb3ctc2VsZWN0ZWQ6IDEzLCAxMTAsIDI1MztcclxuICAtLWR0LXJvdy1zZWxlY3RlZC10ZXh0OiAyNTUsIDI1NSwgMjU1O1xyXG4gIC0tZHQtcm93LXNlbGVjdGVkLWxpbms6IDksIDEwLCAxMTtcclxuICAtLWR0LXJvdy1zdHJpcGU6IDAsIDAsIDA7XHJcbiAgLS1kdC1yb3ctaG92ZXI6IDAsIDAsIDA7XHJcbiAgLS1kdC1jb2x1bW4tb3JkZXJpbmc6IDAsIDAsIDA7XHJcbiAgLS1kdC1odG1sLWJhY2tncm91bmQ6IHdoaXRlO1xyXG59XHJcbjpyb290LmRhcmsge1xyXG4gIC0tZHQtaHRtbC1iYWNrZ3JvdW5kOiByZ2IoMzMsIDM3LCA0MSk7XHJcbn1cclxuXHJcbi8qIERBVEFUQUJMRSBPVkVSUklERSAqL1xyXG4uZGF0YVRhYmxlLnN0aWNreS1oZWFkZXIgdGhlYWR7IHBvc2l0aW9uOiBzdGlja3k7IHRvcDogNjBweDsgYmFja2dyb3VuZDogI0ZGRjsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7IGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsLjEpO3otaW5kZXg6IDE7fVxyXG5cclxuXHJcblxyXG4vKiBEQVRBVEFCTEUgTElCUyAqL1xyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtY29udHJvbCB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtY29udHJvbDpiZWZvcmUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRyLmR0LWhhc0NoaWxkIHRkLmR0LWNvbnRyb2w6YmVmb3JlIHtcclxuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuaHRtbC5kYXJrIHRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1jb250cm9sOmJlZm9yZSxcclxuOnJvb3RbZGF0YS1icy10aGVtZT1kYXJrXSB0YWJsZS5kYXRhVGFibGUgdGQuZHQtY29udHJvbDpiZWZvcmUge1xyXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbn1cclxuaHRtbC5kYXJrIHRhYmxlLmRhdGFUYWJsZSB0ci5kdC1oYXNDaGlsZCB0ZC5kdC1jb250cm9sOmJlZm9yZSxcclxuOnJvb3RbZGF0YS1icy10aGVtZT1kYXJrXSB0YWJsZS5kYXRhVGFibGUgdHIuZHQtaGFzQ2hpbGQgdGQuZHQtY29udHJvbDpiZWZvcmUge1xyXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbmRpdi5kdC1zY3JvbGwtYm9keSB0aGVhZCB0cixcclxuZGl2LmR0LXNjcm9sbC1ib2R5IHRmb290IHRyIHtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuZGl2LmR0LXNjcm9sbC1ib2R5IHRoZWFkIHRyIHRoLCBkaXYuZHQtc2Nyb2xsLWJvZHkgdGhlYWQgdHIgdGQsXHJcbmRpdi5kdC1zY3JvbGwtYm9keSB0Zm9vdCB0ciB0aCxcclxuZGl2LmR0LXNjcm9sbC1ib2R5IHRmb290IHRyIHRkIHtcclxuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci10b3Atd2lkdGg6IDBweCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcbmRpdi5kdC1zY3JvbGwtYm9keSB0aGVhZCB0ciB0aCBkaXYuZHQtc2Nyb2xsLXNpemluZywgZGl2LmR0LXNjcm9sbC1ib2R5IHRoZWFkIHRyIHRkIGRpdi5kdC1zY3JvbGwtc2l6aW5nLFxyXG5kaXYuZHQtc2Nyb2xsLWJvZHkgdGZvb3QgdHIgdGggZGl2LmR0LXNjcm9sbC1zaXppbmcsXHJcbmRpdi5kdC1zY3JvbGwtYm9keSB0Zm9vdCB0ciB0ZCBkaXYuZHQtc2Nyb2xsLXNpemluZyB7XHJcbiAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoOmFjdGl2ZSxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZDphY3RpdmUge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWFzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjpiZWZvcmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBib3R0b206IDUwJTtcclxuICBjb250ZW50OiBcIuKWslwiO1xyXG4gIGNvbnRlbnQ6IFwi4payXCIvXCJcIjtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyYWJsZS1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyaW5nLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YWZ0ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YWZ0ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJpbmctZGVzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjphZnRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRvcDogNTAlO1xyXG4gIGNvbnRlbnQ6IFwi4pa8XCI7XHJcbiAgY29udGVudDogXCLilrxcIi9cIlwiO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJhYmxlLWFzYywgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtZGVzYywgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1hc2MsIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJpbmctZGVzYyxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmFibGUtYXNjLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1kZXNjLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWFzYyxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmluZy1kZXNjIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy1yaWdodDogMzBweDtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyYWJsZS1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXIsIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJhYmxlLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXIsIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJpbmctYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyaW5nLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWFzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcixcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmFibGUtZGVzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcixcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmluZy1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJpbmctZGVzYyBzcGFuLmR0LWNvbHVtbi1vcmRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxMnB4O1xyXG4gIHRvcDogMDtcclxuICBib3R0b206IDA7XHJcbiAgd2lkdGg6IDEycHg7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyYWJsZS1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtZGVzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjphZnRlciwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyaW5nLWFzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjphZnRlciwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1hc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YWZ0ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWFzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjpiZWZvcmUsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJpbmctYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWRlc2Mgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YWZ0ZXIge1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3BhY2l0eTogMC4xMjU7XHJcbiAgbGluZS1oZWlnaHQ6IDlweDtcclxuICBmb250LXNpemU6IDAuOGVtO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJhYmxlLWFzYywgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtZGVzYyxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmFibGUtYXNjLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1kZXNjIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjOmhvdmVyLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLmR0LW9yZGVyYWJsZS1kZXNjOmhvdmVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyYWJsZS1hc2M6aG92ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWRlc2M6aG92ZXIge1xyXG4gIG91dGxpbmU6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJpbmctYXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmluZy1kZXNjIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkLmR0LW9yZGVyaW5nLWFzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjpiZWZvcmUsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJpbmctZGVzYyBzcGFuLmR0LWNvbHVtbi1vcmRlcjphZnRlciB7XHJcbiAgb3BhY2l0eTogMC42O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguc29ydGluZ19kZXNjX2Rpc2FibGVkIHNwYW4uZHQtY29sdW1uLW9yZGVyOmFmdGVyLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRoLnNvcnRpbmdfYXNjX2Rpc2FibGVkIHNwYW4uZHQtY29sdW1uLW9yZGVyOmJlZm9yZSxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YWZ0ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuc29ydGluZ19hc2NfZGlzYWJsZWQgc3Bhbi5kdC1jb2x1bW4tb3JkZXI6YmVmb3JlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGg6YWN0aXZlLFxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgPiB0ciA+IHRkOmFjdGl2ZSB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuZGl2LmR0LXNjcm9sbC1ib2R5ID4gdGFibGUuZGF0YVRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxyXG5kaXYuZHQtc2Nyb2xsLWJvZHkgPiB0YWJsZS5kYXRhVGFibGUgPiB0aGVhZCA+IHRyID4gdGQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbjpyb290LmRhcmsgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjOmhvdmVyLCA6cm9vdC5kYXJrIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJhYmxlLWRlc2M6aG92ZXIsXHJcbjpyb290LmRhcmsgdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmFibGUtYXNjOmhvdmVyLFxyXG46cm9vdC5kYXJrIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWRlc2M6aG92ZXIsXHJcbjpyb290W2RhdGEtYnMtdGhlbWU9ZGFya10gdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0aC5kdC1vcmRlcmFibGUtYXNjOmhvdmVyLFxyXG46cm9vdFtkYXRhLWJzLXRoZW1lPWRhcmtdIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGguZHQtb3JkZXJhYmxlLWRlc2M6aG92ZXIsXHJcbjpyb290W2RhdGEtYnMtdGhlbWU9ZGFya10gdGFibGUuZGF0YVRhYmxlIHRoZWFkID4gdHIgPiB0ZC5kdC1vcmRlcmFibGUtYXNjOmhvdmVyLFxyXG46cm9vdFtkYXRhLWJzLXRoZW1lPWRhcmtdIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCA+IHRyID4gdGQuZHQtb3JkZXJhYmxlLWRlc2M6aG92ZXIge1xyXG4gIG91dGxpbmU6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xyXG59XHJcblxyXG4vKiBkaXYuZHQtcHJvY2Vzc2luZyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogMjAwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IC0xMDBweDtcclxuICBtYXJnaW4tdG9wOiAtMjJweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMnB4O1xyXG4gIHotaW5kZXg6IDEwO1xyXG59ICovXHJcblxyXG5kaXYuZHQtcHJvY2Vzc2luZyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBwYWRkaW5nOiAycHg7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNSwgMzEsIDUyLCAwLjQpO1xyXG4gIGhlaWdodDogMTAwJTtcclxufVxyXG5kaXYuZHQtcHJvY2Vzc2luZyA+IGRpdjpsYXN0LWNoaWxkIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbmRpdi5kdC1wcm9jZXNzaW5nID4gZGl2Omxhc3QtY2hpbGQgPiBkaXYge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEzcHg7XHJcbiAgaGVpZ2h0OiAxM3B4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBiYWNrZ3JvdW5kOiByZ2IoMTMsIDExMCwgMjUzKTtcclxuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tZHQtcm93LXNlbGVjdGVkKSk7XHJcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDEsIDApO1xyXG59XHJcbmRpdi5kdC1wcm9jZXNzaW5nID4gZGl2Omxhc3QtY2hpbGQgPiBkaXY6bnRoLWNoaWxkKDEpIHtcclxuICBsZWZ0OiA4cHg7XHJcbiAgYW5pbWF0aW9uOiBkYXRhdGFibGVzLWxvYWRlci0xIDAuNnMgaW5maW5pdGU7XHJcbn1cclxuZGl2LmR0LXByb2Nlc3NpbmcgPiBkaXY6bGFzdC1jaGlsZCA+IGRpdjpudGgtY2hpbGQoMikge1xyXG4gIGxlZnQ6IDhweDtcclxuICBhbmltYXRpb246IGRhdGF0YWJsZXMtbG9hZGVyLTIgMC42cyBpbmZpbml0ZTtcclxufVxyXG5kaXYuZHQtcHJvY2Vzc2luZyA+IGRpdjpsYXN0LWNoaWxkID4gZGl2Om50aC1jaGlsZCgzKSB7XHJcbiAgbGVmdDogMzJweDtcclxuICBhbmltYXRpb246IGRhdGF0YWJsZXMtbG9hZGVyLTIgMC42cyBpbmZpbml0ZTtcclxufVxyXG5kaXYuZHQtcHJvY2Vzc2luZyA+IGRpdjpsYXN0LWNoaWxkID4gZGl2Om50aC1jaGlsZCg0KSB7XHJcbiAgbGVmdDogNTZweDtcclxuICBhbmltYXRpb246IGRhdGF0YWJsZXMtbG9hZGVyLTMgMC42cyBpbmZpbml0ZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBkYXRhdGFibGVzLWxvYWRlci0xIHtcclxuICAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZGF0YXRhYmxlcy1sb2FkZXItMyB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICB9XHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGRhdGF0YWJsZXMtbG9hZGVyLTIge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI0cHgsIDApO1xyXG4gIH1cclxufVxyXG50YWJsZS5kYXRhVGFibGUubm93cmFwIHRoLCB0YWJsZS5kYXRhVGFibGUubm93cmFwIHRkIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aCxcclxudGFibGUuZGF0YVRhYmxlIHRkIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1sZWZ0LFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtbGVmdCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGguZHQtY2VudGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoLmR0LXJpZ2h0LFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1qdXN0aWZ5LFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtanVzdGlmeSB7XHJcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGguZHQtbm93cmFwLFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtbm93cmFwIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1lbXB0eSxcclxudGFibGUuZGF0YVRhYmxlIHRkLmR0LWVtcHR5IHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxufVxyXG4vKiB0YWJsZS5kYXRhVGFibGUgdGguZHQtdHlwZS1udW1lcmljLCB0YWJsZS5kYXRhVGFibGUgdGguZHQtdHlwZS1kYXRlLFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtdHlwZS1udW1lcmljLFxyXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtdHlwZS1kYXRlIHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufSAqL1xyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGgsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZCxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLFxyXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtbGVmdCxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtbGVmdCxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtbGVmdCxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtbGVmdCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1jZW50ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWNlbnRlcixcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtY2VudGVyLFxyXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1yaWdodCxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtcmlnaHQsXHJcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aC5kdC1oZWFkLXJpZ2h0LFxyXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1yaWdodCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtanVzdGlmeSxcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtanVzdGlmeSxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtanVzdGlmeSxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtanVzdGlmeSB7XHJcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1ub3dyYXAsXHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLW5vd3JhcCxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtbm93cmFwLFxyXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1ub3dyYXAge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktbGVmdCxcclxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktbGVmdCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1jZW50ZXIsXHJcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5kdC1ib2R5LWNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0aC5kdC1ib2R5LXJpZ2h0LFxyXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQuZHQtYm9keS1yaWdodCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktanVzdGlmeSxcclxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktanVzdGlmeSB7XHJcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1ub3dyYXAsXHJcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5kdC1ib2R5LW5vd3JhcCB7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLypcclxuICogVGFibGUgc3R5bGVzXHJcbiAqL1xyXG50YWJsZS5kYXRhVGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gIC8qXHJcbiAgICogSGVhZGVyIGFuZCBmb290ZXIgc3R5bGVzXHJcbiAgICovXHJcbiAgLypcclxuICAgKiBCb2R5IHN0eWxlc1xyXG4gICAqL1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcclxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRoZWFkID4gdHIgPiB0ZCB7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRoZWFkID4gdHIgPiB0aDphY3RpdmUsXHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRoZWFkID4gdHIgPiB0ZDphY3RpdmUge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLFxyXG50YWJsZS5kYXRhVGFibGUgPiB0Zm9vdCA+IHRyID4gdGQge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgcGFkZGluZzogMTBweCAxMHB4IDZweCAxMHB4O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiAqIHtcclxuICBib3JkZXItdG9wOiBub25lO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+ICoge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5zZWxlY3RlZCA+ICoge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDEzLCAxMTAsIDI1MywgMC45KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctc2VsZWN0ZWQpLCAwLjkpO1xyXG4gIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XHJcbiAgY29sb3I6IHJnYih2YXIoLS1kdC1yb3ctc2VsZWN0ZWQtdGV4dCkpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuc2VsZWN0ZWQgYSB7XHJcbiAgY29sb3I6IHJnYig5LCAxMCwgMTEpO1xyXG4gIGNvbG9yOiByZ2IodmFyKC0tZHQtcm93LXNlbGVjdGVkLWxpbmspKTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXHJcbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XHJcbiAgcGFkZGluZzogOHB4IDEwcHg7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciA+IHRib2R5ID4gdHIgPiAqLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHIgPiAqIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiAqLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiAqIHtcclxuICBib3JkZXItdG9wOiBub25lO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyID4gdGJvZHkgPiB0ci5zZWxlY3RlZCArIHRyLnNlbGVjdGVkID4gdGQsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5zZWxlY3RlZCArIHRyLnNlbGVjdGVkID4gdGQge1xyXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMTMsIDExMCwgMjUzLCAwLjY1KTtcclxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuNjUpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciA+IHRib2R5ID4gdHIgPiAqIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciA+IHRib2R5ID4gdHIgPiAqOmZpcnN0LWNoaWxkIHtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+ICoge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLnN0cmlwZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkgPiAqLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkgPiAqIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjAyMyk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LXN0cmlwZSksIDAuMDIzKTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuc3RyaXBlID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKS5zZWxlY3RlZCA+ICosIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKS5zZWxlY3RlZCA+ICoge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDEzLCAxMTAsIDI1MywgMC45MjMpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuOTIzKTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gKiwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyOmhvdmVyID4gKiB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMCwgMCwgMCwgMC4wMzUpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1ob3ZlciksIDAuMDM1KTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuaG92ZXIgPiB0Ym9keSA+IHRyLnNlbGVjdGVkOmhvdmVyID4gKiwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyLnNlbGVjdGVkOmhvdmVyID4gKiB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4ICMwZDZlZmQgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctc2VsZWN0ZWQpLCAxKSAhaW1wb3J0YW50O1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gPiB0Ym9keSB0ciA+IC5zb3J0aW5nXzEsXHJcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gPiB0Ym9keSB0ciA+IC5zb3J0aW5nXzIsXHJcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gPiB0Ym9keSB0ciA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgdHIgPiAuc29ydGluZ18xLFxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5IHRyID4gLnNvcnRpbmdfMixcclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSB0ciA+IC5zb3J0aW5nXzMge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDAsIDAsIDAsIDAuMDE5KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1jb2x1bW4tb3JkZXJpbmcpLCAwLjAxOSk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiA+IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSxcclxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiA+IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMixcclxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiA+IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsXHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18yLFxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMTMsIDExMCwgMjUzLCAwLjkxOSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LXNlbGVjdGVkKSwgMC45MTkpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKSA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKSA+IC5zb3J0aW5nXzEge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDAsIDAsIDAsIDAuMDU0KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1jb2x1bW4tb3JkZXJpbmcpLCAwLjA1NCk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpID4gLnNvcnRpbmdfMiB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMCwgMCwgMCwgMC4wNDcpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LWNvbHVtbi1vcmRlcmluZyksIDAuMDQ3KTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkgPiAuc29ydGluZ18zIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjAzOSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtY29sdW1uLW9yZGVyaW5nKSwgMC4wMzkpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKS5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlID4gdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKS5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDEzLCAxMTAsIDI1MywgMC45NTQpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuOTU0KTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkuc2VsZWN0ZWQgPiAuc29ydGluZ18yLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkuc2VsZWN0ZWQgPiAuc29ydGluZ18yIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgxMywgMTEwLCAyNTMsIDAuOTQ3KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctc2VsZWN0ZWQpLCAwLjk0Nyk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMTMsIDExMCwgMjUzLCAwLjkzOSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LXNlbGVjdGVkKSwgMC45MzkpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5ldmVuID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyLmV2ZW4gPiAuc29ydGluZ18xIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjAxOSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtY29sdW1uLW9yZGVyaW5nKSwgMC4wMTkpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5ldmVuID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyLmV2ZW4gPiAuc29ydGluZ18yIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjAxMSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtY29sdW1uLW9yZGVyaW5nKSwgMC4wMTEpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5ldmVuID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyLmV2ZW4gPiAuc29ydGluZ18zIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjAwMyk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtY29sdW1uLW9yZGVyaW5nKSwgMC4wMDMpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgPiB0Ym9keSA+IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18xIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgxMywgMTEwLCAyNTMsIDAuOTE5KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctc2VsZWN0ZWQpLCAwLjkxOSk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18yLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSA+IHRib2R5ID4gdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDEzLCAxMTAsIDI1MywgMC45MTEpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuOTExKTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlID4gdGJvZHkgPiB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMTMsIDExMCwgMjUzLCAwLjkwMyk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LXNlbGVjdGVkKSwgMC45MDMpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzEge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDAsIDAsIDAsIDAuMDgyKTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctaG92ZXIpLCAwLjA4Mik7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18yLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMiB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMCwgMCwgMCwgMC4wNzQpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1ob3ZlciksIDAuMDc0KTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18zIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgwLCAwLCAwLCAwLjA2Mik7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LWhvdmVyKSwgMC4wNjIpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKDEzLCAxMTAsIDI1MywgMC45ODIpO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuOTgyKTtcclxufVxyXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18yIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSgxMywgMTEwLCAyNTMsIDAuOTc0KTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggcmdiYSh2YXIoLS1kdC1yb3ctc2VsZWN0ZWQpLCAwLjk3NCk7XHJcbn1cclxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEoMTMsIDExMCwgMjUzLCAwLjk2Mik7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHJnYmEodmFyKC0tZHQtcm93LXNlbGVjdGVkKSwgMC45NjIpO1xyXG59XHJcbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRoZWFkIHRoLFxyXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0aGVhZCB0ZCxcclxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGZvb3QgdGgsXHJcbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRmb290IHRkLFxyXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Ym9keSB0aCxcclxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGJvZHkgdGQge1xyXG4gIHBhZGRpbmc6IDRweDtcclxufVxyXG5cclxuLypcclxuICogQ29udHJvbCBmZWF0dXJlIGxheW91dFxyXG4gKi9cclxuZGl2LmR0LWNvbnRhaW5lciB7XHJcbiAgLyogcG9zaXRpb246IHJlbGF0aXZlOyAqL1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LXJvdyB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LXJvdy5kdC1sYXlvdXQtdGFibGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgZGl2LmR0LWxheW91dC1yb3cuZHQtbGF5b3V0LXRhYmxlIGRpdi5kdC1sYXlvdXQtY2VsbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwge1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBwYWRkaW5nOiA1cHggMDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIGRpdi5kdC1sYXlvdXQtY2VsbC5kdC1mdWxsIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwuZHQtc3RhcnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwuZHQtZW5kIHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIGRpdi5kdC1sYXlvdXQtY2VsbDplbXB0eSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1zZWFyY2ggaW5wdXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIHBhZGRpbmc6IDVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICBtYXJnaW4tbGVmdDogM3B4O1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgLmR0LWlucHV0IHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBwYWRkaW5nOiA1cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciBzZWxlY3QuZHQtaW5wdXQge1xyXG4gIHBhZGRpbmc6IDRweDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcgLmR0LXBhZ2luZy1idXR0b24ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1pbi13aWR0aDogMS41ZW07XHJcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcgLmR0LXBhZ2luZy1idXR0b24uY3VycmVudCwgZGl2LmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uLmN1cnJlbnQ6aG92ZXIge1xyXG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyMzAsIDIzMCwgMjMwLCAwLjA1KSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAwLjA1KSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cclxuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjMwLCAyMzAsIDIzMCwgMC4wNSkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wNSkgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXHJcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDIzMCwgMjMwLCAyMzAsIDAuMDUpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMDUpIDEwMCUpOyAvKiBGRjMuNisgKi9cclxuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyMzAsIDIzMCwgMjMwLCAwLjA1KSAwJSwgcmdiYSgwLCAwLCAwLCAwLjA1KSAxMDAlKTsgLyogSUUxMCsgKi9cclxuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDIzMCwgMjMwLCAyMzAsIDAuMDUpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMDUpIDEwMCUpOyAvKiBPcGVyYSAxMS4xMCsgKi9cclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzMCwgMjMwLCAyMzAsIDAuMDUpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMDUpIDEwMCUpOyAvKiBXM0MgKi9cclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcgLmR0LXBhZ2luZy1idXR0b24uZGlzYWJsZWQsIGRpdi5kdC1jb250YWluZXIgLmR0LXBhZ2luZyAuZHQtcGFnaW5nLWJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgZGl2LmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgLmR0LXBhZ2luZyAuZHQtcGFnaW5nLWJ1dHRvbjpob3ZlciB7XHJcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgIzExMTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xyXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM1ODU4NTgpLCBjb2xvci1zdG9wKDEwMCUsICMxMTEpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xyXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTsgLyogRkYzLjYrICovXHJcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7IC8qIElFMTArICovXHJcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTsgLyogVzNDICovXHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uOmFjdGl2ZSB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGMwYzBjO1xyXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICMyYjJiMmIpLCBjb2xvci1zdG9wKDEwMCUsICMwYzBjMGMpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMmIyYjJiIDAlLCAjMGMwYzBjIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xyXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTsgLyogRkYzLjYrICovXHJcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7IC8qIElFMTArICovXHJcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTsgLyogVzNDICovXHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCAjMTExO1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgLmR0LXBhZ2luZyAuZWxsaXBzaXMge1xyXG4gIHBhZGRpbmc6IDAgMWVtO1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgLmR0LWxlbmd0aCxcclxuZGl2LmR0LWNvbnRhaW5lciAuZHQtc2VhcmNoLFxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1pbmZvLFxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1wcm9jZXNzaW5nLFxyXG5kaXYuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIHtcclxuICBjbGVhcjogYm90aDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZHQtc2Nyb2xsLWJvZHkge1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZHQtc2Nyb2xsLWJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aCwgZGl2LmR0LWNvbnRhaW5lciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmR0LXNjcm9sbC1ib2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGQsIGRpdi5kdC1jb250YWluZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kdC1zY3JvbGwtYm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLCBkaXYuZHQtY29udGFpbmVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZHQtc2Nyb2xsLWJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5kaXYuZHQtY29udGFpbmVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZHQtc2Nyb2xsLWJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aCA+IGRpdi5kYXRhVGFibGVzX3NpemluZyxcclxuZGl2LmR0LWNvbnRhaW5lciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmR0LXNjcm9sbC1ib2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGQgPiBkaXYuZGF0YVRhYmxlc19zaXppbmcsIGRpdi5kdC1jb250YWluZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kdC1zY3JvbGwtYm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoID4gZGl2LmRhdGFUYWJsZXNfc2l6aW5nLFxyXG5kaXYuZHQtY29udGFpbmVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZHQtc2Nyb2xsLWJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCA+IGRpdi5kYXRhVGFibGVzX3NpemluZyB7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIuZHQtZW1wdHktZm9vdGVyIHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+ICoge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuZGl2LmR0LWNvbnRhaW5lci5kdC1lbXB0eS1mb290ZXIgLmR0LXNjcm9sbC1ib2R5IHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG59XHJcbmRpdi5kdC1jb250YWluZXIuZHQtZW1wdHktZm9vdGVyIC5kdC1zY3JvbGwtYm9keSB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiAqIHtcclxuICBib3JkZXItYm90dG9tOiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gIGRpdi5kdC1jb250YWluZXIgZGl2LmR0LWxheW91dC1yb3cge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIGRpdi5kdC1jb250YWluZXIgZGl2LmR0LWxheW91dC1jZWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICBkaXYuZHQtY29udGFpbmVyIGRpdi5kdC1sYXlvdXQtY2VsbC5kdC1mdWxsLCBkaXYuZHQtY29udGFpbmVyIGRpdi5kdC1sYXlvdXQtY2VsbC5kdC1zdGFydCwgZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwuZHQtZW5kIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcclxuICAuZHQtY29udGFpbmVyIC5kdC1sZW5ndGgsXHJcbiAgLmR0LWNvbnRhaW5lciAuZHQtc2VhcmNoIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAuZHQtY29udGFpbmVyIC5kdC1zZWFyY2gge1xyXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XHJcbiAgfVxyXG59XHJcbmh0bWwuZGFyayB7XHJcbiAgLS1kdC1yb3ctaG92ZXI6IDI1NSwgMjU1LCAyNTU7XHJcbiAgLS1kdC1yb3ctc3RyaXBlOiAyNTUsIDI1NSwgMjU1O1xyXG4gIC0tZHQtY29sdW1uLW9yZGVyaW5nOiAyNTUsIDI1NSwgMjU1O1xyXG59XHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUgPiB0aGVhZCA+IHRyID4gdGQge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoODksIDkxLCA5NCk7XHJcbn1cclxuaHRtbC5kYXJrIHRhYmxlLmRhdGFUYWJsZSA+IHRoZWFkID4gdHIgPiB0aDphY3RpdmUsXHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUgPiB0aGVhZCA+IHRyID4gdGQ6YWN0aXZlIHtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUgPiB0Zm9vdCA+IHRyID4gdGQge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2IoODksIDkxLCA5NCk7XHJcbn1cclxuaHRtbC5kYXJrIHRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyID4gdGJvZHkgPiB0ciA+ICosIGh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSA+IHRib2R5ID4gdHIgPiAqIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDY0LCA2NywgNzApO1xyXG59XHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiAqLCBodG1sLmRhcmsgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gKiB7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxufVxyXG5odG1sLmRhcmsgdGFibGUuZGF0YVRhYmxlLnJvdy1ib3JkZXIgPiB0Ym9keSA+IHRyLnNlbGVjdGVkICsgdHIuc2VsZWN0ZWQgPiB0ZCwgaHRtbC5kYXJrIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5ID4gdGJvZHkgPiB0ci5zZWxlY3RlZCArIHRyLnNlbGVjdGVkID4gdGQge1xyXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMTMsIDExMCwgMjUzLCAwLjY1KTtcclxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKHZhcigtLWR0LXJvdy1zZWxlY3RlZCksIDAuNjUpO1xyXG59XHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgPiB0Ym9keSA+IHRyID4gdGgsXHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgPiB0Ym9keSA+IHRyID4gdGQge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2IoNjQsIDY3LCA3MCk7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiKDY0LCA2NywgNzApO1xyXG59XHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXHJcbmh0bWwuZGFyayB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xyXG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiKDY0LCA2NywgNzApO1xyXG59XHJcbmh0bWwuZGFyayAuZHQtY29udGFpbmVyLmR0LWVtcHR5LWZvb3RlciB0YWJsZS5kYXRhVGFibGUge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoODksIDkxLCA5NCk7XHJcbn1cclxuaHRtbC5kYXJrIC5kdC1jb250YWluZXIgLmR0LXNlYXJjaCBpbnB1dCxcclxuaHRtbC5kYXJrIC5kdC1jb250YWluZXIgLmR0LWxlbmd0aCBzZWxlY3Qge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kdC1odG1sLWJhY2tncm91bmQpO1xyXG59XHJcbmh0bWwuZGFyayAuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcgLmR0LXBhZ2luZy1idXR0b24uY3VycmVudCwgaHRtbC5kYXJrIC5kdC1jb250YWluZXIgLmR0LXBhZ2luZyAuZHQtcGFnaW5nLWJ1dHRvbi5jdXJyZW50OmhvdmVyIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoODksIDkxLCA5NCk7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcclxufVxyXG5odG1sLmRhcmsgLmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uLmRpc2FibGVkLCBodG1sLmRhcmsgLmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBodG1sLmRhcmsgLmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSB7XHJcbiAgY29sb3I6ICM2NjYgIWltcG9ydGFudDtcclxufVxyXG5odG1sLmRhcmsgLmR0LWNvbnRhaW5lciAuZHQtcGFnaW5nIC5kdC1wYWdpbmctYnV0dG9uOmhvdmVyIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoNTMsIDUzLCA1Myk7XHJcbiAgYmFja2dyb3VuZDogcmdiKDUzLCA1MywgNTMpO1xyXG59XHJcbmh0bWwuZGFyayAuZHQtY29udGFpbmVyIC5kdC1wYWdpbmcgLmR0LXBhZ2luZy1idXR0b246YWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xyXG59XHJcblxyXG4vKlxyXG4gKiBPdmVycmlkZXMgZm9yIFJUTCBzdXBwb3J0XHJcbiAqL1xyXG4qW2Rpcj1ydGxdIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcclxuKltkaXI9cnRsXSB0YWJsZS5kYXRhVGFibGUgdGhlYWQgdGQsXHJcbipbZGlyPXJ0bF0gdGFibGUuZGF0YVRhYmxlIHRmb290IHRoLFxyXG4qW2Rpcj1ydGxdIHRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuKltkaXI9cnRsXSB0YWJsZS5kYXRhVGFibGUgdGguZHQtdHlwZS1udW1lcmljLCAqW2Rpcj1ydGxdIHRhYmxlLmRhdGFUYWJsZSB0aC5kdC10eXBlLWRhdGUsXHJcbipbZGlyPXJ0bF0gdGFibGUuZGF0YVRhYmxlIHRkLmR0LXR5cGUtbnVtZXJpYyxcclxuKltkaXI9cnRsXSB0YWJsZS5kYXRhVGFibGUgdGQuZHQtdHlwZS1kYXRlIHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbipbZGlyPXJ0bF0gZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwuZHQtc3RhcnQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbipbZGlyPXJ0bF0gZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtbGF5b3V0LWNlbGwuZHQtZW5kIHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbipbZGlyPXJ0bF0gZGl2LmR0LWNvbnRhaW5lciBkaXYuZHQtc2VhcmNoIGlucHV0IHtcclxuICBtYXJnaW46IDAgM3B4IDAgMDtcclxufVxyXG5cclxuLmR0LWxheW91dC1jZWxsIGRpdjpmaXJzdC1jaGlsZCAjZHQtbG9hZGVyeyBiYWNrZ3JvdW5kOiB3aGl0ZTsgcGFkZGluZzogMTVweDsgd2lkdGg6IDQ1MHB4OyBib3JkZXItcmFkaXVzOiA1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiA0MCU7IG1hcmdpbjogMCBhdXRvO31cclxuIiwiaHRtbCwgYm9keSwgZGl2IHtcclxuICBtYXJnaW46IDA7IFxyXG4gIHBhZGRpbmc6IDA7IFxyXG4gIGJvcmRlcjogMDsgXHJcbiAgb3V0bGluZTogMDsgXHJcbiAgZm9udC1zaXplOiAxMDAlOyBcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IFxyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gIG1hcmdpbjogMDsgXHJcbiAgcGFkZGluZzogMDsgXHJcbiAgYm9yZGVyOiAwOyBcclxuICBvdXRsaW5lOiAwOyBcclxuICBmb250LXNpemU6IDEwMCU7IFxyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgXHJcbiAgZm9udDogaW5oZXJpdDsgXHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbmEsIHAsIHVsLCBvbCwgbGksIGltZywgc3Bhbiwgc3Ryb25nLCBlbSB7XHJcbiAgbWFyZ2luOiAwOyBcclxuICBwYWRkaW5nOiAwOyBcclxuICBib3JkZXI6IDA7IFxyXG4gIG91dGxpbmU6IDA7IFxyXG4gIGZvbnQtc2l6ZTogMTAwJTsgXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBcclxuICBmb250OiBpbmhlcml0O1xyXG59XHJcblxyXG50YWJsZSwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCB7XHJcbiAgbWFyZ2luOiAwOyBcclxuICBwYWRkaW5nOiAwOyBcclxuICBib3JkZXI6IDA7IFxyXG4gIG91dGxpbmU6IDA7IFxyXG4gIGZvbnQtc2l6ZTogMTAwJTsgXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBcclxuICBmb250OiBpbmhlcml0O1xyXG59XHJcblxyXG5hcHBsZXQsIG9iamVjdCwgaWZyYW1lLCBibG9ja3F1b3RlLCBwcmUsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcclxuZGVsLCBkZm4sIGZvbnQsIGlucywga2JkLCBxLCBzLCBzYW1wLCBzbWFsbCwgc3RyaWtlLCBzdWIsIHN1cCwgdHQsIHZhcixcclxuYiwgdSwgaSwgY2VudGVyLCBkbCwgZHQsIGRkLCBjYXB0aW9uLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCB7XHJcbiAgbWFyZ2luOiAwOyBcclxuICBwYWRkaW5nOiAwOyBcclxuICBib3JkZXI6IDA7IFxyXG4gIG91dGxpbmU6IDA7IFxyXG4gIGZvbnQtc2l6ZTogMTAwJTsgXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBcclxuICBmb250OiBpbmhlcml0O1xyXG59XHJcblxyXG5hcnRpY2xlLCBhc2lkZSwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBzZWN0aW9uIHtcclxuICBtYXJnaW46IDA7IFxyXG4gIHBhZGRpbmc6IDA7IFxyXG4gIGJvcmRlcjogMDsgXHJcbiAgb3V0bGluZTogMDtcclxuICBmb250LXNpemU6IDEwMCU7IFxyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgXHJcbiAgZm9udDogaW5oZXJpdDtcclxufVxyXG5cclxuY2FudmFzLCBkZXRhaWxzLCBlbWJlZCwgZmlnY2FwdGlvbiwgbWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgbWFyZ2luOiAwOyBcclxuICBwYWRkaW5nOiAwOyBcclxuICBib3JkZXI6IDA7IFxyXG4gIG91dGxpbmU6IDA7IFxyXG4gIGZvbnQtc2l6ZTogMTAwJTsgXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBcclxuICBmb250OiBpbmhlcml0O1xyXG59XHJcblxyXG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXHJcbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIFxyXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuYixcclxuc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuZW0sXHJcbmkge1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxub2wsIHVsIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlLCBxIHtcclxuICBxdW90ZXM6IG5vbmU7XHJcbn1cclxuXHJcbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxyXG5xOmJlZm9yZSwgcTphZnRlciB7XHJcbiAgY29udGVudDogJyc7XHJcbiAgY29udGVudDogbm9uZTtcclxufVxyXG5cclxuLyogcmVtZW1iZXIgdG8gZGVmaW5lIGZvY3VzIHN0eWxlcyEgKi9cclxuOmZvY3VzIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vKiByZW1lbWJlciB0byBoaWdobGlnaHQgaW5zZXJ0cyBzb21laG93ISAqL1xyXG5pbnMge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuZGVsIHtcclxuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuLyogdGFibGVzIHN0aWxsIG5lZWQgJ2NlbGxzcGFjaW5nPVwiMFwiJyBpbiB0aGUgbWFya3VwICovXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG5pbWcgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fSIsIi8qXHJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICogR3JpZFxyXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAqL1xyXG5cclxuLmdyaWQtMSwgLmdyaWQtMiwgLmdyaWQtMywgLmdyaWQtNCwgLmdyaWQtNSwgLmdyaWQtNiwgLmdyaWQtNywgLmdyaWQtOCwgLmdyaWQtOSwgLmdyaWQtMTAsIFxyXG4uZ3JpZC0xMSwgLmdyaWQtMTIge1xyXG4gIGRpc3BsYXk6IGlubGluZTtcclxuICBmbG9hdDogbGVmdDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luLWxlZnQ6IDElO1xyXG4gIG1hcmdpbi1yaWdodDogMSU7XHJcbn1cclxuXHJcbi5wdXNoLTEsIC5wdWxsLTEsIC5wdXNoLTIsIC5wdWxsLTIsIC5wdXNoLTMsIC5wdWxsLTMsIC5wdXNoLTQsIC5wdWxsLTQsXHJcbi5wdXNoLTUsIC5wdWxsLTUsIC5wdXNoLTYsIC5wdWxsLTYsIC5wdXNoLTcsIC5wdWxsLTcsIC5wdXNoLTgsIC5wdWxsLTgsXHJcbi5wdXNoLTksIC5wdWxsLTksIC5wdXNoLTEwLCAucHVsbC0xMCwgLnB1c2gtMTEsIC5wdWxsLTExLCAucHVzaC0xMiwgLnB1bGwtMTIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLypcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKiBBbHBoYSAtIE9tZWdhXHJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICovXHJcblxyXG4uYWxwaGEge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcblxyXG4ub21lZ2Ege1xyXG4gIG1hcmdpbi1yaWdodDogMDtcclxufVxyXG5cclxuLypcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKiBDb250YWluZXJcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKi9cclxuXHJcbi5jb250YWluZXItMTIge1xyXG4gIHdpZHRoOjEwMCU7XHJcbn1cclxuXHJcbi8qXHJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICogQ29sdW1uc1xyXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAqL1xyXG5cclxuLmNvbnRhaW5lci0xMiAuZ3JpZC0xIHtcclxuICB3aWR0aDogNi4zMzMlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5ncmlkLTIge1xyXG4gIHdpZHRoOiAxNC42NjclO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5ncmlkLTMge1xyXG4gIHdpZHRoOiAyMy4wJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuZ3JpZC00IHtcclxuICB3aWR0aDogMzEuMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuZ3JpZC01IHtcclxuICB3aWR0aDogMzkuNjY3JTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuZ3JpZC02IHtcclxuICB3aWR0aDogNDguMCU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLmdyaWQtNyB7XHJcbiAgd2lkdGg6IDU2LjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLmdyaWQtOCB7XHJcbiAgd2lkdGg6IDY0LjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLmdyaWQtOSB7XHJcbiAgd2lkdGg6IDczLjAlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5ncmlkLTEwIHtcclxuICB3aWR0aDogODEuMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuZ3JpZC0xMSB7XHJcbiAgd2lkdGg6IDg5LjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLmdyaWQtMTIge1xyXG4gIHdpZHRoOiA5OC4wJTtcclxufVxyXG5cclxuLypcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKiBQcmVmaXhcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKi9cclxuXHJcbi5jb250YWluZXItMTIgLnByZWZpeC0xIHtcclxuICBwYWRkaW5nLWxlZnQ6IDguMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHJlZml4LTIge1xyXG4gIHBhZGRpbmctbGVmdDogMTYuNjY3JTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHJlZml4LTMge1xyXG4gIHBhZGRpbmctbGVmdDogMjUuMCU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnByZWZpeC00IHtcclxuICBwYWRkaW5nLWxlZnQ6IDMzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnByZWZpeC01IHtcclxuICBwYWRkaW5nLWxlZnQ6IDQxLjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnByZWZpeC02IHtcclxuICBwYWRkaW5nLWxlZnQ6IDUwLjAlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wcmVmaXgtNyB7XHJcbiAgcGFkZGluZy1sZWZ0OiA1OC4zMzMlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wcmVmaXgtOCB7XHJcbiAgcGFkZGluZy1sZWZ0OiA2Ni42NjclO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wcmVmaXgtOSB7XHJcbiAgcGFkZGluZy1sZWZ0OiA3NS4wJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHJlZml4LTEwIHtcclxuICBwYWRkaW5nLWxlZnQ6IDgzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnByZWZpeC0xMSB7XHJcbiAgcGFkZGluZy1sZWZ0OiA5MS42NjclO1xyXG59XHJcblxyXG4vKlxyXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAqIFN1ZmZpeFxyXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAqL1xyXG5cclxuLmNvbnRhaW5lci0xMiAuc3VmZml4LTEge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDguMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuc3VmZml4LTIge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE2LjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnN1ZmZpeC0zIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAyNS4wJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuc3VmZml4LTQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDMzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnN1ZmZpeC01IHtcclxuICBwYWRkaW5nLXJpZ2h0OiA0MS42NjclO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5zdWZmaXgtNiB7XHJcbiAgcGFkZGluZy1yaWdodDogNTAuMCU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnN1ZmZpeC03IHtcclxuICBwYWRkaW5nLXJpZ2h0OiA1OC4zMzMlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5zdWZmaXgtOCB7XHJcbiAgcGFkZGluZy1yaWdodDogNjYuNjY3JTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAuc3VmZml4LTkge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDc1LjAlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5zdWZmaXgtMTAge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDgzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnN1ZmZpeC0xMSB7XHJcbiAgcGFkZGluZy1yaWdodDogOTEuNjY3JTtcclxufVxyXG5cclxuLypcclxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gKiBQdXNoXHJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICovXHJcblxyXG4uY29udGFpbmVyLTEyIC5wdXNoLTEge1xyXG4gIGxlZnQ6IDguMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVzaC0yIHtcclxuICBsZWZ0OiAxNi42NjclO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdXNoLTMge1xyXG4gIGxlZnQ6IDI1LjAlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdXNoLTQge1xyXG4gIGxlZnQ6IDMzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1c2gtNSB7XHJcbiAgbGVmdDogNDEuNjY3JTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVzaC02IHtcclxuICBsZWZ0OiA1MC4wJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVzaC03IHtcclxuICBsZWZ0OiA1OC4zMzMlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdXNoLTgge1xyXG4gIGxlZnQ6IDY2LjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1c2gtOSB7XHJcbiAgbGVmdDogNzUuMCU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1c2gtMTAge1xyXG4gIGxlZnQ6IDgzLjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1c2gtMTEge1xyXG4gIGxlZnQ6IDkxLjY2NyU7XHJcbn1cclxuXHJcbi8qXHJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICogUHVsbFxyXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAqL1xyXG5cclxuLmNvbnRhaW5lci0xMiAucHVsbC0xIHtcclxuICBsZWZ0OiAtOC4zMzMlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdWxsLTIge1xyXG4gIGxlZnQ6IC0xNi42NjclO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdWxsLTMge1xyXG4gIGxlZnQ6IC0yNS4wJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVsbC00IHtcclxuICBsZWZ0OiAtMzMuMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVsbC01IHtcclxuICBsZWZ0OiAtNDEuNjY3JTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVsbC02IHtcclxuICBsZWZ0OiAtNTAuMCU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1bGwtNyB7XHJcbiAgbGVmdDogLTU4LjMzMyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1bGwtOCB7XHJcbiAgbGVmdDogLTY2LjY2NyU7XHJcbn1cclxuXHJcbi5jb250YWluZXItMTIgLnB1bGwtOSB7XHJcbiAgbGVmdDogLTc1LjAlO1xyXG59XHJcblxyXG4uY29udGFpbmVyLTEyIC5wdWxsLTEwIHtcclxuICBsZWZ0OiAtODMuMzMzJTtcclxufVxyXG5cclxuLmNvbnRhaW5lci0xMiAucHVsbC0xMSB7XHJcbiAgbGVmdDogLTkxLjY2NyU7XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxcclxuICogRk9OVFNcclxuICogRMOpY2xhcmF0aW9uIGRlcyBmb250czpcclxuXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG5cclxuXHQvKipcclxuXHQgKiBST0JPVE9cclxuXHQgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcblx0XHRAZm9udC1mYWNlIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJztcclxuXHRcdFx0c3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tUmVndWxhci13ZWJmb250LmVvdCcpO1xyXG5cdFx0XHRzcmM6IHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1SZWd1bGFyLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdFx0XHQgdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLVJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcblx0XHRcdFx0IHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1SZWd1bGFyLXdlYmZvbnQud29mZicpLFxyXG5cdFx0XHQgICAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1SZWd1bGFyLXdlYmZvbnQuc3ZnI3JvYm90b3JlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBmb250LWZhY2Uge1xyXG5cdFx0ICBmb250LWZhbWlseTogJ3JvYm90b3RoaW4nO1xyXG5cdFx0ICBzcmM6IHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1UaGluLXdlYmZvbnQuZW90Jyk7XHJcblx0XHQgIHNyYzogdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLVRoaW4td2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1UaGluLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1UaGluLXdlYmZvbnQud29mZicpLFxyXG5cdFx0ICAgICAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1UaGluLXdlYmZvbnQuc3ZnI3JvYm90b3RoaW4nKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBmb250LWZhY2Uge1xyXG5cdFx0ICBmb250LWZhbWlseTogJ3JvYm90b2xpZ2h0JztcclxuXHRcdCAgc3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tTGlnaHQtd2ViZm9udC5lb3QnKTtcclxuXHRcdCAgc3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tTGlnaHQtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuXHRcdCAgXHQgICB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tTGlnaHQtd2ViZm9udC53b2ZmJyksXHJcblx0XHQgICAgICAgdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLUxpZ2h0LXdlYmZvbnQuc3ZnI3JvYm90b2xpZ2h0JykgZm9ybWF0KCdzdmcnKTtcclxuXHRcdH1cclxuXHJcblx0XHRAZm9udC1mYWNlIHtcclxuXHRcdCAgZm9udC1mYW1pbHk6ICdyb2JvdG9tZWRpdW0nO1xyXG5cdFx0ICBzcmM6IHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1NZWRpdW0td2ViZm9udC5lb3QnKTtcclxuXHRcdCAgc3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tTWVkaXVtLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdCAgXHQgICB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tTWVkaXVtLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1NZWRpdW0td2ViZm9udC53b2ZmJyksXHJcblx0XHQgICAgICAgdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS13ZWJmb250LnN2ZyNyb2JvdG9tZWRpdW0nKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBmb250LWZhY2Uge1xyXG5cdFx0ICBmb250LWZhbWlseTogJ3JvYm90b2JvbGQnO1xyXG5cdFx0ICBzcmM6IHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1Cb2xkLXdlYmZvbnQuZW90Jyk7XHJcblx0XHQgIHNyYzogdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLUJvbGQtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1Cb2xkLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1Cb2xkLXdlYmZvbnQud29mZicpLFxyXG5cdFx0ICAgICAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1Cb2xkLXdlYmZvbnQuc3ZnI3JvYm90b2JvbGQnKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBmb250LWZhY2Uge1xyXG5cdFx0ICBmb250LWZhbWlseTogJ3JvYm90b2JsYWNrJztcclxuXHRcdCAgc3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tQmxhY2std2ViZm9udC5lb3QnKTtcclxuXHRcdCAgc3JjOiB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tQmxhY2std2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0ICBcdCAgIHVybCgnZm9udHMvcm9ib3RvL1JvYm90by1CbGFjay13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuXHRcdCAgXHQgICB1cmwoJ2ZvbnRzL3JvYm90by9Sb2JvdG8tQmxhY2std2ViZm9udC53b2ZmJyksXHJcblx0XHQgICAgICAgdXJsKCdmb250cy9yb2JvdG8vUm9ib3RvLUJsYWNrLXdlYmZvbnQuc3ZnI3JvYm90b2JsYWNrJykgZm9ybWF0KCdzdmcnKTtcclxuXHRcdH1cclxuXHJcblxyXG5cdFx0QGZvbnQtZmFjZSB7XHJcblx0XHQgIGZvbnQtZmFtaWx5OiAnZHJvaWRTYW5zTW9ubyc7XHJcblx0XHQgIHNyYzogdXJsKCdmb250cy9kcm9pZFNhbnNNb25vL0Ryb2lkU2Fuc01vbm8udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdFx0fSIsIi8qIVxyXG4gKiAgRm9ybSAxIGJ5IEBkYXZpZGxpdmVybmVhdXggLSBodHRwOi8vZGF2aWRsaXZlcm5lYXV4LmZyXHJcbiAqICBMaWNlbnNlIC0gbm9uZSAoQ1NTOiBNSVQgTGljZW5zZSlcclxuICovXHJcblxyXG5cdC8qKlxyXG4gICAqIFRSQU5TSVRJT05TXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIC5wb3B1cCxcclxuICAgLnBvcHVwLXdyYXBwZXIsXHJcbiAgIC5wb3B1cCAuY2xvc2UsXHJcbiAgIC5wb3B1cCAuYnRuIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgIH1cclxuIFxyXG4gXHJcbiAgLyoqXHJcbiAgICogU0hBRE9XXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIC5wb3B1cCAucG9wdXAtd3JhcHBlciB7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggOHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDhweCAwcHggcmdiYSgwLDAsMCwwLjI1KTtcclxuICAgIC1vLWJveC1zaGFkb3c6IDBweCAwcHggOHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCA4cHggMHB4IHJnYmEoMCwwLDAsMC4yNSk7XHJcbiAgICBmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LlNoYWRvdyhjb2xvcj0jNjU2NTY1LCBEaXJlY3Rpb249TmFOLCBTdHJlbmd0aD00MCk7XHJcbiAgIH1cclxuIFxyXG4gXHJcbiAgLyogSU5JVCAqL1xyXG4gIC5wb3B1cCB7IHBvc2l0aW9uOmZpeGVkOyB6LWluZGV4Ojg7IHRvcDotMTAwMCU7IGxlZnQ6MDsgZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjUpO31cclxuICAgIC5wb3B1cCAucG9wdXAtd3JhcHBlciB7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowIGF1dG87IG1hcmdpbi10b3A6NDBweDsgbWluLXdpZHRoOjUwMHB4OyBtYXgtd2lkdGg6OTAwcHg7IHdpZHRoOjgwJTsgbWF4LWhlaWdodDpjYWxjKDEwMCUgLSA4MHB4KTsgb3ZlcmZsb3c6YXV0bzsgYmFja2dyb3VuZDojZmZmZmZmOyBjb2xvcjojMzMzMzMzOyB9XHJcbiAgICAgIC5wb3B1cCAucG9wdXAtd3JhcHBlciAucG9wdXAtY29udGVudCB7IHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjMwcHggMjBweCAyMHB4IDIwcHg7IH1cclxuICAgICAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgLmNsb3NlIHsgcG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6MTsgdG9wOjA7IHJpZ2h0OjA7IGRpc3BsYXk6YmxvY2s7IHBhZGRpbmc6MDsgd2lkdGg6MzBweDsgaGVpZ2h0OjMwcHg7IGxpbmUtaGVpZ2h0OjMwcHg7IHRleHQtYWxpZ246Y2VudGVyOyBjb2xvcjojZmZmZmZmOyBiYWNrZ3JvdW5kOnJnYigyMzcsODksOTQpOyBjdXJzb3I6cG9pbnRlcjt9XHJcbiAgICAgICAgLnBvcHVwIC5wb3B1cC13cmFwcGVyIC5wb3B1cC1jb250ZW50IC5jbG9zZTo6YmVmb3JlIHsgY29udGVudDonXFxmMDBkJzsgfVxyXG4gICAgICAgIC5wb3B1cCAucG9wdXAtd3JhcHBlciAucG9wdXAtY29udGVudCAuY2xvc2U6aG92ZXIgeyBiYWNrZ3JvdW5kOnJnYmEoMjM3LDg5LDk0LCAwLjgpO31cclxuICAgICAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgaDIgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgbWFyZ2luOjAgMCAzMHB4IDA7IGZvbnQtc2l6ZToxNXB4OyBib3JkZXItYm90dG9tOnNvbGlkIDJweCAjRTZFQUVCO31cclxuICAgICAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgaDI6OmJlZm9yZSB7IGNvbnRlbnQ6Jyc7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IGJvdHRvbTotMnB4OyB3aWR0aDoxNDBweDsgaGVpZ2h0OjJweDsgYmFja2dyb3VuZDojMzMzO31cclxuICAgICAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgLnBvcHVwLWJvZHkge31cclxuICAgICAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgLnBvcHVwLWFjdGlvbiB7IGRpc3BsYXk6ZmxleDsgZmxleC13cmFwOndyYXA7IGp1c3RpZnktY29udGVudDpmbGV4LWVuZDsgfVxyXG4gICAgICAgICAgLnBvcHVwIC5wb3B1cC13cmFwcGVyIC5wb3B1cC1jb250ZW50IC5wb3B1cC1hY3Rpb24gLmJ0biB7IG1hcmdpbjowIDRweDsgfVxyXG4gICAgICAgICAgLnBvcHVwIC5wb3B1cC13cmFwcGVyIC5wb3B1cC1jb250ZW50IC5wb3B1cC1hY3Rpb24gW3R5cGU9XCJzdWJtaXRcIl0geyBtYXJnaW46MCA0cHg7IH0gXHJcbiBcclxuICAgIC8qIEhPVkVSICovXHJcbiAgICAucG9wdXAuYWN0aXZlIHsgdG9wOjA7fVxyXG4gXHJcbiAgICAucG9wdXAgLnpvbmUtbWVzc2FnZSB7IHBhZGRpbmc6MTBweCAwO31cclxuIFxyXG4gXHJcbiAgICAucG9wdXAgLnBvcHVwLXdyYXBwZXIgLnBvcHVwLWNvbnRlbnQgLmNsb3NlOjpiZWZvcmUge1xyXG4gICAgICBmb250LWZhbWlseTonZm9udGF3ZXNvbWUnO1xyXG4gICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICB9IiwiICAvKipcclxuICAgKiBUQUJMRVxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLyogQmFzZSAqL1xyXG4gICAgdHIgeyBkaXNwbGF5OnRhYmxlLXJvdzt9XHJcbiAgICAvKnRoIHsgZm9udC13ZWlnaHQ6Ym9sZDt9Ki9cclxuICAgIFxyXG4gICAgdGQsdGggeyBkaXNwbGF5OnRhYmxlLWNlbGw7fVxyXG5cclxudGFibGUgeyBcclxuICBkaXNwbGF5OnRhYmxlOyBcclxuICBtYXJnaW4tYm90dG9tOjIwcHg7XHJcbiAgLyogd2lkdGg6MTAwJTsgICovXHJcbiAgbWF4LXdpZHRoOjEwMCU7IFxyXG4gIGJhY2tncm91bmQtY29sb3I6I2ZmZmZmZjtcclxuICBvdmVyZmxvdy15OmhpZGRlbjtcclxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6LW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xyXG59XHJcblxyXG4gIHRhYmxlPnRoZWFkPnRyPnRoLFxyXG4gIHRhYmxlPnRib2R5PnRyPnRoLFxyXG4gIHRhYmxlPnRmb290PnRyPnRoLFxyXG4gIHRhYmxlPnRoZWFkPnRyPnRkLFxyXG4gIHRhYmxlPnRib2R5PnRyPnRkLFxyXG4gIHRhYmxlPnRmb290PnRyPnRkIHtcclxuICAgIHBhZGRpbmc6MCA4cHg7XHJcbiAgICBsaW5lLWhlaWdodDoyOHB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246dG9wO1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgI2RkZGRkZDtcclxuICAgIC8qIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7ICovXHJcbiAgfVxyXG5cclxuICAvKiB0YWJsZT50Ym9keT50cj50aCB7IHBhZGRpbmc6MCA0cHg7IGhlaWdodDoyOHB4OyBsaW5lLWhlaWdodDoyOHB4OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTVlNWU1OyBiYWNrZ3JvdW5kOiNmNWY1ZjU7IHRleHQtYWxpZ246bGVmdDt9ICovXHJcblxyXG4gIHRhYmxlPnRoZWFkPnRyPnRoIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxuICAgIGJvcmRlcjowO1xyXG4gICAgZm9udC13ZWlnaHQ6NjAwO1xyXG4gIH1cclxuXHJcbiAgdGFibGU+dGJvZHk+dHIuZGlzYWJsZWQgeyBiYWNrZ3JvdW5kOiNlNWU1ZTU7fVxyXG5cclxuICAvKiBUUiBDT0xPUlMgKi9cclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkgeyBiYWNrZ3JvdW5kLWNvbG9yOiNlNWU1ZTU7fVxyXG4gIHRhYmxlPnRib2R5PnRyOmhvdmVyLFxyXG4gIHRhYmxlLnN0cmlwZWQ+dGJvZHk+dHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlcixcclxuICB0YWJsZT50Ym9keT50ci52YWxpZDpob3ZlcixcclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkudmFsaWQ6aG92ZXIsXHJcbiAgdGFibGU+dGJvZHk+dHIudW52YWxpZDpob3ZlcixcclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkudW52YWxpZDpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTt9XHJcblxyXG4gIC8qIFRSIHZhbGlkICovXHJcbiAgdGFibGUuc3RyaXBlZD50Ym9keT50ci52YWxpZCB7IGJhY2tncm91bmQtY29sb3I6cmdiYSgxNiwxOTYsMTM1LDAuMjUpO31cclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkudmFsaWQgeyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTYsMTk2LDEzNSwwLjQ1KTt9XHJcbiAgLyogdGFibGU+dGJvZHk+dHIudmFsaWQ6aG92ZXIsXHJcbiAgdGFibGUuc3RyaXBlZD50Ym9keT50cjpudGgtb2YtdHlwZShvZGQpLnZhbGlkOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI2LDE4OCwxNTYsMC41NSk7fSAqL1xyXG4gIC8qIFRSIHVudmFsaWQgKi9cclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyLnVudmFsaWQgeyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjUzLDg1LDEyMCwwLjI1KTt9XHJcbiAgdGFibGUuc3RyaXBlZD50Ym9keT50cjpudGgtb2YtdHlwZShvZGQpLnVudmFsaWQgeyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjUzLDg1LDEyMCwwLjM1KTt9XHJcbiAgdGFibGU+dGJvZHk+dHIudW52YWxpZDpob3ZlcixcclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkudW52YWxpZDpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6cmdiYSgyNTMsODUsMTIwLDAuNTUpO31cclxuXHJcbiAgLyogVFIgd2FybmluZyAqL1xyXG4gIHRhYmxlLnN0cmlwZWQ+dGJvZHk+dHIud2FybmluZyB7IGJhY2tncm91bmQtY29sb3I6cmdiYSgyMjEsMTk3LDM1LDAuMjUpO31cclxuICB0YWJsZS5zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkud2FybmluZyB7IGJhY2tncm91bmQtY29sb3I6cmdiYSgyMjEsMTk3LDM1LDAuMzUpO31cclxuICB0YWJsZT50Ym9keT50ci53YXJuaW5nOmhvdmVyLFxyXG4gIHRhYmxlLnN0cmlwZWQ+dGJvZHk+dHI6bnRoLW9mLXR5cGUob2RkKS53YXJuaW5nOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIyMSwxOTcsMzUsMC41NSk7fVxyXG5cclxuXHJcbiAgdGFibGUuc3RyaXBlPnRib2R5PnRyLm5vLWhvdmVyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIsXHJcbiAgdGFibGU+dGJvZHk+dHIubm8taG92ZXI6aG92ZXIgeyBiYWNrZ3JvdW5kOmluaGVyaXQ7fVxyXG5cclxuXHJcbiAgLyogVEQgQUxJR04gKi9cclxuICB0YWJsZT50aGVhZD50cj50aC50YS1jZW50ZXIsXHJcbiAgdGFibGU+dGJvZHk+dHI+dGQudGEtY2VudGVyIHsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gIHRhYmxlPnRoZWFkPnRyPnRoLnRhLXJpZ2h0LFxyXG4gIHRhYmxlPnRib2R5PnRyPnRkLnRhLXJpZ2h0IHsgdGV4dC1hbGlnbjpyaWdodDt9XHJcblxyXG5cclxudGFibGU+dGJvZHk+dHIge1xyXG4td2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcblxyXG5cclxuLyogTU9CSUxFIFZFUlNJT04gKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMHB4KSBhbmQgKG1heC13aWR0aDo3MjBweCkge1xyXG5cclxudGFibGUucmVzcG9uc2l2ZS10YWJsZSxcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50aGVhZCxcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50Ym9keSxcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50aGVhZD50aCxcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50Ym9keT50cixcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50Ym9keT50cj50ZCB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgZGlzcGxheTpibG9jazsgd2lkdGg6MzAwcHg7IG1heC13aWR0aDoxMDAlO31cclxuXHJcbnRhYmxlLnJlc3BvbnNpdmUtdGFibGUgeyBwb3NpdGlvbjpyZWxhdGl2ZTt9XHJcbnRhYmxlLnJlc3BvbnNpdmUtdGFibGU+dGhlYWQ+dHI+dGggeyAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDotOTk5OXB4OyBsZWZ0Oi05OTk5cHg7fVxyXG5cclxuXHJcbnRhYmxlLnJlc3BvbnNpdmUtdGFibGU+dGhlYWQ+dHI+dGgudGEtY2VudGVyLFxyXG50YWJsZS5yZXNwb25zaXZlLXRhYmxlPnRib2R5PnRyPnRkLnRhLWNlbnRlcixcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50aGVhZD50cj50aC50YS1yaWdodCxcclxudGFibGUucmVzcG9uc2l2ZS10YWJsZT50Ym9keT50cj50ZC50YS1yaWdodCB7IHRleHQtYWxpZ246bGVmdDt9XHJcblxyXG50YWJsZS5yZXNwb25zaXZlLXRhYmxlPnRib2R5PnRyPnRkLFxyXG50YWJsZS5yZXNwb25zaXZlLXRhYmxlPnRib2R5PnRyPnRkOjpiZWZvcmUgeyBoZWlnaHQ6MzBweDsgbGluZS1oZWlnaHQ6MzBweDsgfVxyXG5cclxuXHJcbnRhYmxlLnJlc3BvbnNpdmUtdGFibGU+dGJvZHk+dHI+dGQgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzowIDAgMCAxMzBweDsgd2lkdGg6MTcwcHg7fVxyXG50YWJsZS5yZXNwb25zaXZlLXRhYmxlPnRib2R5PnRyPnRkOjpiZWZvcmUge1xyXG5jb250ZW50OiBhdHRyKGRhdGEtdGgpIFwiOiBcIjtcclxucG9zaXRpb246YWJzb2x1dGU7XHJcbnRvcDowO1xyXG5sZWZ0OjA7XHJcbmRpc3BsYXk6YmxvY2s7XHJcbnBhZGRpbmctbGVmdDoxMHB4O1xyXG53aWR0aDoxMTBweDtcclxuYmFja2dyb3VuZDpyZ2JhKDMsMTY5LDI0NCwxKTtcclxuY29sb3I6I2ZmZmZmZjtcclxufVxyXG5cclxufVxyXG5cclxuXHJcbi8qIEZPUk1VTEFJUkUgKi9cclxuXHJcbi8qIGZvcm0gdGFibGUgeyBtYXJnaW46MCAwIDMwcHggMDsgd2lkdGg6YXV0bzsgYmFja2dyb3VuZDp0cmFuc3BhcmVudDt9XHJcbmZvcm0gdGFibGU+dGhlYWQge31cclxuZm9ybSB0YWJsZT50aGVhZD50ciB7fVxyXG4gIGZvcm0gdGFibGU+dGhlYWQ+dHI+dGggeyBwYWRkaW5nOjhweCAxNHB4OyBib3JkZXI6MHB4O31cclxuZm9ybSB0YWJsZT50Ym9keSB7fVxyXG5mb3JtIHRhYmxlPnRib2R5PnRyIHt9XHJcbmZvcm0gdGFibGU+dGJvZHk+dHI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O31cclxuICBmb3JtIHRhYmxlPnRib2R5PnRyPnRkIHsgcGFkZGluZzo4cHggNXB4OyBwYWRkaW5nOjhweCAxNHB4OyBib3JkZXI6MHB4O31cclxuICBmb3JtIHRhYmxlLm5vLXBhZGRpbmc+dGJvZHk+dHI+dGQgeyBwYWRkaW5nOjAgNHB4O31cclxuXHJcbmZvcm0gdGFibGUgbGFiZWwgeyBkaXNwbGF5OmJsb2NrOyBoZWlnaHQ6MzZweDsgbGluZS1oZWlnaHQ6MzZweDt9ICovIiwiLyohXHJcbiAqICBMaWNlbnNlIC0gbm9uZSAoQ1NTOiBNSVQgTGljZW5zZSlcclxuICovXHJcblxyXG5cdC8qKlxyXG4gICAqIFRSQU5TSVRJT05TXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIGZvcm0gaW5wdXQsXHJcbiAgIGZvcm0gbGFiZWwsXHJcbiAgIC5jaGVja2JveC1pdGVtIGxhYmVsOjpiZWZvcmUsXHJcbiAgIC5jaGVja2JveC1pdGVtIGxhYmVsOjphZnRlcixcclxuICAgLnJhZGlvLWl0ZW0gbGFiZWw6OmJlZm9yZSxcclxuICAgLnJhZGlvLWl0ZW0gbGFiZWw6OmFmdGVyLFxyXG4gICAuc2VsZWN0LWl0ZW0gLnNlbGVjdC1hcnJvdyxcclxuICAgLnNlbGVjdC1pdGVtIHVsLnNlbGVjdC1saXN0LFxyXG4gICBmb3JtIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdLFxyXG4gICAuc2VsZWN0LWl0ZW0gLnNlbGVjdCB7XHJcbiAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICB9XHJcblxyXG5cclxuZm9ybSB7IH1cclxuXHJcbiAgIC8qIGZpZWxkc2V0ICovXHJcbiAgIGZpZWxkc2V0IHsgZGlzcGxheTpibG9jazsgbWFyZ2luLWJvdHRvbToyMHB4OyBwYWRkaW5nOjIwcHg7IHdpZHRoOmF1dG87IG1pbi13aWR0aDoxMHB4OyBiYWNrZ3JvdW5kOiNmNWY1ZjU7fVxyXG4gICBmaWVsZHNldC5jZW50ZXIgeyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiBcclxuXHJcbiAgIC8qIEZvcm0gaXRlbSAqL1xyXG4gICAuZm9ybS1pdGVtIHsgbWFyZ2luOjAgMCAxMHB4OyB9XHJcblxyXG4gICAgIC5mb3JtLWl0ZW0gbGFiZWwgeyBkaXNwbGF5OmJsb2NrO31cclxuICAgICAgIC5mb3JtLWl0ZW0ubGFiZWwtaW5saW5lIGxhYmVsIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7fVxyXG4gICAgIC5mb3JtLWl0ZW0gaW5wdXQsXHJcbiAgICAgLmZvcm0taXRlbSBzZWxlY3QsXHJcbiAgICAgLmZvcm0taXRlbSB0ZXh0YXJlYSB7IH1cclxuXHJcbiAgICAgLmZvcm0taXRlbS5pbmxpbmUgeyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2luLWxlZnQ6MTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IC8qIG1pbi13aWR0aDoyMjVweDsgKi99XHJcbiAgICAgLmZvcm0taXRlbS5pbmxpbmUuZmlyc3QgeyBtYXJnaW4tbGVmdDowO31cclxuICAgICAuZm9ybS1pdGVtLmlubGluZS5sYXN0IHsgbWFyZ2luLXJpZ2h0OjA7fVxyXG5cclxuICAgICAuZm9ybS1pdGVtLm5vLW1hcmdpbi1ib3R0b20geyBtYXJnaW4tYm90dG9tOjA7fVxyXG4gICAgIFxyXG4gICAgIC5mb3JtLWl0ZW0taW5mbyB7IHBvc2l0aW9uOnJlbGF0aXZlO31cclxuICAgICAuZm9ybS1pdGVtLWluZm8+bGFiZWwgeyBtYXJnaW4tbGVmdDozMHB4OyB9XHJcbiAgICAgLmZvcm0taXRlbSAuZm9ybS1pdGVtLWluZm8taXRlbSB7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgbGVmdDowOyBoZWlnaHQ6MjBweDsgbGluZS1oZWlnaHQ6MjBweDsgY3Vyc29yOmhlbHAhaW1wb3J0YW50O31cclxuXHJcbiAgICAgXHJcbiAgICAgLmZvcm0taXRlbS50eHQtY2VudGVyIHsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gICAgICAgLmZvcm0taXRlbS50eHQtY2VudGVyIGlucHV0IHsgZGlzcGxheTppbmxpbmUtYmxvY2s7fVxyXG5cclxuXHJcbiAgICAgIC5mb3JtLWl0ZW0gc21hbGwuZXJyb3J7Y29sb3I6cmdiKDIzNyw4OSw5NCl9XHJcblxyXG4gICAgIC5mb3JtLWFjdGlvbiB7IG1hcmdpbi10b3A6MTBweDsgbWFyZ2luLWJvdHRvbToxMHB4O31cclxuICAgICAuZm9ybS1hY3Rpb24udHh0LXJpZ2h0IHsgdGV4dC1hbGlnbjpyaWdodDt9XHJcbiAgICAgLmZvcm0tYWN0aW9uLnR4dC1jZW50ZXIgeyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcblxyXG4gICAgIGZvcm0gdGFibGUgLmZvcm0taXRlbSB7IG1hcmdpbjowO31cclxuICAgICAgIGZvcm0gdGFibGUgdGQgeyBsaW5lLWhlaWdodDozMHB4O31cclxuXHJcbiAgICAucmVxdWlyZTo6YWZ0ZXIsXHJcbiAgIGxhYmVsLnJlcXVpcmVkOjphZnRlciB7IGNvbnRlbnQ6JyonOyBjb2xvcjpyZ2IoMjM3LDg5LDk0KTt9XHJcblxyXG4gICAgbGFiZWwsXHJcbiAgICAgaW5wdXQsXHJcbiAgICAgYnV0dG9uLFxyXG4gICAgIHNlbGVjdCxcclxuICAgICB0ZXh0YXJlYSB7IGZvbnQtc2l6ZToxMnB4OyBsaW5lLWhlaWdodDoyMHB4OyB9XHJcblxyXG4gICAgdGV4dGFyZWEsXHJcbiAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbiAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcclxuICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxyXG4gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxyXG4gICBpbnB1dFt0eXBlPVwidGltZVwiXSxcclxuICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbiAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXHJcbiAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuICAgaW5wdXRbdHlwZT1cInVybFwiXSxcclxuICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcclxuICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcclxuICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdIHtcclxuICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgIG1hcmdpbjowO1xyXG4gICAgIHBhZGRpbmc6MCAwIDAgMTBweDtcclxuICAgICB3aWR0aDoyNTBweDtcclxuICAgICBtYXgtd2lkdGg6MTAwJTtcclxuICAgICBoZWlnaHQ6MjVweDtcclxuICAgICBsaW5lLWhlaWdodDoyNXB4O1xyXG4gICAgIGJhY2tncm91bmQtY29sb3I6I0ZGRkZGRjtcclxuICAgICBib3JkZXI6c29saWQgMXB4ICNFNkVBRUI7XHJcbiAgICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG4gICAgIC13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O1xyXG4gICAgIC1tb3otYm94LXNpemluZzpib3JkZXItYm94O1xyXG4gICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuICAgfVxyXG5cclxuXHJcbiAvKiBJTlBVVCAqL1xyXG5cclxuXHJcbiAvKiBJbnB1dCBpbmxpbmUgKi9cclxuICAgLmlucHV0LWlubGluZSB0ZXh0YXJlYSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxyXG4gICAuaW5wdXQtaW5saW5lIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwibW9udGhcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cInRpbWVcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cInVybFwiXSxcclxuICAgLmlucHV0LWlubGluZSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxyXG4gICAuaW5wdXQtaW5saW5lIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbiAgIC5pbnB1dC1pbmxpbmUgaW5wdXRbdHlwZT1cImNvbG9yXCJdIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7fVxyXG5cclxuXHJcbiAvKiBURVhUQVJFQSAqL1xyXG4gdGV4dGFyZWEge1xyXG4gICB3aWR0aDogMTAwJTtcclxuICAgbWluLWhlaWdodDoxMDBweDtcclxuICAgbGluZS1oZWlnaHQ6MThweDtcclxuICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0YXJlYTtcclxuICAgLXdlYmtpdC1ydGwtb3JkZXJpbmc6IGxvZ2ljYWw7XHJcbiAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XHJcbiAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgIHJlc2l6ZTogYXV0bztcclxuICAgY3Vyc29yOiBhdXRvO1xyXG4gICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcbiAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuIH1cclxuXHJcbiAgIHRleHRhcmVhOmZvY3VzLFxyXG4gICB0ZXh0YXJlYTpob3ZlcixcclxuICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbiAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyLFxyXG4gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXHJcbiAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpob3ZlcixcclxuICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxyXG4gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmhvdmVyLFxyXG4gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cImRhdGVcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmhvdmVyLFxyXG4gICBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cInRpbWVcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxyXG4gICBpbnB1dFt0eXBlPVwid2Vla1wiXTpob3ZlcixcclxuICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpob3ZlcixcclxuICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxyXG4gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXHJcbiAgIGlucHV0W3R5cGU9XCJ1cmxcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXHJcbiAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXHJcbiAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06aG92ZXIsXHJcbiAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcclxuICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmhvdmVyIHsgIGJveC1zaGFkb3c6bm9uZTsgYm9yZGVyLWNvbG9yOiMyZjZiODg7IH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICBpbnB1dDpkaXNhYmxlZCwgaW5wdXQ6cmVhZC1vbmx5IHsgY29sb3I6IzgyODI4MjsgYmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JvcmRlcjogc29saWQgMXB4ICNFNkVBRUI7fVxyXG4gICBpbnB1dDpkaXNhYmxlZDpob3ZlciB7IGJvcmRlci1jb2xvcjojRTZFQUVCO31cclxuXHJcbiAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXHJcbiAgIGlucHV0LmRlY2ltYWwgeyB3aWR0aDoxMDBweDsgfVxyXG4gICBpbnB1dC5ob3VyIHsgd2lkdGg6MTAwcHg7IH1cclxuICAgaW5wdXQubnVtYmVyIHsgd2lkdGg6NDVweDsgfVxyXG4gICBpbnB1dC5wcmljZSB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzowOyB3aWR0aDo2NXB4OyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiAgIGlucHV0LnByaWNlOjphZnRlciB7Y29udGVudDpcIuKCrFwifVxyXG5cclxuICAgLmlucHV0LXNtYWxsIGlucHV0IHsgd2lkdGg6MTAwcHg7fVxyXG4gICAuaW5wdXQtbW95ZW4gaW5wdXQgeyB3aWR0aDoxMjBweDt9XHJcbiAgIC5pbnB1dC1kYXRlcGlja2VyIGlucHV0IHsgd2lkdGg6MTIwcHg7fVxyXG5cclxuXHJcbiAgIGlucHV0Oi1tb3otcGxhY2Vob2xkZXIsXHJcbiAgIHRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAgY29sb3I6ICM5OTk5OTk7fVxyXG4gICBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXHJcbiAgIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogIzk5OTk5OTt9XHJcbiAgIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxyXG4gICB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogIzk5OTk5OTt9XHJcblxyXG5cclxuICAgLmZvcm0tdGV4dGFyZWEtd3JhcHBlciB0ZXh0YXJlYXsgIGhlaWdodDogMjUwJTsgbWFyZ2luOjVweCAwIDA7fVxyXG4gICBpbnB1dC5mb3JtLWNoZWNrYm94LCBpbnB1dC5mb3JtLXJhZGlveyB2ZXJ0aWNhbC1hbGlnbjogdG9wO31cclxuXHJcblxyXG4gLyoqXHJcbiAgICogRmlsZSBpdGVtXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAuZmlsZS1pdGVtLXdyYXBwZXIgeyBkaXNwbGF5OmZsZXg7IGZsZXgtd3JhcDp3cmFwO31cclxuXHJcbiAgIC5maWxlLWl0ZW0sXHJcbiAgIC5maWxlLWl0ZW0tYWRkIHsgcG9zaXRpb246cmVsYXRpdmU7IHdpZHRoOjIwMHB4OyBtYXJnaW46MTBweDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kOiNlNmVhZWI7IGJvcmRlcjoxcHggZGFzaGVkICNlNmVhZWI7IGJvcmRlci1yYWRpdXM6MTBweDsgb3ZlcmZsb3c6aGlkZGVuO31cclxuICAgLmZpbGUtaXRlbS1vbmNlIHsgbWFyZ2luOjA7fVxyXG4gICAuZmlsZS1pdGVtOmhvdmVyLFxyXG4gICAuZmlsZS1pdGVtLWFkZDpob3ZlciB7IGJvcmRlcjoxcHggZGFzaGVkICMzNjUzYjg7fVxyXG4gICAuZmlsZS1pdGVtIC50aHVtYiB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgZGlzcGxheTpmbGV4OyBmbGV4LXdyYXA6d3JhcDsganVzdGlmeS1jb250ZW50OmNlbnRlcjsgYWxpZ24tY29udGVudDpjZW50ZXI7IG1hcmdpbjowIDAgMTBweCAwOyB3aWR0aDoxODBweDsgbWluLWhlaWdodDoxMTBweDsgYm9yZGVyOjFweCBzb2xpZCByZ2IoNDYgMTA4IDEzNyk7IGJvcmRlci1yYWRpdXM6M3B4OyBvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjogY2VudGVyO31cclxuICAgLmZpbGUtaXRlbSAudGh1bWIgYSB7IGRpc3BsYXk6YmxvY2s7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlO31cclxuICAgLmZpbGUtaXRlbSAudGh1bWIgaW1nIHsgbWF4LXdpZHRoOjEwMCU7fVxyXG4gICAuZmlsZS1pdGVtIC50aHVtYjo6YWZ0ZXIge2NvbnRlbnQ6ICdcXGYwM2UnO2ZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiAhaW1wb3J0YW50O2ZvbnQtc2l6ZTogMjBweDtmb250LXdlaWdodDo5MDA7fVxyXG5cclxuICAgLmZpbGUtaXRlbSAudGh1bWIudGh1bWItYXBlcmN1OjphZnRlciB7ZGlzcGxheTogbm9uZTt9XHJcbiAgIC5maWxlLWl0ZW0gLnVwbG9hZCB7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW46MCAwIDEwcHggMDt9XHJcbiAgIC5maWxlLWl0ZW0gLnVwbG9hZCBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4Oi0xOyB3aWR0aDowLjFweDsgaGVpZ2h0OjAuMXB4OyBvcGFjaXR5OjA7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiAgIC5maWxlLWl0ZW0gLnVwbG9hZCBpbnB1dFt0eXBlPVwiZmlsZVwiXSArIGxhYmVsLFxyXG4gICAuZmlsZS1pdGVtIC51cGxvYWQgbGFiZWwgeyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjA7IHdpZHRoOjEwMCU7IGxpbmUtaGVpZ2h0OjI4cHg7IHRleHQtYWxpZ246Y2VudGVyOyBmb250LXNpemU6MTRweDsgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsgd2hpdGUtc3BhY2U6bm93cmFwOyBjb2xvcjpyZ2IoODEsIDEzOSwgMTY1KTsgYmFja2dyb3VuZDojZmZmOyBjdXJzb3I6cG9pbnRlcjsgb3ZlcmZsb3c6aGlkZGVuO31cclxuICAgLmZpbGUtaXRlbSAudXBsb2FkIGlucHV0W3R5cGU9XCJmaWxlXCJdOmhvdmVyICsgbGFiZWwsXHJcbiAgIC5maWxlLWl0ZW0gLnVwbG9hZCBsYWJlbDpob3ZlciB7IGJhY2tncm91bmQ6IzM2NTNiODsgY29sb3I6I2VlZTt9XHJcbiAgIC8qIC5maWxlLWl0ZW0gLnVwbG9hZCBpbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyArIGxhYmVsIHsgb3V0bGluZToxcHggZG90dGVkICMwMDA7IG91dGxpbmU6LXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yIGF1dG8gNXB4OyBiYWNrZ3JvdW5kOnJnYig4MSwgMTM5LCAxNjUpO30gKi9cclxuICAgLmZpbGUtaXRlbSAudXBsb2FkIGlucHV0W3R5cGU9XCJmaWxlXCJdICsgbGFiZWwgc3ZnLFxyXG4gICAuZmlsZS1pdGVtIC51cGxvYWQgbGFiZWwgc3ZnIHsgd2lkdGg6MWVtOyBoZWlnaHQ6MWVtOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGZpbGw6Y3VycmVudENvbG9yO31cclxuXHJcbiAgIC5maWxlLWl0ZW0gcCB7IG1hcmdpbjowOyBsaW5lLWhlaWdodDoxOHB4OyBmb250LXNpemU6MTJweDsgdGV4dC1hbGlnbjpjZW50ZXI7IGNvbG9yOiM3MzczNzM7fVxyXG5cclxuICAgLmZpbGUtaXRlbS1hZGQgeyBkaXNwbGF5OmZsZXg7IGZsZXgtd3JhcDp3cmFwOyBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7IH1cclxuICAgLmZpbGUtaXRlbS1hZGQtZGVsZXRlIHsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyByaWdodDowO31cclxuXHJcbiAgICAjZ2FsZXJpZV9waG90b3tkaXNwbGF5OiBmbGV4OyBtYXgtd2lkdGg6OTAwcHg7ZmxleC13cmFwOiB3cmFwO31cclxuXHJcblxyXG4gLyoqXHJcbiAgKiBQTEFDRUhPTERFUlxyXG4gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIC5wbGFjZWhvbGRlciB7IHBvc2l0aW9uOnJlbGF0aXZlO31cclxuICAgICAucGxhY2Vob2xkZXIgbGFiZWwgeyBwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDoxOyB0b3A6MDsgbGVmdDowOyBmb250LXNpemU6MTJweDsgZGlzcGxheTpibG9jazsgd2lkdGg6NjEwcHg7IGhlaWdodDozNHB4OyBsaW5lLWhlaWdodDozNHB4OyBwYWRkaW5nLWxlZnQ6MTBweDsgdGV4dC1hbGlnbjpsZWZ0OyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7fVxyXG4gICAgIC5wbGFjZWhvbGRlciBpbnB1dCB7IHBvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4OjI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7fVxyXG4gICAgIC5wbGFjZWhvbGRlci5mb2N1cyBpbnB1dCB7IGJhY2tncm91bmQtY29sb3I6I2ZmZmZmZjt9XHJcblxyXG4gICAucGxhY2Vob2xkZXIuaW5saW5lLW1lZGl1bSBsYWJlbCB7IHdpZHRoOjE5MnB4OyB9XHJcbiAgIC5wbGFjZWhvbGRlci5pbmxpbmUtbWVkaXVtIGlucHV0IHsgbWFyZ2luLXJpZ2h0OjA7IHdpZHRoOjE5MnB4O31cclxuXHJcblxyXG5cclxuXHJcbiAvKipcclxuICAqIFNFTEVDVFxyXG4gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgLnNlbGVjdC1jdXN0b206OmFmdGVyIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6OTAwO1xyXG4gIH1cclxuICAuc2VsZWN0LWN1c3RvbSBzZWxlY3Qgey13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTstbW96LWFwcGVhcmFuY2U6IG5vbmU7LW1zLWFwcGVhcmFuY2U6IG5vbmU7YXBwZWFyYW5jZTogbm9uZTtvdXRsaW5lOiAwO2JveC1zaGFkb3c6IG5vbmU7Ym9yZGVyOjA7YmFja2dyb3VuZC1pbWFnZTogbm9uZTt9XHJcbiAgLyogU3R5bGUgc3Ugc2VsZWN0ICovXHJcbiAgLnNlbGVjdC1jdXN0b20gPiBzZWxlY3Qge2ZsZXg6IDE7cGFkZGluZzogMCAyNXB4IDAgNXB4O2NvbG9yOiAjMDAwO2N1cnNvcjogcG9pbnRlcjt9XHJcbiAgLnNlbGVjdC1jdXN0b20gPiBzZWxlY3Qgb3B0aW9uIHtmb250LXNpemU6IDEycHg7bGluZS1oZWlnaHQ6MTt9XHJcbiAgLnNlbGVjdC1jdXN0b20gPiBzZWxlY3Quc2VjdGV1ciBvcHRpb24ge2ZvbnQtc2l6ZTogMjBweDtsaW5lLWhlaWdodDoyO31cclxuICAuc2VsZWN0LWN1c3RvbSA+IHNlbGVjdCBvcHRpb246Y2hlY2tlZCB7YmFja2dyb3VuZC1jb2xvcjojMmY2Yzg5OGMgIWltcG9ydGFudDsgLyogZm9yIElFICovfVxyXG4gIC5zZWxlY3QtY3VzdG9tID4gc2VsZWN0IG9wdGlvbjpob3ZlcjpiZWZvcmUge2Rpc3BsYXk6IGlubGluZTt9XHJcbiAgLyogQ3VzdG9tIFNlbGVjdCAqL1xyXG4gIC5zZWxlY3QtY3VzdG9tIHtwb3NpdGlvbjogcmVsYXRpdmU7ZGlzcGxheTogZmxleDsvKm1pbi13aWR0aDogMTAyJTsqL2hlaWdodDogMjNweDtsaW5lLWhlaWdodDogMjNweDtvdmVyZmxvdzogaGlkZGVuO2JvcmRlcjogc29saWQgMXB4ICNFNkVBRUI7fVxyXG4gIC8qIEZsZWNoZSAqL1xyXG4gIC5zZWxlY3QtY3VzdG9tOjphZnRlciB7Zm9udC1zaXplOjE0cHg7Y29udGVudDogXCJcXGYwNzhcIjtwb3NpdGlvbjogYWJzb2x1dGU7dG9wOiAwO3JpZ2h0OiAwO2JhY2tncm91bmQ6ICMyZjZjODk7Y29sb3I6I0ZGRjtjdXJzb3I6IHBvaW50ZXI7cG9pbnRlci1ldmVudHM6IG5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOiAuMjVzIGFsbCBlYXNlOy1vLXRyYW5zaXRpb246IC4yNXMgYWxsIGVhc2U7dHJhbnNpdGlvbjogLjI1cyBhbGwgZWFzZTtmb250LXN0cmV0Y2g6IHVsdHJhLWNvbmRlbnNlZDt3aWR0aDogMjhweDt0ZXh0LWFsaWduOiBjZW50ZXI7bGluZS1oZWlnaHQ6IDIzcHg7fVxyXG4gIC8qIFRyYW5zaXRpb24gKi9cclxuICAuc2VsZWN0LWN1c3RvbTpob3Zlcjo6YWZ0ZXIge2NvbG9yOiAjRkZGO2JhY2tncm91bmQtY29sb3I6I2EwYTA5ZH1cclxuXHJcbiAgLnNlbGVjdC1jdXN0b20uZGlzYWJsZWQ6OmFmdGVyIHtiYWNrZ3JvdW5kLWNvbG9yOiM2ZTZlNmU4YyAhaW1wb3J0YW50OyAvKiBmb3IgSUUgKi99XHJcblxyXG4gLyoqXHJcbiAgKiBJTlBVVCA6IFN1Ym1pdFxyXG4gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbiAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsgXHJcbiAgICAgbWFyZ2luOjEwcHggMCAwIDA7XHJcbiAgICAgcGFkZGluZzowIDE1cHg7XHJcbiAgICAgd2lkdGg6YXV0bztcclxuICAgICBoZWlnaHQ6MzJweDtcclxuICAgICBsaW5lLWhlaWdodDozMnB4O1xyXG4gICAgIGZvbnQtc2l6ZToxM3B4OyBcclxuICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgXHJcbiAgICAgd2hpdGUtc3BhY2U6bm93cmFwOyBcclxuICAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcbiAgICAgLW1zLXRvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247IFxyXG4gICAgIHRvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247XHJcbiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lOyBcclxuICAgICAtbW96LXVzZXItc2VsZWN0Om5vbmU7IFxyXG4gICAgIC1tcy11c2VyLXNlbGVjdDpub25lOyBcclxuICAgICB1c2VyLXNlbGVjdDpub25lO1xyXG4gICAgIGJvcmRlcjpub25lO1xyXG4gICAgIGJvcmRlcjpub25lOyBcclxuICAgICBib3JkZXItcmFkaXVzOjRweDtcclxuICAgICAgYmFja2dyb3VuZDpub25lOyAvKiBSZW1vdmUgKi9cclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjojMmY2Yzg5O1xyXG4gICAgICBjb2xvcjojRkZGRkZGO1xyXG4gICAgIHRleHQtdHJhbnNmb3JtOmluaXRpYWw7XHJcbiAgICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICB9XHJcbiAgIGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcclxuICAgZm9ybSBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IzQzNmY4NDt9XHJcblxyXG5cclxuXHJcbiAgIC8qIENoZWNrYm94ICovXHJcbiAgIC5jaGVja2JveC1pdGVtIHt9XHJcbiAgICAgLmNoZWNrYm94LWl0ZW0gaW5wdXQgeyBkaXNwbGF5Om5vbmU7fVxyXG4gICAgIC5jaGVja2JveC1pdGVtIGxhYmVsIHsgcG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6MjBweDsgcGFkZGluZy1sZWZ0OjM0cHg7IGhlaWdodDozNHB4OyBsaW5lLWhlaWdodDozNHB4OyBjdXJzb3I6cG9pbnRlcjt9XHJcbiAgICAgLyogLmNoZWNrYm94LWl0ZW0gbGFiZWwge3Bvc2l0aW9uOiByZWxhdGl2ZTtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7bWFyZ2luOiAwO3BhZGRpbmctbGVmdDogMjVweDtoZWlnaHQ6IDIwcHg7bGluZS1oZWlnaHQ6IDIwcHg7Y3Vyc29yOiBwb2ludGVyO3RleHQtYWxpZ246IGxlZnQ7fSAqL1xyXG4gICAgIC5jaGVja2JveC1pdGVtIGxhYmVsOjpiZWZvcmUgeyBjb250ZW50OicnOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDowOyBkaXNwbGF5OmJsb2NrOyBtYXJnaW4tdG9wOi0xMXB4OyB3aWR0aDoyMHB4OyBoZWlnaHQ6MjBweDsgbGluZS1oZWlnaHQ6MjBweDsgYm9yZGVyOjJweCBzb2xpZCAjOGU4ZThlO31cclxuICAgICAuY2hlY2tib3gtaXRlbSBsYWJlbDo6YWZ0ZXIgeyBjb250ZW50OidcXGYwMGMnOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDoxcHg7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbi10b3A6LTEwcHg7IHdpZHRoOjIwcHg7IGhlaWdodDoyMHB4OyBsaW5lLWhlaWdodDoyMHB4OyBib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50OyB0ZXh0LWFsaWduOmNlbnRlcjsgY29sb3I6cmdiKDM4LDUxLDg3KTsgdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyOyB0cmFuc2Zvcm06c2NhbGUoMCk7fVxyXG4gICAgIC5jaGVja2JveC1pdGVtIGxhYmVsLmRpc2FibGVkOjpiZWZvcmUgeyBib3JkZXItY29sb3I6I2MxYzFjMTt9XHJcblxyXG4gICAgIC5jaGVja2JveC1pdGVtIGxhYmVsLmNoZWNrZWQ6OmJlZm9yZSxcclxuICAgICAuY2hlY2tib3gtaXRlbSBsYWJlbDpob3Zlcjo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOnJnYigzOCw1MSw4Nyk7fVxyXG4gICAgIC5jaGVja2JveC1pdGVtIGxhYmVsLmNoZWNrZWQ6OmFmdGVyIHsgdHJhbnNmb3JtOnNjYWxlKDEpO31cclxuXHJcbiAgICAgLmNoZWNrYm94LWl0ZW0ubm8tdmFsaWQgbGFiZWw6OmJlZm9yZSB7IGJvcmRlci1jb2xvcjpyZ2IoMjM3LDg5LDk0KTt9XHJcblxyXG4gICAgIC8qIC5jaGVja2JveC1pdGVtOmhvdmVyIGxhYmVsOjpiZWZvcmUgeyBib3JkZXItY29sb3I6cmdiKDc2LDEzOSwxNTEpO30gKi9cclxuXHJcbiAgXHJcblxyXG4gICAvKiBSYWRpbyAqL1xyXG4gICAucmFkaW8taXRlbSB7fVxyXG4gICAuZm9ybS1pdGVtLnJhZGlvLWl0ZW0geyBtYXJnaW4tYm90dG9tOjA7fVxyXG4gICAgIC5yYWRpby1pdGVtIGlucHV0IHsgZGlzcGxheTpub25lO31cclxuICAgICAucmFkaW8taXRlbSBsYWJlbCB7IHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IG1hcmdpbi1yaWdodDoxMHB4OyBwYWRkaW5nLWxlZnQ6MjdweDsgaGVpZ2h0OjM0cHg7IGxpbmUtaGVpZ2h0OjM0cHg7IGN1cnNvcjpwb2ludGVyO31cclxuICAgICAucmFkaW8taXRlbSBsYWJlbDo6YmVmb3JlIHsgY29udGVudDonJzsgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjEycywgYm9yZGVyLWNvbG9yIC4wOHM7IHRyYW5zaXRpb246IGFsbCAuMTJzLCBib3JkZXItY29sb3IgLjA4czsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo1MCU7IGxlZnQ6MDsgZGlzcGxheTpibG9jazsgbWFyZ2luLXRvcDotMTFweDsgd2lkdGg6MjBweDsgaGVpZ2h0OjIwcHg7IGxpbmUtaGVpZ2h0OjIwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyBib3JkZXI6MnB4IHNvbGlkICM3ODc4Nzg7IGJvcmRlci1yYWRpdXM6MTAwJTt9XHJcbiAgICAgLnJhZGlvLWl0ZW0gbGFiZWw6OmFmdGVyIHtkaXNwbGF5OiBub25lO31cclxuICAgICAucmFkaW8taXRlbSBpbnB1dDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7Ym9yZGVyOiAycHggc29saWQgZ3JlZW47YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7d2lkdGg6IDhweDt0b3A6IDM1JTtsZWZ0OiA1cHg7Ym9yZGVyLXJhZGl1czogMDtvcGFjaXR5OiAxO2JvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQwNWRlZyk7dHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTt9XHJcbiAgICAgLyogLnJhZGlvLWl0ZW0gaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7IGNvbnRlbnQ6J1xcZjAwYyc7IGNvbG9yOiBncmVlbjsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo1MCU7IGxlZnQ6MDsgZGlzcGxheTpibG9jazsgbWFyZ2luLXRvcDotMTFweDsgd2lkdGg6MjBweDsgaGVpZ2h0OjIwcHg7IGxpbmUtaGVpZ2h0OjIwcHg7IGJvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7IHRleHQtYWxpZ246Y2VudGVyO30gKi9cclxuXHJcbiAgICAgLnJhZGlvLWl0ZW0gbGFiZWwuY2hlY2tlZDo6YmVmb3JleyBib3JkZXItY29sb3I6cmdiKDM4LDUxLDg3KTsgYmFja2dyb3VuZC1jb2xvcjpyZ2IoMzgsNTEsODcpO31cclxuICAgICAucmFkaW8taXRlbSBsYWJlbDpob3Zlcjo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOnJnYigzOCw1MSw4Nyk7fVxyXG4gICAgIC5yYWRpby1pdGVtIGxhYmVsLmNoZWNrZWQ6OmFmdGVyIHsgdHJhbnNmb3JtOnNjYWxlKDEpO31cclxuXHJcblxyXG4gLyogRk9OVFMgKi9cclxuIC5jaGVja2JveC1pdGVtIGxhYmVsOmFmdGVyLFxyXG4gLnJhZGlvLWl0ZW0gbGFiZWw6OmFmdGVyIHtcclxuICAgZm9udC1mYW1pbHk6J0ZvbnRBd2Vzb21lJztcclxuICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG4gfVxyXG5cclxuXHJcbiAvKipcclxuICAqIFJFUVVJUkVEIDogcmVxdWlyZWQ9XCJyZXF1aXJlZFwiXHJcbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgaW5wdXQ6cmVxdWlyZWQge31cclxuICAgICBpbnB1dDpyZXF1aXJlZC52YWxpZCxcclxuICAgICB0ZXh0YXJlYTpyZXF1aXJlZC52YWxpZCB7IGJvcmRlci1jb2xvcjojMmVjYzcxO31cclxuICAgICBpbnB1dDpyZXF1aXJlZC5uby12YWxpZCxcclxuICAgICB0ZXh0YXJlYTpyZXF1aXJlZC5uby12YWxpZCB7IGJvcmRlci1jb2xvcjpyZ2IoMjM3LDg5LDk0KTt9XHJcblxyXG5cclxuXHJcblxyXG4gLyoqKlxyXG4gKiBGT1JNIE1BVEVSSUVMIFxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICNmb3JtLW1hdGVyaWVsLXdyYXBwZXIgZmllbGRzZXQubWF0ZXJpZWxfdGFyaWZfcm93IC5saWduZVRhcmlmaWNhdGlvbiBoNCwgI2Zvcm0tdmFyaWFudHMtd3JhcHBlciBmaWVsZHNldC5tYXRlcmllbF90YXJpZl9yb3cgLmxpZ25lVGFyaWZpY2F0aW9uIGg0e2ZvbnQtc2l6ZTogMTNweH1cclxuICNmb3JtLW1hdGVyaWVsLXdyYXBwZXIgZmllbGRzZXQubWF0ZXJpZWxfdGFyaWZfcm93IC5saWduZVRhcmlmaWNhdGlvbiwgI2Zvcm0tdmFyaWFudHMtd3JhcHBlciBmaWVsZHNldC5tYXRlcmllbF90YXJpZl9yb3cgLmxpZ25lVGFyaWZpY2F0aW9ue3BhZGRpbmctdG9wOiAyMHB4O2JvcmRlci10b3A6IHJnYmEoMzEsMTI0LDIwNSwwLjE2KSBzb2xpZCAwLjVweDt9XHJcblxyXG4vKiBMaWVuIHVwZ3JhZGUgdGlueSBtY2UqL1xyXG5hLnRveC1wcm9tb3Rpb24tbGluayB7XHJcbiAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qKipcclxuICogT3ZlcndyaXRlIHNlbGVjdDJcclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAuc2VsZWN0MiAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHsgbWluLWhlaWdodDogYXV0byFpbXBvcnRhbnQ7IH1cclxuIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIGJ1dHRvbiB7IGxpbmUtaGVpZ2h0OiBub3JtYWwhaW1wb3J0YW50OyB9XHJcblxyXG4vKioqXHJcbiAqIE92ZXJ3cml0ZSBkcm9wem9uZVxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuIC5kcm9wem9uZSB7IGJvcmRlcjogMXB4IHNvbGlkIHJnYig0NiAxMDggMTM3KTt9XHJcbiAuZHJvcHpvbmUgLmR6LXByZXZpZXcgeyBwYWRkaW5nOiAxMHB4OyBtYXJnaW46IDEwcHg7IGJhY2tncm91bmQ6ICNlNmVhZWIhaW1wb3J0YW50OyBib3JkZXI6IDFweCBzb2xpZCAjZTZlYWViOyBib3JkZXItcmFkaXVzOiAxMHB4O31cclxuIC5kcm9wem9uZSAuZHotcHJldmlldzpob3ZlciB7IGJvcmRlcjogMXB4IGRhc2hlZCAjMzY1M2I4OyB9XHJcbiAuZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LWltYWdlIHsgYm9yZGVyLXJhZGl1czogMHB4OyB9XHJcbiAuZHJvcHpvbmUgLmpzLWRlbGV0ZSB7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlZWUhaW1wb3J0YW50OyB9XHJcbiAuZHJvcHpvbmUgLmpzLWRlbGV0ZSwgLmRyb3B6b25lIC5qcy1wcmV2aWV3IHsgd2lkdGg6IDYwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQ7IGNvbG9yOiByZ2IoODEsIDEzOSwgMTY1KTsgYmFja2dyb3VuZDogI0ZGRjsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IGhlaWdodDogMjVweDtsaW5lLWhlaWdodDogMjVweDsgbWFyZ2luLXRvcDogMTBweDt9XHJcbiAuZHJvcHpvbmUgLmpzLWRlbGV0ZSBzdmcsIC5kcm9wem9uZSAuanMtcHJldmlldyBzdmd7IGN1cnNvcjogcG9pbnRlcjt9XHJcbiAuZHJvcHpvbmUgLmpzLWRlbGV0ZTpob3ZlciwgLmRyb3B6b25lIC5qcy1wcmV2aWV3OmhvdmVyIHsgYmFja2dyb3VuZDogIzM2NTNiODsgY29sb3I6ICNlZWU7IH1cclxuICIsIi8qKlxyXG4gKiBDb2xsYXBzYWJsZVxyXG4gKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC8qIE5hdiAqL1xyXG4gICAgLmNvbGxhcHMtbmF2IHsgY3Vyc29yOnBvaW50ZXI7IH1cclxuICAgIC5jb2xsYXBzLW5hdjpob3ZlciB7IGNvbG9yOiMzQUI2QzI7IH1cclxuICAgIC5jb2xsYXBzLW5hdi5hY3RpdmUgeyBiYWNrZ3JvdW5kOiNmZmZmZmY7IH1cclxuXHJcbiAgICAvKiBJdGVtICovXHJcbiAgICAuY29sbGFwcy1pdGVtIHsgZGlzcGxheTpub25lOyB9XHJcbiAgICAuY29sbGFwcy1pdGVtLmFjdGl2ZSB7IGRpc3BsYXk6YmxvY2s7IH0iLCIvKiBUaGlzIGZpbGUgd2lsbCBob2xkIHN0eWxlcyBmb3IgdGhlIG1vYmlsZSB2ZXJzaW9uIG9mIHlvdXIgd2Vic2l0ZSAobW9iaWxlIGZpcnN0KS4gKi9cclxuLyogVGhpcyBhbHNvIGNhbiBpbmNsdWRlIEFOWSBnbG9iYWwgQ1NTIHRoYXQgYXBwbGllcyBzaXRlLXdpZGUuIFVubGVzcyBvdmVyd3JpdHRlbiBieSBhIG1vcmUgc3BlY2lmaWMgc3R5bGUgcnVsZSwgQ1NTIGRlY2xhcmF0aW9ucyBpbiBnbG9iYWwuY3NzIHdpbGwgYXBwbHkgc2l0ZS13aWRlLiAqL1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxcclxuKlxyXG4qIGNvbW11bi5jc3NcclxuKlxyXG4qIEZldWlsbGUgZGUgc3R5bGUgY29tbXVuZSDDoCB0b3V0IGxlcyBwcm9qZXRzIGJhc8OpcyBzdXJcclxuKiBsYSBtZXRob2RlIFNNQUNDU1xyXG4qXHJcblxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcXFxyXG4gKiBCQVNFXHJcbiAqIFN0cnVjdHVyZSBkZSBiYXNlIGR1IGNvbnRlbnU6XHJcblxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIGh0bWwgeyBoZWlnaHQ6MTAwJTt9XHJcbiAgYm9keSB7XHJcbiAgICBtYXJnaW46MDsgcGFkZGluZzowO1xyXG4gICAgd29yZC13cmFwOmJyZWFrLXdvcmQ7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIHRleHQtcmVuZGVyaW5nOm9wdGltaXplbGVnaWJpbGl0eTtcclxuICAgIGZvbnQtc2l6ZToxMnB4O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6MDtcclxuICAgIGNvbG9yOiMzMzMzMzM7XHJcbiAgICBiYWNrZ3JvdW5kOiNmZmY7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogU0VMRUNUSU9OXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAqOjpzZWxlY3Rpb24geyBjb2xvcjojZmZmZmZmIDsgYmFja2dyb3VuZDojMzIzMjQwOyB9XHJcbiAgICAqOjotbW96LXNlbGVjdGlvbiB7IGNvbG9yOiNmZmZmZmY7IGJhY2tncm91bmQ6IzMyMzI0MDsgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVElUUkVTXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICBoMSxoMixoMyB7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBwYWRkaW5nOjA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjIwcHg7XHJcbiAgICAgIGNvbG9yOmluaGVyaXQ7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOm5vcm1hbDtcclxuICAgICAgdGV4dC1yZW5kZXJpbmc6b3B0aW1pemVsZWdpYmlsaXR5O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItYmxvY2sgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cclxuICAgIC5oZWFkZXItYmxvY2s6OmJlZm9yZSB7IGNvbnRlbnQ6Jyc7IHBvc2l0aW9uOmFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6MDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjFweDt9XHJcblxyXG4gICAgaDEjcGFnZS10aXRsZSB7IHBvc2l0aW9uOnJlbGF0aXZlOyBsaW5lLWhlaWdodDozMHB4OyBmb250LXNpemU6MjBweDsgY29sb3I6IzNiNDM0YzsgbWFyZ2luOiAwIDAgMTBweCAwO31cclxuICAgICAgaDEjcGFnZS10aXRsZTo6YmVmb3JlIHsgY29udGVudDonJzsgcG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbTotMTBweDsgbGVmdDowOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MXB4O31cclxuICAgICAgaDEjcGFnZS10aXRsZSBzdmcgeyBtYXJnaW4tcmlnaHQ6MTBweDsgfVxyXG5cclxuXHJcbiAgICBoMiB7IG1hcmdpbjowIDAgMjBweCAwOyBmb250LXNpemU6MTZweDsgfVxyXG4gICAgaDMgeyBtYXJnaW46MTVweCAwIDVweCAwOyBmb250LXNpemU6MTRweDsgfVxyXG4gICAgaDQgeyBtYXJnaW46MTVweCAwIDVweCAwOyBmb250LXNpemU6MTNweDsgfVxyXG4gICAgcCAgeyBtYXJnaW46MCAwIDIwcHggMDsgbGluZS1oZWlnaHQ6MThweDsgfVxyXG5cclxuICAvKipcclxuICAgKiBMSU5LU1xyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgYTpsaW5rLCBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246bm9uZTsgY29sb3I6IzMzMzMzMzt9XHJcbiAgICBhOmZvY3VzLCBhOmhvdmVyLCBhOmFjdGl2ZSB7IGNvbG9yOiMyZjZjODk7IG91dGxpbmU6MDt9XHJcblxyXG4gIC8qKlxyXG4gICAqIE5VTUJFUlxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLm51bWJlciB7IGZvbnQtc2l6ZToxMnB4O31cclxuICAgIC5iaWctbnVtYmVyIHsgZGlzcGxheTpibG9jazsgbWFyZ2luOjAgMCAyMHB4IDA7IHRleHQtYWxpZ246Y2VudGVyOyAgZm9udC1zaXplOjI1cHg7IGxldHRlci1zcGFjaW5nOi0ycHg7fVxyXG4gICAgICAuYmlnLW51bWJlcj5zcGFuIHsgZm9udC1zaXplOjIwcHg7fVxyXG5cclxuICAvKipcclxuICAgKiBUQUlMTEVcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC5zaXplLW1lZGl1bSB7IGZvbnQtc2l6ZToyMHB4O31cclxuICAgIC5zaXplLWJpZyB7IGZvbnQtc2l6ZTozMHB4O31cclxuXHJcbiAgICAudy1hdXRvIHt3aWR0aDphdXRvICFpbXBvcnRhbnR9XHJcblxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmYXVsdFxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyAgICBcclxuICAgIC5maWVsZC1uYW1lLWJvZHkgeyBmb250LXNpemU6MTJweDsgY29sb3I6IzMzMzMzMzsgLyogY29sb3I6Izc4Nzg3ODsgKi99XHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgaDIsXHJcbiAgICAgIC5zaXRlLW1hcC1tZW51cyBoMiB7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW46MDsgbWFyZ2luLWJvdHRvbToyMHB4OyBsaW5lLWhlaWdodDozMHB4OyBmb250LXNpemU6MjVweDsgY29sb3I6IzMyMzI0MDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBmb250LXdlaWdodDo5MDAgIWltcG9ydGFudDt9XHJcbiAgICAgIC8qIC5maWVsZC1uYW1lLWJvZHkgaDMgeyBtYXJnaW46MDsgbWFyZ2luLWJvdHRvbToyMHB4OyBmb250LXNpemU6MjRweDsgbGluZS1oZWlnaHQ6MjZweDsgY29sb3I6IzU0NTg2YjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBmb250LXdlaWdodDo4MDAgIWltcG9ydGFudDt9ICovXHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgaDMgeyBtYXJnaW46MDsgbWFyZ2luLWJvdHRvbToxMHB4OyBmb250LXNpemU6MThweDsgbGluZS1oZWlnaHQ6MjBweDsgY29sb3I6IzMzMzMzMzt9XHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgaDQgeyBtYXJnaW46MDsgbWFyZ2luLWJvdHRvbToyMHB4OyBmb250LXNpemU6MjBweDsgbGluZS1oZWlnaHQ6MjJweDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBmb250LXdlaWdodDo4MDAgIWltcG9ydGFudDt9XHJcbiAgICAgICAgLmZpZWxkLW5hbWUtYm9keSBoMiBzbWFsbCB7IGZvbnQtc2l6ZTowLjVlbTsgdGV4dC10cmFuc2Zvcm06bm9uZTt9XHJcbiAgICAgICAgLmZpZWxkLW5hbWUtYm9keSBoMyBzbWFsbCxcclxuICAgICAgICAuZmllbGQtbmFtZS1ib2R5IGg0IHNtYWxsIHsgZm9udC1zaXplOjAuOGVtO31cclxuXHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgcCB7IG1hcmdpbi1ib3R0b206MjBweDsgbGluZS1oZWlnaHQ6MTZweDt9XHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgcC5ja2UtbGVhZCB7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbi1ib3R0b206MzBweDsgZm9udC1zaXplOjE2cHg7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcblxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IHN0cm9uZyxcclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSBiIHsgZm9udC13ZWlnaHQ6Ym9sZDt9XHJcblxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IGVtLFxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IGkgeyBmb250LXN0eWxlOml0YWxpYzt9XHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgdSB7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fVxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IHMgeyB0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO31cclxuXHJcbiAgICAgIC5zbWFsbCB7IGZvbnQtc2l6ZToxMHB4O31cclxuICAgICAgc21hbGwgeyBmb250LXNpemU6MC44ZW07fVxyXG5cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIExJU1RFU1xyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IG9sLFxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IHVsLFxyXG4gICAgICB1bC5maWVsZC1saXN0LFxyXG4gICAgICAuc2l0ZS1tYXAtbWVudXMgdWwuc2l0ZS1tYXAtbWVudSB7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowIDAgMjBweDsgcGFkZGluZzowO31cclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSBvbCB7IGNvdW50ZXItcmVzZXQ6aXRlbTt9XHJcbiAgICAgIC5maWVsZC1uYW1lLWJvZHkgdWwsXHJcbiAgICAgIHVsLmZpZWxkLWxpc3QsXHJcbiAgICAgIC5zaXRlLW1hcC1tZW51cyB1bC5zaXRlLW1hcC1tZW51IHsgbGlzdC1zdHlsZTpub25lO31cclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSBvbCBsaSxcclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSB1bCBsaSxcclxuICAgICAgdWwuZmllbGQtbGlzdCBsaSxcclxuICAgICAgLnNpdGUtbWFwLW1lbnVzIHVsLnNpdGUtbWFwLW1lbnUgbGkgeyBtYXJnaW4tbGVmdDowOyBtYXJnaW4tYm90dG9tOjA7IGxpbmUtaGVpZ2h0OjE4cHg7IHRleHQtYWxpZ246LXdlYmtpdC1tYXRjaC1wYXJlbnQ7fVxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IHVsIGxpLFxyXG4gICAgICB1bC5maWVsZC1saXN0IGxpLFxyXG4gICAgICAuc2l0ZS1tYXAtbWVudXMgdWwuc2l0ZS1tYXAtbWVudSBsaSB7IH1cclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSB1bCBsaTo6YmVmb3JlLFxyXG4gICAgICB1bC5maWVsZC1saXN0IGxpOjpiZWZvcmUsXHJcbiAgICAgIC5zaXRlLW1hcC1tZW51cyB1bC5zaXRlLW1hcC1tZW51IGxpOjpiZWZvcmUgeyBjb250ZW50OictJzsgbWFyZ2luOjAgMTBweDsgZm9udC1zaXplOjE4cHg7IGNvbG9yOiMzMjMyNDA7fVxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IG9sIGxpOjpiZWZvcmUsXHJcbiAgICAgIG9sLmZpZWxkLWxpc3QgbGk6OmJlZm9yZSxcclxuICAgICAgLnNpdGUtbWFwLW1lbnVzIG9sLnNpdGUtbWFwLW1lbnUgbGk6OmJlZm9yZSB7IGNvbnRlbnQ6Y291bnRlcihpdGVtKTsgY291bnRlci1pbmNyZW1lbnQ6aXRlbTsgZGlzcGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbjowIDhweCAwIDA7IHBhZGRpbmc6MHB4IDhweDsgaGVpZ2h0OjIwcHg7IGJhY2tncm91bmQ6IzMyMzI0MDsgY29sb3I6I2YyZTcyZDsgZm9udC1zaXplOjEycHg7IGxpbmUtaGVpZ2h0OjIwcHg7IGJvcmRlci1yYWRpdXM6NTAlO31cclxuICAgICAgLmZpZWxkLW5hbWUtYm9keSBvbCBsaSB7fVxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IG9sPmxpPm9sLFxyXG4gICAgICAuZmllbGQtbmFtZS1ib2R5IHVsPmxpPnVsLFxyXG4gICAgICAuc2l0ZS1tYXAtbWVudXMgdWwuc2l0ZS1tYXAtbWVudT5saT51bCB7IG1hcmdpbjo0cHggMDsgcGFkZGluZzowIDAgMCAyMHB4O31cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIElORElDRVMgOiBTdWIvU3VwXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICBzdWIsXHJcbiAgICBzdXAgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgZm9udC1zaXplOjc1JTsgbGluZS1oZWlnaHQ6MDsgdmVydGljYWwtYWxpZ246YmFzZWxpbmU7IH1cclxuICAgIHN1cCB7IHRvcDogLTAuNWVtO31cclxuICAgIHN1YiB7IGJvdHRvbTogLTAuMjVlbTt9XHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcXFxyXG4gKiBMQVlPVVRcclxuICogU3RydWN0dXJlIGRlcyBwYWdlczpcclxuICogSGVhZGVyLyBDb250ZW50LyBGb290ZXIvIGV0YztcclxuXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgLyoqXHJcbiAgICogSEVBREVSXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLnNlY3Rpb24taGVhZGVyIHsgcG9zaXRpb246Zml4ZWQ7IHRvcDowOyBsZWZ0OjA7IHJpZ2h0OjA7IHotaW5kZXg6MjA7IGhlaWdodDo2MHB4OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZWJlYmViOyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG4gICAgICAjcmVnaW9uLWJyYW5kaW5nIHsgZmxvYXQ6bGVmdDsgd2lkdGg6MjMwcHg7IGhlaWdodDoxMDAlOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiAgICAgICAgI3JlZ2lvbi1icmFuZGluZyBhIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGhlaWdodDoxMDAlOyBsaW5lLWhlaWdodDo1NXB4O31cclxuICAgICAgICAgICNyZWdpb24tYnJhbmRpbmcgYSBpbWcge31cclxuXHJcbiAgICAgICNyZWdpb24tbWFpbi1tZW51IHsgZmxvYXQ6bGVmdDsgaGVpZ2h0OjEwMCU7IGZvbnQtc2l6ZTowO31cclxuICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpIHsgcG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbjoxNHB4IDA7fVxyXG4gICAgICAgICAgICAjcmVnaW9uLW1haW4tbWVudT5saT5hIHsgICAgcG9zaXRpb246IHJlbGF0aXZlO2ZvbnQtc2l6ZTogMTZweDt9XHJcbiAgICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpPmE6aG92ZXIsXHJcbiAgICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpPmEuYWN0aXZlLXRyYWlsIHsgY29sb3I6IzJmNmM4OTt9XHJcbiAgICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpPnVsIHsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo0NnB4OyBsZWZ0OjA7IHdpZHRoOjE1MHB4OyBtYXgtaGVpZ2h0OjA7IGJhY2tncm91bmQ6IzM4M2Y1Njsgb3ZlcmZsb3c6aGlkZGVuO31cclxuICAgICAgICAgICAgI3JlZ2lvbi1tYWluLW1lbnU+bGk6aG92ZXI+dWwgeyBtYXgtaGVpZ2h0Ojk5OTlweDt9XHJcbiAgICAgICAgICAgICAgI3JlZ2lvbi1tYWluLW1lbnU+bGk+dWw+bGkgeyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjA7fVxyXG4gICAgICAgICAgICAgICAgI3JlZ2lvbi1tYWluLW1lbnU+bGk+dWw+bGk+YSB7IGRpc3BsYXk6YmxvY2s7IHBhZGRpbmc6MCAxMHB4OyBjb2xvcjojZjVmNWY1O31cclxuICAgICAgICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpPnVsPmxpPmE6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAjcmVnaW9uLW1haW4tbWVudT5saT51bD5saT5hLmFjdGl2ZS10cmFpbCB7IGNvbG9yOiNmZmZmZmY7IGJhY2tncm91bmQ6IzJmNmM4OTt9XHJcblxyXG4gICAgICAgICAgICAgICAgI3JlZ2lvbi1tYWluLW1lbnU+bGk+I2hlYWRlci1yZWNoZXJjaGUtc2t1e2hlaWdodDogMzFweDsgYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHg7fVxyXG4gICAgICAgICAgICAgICAgI3JlZ2lvbi1tYWluLW1lbnU+bGk+I2hlYWRlci1yZWNoZXJjaGUtc2t1LWJ0bnt3aWR0aDogMzRweDsgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7IG1hcmdpbi1sZWZ0OiAtNXB4O31cclxuICAgICAgICAgICAgICAgICNyZWdpb24tbWFpbi1tZW51PmxpPiNoZWFkZXItcmVjaGVyY2hlLXNrdS1idG4gc3Zne21hcmdpbjogMTBweCAtNHB4O31cclxuXHJcblxyXG5cclxuICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcyB7IGZsb2F0OnJpZ2h0OyBkaXNwbGF5OmJsb2NrOyBtYXJnaW46MCAyMHB4IDA7IGhlaWdodDo2MHB4OyBmb250LXNpemU6MDt9XHJcbiAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saSB7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW46MDsgcGFkZGluZzoxNHB4IDE1cHg7fVxyXG4gICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saT5hIHsgcG9zaXRpb246cmVsYXRpdmU7IGNvbG9yOiMzMzMzMzM7fVxyXG4gICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saTpob3Zlcj5hLFxyXG4gICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saT5hOmhvdmVyLFxyXG4gICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saT5hLmFjdGl2ZS10cmFpbCB7IGNvbG9yOiMxMTI2MzAvKiMyZjZjODkqLzt9XHJcblxyXG4gICAgICAgICAgICNyZWdpb24tYWRtaW4tbGlua3M+bGk+dWwgeyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjU3cHg7IGxlZnQ6MDsgd2lkdGg6MTUwcHg7IG1heC1oZWlnaHQ6MDsgYmFja2dyb3VuZDovKiMxNDFmMzgqLyAjM0M0NDRCOyBvdmVyZmxvdzpoaWRkZW47fVxyXG4gICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saTpob3Zlcj51bCB7IG1heC1oZWlnaHQ6OTk5OXB4O31cclxuICAgICAgICAgICAgI3JlZ2lvbi1hZG1pbi1saW5rcz5saT51bD5saSB7IGRpc3BsYXk6YmxvY2s7IHBhZGRpbmc6MDt9XHJcbiAgICAgICAgICAgICAgICAjcmVnaW9uLWFkbWluLWxpbmtzPmxpPnVsPmxpPmEgeyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjAgMTBweDsgY29sb3I6I2Y1ZjVmNTt9XHJcbiAgICAgICAgICAgICAgICAjcmVnaW9uLWFkbWluLWxpbmtzPmxpPnVsPmxpPmE6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAjcmVnaW9uLWFkbWluLWxpbmtzPmxpPnVsPmxpPmEuYWN0aXZlLXRyYWlsIHsgY29sb3I6I2ZmZmZmZjsgYmFja2dyb3VuZDojMmY2Yzg5O31cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLyogVXNlciAqL1xyXG4gICAgICAgICAgbGkjdXNlci1saW5rIHt9XHJcbiAgICAgICAgICBsaSN1c2VyLWxpbmsgLmdyYWRpZW50LWRlZmF1bHQgeyBwYWRkaW5nOjJweDsgYm9yZGVyLXJhZGl1czoxOHB4OyBiYWNrZ3JvdW5kOiNmZmY7fVxyXG4gICAgICAgICAgbGkjdXNlci1saW5rIGEgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzowIDEwcHggMCA0MHB4OyBib3JkZXItcmFkaXVzOjE4cHg7IGJhY2tncm91bmQ6I2ZmZjt9XHJcbiAgICAgICAgICBsaSN1c2VyLWxpbmsgYSBkaXYudXNlci1hdmF0YXIgeyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjFweDsgbGVmdDoxcHg7IGRpc3BsYXk6YmxvY2s7IHdpZHRoOjMwcHg7IGhlaWdodDozMHB4OyBib3JkZXItcmFkaXVzOjUwJTsgb3ZlcmZsb3c6aGlkZGVuOyBiYWNrZ3JvdW5kOiNmNWY2ZmE7IGNvbG9yOiMzMzMzMzM7fVxyXG4gICAgICAgICAgbGkjdXNlci1saW5rIGEgZGl2LnVzZXItYXZhdGFyIHN2ZyB7IGxpbmUtaGVpZ2h0OjMwcHg7IHdpZHRoOjMwcHg7IHRleHQtYWxpZ246Y2VudGVyO31cclxuXHJcbiAgICAgICAgICBsaSN1c2VyLWxpbmsgYTpob3ZlcixcclxuICAgICAgICAgIGxpI3VzZXItbGluazpob3ZlciBhIHsgY29sb3I6LyojM0M0NDRCKi8jMzY0MWI3OyB9XHJcbiAgICAgICAgICAvKiBsaSN1c2VyLWxpbmsgYTpob3ZlciBkaXYudXNlci1hdmF0YXIgaW1nIHsgb3BhY2l0eTowLjg7IH0gKi9cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIENPTlRFTlRcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAuc2VjdGlvbi1jb250ZW50IHsgXHJcbiAgICAgIHdpZHRoOjEwMCU7IFxyXG4gICAgICAvKiBoZWlnaHQ6MTAwJTsgKi9cclxuICAgIH1cclxuICAgICAgLyogLnNlY3Rpb24tY29udGVudCAuc2VjdGlvbi13cmFwcGVyIHsgcG9zaXRpb246cmVsYXRpdmU7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlO30gKi9cclxuICAgICAgLnNlY3Rpb24tY29udGVudCAuc2VjdGlvbi13cmFwcGVyIHsgcGFkZGluZzogNjBweCAwIDAgMDsgbWluLWhlaWdodDoxMDAlOyBkaXNwbGF5Oi13ZWJraXQtYm94OyBkaXNwbGF5Oi1tb3otYm94OyBkaXNwbGF5Oi1tcy1mbGV4Ym94OyBkaXNwbGF5Oi13ZWJraXQtZmxleDsgZGlzcGxheTpmbGV4O31cclxuICAgICAgLnNlY3Rpb24tY29udGVudCAuc2VjdGlvbi13cmFwcGVyIHsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IC1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1mbGV4LXdyYXA6bm93cmFwOyAtbXMtZmxleC13cmFwOm5vd3JhcDsgZmxleC13cmFwOm5vd3JhcDt9XHJcbiAgICAgIC5zZWN0aW9uLWNvbnRlbnQgLnNlY3Rpb24td3JhcHBlciB7IC13ZWJraXQtZmxleC13cmFwOm5vd3JhcDsgLW1zLWZsZXgtd3JhcDpub3dyYXA7IGZsZXgtd3JhcDpub3dyYXA7fVxyXG4gICAgICAuc2VjdGlvbi1jb250ZW50IC5zZWN0aW9uLXdyYXBwZXIgeyAtd2Via2l0LWJveC1hbGlnbjpzdHJldGNoOyAtbW96LWJveC1hbGlnbjpzdHJldGNoOyAtd2Via2l0LWFsaWduLWl0ZW1zOnN0cmV0Y2g7IC1tcy1mbGV4LWFsaWduOnN0cmV0Y2g7IGFsaWduLWl0ZW1zOnN0cmV0Y2g7fVxyXG5cclxuICAgICAgICAvKiAuem9uZS1zaWRlIHsgcG9zaXRpb246Zml4ZWQ7IHRvcDo2MHB4OyB6LWluZGV4OjE7IHBhZGRpbmc6MTBweDsgd2lkdGg6MTEwcHg7IG1pbi1oZWlnaHQ6MTAwJTsgYmFja2dyb3VuZDojNDI1NTdkO30gKi9cclxuICAgICAgICAuem9uZS1zaWRlIHsgcGFkZGluZzoxMHB4OyB3aWR0aDoxMTBweDsgbWluLWhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kOiNGNUY2RkE7IC8qIGJhY2tncm91bmQ6IzQyNTU3ZDsgKi99XHJcbiAgICAgICAgLnpvbmUtbGVmdCB7IG9yZGVyOjE7IH1cclxuICAgICAgICAuem9uZS1yaWdodCB7IG9yZGVyOjM7fVxyXG4gICAgICAgIC56b25lLWxlZnQubGFyZ2UsXHJcbiAgICAgICAgLnpvbmUtcmlnaHQubGFyZ2UgeyBtaW4td2lkdGg6MjMwcHg7fVxyXG4gICAgICAgIC56b25lLWxlZnQubWVkaXVtLFxyXG4gICAgICAgIC56b25lLXJpZ2h0Lm1lZGl1bSB7IHdpZHRoOjIwMHB4O31cclxuXHJcbiAgICAgICAgLyogTUVOVSBTSURFIEJBUiAqL1xyXG4gICAgICAgICAgLnJlZ2lvbi1tZW51IHsgcG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbjowIDAgMjBweDsgd2lkdGg6OTBweDt9XHJcbiAgICAgICAgICAgIC5yZWdpb24tbWVudSBoMiB7IHBhZGRpbmc6MTBweDsgd2lkdGg6NzBweDsgbWluLWhlaWdodDo1MHB4OyBsaW5lLWhlaWdodDoxNnB4OyBmb250LXNpemU6MTJweDsgYm9yZGVyLXJhZGl1czo0cHg7IHRleHQtYWxpZ246Y2VudGVyOyBjb2xvcjojM2Y0NjVkOyBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O31cclxuICAgICAgICAgICAgICAucmVnaW9uLW1lbnUgaDIgYTpsaW5rLFxyXG4gICAgICAgICAgICAgIC5yZWdpb24tbWVudSBoMiBhOnZpc2l0ZWQgeyBjb2xvcjojM2Y0NjVkOyBmb250LXNpemU6MTRweDt9ICBcclxuICAgICAgICAgICAgICAucmVnaW9uLW1lbnUgaDIgc3ZnIHsgLyptYXJnaW4tYm90dG9tOjhweDsqLyB3aWR0aDozNXB4OyBmb250LXNpemU6MTZweDt9XHJcbiAgICAgICAgICAgIC5yZWdpb24tbWVudTpob3ZlciBoMixcclxuICAgICAgICAgICAgLnJlZ2lvbi1tZW51LmFjdGl2ZS10cmFpbCBoMiB7IGJhY2tncm91bmQ6I2ZmZmZmZjt9XHJcbiAgICAgICAgICAgIC5yZWdpb24tbWVudTpob3ZlciBoMiBzdmcsXHJcbiAgICAgICAgICAgIC5yZWdpb24tbWVudS5hY3RpdmUtdHJhaWwgaDIgc3ZnIHsgY29sb3I6IzJmNmM4OTt9XHJcblxyXG4gICAgICAgICAgICAucmVnaW9uLW1lbnUgdWwgeyBwYWRkaW5nOjBweDsgYm9yZGVyOjBweCBzb2xpZCB0cmFuc3BhcmVudDt9XHJcbiAgICAgICAgICAgIC5yZWdpb24tbWVudTpob3ZlciB1bCB7IGJvcmRlcjo0cHggc29saWQgIzM4M2Y1Njt9XHJcbiAgICAgICAgICAgIC56b25lLWxlZnQgLnJlZ2lvbi1tZW51IHVsIHsgbGVmdDo5MHB4OyB9XHJcbiAgICAgICAgICAgIC56b25lLXJpZ2h0IC5yZWdpb24tbWVudSB1bCB7IHJpZ2h0OjkwcHg7IH1cclxuXHJcbiAgICAgICAgICAgICAgLnpvbmUtbGVmdCAucmVnaW9uLW1lbnU6OmJlZm9yZSB7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MTVweDsgcmlnaHQ6MDsgei1pbmRleDo5OTk5OyBjb250ZW50OicnOyBkaXNwbGF5OmJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OjA7IGJvcmRlci1zdHlsZTpzb2xpZDsgYm9yZGVyLXdpZHRoOjcuNXB4IDAgNy41cHggMDsgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICMzODNmNTYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7fVxyXG4gICAgICAgICAgICAgIC56b25lLWxlZnQgLnJlZ2lvbi1tZW51OmhvdmVyOjpiZWZvcmUgeyBib3JkZXItd2lkdGg6Ny41cHggMTBweCA3LjVweCAwO31cclxuICAgICAgICAgICAgICAuem9uZS1yaWdodCAucmVnaW9uLW1lbnU6OmJlZm9yZSB7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MTVweDsgbGVmdDowOyB6LWluZGV4Ojk5OTk7IGNvbnRlbnQ6Jyc7IGRpc3BsYXk6YmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6MDsgYm9yZGVyLXN0eWxlOnNvbGlkOyBib3JkZXItd2lkdGg6Ny41cHggMCA3LjVweCAwOyBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzM4M2Y1Njt9XHJcbiAgICAgICAgICAgICAgLnpvbmUtcmlnaHQgLnJlZ2lvbi1tZW51OmhvdmVyOjpiZWZvcmUgeyBib3JkZXItd2lkdGg6Ny41cHggMTBweCA3LjVweCAxMHB4O31cclxuXHJcbiAgICAgICAgICAgICAgLnJlZ2lvbi1tZW51IHVsIGxpIHsgZGlzcGxheTpibG9jazsgd2lkdGg6MjQwcHg7IGhlaWdodDphdXRvOy8qIGhlaWdodDoyOHB4OyAqL31cclxuICAgICAgICAgICAgICAgIC8qIC5yZWdpb24tbWVudSB1bCBsaSBhIHsgZGlzcGxheTpibG9jazsgcGFkZGluZzowIDE1cHg7IGhlaWdodDoyOHB4OyBsaW5lLWhlaWdodDoyOHB4OyBjb2xvcjojM2Y0NjVkO30gKi9cclxuICAgICAgICAgICAgICAgIC5yZWdpb24tbWVudSB1bCBsaSBhIHsgZGlzcGxheTp0YWJsZS1jZWxsOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgcGFkZGluZzo0cHggMTVweDsgd2lkdGg6MjEwcHg7IGhlaWdodDphdXRvOyBtaW4taGVpZ2h0OjI4cHg7IGxpbmUtaGVpZ2h0OjE2cHg7IGNvbG9yOiMzZjQ2NWQ7fVxyXG4gICAgICAgICAgICAgICAgLnJlZ2lvbi1tZW51IHVsIGxpIGE6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAucmVnaW9uLW1lbnUgdWwgbGkgYS5hY3RpdmUtdHJhaWwgeyBiYWNrZ3JvdW5kOiMyZjZjODk7IGNvbG9yOiNmZmZmZmY7fVxyXG4gICAgICAgICAgLyogTGFyZ2UgKi9cclxuICAgICAgICAgICAgLmxhcmdlIC5yZWdpb24tbWVudTo6YmVmb3JlIHsgZGlzcGxheTpub25lO31cclxuICAgICAgICAgICAgLmxhcmdlIC5yZWdpb24tbWVudSB7IG1hcmdpbjowIDAgMjBweDsgd2lkdGg6YXV0bzsgYm9yZGVyLXJhZGl1czo0cHg7fVxyXG4gICAgICAgICAgICAubGFyZ2UgLnJlZ2lvbi1tZW51IGgyIHsgbWFyZ2luOjA7IHBhZGRpbmc6MTBweDsgd2lkdGg6YXV0bzsgbWluLWhlaWdodDphdXRvOyBsaW5lLWhlaWdodDoxNnB4OyBjb2xvcjojM2I0MzRjOyBib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOyB0ZXh0LWFsaWduOmxlZnQ7IGN1cnNvcjpkZWZhdWx0OyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG4gICAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnUgaDIgc3ZnIHsgbWFyZ2luOjAgOHB4IDA7IHdpZHRoOmF1dG87IGNvbG9yOiMyZjZjODk7fVxyXG4gICAgICAgICAgICAubGFyZ2UgLnJlZ2lvbi1tZW51OmhvdmVyIGgyLFxyXG4gICAgICAgICAgICAubGFyZ2UgLnJlZ2lvbi1tZW51LmFjdGl2ZS10cmFpbCBoMiB7IG1hcmdpbjowOyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG5cclxuICAgICAgICAgICAgLmxhcmdlIC5yZWdpb24tbWVudSB1bCB7IG92ZXJmbG93OmhpZGRlbjsgcGFkZGluZzowcHg7IGJhY2tncm91bmQ6I2ZmZmZmZjsgYm9yZGVyOjBweDt9XHJcbiAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnU6aG92ZXIgdWwsXHJcbiAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnUuYWN0aXZlLXRyYWlsIHVsIHsgYmFja2dyb3VuZDojZmZmZmZmO31cclxuICAgICAgICAgICAgICAubGFyZ2UgLnJlZ2lvbi1tZW51IHVsIGxpIHsgcGFkZGluZzowIDEwcHg7IHdpZHRoOmF1dG87fVxyXG4gICAgICAgICAgICAgICAgLmxhcmdlIC5yZWdpb24tbWVudSB1bCBsaSBhIHsgY29sb3I6IzYxNjE3NzsgYm9yZGVyLXJhZGl1czo0cHg7fVxyXG5cclxuICAgICAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnUgdWwgbGk6aG92ZXIgYSxcclxuICAgICAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnUgdWwgbGkgYTpob3ZlcixcclxuICAgICAgICAgICAgICAgIC5sYXJnZSAucmVnaW9uLW1lbnUuYWN0aXZlLXRyYWlsIHVsIGxpIGEuYWN0aXZlLXRyYWlsIHsgYmFja2dyb3VuZDpyZ2JhKDU4LDE4MywxOTQsMSk7IGNvbG9yOiNmZmZmZmY7fVxyXG5cclxuICAgICAgICAgICAgLyogbWVudSByZWR1Y2UgKi9cclxuICAgICAgICAgICAgICAubGFyZ2UucmVkdWNlIC5yZWdpb24tbWVudSBoMiB7IGN1cnNvcjpwb2ludGVyO31cclxuICAgICAgICAgICAgICAubGFyZ2UucmVkdWNlIC5yZWdpb24tbWVudSBoMjpob3ZlciB7IGNvbG9yOiMyZjZjODk7fVxyXG4gICAgICAgICAgICAgIC5sYXJnZS5yZWR1Y2UgLnJlZ2lvbi1tZW51IHVsIHsgZGlzcGxheTpub25lO31cclxuICAgICAgICAgICAgICAubGFyZ2UucmVkdWNlIC5yZWdpb24tbWVudS5zaG93IHVsIHsgZGlzcGxheTpibG9jazt9XHJcblxyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBNRU5VIEFDVElPTlxyXG4gICAgICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgICAgICAgIC5tZW51LWFjdGlvbi13cmFwcGVyIHt9XHJcbiAgICAgICAgICAgIC5tZW51LWFjdGlvbi13cmFwcGVyIGgyIHsgbWFyZ2luOjAgMCAyMHB4IDA7fVxyXG4gICAgICAgICAgICAubWVudS1hY3Rpb24td3JhcHBlciB1bC5tZW51LWFjdGlvbiB7fVxyXG4gICAgICAgICAgICAgIC5tZW51LWFjdGlvbi13cmFwcGVyIHVsLm1lbnUtYWN0aW9uIGxpLm1lbnUtYWN0aW9uLWl0ZW0geyBtYXJnaW46MCAwIDEwcHggMDt9XHJcbiAgICAgICAgICAgICAgICAubWVudS1hY3Rpb24td3JhcHBlciB1bC5tZW51LWFjdGlvbiBsaS5tZW51LWFjdGlvbi1pdGVtIGEge31cclxuXHJcblxyXG5cclxuXHJcbiAgICAgICAgLyogLnpvbmUtY29udGVudCB7IHBhZGRpbmc6NjBweCAwIDAgMDsgd2lkdGg6MTAwJTsgbWluLWhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kOiNmOGY4Zjg7fSAqL1xyXG4gICAgICAgIC56b25lLWNvbnRlbnQgeyB3aWR0aDoxMDAlOyBtaW4taGVpZ2h0OjEwMCU7IG1pbi13aWR0aDo1MDBweDsgYmFja2dyb3VuZDojRjVGNkZBOyBvcmRlcjoyOyBmbGV4LWdyb3c6MTsgLXdlYmtpdC1mbGV4LWdyb3c6MTsgLW1vei1mbGV4LWdyb3c6MTt9XHJcbiAgICAgICAgLyogLnpvbmUtY29udGVudC5wYWRkaW5nLWxlZnQgeyBwYWRkaW5nLWxlZnQ6MTEwcHg7fVxyXG4gICAgICAgIC56b25lLWNvbnRlbnQucGFkZGluZy1sZWZ0LWxhcmdlIHsgcGFkZGluZy1sZWZ0OjIzMHB4O31cclxuICAgICAgICAuem9uZS1jb250ZW50LnBhZGRpbmctcmlnaHQgeyBwYWRkaW5nLXJpZ2h0OjExMHB4O31cclxuICAgICAgICAuem9uZS1jb250ZW50LnBhZGRpbmctcmlnaHQtbGFyZ2UgeyBwYWRkaW5nLXJpZ2h0OjIzMHB4O30gKi9cclxuXHJcbiAgICAgICAgICAucmVnaW9uLWNvbnRlbnQgeyBtYXJnaW46MTBweDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kOiNmZmY7IGJvcmRlci1yYWRpdXM6NHB4O31cclxuICAgICAgICAgICAgLnJlZ2lvbi1jb250ZW50IC5ibG9jay1jb250ZW50LWJvZHkgeyAvKiBvdmVyZmxvdzpoaWRkZW47ICovfVxyXG5cclxuICAgICAgICAgICNyZWdpb24tY292ZXIgeyBtYXJnaW46MCAwIDEwcHg7IH1cclxuICAgICAgICAgICAgI3JlZ2lvbi1jb3ZlciBwIHsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MTBweCAxMHB4IDEwcHg7IGxpbmUtaGVpZ2h0OjIwcHg7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlYmViZWI7fVxyXG4gICAgICAgIFxyXG4gICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogT3BlcmEvSUUgOCsgKi9cclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogRmlyZWZveCwgYXV0cmVzIEdlY2tvICovXHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIGF1dHJlcyBXZWJLaXQgKi9cclxuICAgICAgICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZPT1RFUlxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxcclxuICogTU9EVUxFXHJcbiAqIE9iamV0cy9zdHJ1Y3R1cmVzIHLDqXV0aWxpc2FibGVzIDpcclxuICogTWVudS8gQmxvY2tzLyBCb3V0b25zLyBFdGM7XHJcblxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gLyoqXHJcbiAgICogRk9OVFNcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAvKiBUaGluICovXHJcbiAgICAvKiB7XHJcbiAgICAgIGZvbnQtZmFtaWx5Oidyb2JvdG90aGluJywgc2Fucy1zZXJpZjtcclxuICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG4gICAgfSAqL1xyXG5cclxuICAgIC8qIExpZ2h0ICovXHJcbiAgICAgIC8qe1xyXG4gICAgICAgZm9udC1mYW1pbHk6J3JvYm90b2xpZ2h0Jywgc2Fucy1zZXJpZjtcclxuICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuICAgICB9Ki9cclxuXHJcbiAgICAvKiBSZWd1bGFyICovXHJcbiAgICBib2R5LFxyXG4gICAgaDEsXHJcbiAgICAjcmVnaW9uLW1haW4tbWVudSBsaSBhLFxyXG4gICAgLnJlZ2lvbi1tZW51IGgyIHtcclxuICAgICAgZm9udC1mYW1pbHk6J3JvYm90b3JlZ3VsYXInLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgLyogTWVkaXVtICovXHJcbiAgICAuYnJlYWRjcnVtYixcclxuICAgIGRpdi5tZXNzYWdlcyBoMyB7XHJcbiAgICAgIGZvbnQtZmFtaWx5Oidyb2JvdG9tZWRpdW0nLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAvKiBCb2xkICovXHJcbiAgICBiLCBzdHJvbmcsXHJcbiAgICAuYm9sZCxcclxuICAgIC5icmVhZGNydW1iPmEsXHJcbiAgICAuYmxvY2stY29udGVudCBoMixcclxuICAgIC5ibG9jay1jb250ZW50IGgzLFxyXG4gICAgLmJsb2NrLWNvbnRlbnQgaDQsXHJcbiAgICAubGFyZ2UgLnJlZ2lvbi1tZW51IGgyIHtcclxuICAgICAgZm9udC1mYW1pbHk6J3JvYm90b2JvbGQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgLyogRHJvaWQgU2FucyBNb25vICovXHJcbiAgICAgIC5udW1iZXIsXHJcbiAgICAgIC5iaWctbnVtYmVyIHtcclxuICAgICAgICBmb250LWZhbWlseTonZHJvaWRTYW5zTW9ubycsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYm9sZCxcclxuICAgICAgc3Ryb25nLFxyXG4gICAgICBiIHsgZm9udC13ZWlnaHQ6OTAwIWltcG9ydGFudDt9XHJcblxyXG4gICAgXHJcbiAgICAvKkZvbnRBd2Vzb21lKi9cclxuICAgIGRpdi5tZXNzYWdlczo6YmVmb3JlIHtcclxuICAgICAgZm9udC1mYW1pbHk6J2ZvbnRhd2Vzb21lJztcclxuICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG4gICAgfVxyXG5cclxuXHJcbi8qKlxyXG4gICAqIFRSQU5TSVRJT05TXHJcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuICAgIGEsXHJcbiAgICAuZ3JhZGllbnQtZGVmYXVsdCxcclxuICAgIC5yZWdpb24tbWVudSBoMixcclxuICAgICNyZWdpb24tbWFpbi1tZW51PmxpPnVsLFxyXG4gICAgLnJlZ2lvbi1tZW51OjpiZWZvcmUsXHJcbiAgICAjbm90aWZpY2F0aW9uLWxpbms6OmJlZm9yZSxcclxuICAgICNub3RpZmljYXRpb24tbGluayB1bCxcclxuICAgIC8qIC5yZWdpb24tbWVudSB1bCwgKi9cclxuICAgIGltZyxcclxuICAgICNzY3JvbGwtdG9wLFxyXG4gICAgLnN0YXQtaXRlbSBoMiB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyoge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZTtcclxuICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XHJcbiAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZTtcclxuICAgICAgIH0gKi9cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFNIQURPV1xyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyAgICBcclxuICAgICNyZWdpb24tbWFpbi1tZW51PmxpPnVsLFxyXG4gICAgI25vdGlmaWNhdGlvbi1saW5rIHVsLFxyXG4gICAgLnJlZ2lvbi1tZW51IHVsIHtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiAwcHggMXB4IDRweCAwcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggNHB4IDBweCByZ2JhKDAsMCwwLDAuNSk7XHJcbiAgICAgIC1vLWJveC1zaGFkb3c6IDBweCAxcHggNHB4IDBweCByZ2JhKDAsMCwwLDAuNSk7XHJcbiAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggNHB4IDBweCByZ2JhKDAsMCwwLDAuNSk7XHJcbiAgICAgIGZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuU2hhZG93KGNvbG9yPSM2NTY1NjUsIERpcmVjdGlvbj1OYU4sIFN0cmVuZ3RoPTQwKTtcclxuICAgIH1cclxuXHJcbiAgICAucmVnaW9uLWxvZ2luIHtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiAycHggMnB4IDE1cHggMHB4IHJnYmEoMCwwLDAsMC4xNSk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMnB4IDJweCAxNXB4IDBweCByZ2JhKDAsMCwwLDAuMTUpO1xyXG4gICAgICAtby1ib3gtc2hhZG93OiAycHggMnB4IDE1cHggMHB4IHJnYmEoMCwwLDAsMC4xNSk7XHJcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTVweCAwcHggcmdiYSgwLDAsMCwwLjE1KTtcclxuICAgICAgZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5TaGFkb3coY29sb3I9IzY1NjU2NSwgRGlyZWN0aW9uPU5hTiwgU3RyZW5ndGg9NDApO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAubGFyZ2UgLnJlZ2lvbi1tZW51IHVse1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsMCwwLDApO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsMCwwLDApO1xyXG4gICAgICAtby1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgwLDAsMCwwKTtcclxuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwwLDAsMCk7XHJcbiAgICAgIGZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuU2hhZG93KGNvbG9yPSM2NTY1NjUsIERpcmVjdGlvbj1OYU4sIFN0cmVuZ3RoPTApO1xyXG4gICAgfVxyXG5cclxuICAvKipcclxuICAgKiBHUkFESUVOVFxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLmdyYWRpZW50LWRlZmF1bHQsXHJcbiAgICBsaSN1c2VyLWxpbms6aG92ZXIgLmdyYWRpZW50LWRlZmF1bHQsXHJcbiAgICBoMSNwYWdlLXRpdGxlOjpiZWZvcmUsXHJcbiAgICAuaGVhZGVyLWJsb2NrOjpiZWZvcmUsXHJcbiAgICAjc2Nyb2xsLXRvcDpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6cmdiYSg1NCw2NSwxODMsMSk7XHJcbiAgICAgIGJhY2tncm91bmQ6LW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoNTQsNjUsMTgzLDEpIDAlLCByZ2JhKDU4LDE4MywxOTQsMSkgMTAwJSk7XHJcbiAgICAgIGJhY2tncm91bmQ6LXdlYmtpdC1ncmFkaWVudChsZWZ0IGJvdHRvbSwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDU0LDY1LDE4MywxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSg1OCwxODMsMTk0LDEpKSk7XHJcbiAgICAgIGJhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoNTQsNjUsMTgzLDEpIDAlLCByZ2JhKDU4LDE4MywxOTQsMSkgMTAwJSk7XHJcbiAgICAgIGJhY2tncm91bmQ6LW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDU0LDY1LDE4MywxKSAwJSwgcmdiYSg1OCwxODMsMTk0LDEpIDEwMCUpO1xyXG4gICAgICBiYWNrZ3JvdW5kOi1tcy1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoNTQsNjUsMTgzLDEpIDAlLCByZ2JhKDU4LDE4MywxOTQsMSkgMTAwJSk7XHJcbiAgICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDU0LDY1LDE4MywxKSAwJSwgcmdiYSg1OCwxODMsMTk0LDEpIDEwMCUpO1xyXG4gICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzM2NDFiNycsIGVuZENvbG9yc3RyPScjM2FiN2MyJywgR3JhZGllbnRUeXBlPTEgKTtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWJsb2NrOjpiZWZvcmV7ei1pbmRleDogMTt9XHJcblxyXG5cclxuICAgIC50ZXh0LWdyYWRpZW50LWRlZmF1bHQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMmY2Yzg5O1xyXG4gICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogQ0xFQVJGSVhcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC5jbGVhcmZpeDphZnRlciB7IHZpc2liaWxpdHk6aGlkZGVuOyBkaXNwbGF5OmJsb2NrOyBmb250LXNpemU6MDsgY29udGVudDpcIlwiOyBjbGVhcjpib3RoOyBoZWlnaHQ6MDt9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBDb250YWluZXItZmxleFxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLmNvbnRhaW5lci1mbGV4IHsgXHJcbiAgICAgIGRpc3BsYXk6LXdlYmtpdC1ib3g7XHJcbiAgICAgIGRpc3BsYXk6LW1vei1ib3g7XHJcbiAgICAgIGRpc3BsYXk6LW1zLWZsZXhib3g7XHJcbiAgICAgIGRpc3BsYXk6LW1vei1mbGV4O1xyXG4gICAgICBkaXNwbGF5Oi13ZWJraXQtZmxleDtcclxuICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgICBmbGV4LWZsb3c6cm93IHdyYXA7XHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyLWZsZXgtY2VudGVyIHsganVzdGlmeS1jb250ZW50OmNlbnRlcjt9XHJcbiAgICAuY29udGFpbmVyLWZsZXggLmJsb2NrLWZsZXggeyBtYXJnaW46MTBweDt9XHJcblxyXG4gICAgLmZsZXgtd3JhcHBlciB7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LW1vei1ib3g7IGRpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7fVxyXG4gICAgLmZsZXgtd3JhcHBlciAuZmxleC1tYWluIHsgZmxleC1ncm93OjE7IC13ZWJraXQtZmxleC1ncm93OjE7IC1tb3otZmxleC1ncm93OjE7fVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogTUVTU0FHRVNcclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICBkaXYubWVzc2FnZXMgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgbWFyZ2luOjAgMCAxMHB4OyBwYWRkaW5nOjEwcHggMjBweDt9XHJcbiAgICAgICAgZGl2Lm1lc3NhZ2VzIGgzIHsgbWFyZ2luOjAgMCA0cHggNTBweDsgY29sb3I6I2ZmZmZmZjsgZm9udC1zaXplOjEzcHg7IGxpbmUtaGVpZ2h0OjE4cHg7fVxyXG4gICAgICAgIGRpdi5tZXNzYWdlcyBwIHsgbWFyZ2luOjAgMCAxMHB4IDUwcHg7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc2l6ZToxM3B4OyBsaW5lLWhlaWdodDoxOHB4O31cclxuICAgICAgICBkaXYubWVzc2FnZXM6OmJlZm9yZSB7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6NTAlOyBsZWZ0OjIwcHg7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbi10b3A6LTE1cHg7IHdpZHRoOjMwcHg7IGhlaWdodDoyNXB4OyBsaW5lLWhlaWdodDoyNXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgY29sb3I6I2ZmZmZmZjsgZm9udC1zaXplOjMwcHg7IH1cclxuXHJcbiAgICAgIGRpdi5zdWNjZXNzIHsgYmFja2dyb3VuZC1jb2xvcjpyZ2IoMCwgMTg5LCAxNTcpO31cclxuICAgICAgICBkaXYuc3VjY2Vzczo6YmVmb3JlIHsgY29udGVudDonXFxmMDBjJzt9XHJcblxyXG4gICAgICBkaXYuZXJyb3IsXHJcbiAgICAgIGRpdi5uZWdhdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6cmdiKDI1NCwgOTQsIDEyMCk7fVxyXG4gICAgICAgIGRpdi5lcnJvcjo6YmVmb3JlLFxyXG4gICAgICAgIGRpdi5uZWdhdGl2ZTo6YmVmb3JlIHsgY29udGVudDonXFxmMDBkJzt9XHJcblxyXG4gICAgICBkaXYud2FybmluZyB7IGJhY2tncm91bmQtY29sb3I6cmdiKDIyMSwxOTcsMzUpO31cclxuICAgICAgICBkaXYud2FybmluZzo6YmVmb3JlIHsgY29udGVudDonXFxmMTI5JzsgY29sb3I6IzY5NDkwMDt9XHJcbiAgICAgICAgZGl2Lndhcm5pbmcgaDMsXHJcbiAgICAgICAgZGl2Lndhcm5pbmcgcCB7IGNvbG9yOiM2OTQ5MDA7fVxyXG4gICAgXHJcbiAgICAgIGRpdi5pbmZvLWdyZXkgeyBiYWNrZ3JvdW5kLWNvbG9yOiNlZmVmZWY7fVxyXG4gICAgICAgIGRpdi5pbmZvLWdyZXk6OmJlZm9yZSB7IGNvbnRlbnQ6J1xcZjEyOSc7fVxyXG4gICAgICAgIGRpdi5pbmZvLWdyZXkgZGl2Lm1lc3NhZ2VzLWNsb3NlOmhvdmVyIHsgY29sb3I6I2VmZWZlZjsgYmFja2dyb3VuZDojZmZmZmZmOyB9XHJcbiAgICAgICAgZGl2LmluZm8tZ3JleTo6YmVmb3JlLFxyXG4gICAgICAgIGRpdi5pbmZvLWdyZXkgaDMsXHJcbiAgICAgICAgZGl2LmluZm8tZ3JleSBwIHsgY29sb3I6IzhlOGU4ZTt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNDUk9MTCBUT1BcclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAjc2Nyb2xsLXRvcCB7IHBvc2l0aW9uOmZpeGVkOyB6LWluZGV4Ojk5OTk5OTsgYm90dG9tOi0xMDBweDsgcmlnaHQ6MjBweDsgZGlzcGxheTpibG9jazsgd2lkdGg6NTBweDsgaGVpZ2h0OjUwcHg7IGNvbG9yOiNmZmZmZmY7IHRleHQtYWxpZ246Y2VudGVyOyBiYWNrZ3JvdW5kOnJnYmEoMzksMTU0LDE3MywgMC41NSk7IGN1cnNvcjpwb2ludGVyOyBib3JkZXItcmFkaXVzOjRweDt9XHJcbiAgICAgICNzY3JvbGwtdG9wIHN2ZyB7IGZvbnQtc2l6ZToxOHB4OyBsaW5lLWhlaWdodDo1MHB4O31cclxuICAgICNzY3JvbGwtdG9wOmhvdmVyIHsgLypiYWNrZ3JvdW5kOnJnYmEoMzksMTU0LDE3MywgMC45KTsqLyB9XHJcbiAgICAjc2Nyb2xsLXRvcC5zaG93IHsgYm90dG9tOjIwcHg7fVxyXG5cclxuICAvKiBCYWNrZ3JvdW5kcyAqL1xyXG4gIHRyLmJnLWVycm9yLCAuYmctZXJyb3J7IGJhY2tncm91bmQ6ICNmOGQ3ZGEhaW1wb3J0YW50OyB9XHJcbiAgLmJnLXN1Y2Nlc3N7IGJhY2tncm91bmQ6ICNkMWU3ZGQhaW1wb3J0YW50OyB9XHJcbiAgLmJnLWluZm97IGJhY2tncm91bmQ6ICNkMWVjZjEhaW1wb3J0YW50OyB9XHJcbiAgLmJnLXdhcm5pbmd7IGJhY2tncm91bmQ6ICNGNURGQzAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qIEJvcmRlcnMgY2hlY2tib3ggKi9cclxuICAuY2hlY2tib3gtZXJyb3J7IG91dGxpbmU6IDFweCBzb2xpZCAjZjhkN2RhICFpbXBvcnRhbnQ7IH1cclxuICAuY2hlY2tib3gtc3VjY2Vzc3sgb3V0bGluZTogMXB4IHNvbGlkICNkMWU3ZGQgIWltcG9ydGFudDsgfVxyXG4gIC5jaGVja2JveC1pbmZveyBvdXRsaW5lOiAxcHggc29saWQgI2QxZWNmMSAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEJSRUFEQ1JVTUJTXHJcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLyogLmJyZWFkY3J1bWIgeyBtYXJnaW46MCAwIDIwcHg7IHBhZGRpbmc6MCAwIDEwcHg7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlYmViZWI7fSAqL1xyXG4gICAgLmJyZWFkY3J1bWIgeyBtYXJnaW46MCAwIDIwcHg7fVxyXG4gICAgLmJyZWFkY3J1bWIsXHJcbiAgICAuYnJlYWRjcnVtYj5hIHsgZm9udC1zaXplOjEzcHg7IGxpbmUtaGVpZ2h0OjIwcHg7IHRleHQtZGVjb3JhdGlvbjpub25lOyB9XHJcbiAgICBzcGFuLmNydW1icy1zZXBhcmF0b3IgeyBwYWRkaW5nOjAgOHB4OyBmb250LXNpemU6MTZweDt9XHJcblxyXG5cclxuICAvKiBXcmFwcGVyIGNvbHVtcyAqL1xyXG4gICAgICAgIC53cmFwcGVyLWNvbHVtcyB7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LW1vei1ib3g7IGRpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LW1vei1mbGV4OyBkaXNwbGF5Oi13ZWJraXQtZmxleDsgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6cm93IHdyYXA7fVxyXG4gICAgICAgIC53cmFwcGVyLWNvbHVtcy5jZW50ZXIgeyBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOyB9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcyB7IG1hcmdpbjoxMHB4OyB9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy0xIHsgd2lkdGg6MjAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtMiB7IHdpZHRoOjMwMHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLTMgeyB3aWR0aDo0MDBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy00IHsgd2lkdGg6NTAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtNSB7IHdpZHRoOjYwMHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLTYgeyB3aWR0aDo3MDBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy03IHsgd2lkdGg6ODAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtOCB7IHdpZHRoOjkwMHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLWZ1bGwgeyB3aWR0aDo5NjBweDt9XHJcblxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5hbHBoYSB7IG1hcmdpbi1sZWZ0OjA7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5vbWVnYSB7IG1hcmdpbi1yaWdodDowO31cclxuXHJcbiAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbnRlbnQtYm9keSB7IG9yZGVyOjE7IGZsZXg6MTsgbWFyZ2luLXJpZ2h0OjIwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb250ZW50LXNpZGUgeyBvcmRlcjoyOyB3aWR0aDoyMDBweDt9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBXUkFQUEVSIENPTE9NTlNcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC53cmFwcGVyLWNvbG9tbnMgeyBkaXNwbGF5Oi13ZWJraXQtYm94OyBkaXNwbGF5Oi1tb3otYm94OyBkaXNwbGF5Oi1tcy1mbGV4Ym94OyBkaXNwbGF5Oi1tb3otZmxleDsgZGlzcGxheTotd2Via2l0LWZsZXg7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyB3cmFwO31cclxuICAgICAgICAud3JhcHBlci1jb2xvbW5zLmNlbnRlciB7IGp1c3RpZnktY29udGVudDpjZW50ZXI7IH1cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMgeyBtYXJnaW46MTBweDsgfVxyXG4gICAgICAgICAgLyogLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0xIHsgd2lkdGg6MjAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0yIHsgd2lkdGg6MzAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0zIHsgd2lkdGg6NDAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy00IHsgd2lkdGg6NTAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy01IHsgd2lkdGg6NjAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy02IHsgd2lkdGg6NzAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy03IHsgd2lkdGg6ODAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy04IHsgd2lkdGg6OTQwcHg7fSAqL1xyXG5cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtMSB7IHdpZHRoOjYwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0yIHsgd2lkdGg6MTQwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0zIHsgd2lkdGg6MjIwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy00IHsgd2lkdGg6MzAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy01IHsgd2lkdGg6MzgwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy02IHsgd2lkdGg6NDYwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy03IHsgd2lkdGg6NTQwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy04IHsgd2lkdGg6NjIwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy05IHsgd2lkdGg6NzAwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0xMCB7IHdpZHRoOjc4MHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtMTEgeyB3aWR0aDo4NjBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLTEyIHsgd2lkdGg6OTQwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1mdWxsIHsgd2lkdGg6OTYwcHg7fVxyXG5cclxuICAgICAgICAgIC8qIFByZWZpeCAqL1xyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtMSB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA3MHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTIgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMTUwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtMyB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCAyMzBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC00IHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDMxMHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTUgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMzkwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtNiB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA0NzBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC03IHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDU1MHB4O31cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTggeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNjMwcHg7fVxyXG4gICAgICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtOSB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA3MTBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC0xMCB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA3OTBweDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC0xMSB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA4NzBweDt9XHJcblxyXG5cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMgeyBtYXJnaW4tdG9wOjA7fVxyXG5cclxuICAgICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmFscGhhIHsgbWFyZ2luLWxlZnQ6MDt9XHJcbiAgICAgICAgICAud3JhcHBlci1jb2xvbW5zIC5vbWVnYSB7IG1hcmdpbi1yaWdodDowO31cclxuICAgICAgXHJcblxyXG4gIFxyXG4gIC8qKlxyXG4gICAqIE1FTlUgXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAuYmFzZS1tZW51IHsgZm9udC1zaXplOjA7fVxyXG4gICAgICAuYmFzZS1tZW51IGxpIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHBhZGRpbmc6MCAxNXB4O31cclxuICAgICAgICAuYmFzZS1tZW51IGxpIGEgeyBkaXNwbGF5OmJsb2NrOyBoZWlnaHQ6MTAwJTsgbGluZS1oZWlnaHQ6MzJweDsgZm9udC1zaXplOjEycHg7fVxyXG4gICAgICAgICAgLmJhc2UtbWVudSBsaSBhIHNwYW4gc3ZnIHsgbGluZS1oZWlnaHQ6MzJweDsgZm9udC1zaXplOjE2cHg7fVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogTk9USUZJQ0FUSU9OXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgICAgI25vdGlmaWNhdGlvbi1saW5rIHsgcG9zaXRpb246cmVsYXRpdmU7fVxyXG4gICAgICAjbm90aWZpY2F0aW9uLWxpbms6OmJlZm9yZSB7IHBvc2l0aW9uOmFic29sdXRlOyBib3R0b206LTE0cHg7IHJpZ2h0OjE1cHg7IGNvbnRlbnQ6Jyc7IHdpZHRoOjA7IGhlaWdodDowOyBib3JkZXItc3R5bGU6c29saWQ7IGJvcmRlci13aWR0aDowIDcuNXB4IDAgNy41cHg7IGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzgzZjU2IHRyYW5zcGFyZW50O31cclxuICAgICAgI25vdGlmaWNhdGlvbi1saW5rIHVsIHsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo0NnB4OyByaWdodDotMjBweDsgcGFkZGluZzowOyB3aWR0aDozNTBweDsgbWF4LWhlaWdodDowOyBiYWNrZ3JvdW5kOiMzODNmNTY7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiAgICAgICNub3RpZmljYXRpb24tbGluayB1bCBsaSB7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowOyBwYWRkaW5nOjAgNHB4OyBiYWNrZ3JvdW5kOiNmZmZmZmY7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNkZGQ7fVxyXG4gICAgICAjbm90aWZpY2F0aW9uLWxpbms+dWw+bGk+YSB7IGRpc3BsYXk6YmxvY2s7IGNvbG9yOiMwMDAgIWltcG9ydGFudDsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuXHJcbiAgICAgICNub3RpZmljYXRpb24tbGluazpob3Zlcjo6YmVmb3JlIHsgYm9yZGVyLXdpZHRoOjAgNy41cHggMTBweCA3LjVweDt9XHJcbiAgICAgICNub3RpZmljYXRpb24tbGluazpob3ZlciB1bCB7IHBhZGRpbmc6MnB4O21heC1oZWlnaHQ6OTk5OXB4O3dpZHRoOiAyNTBweDt9XHJcbiAgICAgICNub3RpZmljYXRpb24tbGluazpob3ZlciBsaSB7IGhlaWdodDogYXV0bzt9XHJcblxyXG4gICAgICAjbm90aWZpY2F0aW9uLWxpbmsgdWwgbGk6aG92ZXIgeyBiYWNrZ3JvdW5kOiNjY2M7IGJvcmRlci1jb2xvcjojMDAwfVxyXG4gICAgICAjbm90aWZpY2F0aW9uLWxpbmsgdWwgbGkgYTpob3ZlciB7IGNvbG9yOiMwMDA7fVxyXG5cclxuICAgICAgI25vdGlmaWNhdGlvbi1saW5rPnVsPmxpPmE6aG92ZXJ7YmFja2dyb3VuZDogI2U1ZTVlNSAhaW1wb3J0YW50O31cclxuXHJcbiAgICAgICNub3RpZmljYXRpb24tbGluayAuY2hlY2stZGVtYW5kZXsgICAgIFxyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICByaWdodDogNXB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogIzFkMzY3YztcclxuICAgICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogIFRIVU1CXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC50aHVtYiB7Y29udGVudDogJ1xcZjAzZSc7Zm9udC1mYW1pbHk6ICdmb250YXdlc29tZSc7Zm9udC1zaXplOiAyMHB4fVxyXG4gICAgICAudGh1bWIgYSB7IGRpc3BsYXk6YmxvY2s7fVxyXG4gICAgICAgIC50aHVtYiBhIGltZyB7IH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqICBCQURHRVxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICBzcGFuLmJhZGdlIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHBhZGRpbmc6MHB4IDVweDsgbWF4LWhlaWdodDowOyBsaW5lLWhlaWdodDppbml0aWFsOyBib3JkZXItcmFkaXVzOjRweDsgdGV4dC1hbGlnbjpjZW50ZXI7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc2l6ZToxMHB4OyBiYWNrZ3JvdW5kOiNmYTNlM2U7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiAgICAgIHNwYW4uYmFkZ2UgeyBwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDo3cHg7IHRvcDowcHg7fVxyXG4gICAgc3Bhbi5iYWRnZS5hY3RpdmUgeyBwYWRkaW5nOjJweCA1cHg7IG1heC1oZWlnaHQ6NDBweDt9XHJcblxyXG5cclxuICAgLyoqXHJcbiAgICogVFhUXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAudHh0LWdyZWVuLFxyXG4gICAgIC5idG4tbmV1dHJlIC5mYS50eHQtZ3JlZW4sXHJcbiAgICAgLmJ0bi1uZXV0cmUudHh0LWdyZWVuIC5mYSB7IGNvbG9yOnJnYigwLCAxODksIDE1NykhaW1wb3J0YW50O31cclxuICAgICAudHh0LW9yYW5nZSxcclxuICAgICAuYnRuLW5ldXRyZSAuZmEudHh0LW9yYW5nZSxcclxuICAgICAuYnRuLW5ldXRyZS50eHQtb3JhbmdlIC5mYSB7IGNvbG9yOnJnYigyNTMsIDE1NCwgNjYpIWltcG9ydGFudDt9XHJcbiAgICAgLnR4dC1yZWQsXHJcbiAgICAgLmJ0bi1uZXV0cmUgLmZhLnR4dC1yZWQsXHJcbiAgICAgLmJ0bi1uZXV0cmUudHh0LXJlZCAuZmEgeyBjb2xvcjpyZ2IoMjU0LCA5NCwgMTIwKSFpbXBvcnRhbnQ7fVxyXG5cclxuXHJcbiAgIC8qKlxyXG4gICAqIEJUTlxyXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAgLmJ0biB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBwYWRkaW5nOjAgMTVweDsgbGluZS1oZWlnaHQ6MzJweDsgYm9yZGVyOjA7IGJvcmRlci1yYWRpdXM6NHB4OyBiYWNrZ3JvdW5kOnJnYigyNTQsIDk0LCAxMjApOyBjb2xvcjojZmZmZmZmIWltcG9ydGFudDsgY3Vyc29yOnBvaW50ZXI7IH1cclxuICAgICAgLmJ0biBzcGFuIHsgY29sb3I6I2ZmZmZmZjt9XHJcbiAgICAuYnRuOmhvdmVyIHsgYmFja2dyb3VuZDpyZ2JhKDI1NCwgOTQsIDEyMCwwLjgpO31cclxuXHJcbiAgICAuYnRuLXNtYWxsIHsgaGVpZ2h0OjIwcHg7IGxpbmUtaGVpZ2h0OjIwcHg7fVxyXG4gICAgLmJ0bi11bHRyYVNtYWxsIHsgaGVpZ2h0OjE1cHg7IGxpbmUtaGVpZ2h0OjE1cHg7fVxyXG5cclxuICAgIC5idG4tbmV1dHJlLFxyXG4gICAgLmJ0bi1uZXV0cmU6aG92ZXIsXHJcbiAgICAuYnRuLW5ldXRyZSAuZmEgeyBjb2xvcjojMzMzMzMzIWltcG9ydGFudDsgYmFja2dyb3VuZDp0cmFuc3BhcmVudDsgY3Vyc29yOmRlZmF1bHQ7fVxyXG5cclxuICAgIC5idG4tcmV0dXJuIHsgZGlzcGxheTpibG9jazsgbWFyZ2luOjAgMCAyMHB4OyBwYWRkaW5nOjAgMCAwIDhweDsgYmFja2dyb3VuZDojMTQxZjM4OyBjb2xvcjojY2JjZWQ3IWltcG9ydGFudDt9XHJcbiAgICAgIC5idG4tcmV0dXJuIHNwYW4geyBtYXJnaW4tcmlnaHQ6NHB4OyBjb2xvcjojY2JjZWQ3O31cclxuICAgIC5idG4tcmV0dXJuOmhvdmVyIHsgY29sb3I6IzE0MWYzOCFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6I2NiY2VkNzt9XHJcbiAgICAgIC5idG4tcmV0dXJuOmhvdmVyIHNwYW4geyBjb2xvcjojMTQxZjM4IWltcG9ydGFudDt9XHJcblxyXG4gICAgLmJ0bi1ncmVlbiB7IGJhY2tncm91bmQ6IzJkYTFiMjsgfVxyXG4gICAgICAuYnRuLWdyZWVuOmhvdmVyIHsgYmFja2dyb3VuZDojM2NiOWM1OyB9XHJcblxyXG4gICAgLmJ0bi1ibHVlIHsgYmFja2dyb3VuZDojMmY2Yzg5OyB9XHJcbiAgICAgIC5idG4tYmx1ZTpob3ZlciB7IGJhY2tncm91bmQ6IzNlNzE4OTk3OyB9XHJcblxyXG4gICAgLmJ0bi1saWdodGJsdWUgeyBiYWNrZ3JvdW5kOiMyYzg4ZDk7IH1cclxuICAgICAgLmJ0bi1saWdodGJsdWU6aG92ZXIgeyBiYWNrZ3JvdW5kOiMzMjk5ZjM7IH1cclxuXHJcbiAgICAuYnRuLXllbGxvdyB7IGJhY2tncm91bmQ6I2ZhZDAxODsgfVxyXG4gICAgICAuYnRuLWJsdWU6aG92ZXIgeyBiYWNrZ3JvdW5kOiMzZTcxODk5NzsgfVxyXG5cclxuICAgIC5idG4tdGlueSB7IGxpbmUtaGVpZ2h0OiAyMnB4OyBwYWRkaW5nOiAwcHggMTBweDsgIG1hcmdpbi1yaWdodDogMnB4OyB9XHJcblxyXG4gICAgLyogLmJ0bi1ibHVlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoOTQsMTMyLDE3OCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSg5NCwxMzIsMTc4LDEpIDElLCByZ2JhKDU4LDE4MiwxOTQsMSkgMTAwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSg5NCwxMzIsMTc4LDEpIDElLHJnYmEoNTgsMTgyLDE5NCwxKSAxMDAlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoOTQsMTMyLDE3OCwxKSAxJSxyZ2JhKDU4LDE4MiwxOTQsMSkgMTAwJSk7XHJcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyM1ZTg0YjInLCBlbmRDb2xvcnN0cj0nIzJmNmM4OScsR3JhZGllbnRUeXBlPTEgKTtcclxuICAgICAgfVxyXG4gICAgICAuYnRuLWJsdWU6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTgsMTgyLDE5NCwgMC44KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDU4LDE4MiwxOTQsMC44KSAwJSwgcmdiYSgyNCwzMSw0NiwwLjgpIDEwMCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNTgsMTgyLDE5NCwwLjgpIDAlLHJnYmEoMjQsMzEsNDYsMC44KSAxMDAlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoNTgsMTgyLDE5NCwwLjgpIDAlLHJnYmEoMjQsMzEsNDYsMC44KSAxMDAlKTtcclxuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzJmNmM4OScsIGVuZENvbG9yc3RyPScjMTgxZjJlJyxHcmFkaWVudFR5cGU9MSApO1xyXG4gICAgICAgfSAqL1xyXG5cclxuICAgICAgLmJ0bi1vcmFuZ2UgeyBiYWNrZ3JvdW5kOnJnYigyNTUsMTQ4LDM4KTt9XHJcbiAgICAgIC5idG4tb3JhbmdlOmhvdmVyIHsgYmFja2dyb3VuZDpyZ2JhKDI1NSwxNDgsMzgsMC44KTt9XHJcbiBcclxuICAgIC5idG4tdmFsaWRlIHsgYmFja2dyb3VuZDpyZ2IoMCwxODksMTU3KTt9XHJcbiAgICAgIC5idG4tdmFsaWRlOmhvdmVyIHsgYmFja2dyb3VuZDpyZ2JhKDAsMTg5LDE1NywwLjgpO31cclxuXHJcbiAgICAuYnRuLWdyZXkgeyBiYWNrZ3JvdW5kOnJnYigxNzMsMTczLDE2MSk7IGN1cnNvcjpkZWZhdWx0O31cclxuICAgICAgLmJ0bi1ncmV5OmhvdmVyIHsgYmFja2dyb3VuZDpyZ2IoMTczLDE3MywxNjEpO31cclxuXHJcbiAgICAuYnRuLXNlbGVjdCB7IGJhY2tncm91bmQ6cmdiKDE3MywxNzMsMTYxKTt9XHJcbiAgICAgIC5idG4tc2VsZWN0OmhvdmVyLFxyXG4gICAgICAuYnRuLXNlbGVjdC5hY3RpdmUgeyBiYWNrZ3JvdW5kOnJnYig0OSwgMTg5LCAxMTIpIC8qcmdiKDExMywxNzUsNjYpKi87fVxyXG5cclxuICAgIC5idG4tb25nbGV0IHsgYmFja2dyb3VuZDojZmZmZmZmIWltcG9ydGFudDsgY29sb3I6IzJkYTFiMiFpbXBvcnRhbnQ7fVxyXG4gICAgICAuYnRuLW9uZ2xldCAuZmEsXHJcbiAgICAgIC5idG4tb25nbGV0IHNwYW4geyBjb2xvcjojMmRhMWIyIWltcG9ydGFudDt9XHJcbiAgICAgIC5idG4tb25nbGV0OmhvdmVyLFxyXG4gICAgICAuYnRuLW9uZ2xldC5hY3RpdmUgeyBiYWNrZ3JvdW5kOiMyZGExYjIhaW1wb3J0YW50OyBjb2xvcjojZmZmZmZmIWltcG9ydGFudDt9XHJcbiAgICAgICAgLmJ0bi1vbmdsZXQ6aG92ZXIgLmZhLFxyXG4gICAgICAgIC5idG4tb25nbGV0LmFjdGl2ZSAuZmEsXHJcbiAgICAgICAgLmJ0bi1vbmdsZXQ6aG92ZXIgc3BhbixcclxuICAgICAgICAuYnRuLW9uZ2xldC5hY3RpdmUgc3BhbiAgeyBjb2xvcjojZmZmZmZmIWltcG9ydGFudDt9XHJcblxyXG5cclxuIC8qKlxyXG4gICogTE9HSU4gUEFHRVxyXG4gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIGJvZHkjbG9naW4geyBiYWNrZ3JvdW5kOnVybCgnLi4vaW1nL2xheW91dC9iZ19sb2dvX2xvZ2luLnN2ZycpIGJvdHRvbSByaWdodCBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtc2l6ZTo0MDBweDt9XHJcbiAgLnNlY3Rpb24tbG9naW4geyBkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDpjZW50ZXI7fVxyXG4gICAgLnJlZ2lvbi1sb2dpbiB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgbWFyZ2luLXRvcDo1MHB4OyBwYWRkaW5nOjIwcHg7IHdpZHRoOjQwMHB4OyBiYWNrZ3JvdW5kOiNGNUY2RkE7IGJvcmRlci1yYWRpdXM6NHB4O31cclxuICAgICAgLnJlZ2lvbi1sb2dpbiBoMSB7IG1hcmdpbjowIDAgMjBweDsgZm9udC1zaXplOjIwcHg7fVxyXG4gICAgICAucmVnaW9uLWxvZ2luIC5icmFuZGluZyB7IG1hcmdpbjowIDAgMzBweDsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gICAgICBcclxuICAgICAgLnJlZ2lvbi1sb2dpbiBmb3JtIHt9XHJcbiAgICAgICAgLnJlZ2lvbi1sb2dpbiAuZm9ybS1pdGVtIHsgcG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbjowIDAgN3B4O31cclxuICAgICAgICAgIC5yZWdpb24tbG9naW4gZm9ybSAuZm9ybS1pdGVtIC5mYSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgYm94LXNpemluZzpib3JkZXItYm94OyBwYWRkaW5nOjAgOHB4OyBoZWlnaHQ6MzZweDsgZm9udC1zaXplOjIwcHg7IGxpbmUtaGVpZ2h0OjM2cHg7IGJhY2tncm91bmQ6I2ZmZmZmZjsgYm9yZGVyOjFweCBzb2xpZCAjRjVGNkZBO31cclxuICAgICAgICAgIC5yZWdpb24tbG9naW4gZm9ybSBpbnB1dCB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgbWFyZ2luOjA7IHBhZGRpbmc6MCA0cHggMCA0NHB4OyB3aWR0aDoxMDAlOyBoZWlnaHQ6MzZweDsgbGluZS1oZWlnaHQ6MzZweDsgYm9yZGVyOjFweCBzb2xpZCAjZTVlNWU1OyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG4gICAgICAgICAgLnJlZ2lvbi1sb2dpbiBmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHt9XHJcbiAgICAgICAgICAucmVnaW9uLWxvZ2luIGZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHt9XHJcblxyXG4gICAgICAgIC5yZWdpb24tbG9naW4gLmZvcm0tYWN0aW9uIHsgbWFyZ2luOjEwcHggMDsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gICAgICAgICAgLnJlZ2lvbi1sb2dpbiBidXR0b24geyB3aWR0aDoxMDAlOyBsaW5lLWhlaWdodDoxNHB4OyBmb250LXNpemU6MTRweDsgY29sb3I6I2ZmZmZmZjsgdGV4dC1hbGlnbjpjZW50ZXI7IGJhY2tncm91bmQ6IzJmNmM4OTsgYm9yZGVyOjA7IGN1cnNvcjpwb2ludGVyO31cclxuICAgICAgICAgIC5yZWdpb24tbG9naW4gYnV0dG9uOmhvdmVyIHsgYmFja2dyb3VuZDpyZ2JhKDM5LCAxNTQsIDE3MywgMC44KTt9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBTVEFULUlURU1cclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC5zdGF0LWl0ZW0geyBkaXNwbGF5OmlubGluZS1ibG9jazsgYm94LXNpemluZzpib3JkZXItYm94OyBtYXJnaW46MCAwIDIwcHggMDsgd2lkdGg6MjAwcHg7IGJvcmRlci1yYWRpdXM6NHB4OyBvdmVyZmxvdzpoaWRkZW47IGZvbnQtc2l6ZTowOyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG4gICAgICAuc3RhdC1pdGVtIGgyIHsgbWFyZ2luOjA7IHBhZGRpbmc6MTBweCAwOyBjb2xvcjojZmZmZmZmOyBsaW5lLWhlaWdodDozMHB4OyBmb250LXNpemU6MjBweDsgdGV4dC1hbGlnbjpjZW50ZXI7IGJhY2tncm91bmQ6cmdiKDIzNyw4OSw5NCk7fVxyXG4gICAgICAgIC5zdGF0LWl0ZW0gaDIgLmZhIHsgZGlzcGxheTpibG9jazsgbWFyZ2luLWJvdHRvbTo0cHg7IGZvbnQtc2l6ZTo0MHB4OyBjb2xvcjpyZ2IoMTY1LCA0MSwgNDUpO31cclxuICAgICAgXHJcbiAgICAgIC8qIEZ1bGwgKi9cclxuICAgICAgLnN0YXQtaXRlbSAuc3RhdC1pdGVtLWJveC1mdWxsIHsgZGlzcGxheTpibG9jazsgcGFkZGluZzoyMHB4IDA7IHdpZHRoOjEwMCU7IG1pbi1oZWlnaHQ6NzlweDsgbGluZS1oZWlnaHQ6MzhweDsgYm94LXNpemluZzpib3JkZXItYm94OyBmb250LXNpemU6MjRweDsgY29sb3I6IzRkNGQ0ZDsgYmFja2dyb3VuZDojZmZmZmZmOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcblxyXG4gICAgICAvKiAyIEJveCAqL1xyXG4gICAgICAuc3RhdC1pdGVtIC5zdGF0LWl0ZW0tYm94IHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHBhZGRpbmc6MjBweCAwOyB3aWR0aDoxMDBweDsgYm94LXNpemluZzpib3JkZXItYm94OyBmb250LXNpemU6MjRweDsgY29sb3I6IzRkNGQ0ZDsgYmFja2dyb3VuZDojZmZmZmZmOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiAgICAgIC5zdGF0LWl0ZW0gLnN0YXQtaXRlbS1ib3g6bnRoLWNoaWxkKGV2ZW4pIHsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjZGFkYWRhO31cclxuICAgICAgICAuc3RhdC1pdGVtIC5zdGF0LWl0ZW0tYm94IHNwYW46bnRoLW9mLXR5cGUoMSkgeyBkaXNwbGF5OmJsb2NrOyBtYXJnaW4tYm90dG9tOjRweDsgZm9udC1zaXplOjExcHg7IGNvbG9yOiM5ODk5OGI7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcblxyXG4gICAgLnN0YXQtaXRlbS5yZWQgaDIgeyBiYWNrZ3JvdW5kOiNlZDM5NmQ7IGNvbG9yOiNmZmY7fVxyXG4gICAgICAuc3RhdC1pdGVtLnJlZCBoMiAuZmEgeyBjb2xvcjojYmIyZDU2O31cclxuXHJcbiAgICAuc3RhdC1pdGVtLmdyZWVuIGgyIHsgYmFja2dyb3VuZDojIzE0YWY1NTsgY29sb3I6I2ZmZjt9XHJcbiAgICAgIC5zdGF0LWl0ZW0uZ3JlZW4gaDIgLmZhIHsgY29sb3I6I2ZmZjt9XHJcblxyXG4gICAgLnN0YXQtaXRlbS55ZWxsb3cgYSBoMiB7IGJhY2tncm91bmQ6IyNmOWJiNTc7IH1cclxuICAgICAgLnN0YXQtaXRlbS55ZWxsb3cgaDIgLmZhIHsgY29sb3I6IyNmOWJiNTc7fVxyXG5cclxuICAgIC8qIC5zdGF0LWl0ZW0ucGluayBoMiB7IGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2IoMjU1LCAzMiwgOTMpIDAlLCByZ2IoMTU2LCAwLCA0MykgMTAwJSk7fSAqL1xyXG4gICAgLnN0YXQtaXRlbS5waW5rIGEgaDIgeyBiYWNrZ3JvdW5kOiNGRjIwNUQ7IH1cclxuICAgICAgLnN0YXQtaXRlbS5waW5rIGgyIC5mYSB7IGNvbG9yOiNmZmY7fVxyXG5cclxuICAgIC5zdGF0LWl0ZW0uYmx1ZSBoMiB7IGJhY2tncm91bmQ6IzI3OTNjNDt9XHJcbiAgICAgIC5zdGF0LWl0ZW0uYmx1ZSBoMiAuZmEgeyBjb2xvcjojMWY3NDlhO31cclxuXHJcbiAgICAuc3RhdC1pdGVtLnR1cnF1b2lzZSBoMiB7IGJhY2tncm91bmQ6IzJmNmM4OTsgY29sb3I6I2ZmZjt9XHJcbiAgICAgIC5zdGF0LWl0ZW0udHVycXVvaXNlIGgyIC5mYSB7IC8qY29sb3I6IzFmNjQ2YjsqLyBjb2xvcjojZmZmO31cclxuXHJcbiAgICAuc3RhdC1pdGVtLnB1cnBsZSBoMiB7IGJhY2tncm91bmQ6IzM2NDBiNzsgY29sb3I6I2ZmZjt9XHJcbiAgICAgIC5zdGF0LWl0ZW0ucHVycGxlIGgyIC5mYSB7IGNvbG9yOiNmZmY7fVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogU1RBVFNcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgIC5zdGF0cy1pdGVtLW5vcm1hbCB7LyogIG1hcmdpbjoxMHB4IDIwcHghaW1wb3J0YW50OyAqLyB9XHJcbiAgICAgIC5zdGF0cy1pdGVtLW5vcm1hbCBzcGFuLmxpYmVsbGUgeyBkaXNwbGF5OmJsb2NrOyBtYXJnaW46MTBweCAwOyBmb250LXNpemU6MTNweDsgLyogZm9udC1zaXplOjE1cHg7ICovIHRleHQtYWxpZ246Y2VudGVyO31cclxuICAgICAgLnN0YXRzLWl0ZW0tbm9ybWFsIHNwYW4udmFsdWUgeyBkaXNwbGF5OmJsb2NrOyB0ZXh0LWFsaWduOmNlbnRlcjsgZm9udC1zaXplOjE0cHg7IC8qIGZvbnQtc2l6ZToyNHB4OyAqLyBmb250LWZhbWlseToncm9ib3RvYmxhY2snO31cclxuICAgICAgICAuc3RhdHMtaXRlbS1ub3JtYWwgc3Bhbi52YWx1ZSBzdWIgeyBmb250LXNpemU6MTRweDt9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBDT05UQUNUIExPQURcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAudXBsb2FkLWNvbnRhY3RzIHt9XHJcblxyXG4gICAgLnVwbG9hZC1jb250YWN0cy5jb250YWN0LWxvYWQgeyBtYXJnaW46MCAwIDEwcHggMDt9XHJcbiAgICAudXBsb2FkLWNvbnRhY3RzLmNvbnRhY3QtbG9hZC5hY3RpdmUgeyBiYWNrZ3JvdW5kOiNmZmZmZmY7fVxyXG4gICAgICAuY29udGFjdC10ZWFzZXIgeyBwYWRkaW5nOjhweCAwIDhweCAxMHB4OyBjdXJzb3I6cG9pbnRlcjt9XHJcbiAgICAgIC5jb250YWN0LXRlYXNlcjpob3ZlciB7IGJhY2tncm91bmQ6I2ZmZmZmZjt9XHJcblxyXG4gICAgICAudXBsb2FkLWNvbnRhY3RzLmNvbnRhY3QtbG9hZCAudXBsb2FkLWNvbnRhY3RzLWlucHV0LFxyXG4gICAgICAudXBsb2FkLWNvbnRhY3RzLmNvbnRhY3QtbG9hZCAudXBsb2FkLWNvbnRhY3RzLWFjdGlvbiB7IHBhZGRpbmc6MCAxMHB4OyBtYXgtaGVpZ2h0OjA7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiAgICAgIC51cGxvYWQtY29udGFjdHMuY29udGFjdC1sb2FkLmFjdGl2ZSAudXBsb2FkLWNvbnRhY3RzLWlucHV0LFxyXG4gICAgICAudXBsb2FkLWNvbnRhY3RzLmNvbnRhY3QtbG9hZC5hY3RpdmUgLnVwbG9hZC1jb250YWN0cy1hY3Rpb24geyBwYWRkaW5nOjEwcHg7IG1heC1oZWlnaHQ6OTk5cHg7b3ZlcmZsb3c6IGluaXRpYWw7fVxyXG4gICAgICBcclxuICBcclxuXHJcbiAgICAuY29udGFjdC10ZWFzZXIsXHJcbiAgICAudXBsb2FkLWNvbnRhY3RzLWlucHV0IHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUEVSTUlTU0lPTlNcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgLnBlcm1pc3Npb24tY2hlY2tib3guc291cy1wZXJtaXNzaW9uIGxhYmVsIHsgcGFkZGluZy1sZWZ0OjU0cHg7IGJhY2tncm91bmQ6dXJsKCcuLi9pbWcvbGF5b3V0L2Fycm93LXN1Yi1pdGVtLnN2ZycpIDM4cHggMCBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtc2l6ZToxMHB4O31cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEVMRU1FTlRTIENBQ0hFUyAgXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIC5oaWRkZW4tZWx0e1xyXG4gICAgIGRpc3BsYXk6bm9uZTtcclxuICAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogTE9BREVSIFBBR0VcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gICAjbG9hZGVyLXBhZ2UgeyBwb3NpdGlvbjpmaXhlZDsgei1pbmRleDo5OTk7IHRvcDowOyByaWdodDowOyBib3R0b206MDsgbGVmdDowOyB3aWR0aDphdXRvOyBoZWlnaHQ6YXV0bzsgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuNik7fSBcclxuICAgI2xvYWRlci1wYWdlICNsb2FkZXItcGFnZS1jb250ZW50IHsgcG9zaXRpb246Zml4ZWQ7IHotaW5kZXg6MTsgdG9wOjUwJTsgbGVmdDo1MCU7IGRpc3BsYXk6YmxvY2s7IHBhZGRpbmc6MjBweDsgd2lkdGg6MzAwcHg7IGhlaWdodDphdXRvOyBjb2xvcjojRkZGOyBiYWNrZ3JvdW5kOnJnYmEoNTYsIDYzLCA4NiwgMC44KTsgdGV4dC1hbGlnbjpjZW50ZXI7IGJvcmRlci1yYWRpdXM6M3B4OyB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7IC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOyAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTsgLW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOyBhbmltYXRpb24tZHVyYXRpb246MC4zNXM7IGFuaW1hdGlvbi1uYW1lOmZhZGVJbjt9XHJcbiAgIEBrZXlmcmFtZXMgZmFkZUluIHtcclxuICAgICAwJSB7IG9wYWNpdHk6MDt9XHJcbiAgICAgMTAwJSB7IG9wYWNpdHk6MTt9XHJcbiAgIH1cclxuICAgXHJcbiAgIC53cmFwcGVyLWxvYWRlcnsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuICAgLndyYXBwZXItbG9hZGVyIC5sb2FkZXItZm9ybXtwb3NpdGlvbjogYWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcwKTt0b3A6IDA7bGVmdDogMDt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7Y29sb3I6IGJsYWNrO3RleHQtYWxpZ246IGNlbnRlcjtkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyO3otaW5kZXg6IDk7fVxyXG4gICAud3JhcHBlci1sb2FkZXIgLmxvYWRlci1mb3JtIC5sb2FkZXItZm9ybS10ZXh0e3BhZGRpbmc6IDEycHg7Ym9yZGVyLXJhZGl1czogMTBweDtjb2xvcjogI0ZGRjtiYWNrZ3JvdW5kOiByZ2JhKDU2LCA2MywgODYsIDAuOCk7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgKiBTRU8gU05JUFBFVFNcclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgICNzZW8tc25pcHBldC1nb29nbGUgeyBtYXJnaW46MCAwIDIwcHggMDsgcGFkZGluZzoyMHB4OyB3aWR0aDo2MDBweDsgYmFja2dyb3VuZDojZmZmOyBib3JkZXItcmFkaXVzOjBweDsgYm9yZGVyOjFweCBzb2xpZCAjZTJkYmQzO31cclxuICAgICNzZW8tc25pcHBldC1nb29nbGUgYS50aXRsZSB7IGRpc3BsYXk6YmxvY2s7IG92ZXJmbG93OmhpZGRlbjsgLyp3aWR0aDo1MTJweDsqLyBjb2xvcjojMWEwZGFiOyBmb250LXNpemU6MThweDsgbGluZS1oZWlnaHQ6MS4yOyB3aGl0ZS1zcGFjZTpub3dyYXA7IHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fVxyXG4gICAgI3Nlby1zbmlwcGV0LWdvb2dsZSAudXJsIHsgY29sb3I6IzAwNjYyMTsgZm9udC1zaXplOjE0cHg7IGxpbmUtaGVpZ2h0OjE3cHg7fVxyXG4gICAgI3Nlby1zbmlwcGV0LWdvb2dsZSAuZGVzYyB7IGZvbnQtc2l6ZTpzbWFsbDsgbGluZS1oZWlnaHQ6MS40OyB3b3JkLXdyYXA6YnJlYWstd29yZDsgY29sb3I6IzU0NTQ1NDsgZm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjsgZm9udC1zaXplOnNtYWxsOyBsaW5lLWhlaWdodDoxLjQ7IHdvcmQtd3JhcDpicmVhay13b3JkO31cclxuXHJcbiAgLyoqXHJcbiAgICogVGV4dGUgY2xhc3NcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgLnJlZCB7IGNvbG9yOiNkYjJhNDg7fVxyXG4gICAuZ3JlZW4geyBjb2xvcjpyZ2IoMTEzLDE3NSw2Nik7fVxyXG4gICAuYmx1ZSB7IGNvbG9yOnJnYigyLCAxNTEsIDE5Nyk7fVxyXG4gICAudmlvbGV0IHsgY29sb3I6cmdiKDU2LCA3OSwgMTg0KTt9XHJcbiAgIC5ncmV5IHsgY29sb3I6cmdiKDEzNywgMTM3LCAxMzcpO31cclxuXHJcblxyXG4gICAvKipcclxuICAgICogQWpvdXQgRGF2aWRcclxuICAgICovXHJcbiAgLnF0ZXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHBhZGRpbmc6IDJweCA1cHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA0MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGJhY2tncm91bmQ6ICNmYTNlM2U7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcbiAgLmp1c3RpZnktY29udGVudC1iZXR3ZWVue1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIH1cclxuLyogUE9TSVRJT04gKi9cclxuLnAtYWJzb2x1dGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucC1maXhlZCB7XHJcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wLXJlbGF0aXZlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxufVxyXG4udy05NSB7d2lkdGg6IDk1JSAhaW1wb3J0YW50O30gICBcclxuLnppMTAge3otaW5kZXg6MTAgIWltcG9ydGFudDt9XHJcblxyXG4uZC1mbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yMTUge1xyXG4gIHJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50LTI1IHtcclxuICB0b3A6IC0yNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50LTE1IHtcclxuICB0b3A6IC0xNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50LTEwIHtcclxuICB0b3A6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vKiBMQVJHRVVSICovXHJcbi53LTUge1xyXG4gIHdpZHRoOiA1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0xMCB7XHJcbiAgd2lkdGg6IDEwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0xNSB7XHJcbiAgd2lkdGg6IDE1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0yMCB7XHJcbiAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0yNSB7XHJcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0zMCB7XHJcbiAgd2lkdGg6IDMwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0zMyB7XHJcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0zNSB7XHJcbiAgd2lkdGg6IDM1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy00MCB7XHJcbiAgd2lkdGg6IDQwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy00NSB7XHJcbiAgd2lkdGg6IDQ1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy01MCB7XHJcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy01NSB7XHJcbiAgd2lkdGg6IDU1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy02MCB7XHJcbiAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy02NSB7XHJcbiAgd2lkdGg6IDY1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy03MCB7XHJcbiAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy03NSB7XHJcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy04MCB7XHJcbiAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy04NSB7XHJcbiAgd2lkdGg6IDg1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy05MCB7XHJcbiAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy05NSB7XHJcbiAgd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy05OCB7XHJcbiAgd2lkdGg6IDk4JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy0xMDAge1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi53LWF1dG97XHJcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuLnctZml0LWNvbnRlbnR7XHJcbiAgd2lkdGg6IGZpdC1jb250ZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5taW4tdy0xMDB7XHJcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi53LXB4LTI1MCB7XHJcbiAgd2lkdGg6IDI1MHB4ICEgaW1wb3J0YW50O1xyXG59XHJcblxyXG4udy1weC0zMDAge1xyXG4gIHdpZHRoOiAzMDBweCAhIGltcG9ydGFudDtcclxufVxyXG5cclxuLyogTUlOIExBUkdFVVIgKi9cclxuLm1pbi13LTEwMHB4IHtcclxuICBtaW4td2lkdGg6IDEwMHB4O1xyXG59XHJcblxyXG4ubWluLXctMTUwcHgge1xyXG4gIG1pbi13aWR0aDogMTUwcHg7XHJcbn1cclxuXHJcbi5taW4tdy0yMDBweCB7XHJcbiAgbWluLXdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuLm1pbi13LTI1MHB4IHtcclxuICBtaW4td2lkdGg6IDI1MHB4O1xyXG59XHJcblxyXG4ubWluLXctMzAwcHgge1xyXG4gIG1pbi13aWR0aDogMzAwcHg7XHJcbn1cclxuXHJcbi5taW4tdy0xMTBweCB7XHJcbiAgbWluLXdpZHRoOiAxMTBweDtcclxufVxyXG5cclxuLyogTUFYIExBUkdFVVIgKi9cclxuLm1heC13LTEwMCB7XHJcbiAgbWF4LXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWF4LXctMTIwIHtcclxuICBtYXgtd2lkdGg6IDEyMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYXgtdy0yMDAge1xyXG4gIG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5tYXgtdy0yNTAge1xyXG4gIG1heC13aWR0aDogMjUwcHg7XHJcbn1cclxuXHJcbi5tYXgtdy0zMDAge1xyXG4gIG1heC13aWR0aDogMzAwcHg7XHJcbn1cclxuXHJcbi5tYXgtdy0xMTAge1xyXG4gIG1heC13aWR0aDogMTEwcHg7XHJcbn1cclxuXHJcbi8qIEhBVVRFVVIgKi9cclxuLmgtMCB7XHJcbiAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTUge1xyXG4gIGhlaWdodDogNSUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtMTAge1xyXG4gIGhlaWdodDogMTAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTE1IHtcclxuICBoZWlnaHQ6IDE1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC0yMCB7XHJcbiAgaGVpZ2h0OiAyMCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtMjUge1xyXG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTMwIHtcclxuICBoZWlnaHQ6IDMwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC0zNSB7XHJcbiAgaGVpZ2h0OiAzNSUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtNDAge1xyXG4gIGhlaWdodDogNDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTQ1IHtcclxuICBoZWlnaHQ6IDQ1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC01MCB7XHJcbiAgaGVpZ2h0OiA1MCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtNTUge1xyXG4gIGhlaWdodDogNTUlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTYwIHtcclxuICBoZWlnaHQ6IDYwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC02NSB7XHJcbiAgaGVpZ2h0OiA2NSUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtNzAge1xyXG4gIGhlaWdodDogNzAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTc1IHtcclxuICBoZWlnaHQ6IDc1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC04MCB7XHJcbiAgaGVpZ2h0OiA4MCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtODUge1xyXG4gIGhlaWdodDogODUlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTkwIHtcclxuICBoZWlnaHQ6IDkwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC05NSB7XHJcbiAgaGVpZ2h0OiA5NSUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtMTAwIHtcclxuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogSEFVVEVVUiBQWCAqL1xyXG4uaC01cHgge1xyXG4gIGhlaWdodDogNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTEwcHgge1xyXG4gIGhlaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC0xNXB4IHtcclxuICBoZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtMjBweCB7XHJcbiAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTI1cHgge1xyXG4gIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC0zMHB4IHtcclxuICBoZWlnaHQ6IDMwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtMzVweCB7XHJcbiAgaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTQwcHgge1xyXG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC00NXB4IHtcclxuICBoZWlnaHQ6IDQ1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtNTBweCB7XHJcbiAgaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTU1cHgge1xyXG4gIGhlaWdodDogNTVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC02MHB4IHtcclxuICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtNjVweCB7XHJcbiAgaGVpZ2h0OiA2NXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTcwcHgge1xyXG4gIGhlaWdodDogNzBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC03NXB4IHtcclxuICBoZWlnaHQ6IDc1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtODBweCB7XHJcbiAgaGVpZ2h0OiA4MHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTg1cHgge1xyXG4gIGhlaWdodDogODVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaC05MHB4IHtcclxuICBoZWlnaHQ6IDkwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmgtOTVweCB7XHJcbiAgaGVpZ2h0OiA5NXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTEwMHB4IHtcclxuICBoZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oLTFlbSB7XHJcbiAgaGVpZ2h0OiAxZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8qIE1BUkdFIFJJR0hUICovXHJcbi5tci01IHtcclxuICBtYXJnaW4tcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMTAge1xyXG4gIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMTUge1xyXG4gIG1hcmdpbi1yaWdodDogMTVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMjAge1xyXG4gIG1hcmdpbi1yaWdodDogMjBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMjUge1xyXG4gIG1hcmdpbi1yaWdodDogMjVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMzAge1xyXG4gIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMzUge1xyXG4gIG1hcmdpbi1yaWdodDogMzVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNDAge1xyXG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNDUge1xyXG4gIG1hcmdpbi1yaWdodDogNDVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNTAge1xyXG4gIG1hcmdpbi1yaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNTUge1xyXG4gIG1hcmdpbi1yaWdodDogNTVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNjAge1xyXG4gIG1hcmdpbi1yaWdodDogNjBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNjUge1xyXG4gIG1hcmdpbi1yaWdodDogNjVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNzAge1xyXG4gIG1hcmdpbi1yaWdodDogNzBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItNzUge1xyXG4gIG1hcmdpbi1yaWdodDogNzVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItODAge1xyXG4gIG1hcmdpbi1yaWdodDogODBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItODUge1xyXG4gIG1hcmdpbi1yaWdodDogODVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItOTAge1xyXG4gIG1hcmdpbi1yaWdodDogOTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItOTUge1xyXG4gIG1hcmdpbi1yaWdodDogOTVweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubXItMTAwIHtcclxuICBtYXJnaW4tcmlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5jaGVja2JveC1jdXN0b20geyBkaXNwbGF5OiBub25lOyB9XHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5jaGVja2JveC1jdXN0b20gKyBsYWJlbCB7LypkaXNwbGF5OiBibG9jazsqL2NvbG9yOiAjMzMzMzMzOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctbGVmdDogMjVweDsgbWFyZ2luLWJvdHRvbTogMjBweDsgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJywgc2Fucy1zZXJpZjsgY3Vyc29yOiBwb2ludGVyOyAvKmZvbnQtc2l6ZTogMTBweDsqLyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAtbW96LXVzZXItc2VsZWN0OiBub25lOyAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7fVxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY2hlY2tib3gtY3VzdG9tICsgbGFiZWw6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmNoZWNrYm94LWN1c3RvbSArIGxhYmVsOmJlZm9yZSB7Y29udGVudDogJyc7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTVweDsgaGVpZ2h0OiAxNXB4OyBib3JkZXI6IDJweCBzb2xpZCAjNzg3ODc4OyBiYWNrZ3JvdW5kOiB3aGl0ZTsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IG9wYWNpdHk6IDE7IC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4xMnMsIGJvcmRlci1jb2xvciAuMDhzOyB0cmFuc2l0aW9uOiBhbGwgLjEycywgYm9yZGVyLWNvbG9yIC4wOHM7fVxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY2hlY2tib3gtY3VzdG9tOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUgeyBib3JkZXI6IDJweCBzb2xpZCBncmVlbjtiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDt3aWR0aDogOHB4O2xlZnQ6IDVweDtib3JkZXItcmFkaXVzOiAwO29wYWNpdHk6IDE7Ym9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7Ym9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQwNWRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDQwNWRlZyk7fVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi8qICAgICAgICAgICAgICAgICAgICAgICAgT1ZFUldSSVRFIERST1BaT05FICAgICAgICAgICAgICAgICAgICAqL1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbiAgLmRyb3B6b25lIC5qcy1wcmV2aWV3IHtmb250LXNpemU6IDE0cHg7dGV4dC1hbGlnbjogY2VudGVyO2Rpc3BsYXk6IGJsb2NrO2N1cnNvcjogcG9pbnRlcjtib3JkZXI6IG5vbmU7fVxyXG4gIC5kcm9wem9uZSAuZHotcHJldmlldyAuZHotaW1hZ2Uge3otaW5kZXg6IDE7ZGlzcGxheTogZmxleDtqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjthbGlnbi1pdGVtczogY2VudGVyO31cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4vKiAgICAgICAgICAgICAgICAgICAgICAgIE9WRVJXUklURSBTV0VFVEFMRVJUICAgICAgICAgICAgICAgICAgKi9cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4uc3dhbC1kYXRhdGFibGUge2ZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O31cclxuLnN3YWwtd2lkZSB7d2lkdGg6IDEyMDBweDt9XHJcbi5zd2FsLWFsaWduLXRleHQtbGVmdCAuc3dhbDItaHRtbC1jb250YWluZXJ7dGV4dC1hbGlnbjogbGVmdDt9XHJcbi5zd2FsLXVsLWxpIC5zd2FsMi1odG1sLWNvbnRhaW5lciB1bHtsaXN0LXN0eWxlOiBpbnNpZGU7O31cclxuLmZvcm0tcXVhbnRpdGUtc3dhbCwgLmZvcm0tcmFpc29uLXN3YWwge3dpZHRoOiA5NSUgIWltcG9ydGFudDt9XHJcbi5zd2FsMi10aXRsZSB7bGluZS1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDt9XHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLyogICAgICAgICAgICAgICAgICAgICAgICBPVkVSV1JJVEUgQlROIERBVEFUQUJMRSAgICAgICAgICAgICAgICovXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uYnRuLW1vZGlmLXN0b2Nre21heC1oZWlnaHQ6IDM1cHg7IG1hcmdpbjogMTVweDt9XHJcblxyXG5cclxuLyogSG9ycmlibGUgamUgc2FpcyAqL1xyXG4jbGlzdGVfcGlja2luZ19zdG9ja193cmFwcGVyIC5kdC1sYXlvdXQtcm93IC5kdC1sYXlvdXQtY2VsbCAuZHQtYnV0dG9ucyAuYnRuLFxyXG4jbGlzdGVfcGlja2luZ19wYXNfc3RvY2tfd3JhcHBlciAuZHQtbGF5b3V0LXJvdyAuZHQtbGF5b3V0LWNlbGwgLmR0LWJ1dHRvbnMgLmJ0biB7cG9zaXRpb246IGFic29sdXRlO3RvcDogLTM5cHg7bGVmdDogMTglO31cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLyogICAgICAgICAgICAgICAgICAgICAgICBNQVJLRVRQTEFDRSBNQVRFUklFTCAgICAgICAgICAgICAgICAgICovXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIC5tYXJrZXRwbGFjZS1kaXNhYmxlZCB7IGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50OyB9XHJcbiAgLm1hcmtldHBsYWNlLWZsYWcgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZm9udC1zaXplOiAxNXB4O31cclxuXHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLXR5cGUtYmxvY2sge2Rpc3BsYXk6IGZsZXg7ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO3Bvc2l0aW9uOiBzdGlja3k7dG9wOiA2MHB4O3otaW5kZXg6IDE7fVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10eXBlLWJsb2NrIC5tYXJrZXRwbGFjZS10eXBlLWl0ZW17aGVpZ2h0OiA0MHB4O2Rpc3BsYXk6IGZsZXg7YWxpZ24taXRlbXM6IGNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtjdXJzb3I6IHBvaW50ZXI7Zm9udC1zaXplOiAxM3B4O2JvcmRlcjogMXB4IHNvbGlkICNkNGQ0ZDQ7bWFyZ2luLXRvcDogLTFweDt0cmFuc2l0aW9uOiBhbGwgMC41czt9XHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLXR5cGUtYmxvY2sgLm1hcmtldHBsYWNlLXR5cGUtaXRlbS5hY3RpdmUsIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10eXBlLWJsb2NrIC5tYXJrZXRwbGFjZS10eXBlLWl0ZW06aG92ZXIsIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS1pdGVtLWJsb2NrIC5tYXJrZXRwbGFjZS1pdGVtLmFjdGl2ZSwgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLWl0ZW0tYmxvY2sgLm1hcmtldHBsYWNlLWl0ZW06aG92ZXJ7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMzY1M2I4OyBjb2xvcjogI2VlZTtcclxuICB9XHJcblxyXG4gIC5saWduZVRhcmlmaWNhdGlvbiAuY29sLTUub2Zmc2V0LTEgc2VsZWN0IHsgbWluLXdpZHRoOiA1MDBweCFpbXBvcnRhbnQ7fVxyXG5cclxuXHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLWl0ZW0tYmxvY2sge2Rpc3BsYXk6IGZsZXg7bWFyZ2luLXRvcDogLTFweDsgcG9zaXRpb246IHN0aWNreTt0b3A6IDU5cHg7ei1pbmRleDogMjsgb3ZlcmZsb3cteDogYXV0bztiYWNrZ3JvdW5kOiAjZWVlO31cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtaXRlbS1ibG9jazo6LXdlYmtpdC1zY3JvbGxiYXIge3dpZHRoOiA1cHg7IGhlaWdodDogNXB4O31cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtaXRlbS1ibG9jazo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge2JhY2tncm91bmQtY29sb3I6ICNlYmViZWI7fVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS1pdGVtLWJsb2NrOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7YmFja2dyb3VuZDogIzM2NTNiODsgfVxyXG5cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtaXRlbS1ibG9jayAubWFya2V0cGxhY2UtaXRlbXtoZWlnaHQ6IDQwcHg7cGFkZGluZzogMTBweDtkaXNwbGF5OiBmbGV4O2FsaWduLWl0ZW1zOiBjZW50ZXI7anVzdGlmeS1jb250ZW50OiBjZW50ZXI7Y3Vyc29yOiBwb2ludGVyO2ZvbnQtc2l6ZTogMTNweDtib3JkZXI6IDFweCBzb2xpZCAjZDRkNGQ0O21hcmdpbi1sZWZ0OiAtMXB4OyBiYWNrZ3JvdW5kOiAjZWVlOyB0cmFuc2l0aW9uOiBhbGwgMC41czt9XHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLWl0ZW0tYmxvY2sgLm1hcmtldHBsYWNlLWl0ZW0ubWFya2V0cGxhY2UtZW1wdHl7YmFja2dyb3VuZC1jb2xvcjogI2RkZDtjb2xvcjogI2FhYTtwb2ludGVyLWV2ZW50czogbm9uZTt1c2VyLXNlbGVjdDogbm9uZTtvcGFjaXR5OiAwLjc7fVxyXG4gIFxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCB7ICB9XHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLXRhcmlmaWNhdGlvbi1saXN0IGgzIHsgbWFyZ2luOiA1cHggMCA1cHggMDsgfVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCAubWFya2V0cGxhY2UtdmFyaWFudC13cmFwcGVyeyBib3JkZXI6IDFweCBzb2xpZCAjOTk5OyBtYXJnaW46IDBweCAwIDEwcHggMDsgfVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCAubWFya2V0cGxhY2UtdmFyaWFudC13cmFwcGVyIC5tYXJrZXRwbGFjZS12YXJpYW50LWluZm8geyBkaXNwbGF5OiBmbGV4O2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtiYWNrZ3JvdW5kOiAjZTBlMGUwO2FsaWduLWl0ZW1zOiBjZW50ZXI7IHBvc2l0aW9uOiBzdGlja3k7IHotaW5kZXg6IDE7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTk5O3RvcDogOTlweDttYXJnaW4tdG9wOiAtMXB4O3BhZGRpbmc6IDBweCAwcHggMHB4IDVweDtib3gtc2hhZG93OiByZ2JhKDUwLCA1MCwgOTMsIDAuMjUpIDBweCAycHggNXB4IC0xcHgsIHJnYmEoMCwgMCwgMCwgMC4zKSAwcHggMXB4IDNweCAtMXB4O31cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtdGFyaWZpY2F0aW9uLWxpc3QgLm1hcmtldHBsYWNlLXZhcmlhbnQtd3JhcHBlciAubWFya2V0cGxhY2UtdmFyaWFudC1pbmZvIC5tYXJrZXRwbGFjZS12YXJpYW50LXRpdGxle2Rpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IG1pbi13aWR0aDogNTAwcHg7fVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCAubWFya2V0cGxhY2UtdmFyaWFudC13cmFwcGVyIC5tYXJrZXRwbGFjZS12YXJpYW50LWluZm8gLm1hcmtldHBsYWNlLXZhcmlhbnQtYWN0aW9uc3sgbWluLXdpZHRoOiA0MHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO2Rpc3BsYXk6IGZsZXg7IG1pbi1oZWlnaHQ6IDQwcHg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7fVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCAubWFya2V0cGxhY2UtdmFyaWFudC13cmFwcGVyIC5tYXJrZXRwbGFjZS12YXJpYW50LWluZm8gLm1hcmtldHBsYWNlLXZhcmlhbnQtYWN0aW9ucyAubWFya2V0cGxhY2UtdmFyaWFudC1hY3Rpb25zLWl0ZW17aGVpZ2h0OiA0MHB4O3dpZHRoOiA0MHB4O2xpbmUtaGVpZ2h0OiA0MHB4O3RleHQtYWxpZ246IGNlbnRlcjtjdXJzb3I6IHBvaW50ZXI7dHJhbnNpdGlvbjogYWxsIDAuM3M7fVxyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS10YXJpZmljYXRpb24tbGlzdCAubWFya2V0cGxhY2UtdmFyaWFudC13cmFwcGVyIC5tYXJrZXRwbGFjZS12YXJpYW50LWluZm8gLm1hcmtldHBsYWNlLXZhcmlhbnQtYWN0aW9ucyAubWFya2V0cGxhY2UtdmFyaWFudC1hY3Rpb25zLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDogI2VlZTt9XHJcbiAgXHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLXRhcmlmaWNhdGlvbi1saXN0IC5tYXJrZXRwbGFjZS12YXJpYW50LXdyYXBwZXIgLm1hcmtldHBsYWNlLXZhcmlhbnQtdGFyaWZpY2F0aW9ucyB7bWF4LWhlaWdodDogOTk5OXB4OyBvdmVyZmxvdzogaGlkZGVuO31cclxuICBcclxuICAvKiBBY3Rpb25zIGN1c3RvbSAqL1xyXG4gIC5tYXJrZXRwbGFjZS13cmFwcGVyIC5tYXJrZXRwbGFjZS12YXJpYW50LWFjdGlvbnMtaXRlbS5tYXJrZXRwbGFjZS10b2dnbGUtYWN0aW9uIHN2Z3t0cmFuc2l0aW9uOiBhbGwgMC4zczsgcm90YXRlOiAwZGVnO31cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtdmFyaWFudC1hY3Rpb25zLWl0ZW0ubWFya2V0cGxhY2UtdG9nZ2xlLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZDogI2VlZTt9XHJcbiAgLm1hcmtldHBsYWNlLXdyYXBwZXIgLm1hcmtldHBsYWNlLXZhcmlhbnQtYWN0aW9ucy1pdGVtLm1hcmtldHBsYWNlLXRvZ2dsZS1hY3Rpb24uYWN0aXZlIHN2Z3tyb3RhdGU6IDE4MGRlZzt9XHJcblxyXG5cclxuICAubWFya2V0cGxhY2Utd3JhcHBlciAubWFya2V0cGxhY2UtdGFyaWZpY2F0aW9uLWxpc3QgLm1hcmtldHBsYWNlLXZhcmlhbnQtd3JhcHBlciAubWFya2V0cGxhY2UtdmFyaWFudC10YXJpZmljYXRpb25zIGZpZWxkc2V0IHsgbWFyZ2luLWJvdHRvbTogMHB4OyB9XHJcblxyXG4gIC53cmFwcGVyLW1hcmtldHBsYWNlLWRhdGEge2Rpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO2FsaWduLWl0ZW1zOiBjZW50ZXI7fVxyXG4gIC53cmFwcGVyLW1hcmtldHBsYWNlLWRhdGEgLnRvb2x0aXAtbWFya2V0cGxhY2V7bWFyZ2luOiAwIDJweDtib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgYm9yZGVyLXJhZGl1czogLjI1cmVtOyBwYWRkaW5nOiA3cHggMTRweDsgY3Vyc29yOiBwb2ludGVyOyBib3JkZXItY29sb3I6ICNkNGQ0ZDQ7IGNvbG9yOiAjMzMzMzMzOyBmb250LXdlaWdodDogNTAwOyBmbGV4OiAxIDEgYXV0bzsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyB0cmFuc2l0aW9uOiBhbGwgMC4zczsgbWF4LXdpZHRoOiBtYXgtY29udGVudDt9XHJcbiAgLndyYXBwZXItbWFya2V0cGxhY2UtZGF0YSAudG9vbHRpcC1tYXJrZXRwbGFjZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO31cclxuICAud3JhcHBlci1tYXJrZXRwbGFjZS1kYXRhIC50b29sdGlwLW1hcmtldHBsYWNlLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiAjMzY1M2I4OyBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O31cclxuXHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAuYm9yZGVyLW5vcm1hbHtib3JkZXItYm90dG9tOiA0cHggc29saWQgIzdkY2Q3NTt9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAuYm9yZGVyLXdhcm5pbmd7Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNlNzY5MTE7fVxyXG4gIC50b29sdGlwLW1hcmtldHBsYWNlLWNvbnRlbnQgLmJvcmRlci1lcnJvcntib3JkZXItYm90dG9tOiA0cHggc29saWQgI2MzMDAwMDt9XHJcblxyXG4gIC50b29sdGlwLW1hcmtldHBsYWNlLWNvbnRlbnQge2NvbG9yOiAjZGVkZWRlO31cclxuICAudG9vbHRpcC1tYXJrZXRwbGFjZS1jb250ZW50IC5tYXJrZXRwbGFjZS1jb250ZW50LWhlYWRlciB7ZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1oZWFkZXIgLm1hcmtldHBsYWNlLWhlYWRlci1sb2dveyBmb250LXNpemU6IDM3cHg7IHBhZGRpbmc6IDAgMTRweDt9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1oZWFkZXIgLm1hcmtldHBsYWNlLWhlYWRlci1kYXRhe2Rpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjsgd2lkdGg6IDI0MHB4OyBtYXJnaW46IDAgMTJweDt9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1oZWFkZXIgLm1hcmtldHBsYWNlLWhlYWRlci1kYXRhIC5ibG9jay10YXJpZntkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBsaW5lLWhlaWdodDogMjRweDsgYmFja2dyb3VuZDogIzNiM2IzYjsgcGFkZGluZzogMCAxMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXJ9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1oZWFkZXIgLm1hcmtldHBsYWNlLWhlYWRlci1kYXRhIC5ibG9jay10YXJpZiAudGl0bGUtdGFyaWZ7Zm9udC13ZWlnaHQ6IGJvbGQ7fVxyXG5cclxuICAudG9vbHRpcC1tYXJrZXRwbGFjZS1jb250ZW50IC5tYXJrZXRwbGFjZS1jb250ZW50LWJvZHkgeyBtYXJnaW46IDEwcHggMDsgfVxyXG5cclxuICAudG9vbHRpcC1tYXJrZXRwbGFjZS1jb250ZW50IC5tYXJrZXRwbGFjZS1jb250ZW50LWJvZHkgLm1hcmtldHBsYWNlLWRhdGEtYm9keSB7ZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgYWxpZ24taXRlbXM6IGNlbnRlcjt9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1ib2R5IC5tYXJrZXRwbGFjZS1kYXRhLWJvZHkgLm1hcmtldHBsYWNlLWRhdGEtYmxvY2t7cGFkZGluZzogNXB4OyBtYXJnaW46IDVweDsgYmFja2dyb3VuZDogIzNiM2IzYjt9XHJcbiAgLnRvb2x0aXAtbWFya2V0cGxhY2UtY29udGVudCAubWFya2V0cGxhY2UtY29udGVudC1ib2R5IC5tYXJrZXRwbGFjZS1kYXRhLWJvZHkgLm1hcmtldHBsYWNlLWRhdGEtYmxvY2suaW5hY3RpdmV7b3BhY2l0eTogMC4yOyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjNGI0YjRiLCAjNGI0YjRiIDQ4JSwgYmxhY2sgNTAlLCAjNGI0YjRiIDUyJSwgIzRiNGI0Yik7fVxyXG4gIC50b29sdGlwLW1hcmtldHBsYWNlLWNvbnRlbnQgLm1hcmtldHBsYWNlLWNvbnRlbnQtYm9keSAubWFya2V0cGxhY2UtZGF0YS1ib2R5IC5tYXJrZXRwbGFjZS1kYXRhLWJsb2NrIC5mbGFne3RleHQtYWxpZ246IGNlbnRlcjt9XHJcblxyXG4gIC50b29sdGlwLW1hcmtldHBsYWNlLWNvbnRlbnQgLm1hcmtldHBsYWNlLWNvbnRlbnQtYm9keSAubWFya2V0cGxhY2UtZGF0YS1ib2R5IC5tYXJrZXRwbGFjZS1kYXRhLWJsb2NrIC5tYXJrZXRwbGFjZS1kYXRhLWl0ZW17ZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO31cclxuICAudG9vbHRpcC1tYXJrZXRwbGFjZS1jb250ZW50IC5tYXJrZXRwbGFjZS1jb250ZW50LWJvZHkgLm1hcmtldHBsYWNlLWRhdGEtYm9keSAubWFya2V0cGxhY2UtZGF0YS1ibG9jayAubWFya2V0cGxhY2UtZGF0YS1pdGVtIC5pbmZve21pbi13aWR0aDogMTAwcHg7IGZvbnQtd2VpZ2h0OiBib2xkO31cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4vKiAgICAgICAgICAgICAgICAgICAgICAgIEZJTFRFUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi9cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5maWx0ZXItd3JhcHBlciB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYmFja2dyb3VuZDogI2Y5ZjlmOTsgbWluLWhlaWdodDogNDVweDt9XHJcbi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLWxpc3R7ZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBnYXA6IDEwcHg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyB9XHJcbi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLWxpc3QtbXVsdGlwbGV7ZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBnYXA6IDEwcHg7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogNzBweDt9XHJcbi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLWxpc3QgLmZpbHRlci1pdGVteyBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkOyBoZWlnaHQ6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBwYWRkaW5nOiAwIDEwcHg7IGdhcDogNXB4O31cclxuLmZpbHRlci13cmFwcGVyIC5maWx0ZXItbGlzdCAuZmlsdGVyLWl0ZW0gLmJ0bi1ncm91cHt2ZXJ0aWNhbC1hbGlnbjogdG9wOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuLmZpbHRlci13cmFwcGVyIC5maWx0ZXItbGlzdCAuZmlsdGVyLWl0ZW0gLmJ0bi1ncm91cCAuYnRuLWdyb3VwLWl0ZW17Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IGJvcmRlci1yYWRpdXM6IC4yNXJlbTsgcGFkZGluZzogN3B4IDE0cHg7IGN1cnNvcjogcG9pbnRlcjsgYm9yZGVyLWNvbG9yOiAjZDRkNGQ0OyBjb2xvcjogIzMzMzMzMzsgZm9udC13ZWlnaHQ6IDUwMDsgZmxleDogMSAxIGF1dG87IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IG9wYWNpdHk6IDE7fVxyXG4uZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1saXN0IC5maWx0ZXItaXRlbSAuYnRuLWdyb3VwIC5idG4tZ3JvdXAtaXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO31cclxuLmZpbHRlci13cmFwcGVyIC5maWx0ZXItbGlzdCAuZmlsdGVyLWl0ZW0gLmJ0bi1ncm91cCAuYnRuLWdyb3VwLWl0ZW0uYWN0aXZle2JhY2tncm91bmQtY29sb3I6ICMzNjUzYjg7IGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7fVxyXG4uZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1saXN0IC5maWx0ZXItaXRlbSAuYnRuLWdyb3VwIC5idG4tZ3JvdXAtaXRlbS5pbmFjdGl2ZXsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgI2VkZWRlZCwgI2VkZWRlZCA0OCUsIGJsYWNrIDUwJSwgI2VkZWRlZCA1MiUsICNlZGVkZWQpOyBjb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50OyBvcGFjaXR5OiAwLjh9XHJcblxyXG4uZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1hY3Rpb24tbGlzdCB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBmbGV4LXdyYXA6IHdyYXA7IGdhcDogMTBweDt9XHJcblxyXG4vKiBTcMOpY2lmaXF1ZSBNYXJrZXRwbGFjZSAqL1xyXG5cclxuLmZpbHRlci13cmFwcGVyIC5maWx0ZXItbGlzdCAjbGlzdGVfbWFya2V0cGxhY2VzIHsgZ2FwOiAxZW07IH1cclxuLmZpbHRlci13cmFwcGVyIC5maWx0ZXItbGlzdCAjbGlzdGVfbWFya2V0cGxhY2VzIC5maWx0ZXItaXRlbS5tYXJrZXRwbGFjZS1idG57IHBhZGRpbmc6IDBweDsgfVxyXG4uZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1saXN0ICNsaXN0ZV9tYXJrZXRwbGFjZXMgLmZpbHRlci1pdGVtLm1hcmtldHBsYWNlLWJ0biAuYnRuLWdyb3VwLWl0ZW17IG1pbi1oZWlnaHQ6IDQ2cHg7IH1cclxuXHJcbi8qIEJ1bmRsZXMgKi9cclxuIC5idW5kbGUtdWwtd3JhcHBlciB7bGlzdC1zdHlsZTogaW5oZXJpdDsgbWFyZ2luLWxlZnQ6IDUwcHg7fVxyXG4gLmJ1bmRsZS11bC13cmFwcGVyIGxpLmJ1bmRsZS1saS13cmFwcGVyIHttYXJnaW46IDNweCAwO31cclxuIC5idW5kbGUtdWwtd3JhcHBlciAuYnVuZGxlLWxpLXdyYXBwZXIgYS5idW5kbGUtYXJ0aWNsZS1ub20ge2ZvbnQtc2l6ZTogMTRweDsgbGluZS1oZWlnaHQ6IDMycHg7fVxyXG5cclxuIiwiLyogKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBlZGl0YWJsZS1maWVsZC5jc3NcclxuICogXHJcbiAqICogQWN0aW9uIDpcclxuICogICAgIFBlcm1ldCBsJ2VkaXRpb24gZCd1bmUgdmFsZXVyIGQndW4gdGFibGVhdVxyXG4gKiBcclxuICpcclxuICogKiBQYWNrYWdlIDpcclxuICogXHRcdGFwcC1lZGl0YWJsZS1maWVsZC5qcyAvIGVkaXRhYmxlLWZpZWxkLmNzc1xyXG4gKiBcclxuICogKiBEZXBlbmRlbmNpZXMgOiBcclxuICogICAgIGpxdWVyeS5qc1xyXG4gKiAgICAgZm9udC1hd2Vzb21lLmNzcyAvIGZvbnRhd2Vzb21lLnR0ZlxyXG4gKlxyXG4gKiAqIFN0cnVjdHVyZSA6XHJcbiAqXHJcbiAqIFx0PHRkIGNsYXNzPVwiZmllbGQtZWRpdGFibGUtd3JhcHBlclwiPlxyXG4gKiAgXHQ8c3BhbiBjbGFzcz1cImZpZWxkLWVkaXRhYmxlXCI+VmFsZXVyPC9zcGFuPlxyXG4gKiAgIFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cIkZpZWxkX25hbWVcIiBjbGFzcz1cImZpZWxkLWVkaXRhYmxpbmdcIiB2YWx1ZT1cIlZhbGV1clwiPlxyXG4gKiAgICBcdDxkaXYgY2xhc3M9XCJsb2FkZXJcIj48c3BhbiBjbGFzcz1cImZhIGZhLWNpcmNsZS1ub3RjaCBmYS1zcGluXCI+PC9zcGFuPiBDaGFyZ2VtZW50PC9kaXY+XHJcbiAqIDwvdGQ+XHJcbiAqICAgICAgXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4vKiBDaGFtcHMgZWRpdGFibGUgKi9cclxuXHJcblx0dGFibGUuZGF0YVRhYmxlIHRib2R5IC5maWVsZC1lZGl0YWJsZS13cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHsgXHJcblx0XHRwYWRkaW5nLWxlZnQ6MDsgaGVpZ2h0OjI2cHg7IGxpbmUtaGVpZ2h0OjI2cHg7XHJcblx0XHRiYWNrZ3JvdW5kOm5vbmU7XHJcblx0XHRib3JkZXI6bm9uZTtcclxuXHRcdGJvcmRlci1ib3R0b206MnB4IHNvbGlkIHJnYigzOCw1MSw4Nyk7XHJcblx0fVxyXG5cclxuXHJcblx0LmZpZWxkLWVkaXRhYmxlLXdyYXBwZXIgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgfVxyXG5cclxuXHRcdC8qIGZpZWxkLWVkaXRhYmxlICovXHJcblx0XHRzcGFuLmZpZWxkLWVkaXRhYmxlIHsgZGlzcGxheTpibG9jazsgaGVpZ2h0OjI2cHg7IGN1cnNvcjpwb2ludGVyOyBib3JkZXItcmFkaXVzOjRweDsgYm9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudH1cclxuXHRcdHNwYW4uZmllbGQtZWRpdGFibGU6aG92ZXIgeyBib3JkZXItY29sb3I6IzAwYmQ5ZDsgfVxyXG5cdFx0c3Bhbi5maWVsZC1lZGl0YWJsZS5uby1zYXZlLFxyXG5cdFx0c3Bhbi5maWVsZC1lZGl0YWJsZS5uby1zYXZlLWZvcmNlIHsgYm9yZGVyLWNvbG9yOiNmZDlhNDI7fVxyXG5cdFx0c3Bhbi5maWVsZC1lZGl0YWJsZS5uby1zYXZlOmhvdmVyLFxyXG5cdFx0c3Bhbi5maWVsZC1lZGl0YWJsZS5uby1zYXZlLWZvcmNlOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiMwMGJkOWQ7fVxyXG5cclxuXHRcdC8qIElucHV0LyBzZWxlY3QgKi9cclxuXHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdLmZpZWxkLWVkaXRhYmxpbmcsXHJcblx0XHRzZWxlY3QuZmllbGQtZWRpdGFibGluZyB7IGRpc3BsYXk6bm9uZTsgfVxyXG5cdFx0LmZpZWxkLWVkaXRhYmxlLXdyYXBwZXIgLmxvYWRlciB7IGRpc3BsYXk6bm9uZTsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjRweDt9XHJcblxyXG5cdFx0LyogSGlkZS9TaG93ICovXHJcblx0XHRzcGFuLmZpZWxkLWVkaXRhYmxlLmhpZGUgeyBkaXNwbGF5Om5vbmU7IH1cclxuXHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdLmZpZWxkLWVkaXRhYmxpbmcuc2hvdyxcclxuXHRcdHNlbGVjdC5maWVsZC1lZGl0YWJsaW5nLnNob3cgeyBkaXNwbGF5OmlubGluZS1ibG9jazsgfVxyXG5cdFx0LmZpZWxkLWVkaXRhYmxlLXdyYXBwZXIgLmxvYWRlci5zaG93IHsgZGlzcGxheTpibG9jazt9IiwiLyoqXHJcbiAqIFdSQVBQRVIgQ09MT01OU1xyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcblxyXG4gLyoqXHJcbiAgICogV1JBUFBFUiBDT0xPTU5TXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgIFxyXG4gICAud3JhcHBlci1jb2xvbW5zIHsgZGlzcGxheTotd2Via2l0LWJveDsgZGlzcGxheTotbW96LWJveDsgZGlzcGxheTotbXMtZmxleGJveDsgZGlzcGxheTotbW96LWZsZXg7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgd3JhcDt9XHJcbiAgIC53cmFwcGVyLWNvbG9tbnMuY2VudGVyIHsganVzdGlmeS1jb250ZW50OmNlbnRlcjsgfVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucyB7IG1hcmdpbjoxMHB4OyB9XHJcbiBcclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtMSB7IHdpZHRoOjYwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0yIHsgd2lkdGg6MTQwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0zIHsgd2lkdGg6MjIwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy00IHsgd2lkdGg6MzAwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy01IHsgd2lkdGg6MzgwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy02IHsgd2lkdGg6NDYwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy03IHsgd2lkdGg6NTQwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy04IHsgd2lkdGg6NjIwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy05IHsgd2lkdGg6NzAwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy0xMCB7IHdpZHRoOjc4MHB4O31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtMTEgeyB3aWR0aDo4NjBweDt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLTEyIHsgd2lkdGg6OTQwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1mdWxsIHsgd2lkdGg6OTYwcHg7fVxyXG4gXHJcbiAgICAgICAvKiBQcmVmaXggKi9cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTEgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNzBweDt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC0yIHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDE1MHB4O31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTMgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMjMwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtNCB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCAzMTBweDt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC01IHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDM5MHB4O31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTYgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNDcwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtNyB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA1NTBweDt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zLXByZWZpeC04IHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDYzMHB4O31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmJsb2NrLWNvbG9tbnMtcHJlZml4LTkgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNzEwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtMTAgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNzkwcHg7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucyAuYmxvY2stY29sb21ucy1wcmVmaXgtMTEgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggODcwcHg7fVxyXG4gXHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5ibG9jay1jb2xvbW5zIC5ibG9jay1jb2xvbW5zIHsgbWFyZ2luLXRvcDowO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMgLmFscGhhIHsgbWFyZ2luLWxlZnQ6MDt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zIC5vbWVnYSB7IG1hcmdpbi1yaWdodDowO31cclxuIFxyXG4gXHJcbiAgICAgICAvKiBSZXNwb25zaXZlIGdyaWQgOiBlbiBwb3VyY2VudGFnZSAqL1xyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIHsgZGlzcGxheTotd2Via2l0LWJveDsgZGlzcGxheTotbW96LWJveDsgZGlzcGxheTotbXMtZmxleGJveDsgZGlzcGxheTotbW96LWZsZXg7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgd3JhcDsgfVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zIHsgYm94LXNpemluZzpib3JkZXItYm94OyBwYWRkaW5nOjEwcHg7IH1cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAuYmxvY2stY29sb21ucy1tYWluIHsgZmxleC1ncm93OjE7IC13ZWJraXQtZmxleC1ncm93OjE7IC1tb3otZmxleC1ncm93OjE7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zLTEgeyB3aWR0aDo4LjMzMzMzMyU7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zLTIgeyB3aWR0aDoxNi42NjY2NjclO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAuYmxvY2stY29sb21ucy0zIHsgd2lkdGg6MjUlO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAuYmxvY2stY29sb21ucy00IHsgd2lkdGg6MzMuMzMzMzMzJTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLmJsb2NrLWNvbG9tbnMtNSB7IHdpZHRoOjQxLjY2NjY2NyU7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zLTYgeyB3aWR0aDo1MCU7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zLTcgeyB3aWR0aDo1OC4zMzMzMzMlO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAuYmxvY2stY29sb21ucy04IHsgd2lkdGg6NjYuNjY2NjY3JTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLmJsb2NrLWNvbG9tbnMtOSB7IHdpZHRoOjc1JTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLmJsb2NrLWNvbG9tbnMtMTAgeyB3aWR0aDo4My4zMzMzMzMlO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAuYmxvY2stY29sb21ucy0xMSB7IHdpZHRoOjkxLjY2NjY2NyU7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5ibG9jay1jb2xvbW5zLTEyIHsgd2lkdGg6MTAwJTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLmJsb2NrLWNvbG9tbnMtZnVsbCB7IHdpZHRoOjEwMCU7fVxyXG4gXHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLmJsb2NrLWNvbG9tbnMubm8tcGFkZGluZyB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MDsgfVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5uby1wYWRkaW5nLmJsb2NrLWNvbG9tbnMtMSB7IHdpZHRoOmNhbGMoOC4zMzMzMzMlIC0gMjBweCk7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5uby1wYWRkaW5nLmJsb2NrLWNvbG9tbnMtMiB7IHdpZHRoOmNhbGMoMTYuNjY2NjY3JSAtIDIwcHgpO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAubm8tcGFkZGluZy5ibG9jay1jb2xvbW5zLTMgeyB3aWR0aDpjYWxjKDI1JSAtIDIwcHgpO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAubm8tcGFkZGluZy5ibG9jay1jb2xvbW5zLTQgeyB3aWR0aDpjYWxjKDMzLjMzMzMzMyUgLSAyMHB4KTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLm5vLXBhZGRpbmcuYmxvY2stY29sb21ucy01IHsgd2lkdGg6Y2FsYyg0MS42NjY2NjclIC0gMjBweCk7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5uby1wYWRkaW5nLmJsb2NrLWNvbG9tbnMtNiB7IHdpZHRoOmNhbGMoNTAlIC0gMjBweCk7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5uby1wYWRkaW5nLmJsb2NrLWNvbG9tbnMtNyB7IHdpZHRoOmNhbGMoNTguMzMzMzMzJSAtIDIwcHgpO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAubm8tcGFkZGluZy5ibG9jay1jb2xvbW5zLTggeyB3aWR0aDpjYWxjKDY2LjY2NjY2NyUgLSAyMHB4KTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLm5vLXBhZGRpbmcuYmxvY2stY29sb21ucy05IHsgd2lkdGg6Y2FsYyg3NSUgLSAyMHB4KTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLm5vLXBhZGRpbmcuYmxvY2stY29sb21ucy0xMCB7IHdpZHRoOmNhbGMoODMuMzMzMzMzJSAtIDIwcHgpO31cclxuICAgICAgIC53cmFwcGVyLWNvbG9tbnMtcmVzcG9uc2l2ZSAubm8tcGFkZGluZy5ibG9jay1jb2xvbW5zLTExIHsgd2lkdGg6Y2FsYyg5MS42NjY2NjclIC0gMjBweCk7fVxyXG4gICAgICAgLndyYXBwZXItY29sb21ucy1yZXNwb25zaXZlIC5uby1wYWRkaW5nLmJsb2NrLWNvbG9tbnMtMTIgeyB3aWR0aDpjYWxjKDEwMCUgLSAyMHB4KTt9XHJcbiAgICAgICAud3JhcHBlci1jb2xvbW5zLXJlc3BvbnNpdmUgLm5vLXBhZGRpbmcuYmxvY2stY29sb21ucy1mdWxsIHsgd2lkdGg6Y2FsYygxMDAlIC0gMjBweCk7fVxyXG4gXHJcbiBcclxuIFxyXG4gXHJcbiAgIC8qIEFuY2llbm5lIGdyaWxsZSAqL1xyXG4gICAgICAgLyogV3JhcHBlciBjb2x1bXMgKi9cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgeyBkaXNwbGF5Oi13ZWJraXQtYm94OyBkaXNwbGF5Oi1tb3otYm94OyBkaXNwbGF5Oi1tcy1mbGV4Ym94OyBkaXNwbGF5Oi1tb3otZmxleDsgZGlzcGxheTotd2Via2l0LWZsZXg7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyB3cmFwO31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMuY2VudGVyIHsganVzdGlmeS1jb250ZW50OmNlbnRlcjsgfVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zIHsgbWFyZ2luOjEwcHg7IH1cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy0xIHsgd2lkdGg6MjAwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLTIgeyB3aWR0aDozMDBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtMyB7IHdpZHRoOjQwMHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy00IHsgd2lkdGg6NTAwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLTUgeyB3aWR0aDo2MDBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtNiB7IHdpZHRoOjcwMHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbHVtcy03IHsgd2lkdGg6ODAwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYmxvY2stY29sdW1zLTggeyB3aWR0aDo5MDBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb2x1bXMtZnVsbCB7IHdpZHRoOjk2MHB4O31cclxuIFxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtcyAuYWxwaGEgeyBtYXJnaW4tbGVmdDowO31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLm9tZWdhIHsgbWFyZ2luLXJpZ2h0OjA7fVxyXG4gXHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1zIC5ibG9jay1jb250ZW50LWJvZHkgeyBvcmRlcjoxOyBmbGV4OjE7IG1hcmdpbi1yaWdodDoyMHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bXMgLmJsb2NrLWNvbnRlbnQtc2lkZSB7IG9yZGVyOjI7IHdpZHRoOjIwMHB4O31cclxuIFxyXG4gICAgICAgLyogV1JBUFBFUiBDT0xVTU5TICovXHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyB7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LW1vei1ib3g7IGRpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LW1vei1mbGV4OyBkaXNwbGF5Oi13ZWJraXQtZmxleDsgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6cm93IHdyYXA7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMuY2VudGVyIHsganVzdGlmeS1jb250ZW50OmNlbnRlcjsgfVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMgeyBtYXJnaW46MTBweDsgfVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtbWFpbiB7IGZsZXgtZ3JvdzoxO31cclxuIFxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtMSB7IHdpZHRoOjYwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtMiB7IHdpZHRoOjE0MHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLTMgeyB3aWR0aDoyMjBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyAuYmxvY2stY29sdW1ucy00IHsgd2lkdGg6MzAwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtNSB7IHdpZHRoOjM4MHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLTYgeyB3aWR0aDo0NjBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyAuYmxvY2stY29sdW1ucy03IHsgd2lkdGg6NTQwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtOCB7IHdpZHRoOjYyMHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLTkgeyB3aWR0aDo3MDBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyAuYmxvY2stY29sdW1ucy0xMCB7IHdpZHRoOjc4MHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLTExIHsgd2lkdGg6ODYwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtMTIgeyB3aWR0aDo5NDBweDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyAuYmxvY2stY29sdW1ucy1mdWxsIHsgd2lkdGg6MTAwJTt9XHJcbiBcclxuICAgICAgICAgICAvKiBQcmVmaXggKi9cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLXByZWZpeC0xIHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDcwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTIgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMTUwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTMgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMjMwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTQgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMzEwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTUgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggMzkwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTYgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNDcwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTcgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNTUwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTggeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNjMwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTkgeyBtYXJnaW46MTBweCAxMHB4IDEwcHggNzEwcHg7fVxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmJsb2NrLWNvbHVtbnMtcHJlZml4LTEwIHsgbWFyZ2luOjEwcHggMTBweCAxMHB4IDc5MHB4O31cclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zLXByZWZpeC0xMSB7IG1hcmdpbjoxMHB4IDEwcHggMTBweCA4NzBweDt9XHJcbiBcclxuICAgICAgICAgICAud3JhcHBlci1jb2x1bW5zIC5ibG9jay1jb2x1bW5zIC5ibG9jay1jb2x1bW5zIHsgbWFyZ2luLXRvcDowO31cclxuIFxyXG4gICAgICAgICAgIC53cmFwcGVyLWNvbHVtbnMgLmFscGhhIHsgbWFyZ2luLWxlZnQ6MDt9XHJcbiAgICAgICAgICAgLndyYXBwZXItY29sdW1ucyAub21lZ2EgeyBtYXJnaW4tcmlnaHQ6MDt9IiwiLnNlbGVjdDItY29udGFpbmVye2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyOHB4O3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1sZWZ0OjhweDtwYWRkaW5nLXJpZ2h0OjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjFlbX0uc2VsZWN0Mi1jb250YWluZXJbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjIwcHh9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym94LXNpemluZzpib3JkZXItYm94O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDozMnB4O3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7ZGlzcGxheTppbmxpbmU7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjFlbX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEwMCU7bWFyZ2luLXRvcDo1cHg7bWFyZ2luLWxlZnQ6NXB4O3BhZGRpbmc6MDttYXgtd2lkdGg6MTAwJTtyZXNpemU6bm9uZTtoZWlnaHQ6MThweDt2ZXJ0aWNhbC1hbGlnbjpib3R0b207Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtvdmVyZmxvdzpoaWRkZW47d29yZC1icmVhazprZWVwLWFsbH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uc2VsZWN0Mi1kcm9wZG93bntiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMDAwMDBweDt3aWR0aDoxMDAlO3otaW5kZXg6MTA1MX0uc2VsZWN0Mi1yZXN1bHRze2Rpc3BsYXk6YmxvY2t9LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uc3tsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowfS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbntwYWRkaW5nOjZweDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGV7Y3Vyc29yOnBvaW50ZXJ9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3due2xlZnQ6MH0uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWFib3Zle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWJlbG93e2JvcmRlci10b3A6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3due2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo0cHh9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke3BhZGRpbmc6NHB4O3dpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94fS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duLnNlbGVjdDItc2VhcmNoLS1oaWRle2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jbG9zZS1tYXNre2JvcmRlcjowO21hcmdpbjowO3BhZGRpbmc6MDtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmZpeGVkO2xlZnQ6MDt0b3A6MDttaW4taGVpZ2h0OjEwMCU7bWluLXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87d2lkdGg6YXV0bztvcGFjaXR5OjA7ei1pbmRleDo5OTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MCl9LnNlbGVjdDItaGlkZGVuLWFjY2Vzc2libGV7Ym9yZGVyOjAgIWltcG9ydGFudDtjbGlwOnJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDstd2Via2l0LWNsaXAtcGF0aDppbnNldCg1MCUpICFpbXBvcnRhbnQ7Y2xpcC1wYXRoOmluc2V0KDUwJSkgIWltcG9ydGFudDtoZWlnaHQ6MXB4ICFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuICFpbXBvcnRhbnQ7cGFkZGluZzowICFpbXBvcnRhbnQ7cG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDt3aWR0aDoxcHggIWltcG9ydGFudDt3aGl0ZS1zcGFjZTpub3dyYXAgIWltcG9ydGFudH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtjb2xvcjojNDQ0O2xpbmUtaGVpZ2h0OjI4cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6cmlnaHQ7Zm9udC13ZWlnaHQ6Ym9sZDtoZWlnaHQ6MjZweDttYXJnaW4tcmlnaHQ6MjBweDtwYWRkaW5nLXJpZ2h0OjBweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlcntjb2xvcjojOTk5fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93e2hlaWdodDoyNnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxcHg7cmlnaHQ6MXB4O3dpZHRoOjIwcHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYntib3JkZXItY29sb3I6Izg4OCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjVweCA0cHggMCA0cHg7aGVpZ2h0OjA7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTRweDttYXJnaW4tdG9wOi0ycHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZWVlO2N1cnNvcjpkZWZhdWx0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntkaXNwbGF5Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYntib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6MCA0cHggNXB4IDRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtjdXJzb3I6dGV4dDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHg7cG9zaXRpb246cmVsYXRpdmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUuc2VsZWN0Mi1zZWxlY3Rpb24tLWNsZWFyYWJsZXtwYWRkaW5nLXJpZ2h0OjI1cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmb250LXdlaWdodDpib2xkO2hlaWdodDoyMHB4O21hcmdpbi1yaWdodDoxMHB4O21hcmdpbi10b3A6NXB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7cGFkZGluZzoxcHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7YmFja2dyb3VuZC1jb2xvcjojZTRlNGU0O2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MDtwYWRkaW5nLWxlZnQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt2ZXJ0aWNhbC1hbGlnbjpib3R0b207d2hpdGUtc3BhY2U6bm93cmFwfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5e2N1cnNvcjpkZWZhdWx0O3BhZGRpbmctbGVmdDoycHg7cGFkZGluZy1yaWdodDo1cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JvcmRlci1yaWdodDoxcHggc29saWQgI2FhYTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtjb2xvcjojOTk5O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6Ym9sZDtwYWRkaW5nOjAgNHB4O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZjFmMWYxO2NvbG9yOiMzMzM7b3V0bGluZTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5e3BhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDoycHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnQ7bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyOnNvbGlkIGJsYWNrIDFweDtvdXRsaW5lOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JhY2tncm91bmQtY29sb3I6I2VlZTtjdXJzb3I6ZGVmYXVsdH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7Ym9yZGVyOjFweCBzb2xpZCAjYWFhfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7b3V0bGluZTowO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7bWF4LWhlaWdodDoyMDBweDtvdmVyZmxvdy15OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257cGFkZGluZy1sZWZ0OjFlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtwYWRkaW5nLWxlZnQ6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTFlbTtwYWRkaW5nLWxlZnQ6MmVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTJlbTtwYWRkaW5nLWxlZnQ6M2VtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi0zZW07cGFkZGluZy1sZWZ0OjRlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTRlbTtwYWRkaW5nLWxlZnQ6NWVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTVlbTtwYWRkaW5nLWxlZnQ6NmVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3Vwe3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZHtjb2xvcjojOTk5fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6I2RkZH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiM1ODk3ZmI7Y29sb3I6d2hpdGV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3Vwe2N1cnNvcjpkZWZhdWx0O2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo2cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtY29sb3I6I2Y3ZjdmNztib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7b3V0bGluZTowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDUwJSwgI2VlZSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYgNTAlLCAjZWVlIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiA1MCUsICNlZWUgMTAwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTpmb2N1c3tib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6IzQ0NDtsaW5lLWhlaWdodDoyOHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2N1cnNvcjpwb2ludGVyO2Zsb2F0OnJpZ2h0O2ZvbnQtd2VpZ2h0OmJvbGQ7aGVpZ2h0OjI2cHg7bWFyZ2luLXJpZ2h0OjIwcHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tiYWNrZ3JvdW5kLWNvbG9yOiNkZGQ7Ym9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjRweDtoZWlnaHQ6MjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MXB4O3JpZ2h0OjFweDt3aWR0aDoyMHB4O2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2NjYyAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWUgNTAlLCAjY2NjIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZSA1MCUsICNjY2MgMTAwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGQ0NDQ0NDJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOiM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDo1cHggNHB4IDAgNHB4O2hlaWdodDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXRvcDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZmxvYXQ6bGVmdH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O2JvcmRlci13aWR0aDowIDRweCA1cHggNHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLXRvcDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2ZmZiAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWUgNTAlLCAjZmZmIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZSA1MCUsICNmZmYgMTAwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjp0ZXh0O291dGxpbmU6MDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtjdXJzb3I6ZGVmYXVsdDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtjb2xvcjojODg4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6Ym9sZDtwYWRkaW5nOjAgNHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXJ7Y29sb3I6IzU1NTtvdXRsaW5lOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle21hcmdpbi1sZWZ0OjVweDttYXJnaW4tcmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7cGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjJweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItdG9wOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JvcmRlcjoxcHggc29saWQgI2FhYTtvdXRsaW5lOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7b3V0bGluZTowO2JveC1zaGFkb3c6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnR9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZXtib3JkZXItYm90dG9tOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvd3tib3JkZXItdG9wOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uc3ttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cHtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWR7Y29sb3I6Z3JleX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiMzODc1ZDc7Y29sb3I6I2ZmZn0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXB7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTpibG9jaztwYWRkaW5nOjZweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd257Ym9yZGVyLWNvbG9yOiM1ODk3ZmJ9IiwiLyohXHJcbiAqICBGb3JtIDEgYnkgQGRhdmlkbGl2ZXJuZWF1eCAtIGh0dHA6Ly9kYXZpZGxpdmVybmVhdXguZnJcclxuICogIExpY2Vuc2UgLSBub25lIChDU1M6IE1JVCBMaWNlbnNlKVxyXG4gKi9cclxuXHJcbiAgLyoqXHJcbiAgICogVFJBTlNJVElPTlNcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgLnRhYnMgLnRhYnMtbmF2IC50YWJzLW5hdi1pdGVtLFxyXG4gICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW0gc3BhbiwgXHJcbiAgIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LWl0ZW0tZGV1eCxcclxuICAgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtaXRlbS1kZXV4IHNwYW4ge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgfVxyXG4gXHJcbiBcclxuICAgIC8qIElOSVQgKi9cclxuICAgIC50YWJzLCAudGFicy1kZXV4IHsgbWFyZ2luLXRvcDoxMHB4OyB9XHJcbiAgICAgIFxyXG4gICAgICAudGFicyAudGFicy1uYXYsIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggeyBtYXJnaW46MDsgcGFkZGluZzowOyBoZWlnaHQ6NDVweDsgbGlzdC1zdHlsZTpub25lOyB0ZXh0LWFsaWduOmxlZnQ7IGZvbnQtc2l6ZTowcHg7IGJvcmRlci1ib3R0b206M3B4IHNvbGlkICNlMmRiZDM7IGJhY2tncm91bmQ6I0Y1RjZGQTt9XHJcbiAgICAgIC50YWJzIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbSwgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtaXRlbS1kZXV4IHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbjowOyBwYWRkaW5nOjAgMjBweDsgaGVpZ2h0OjQ1cHg7IGxpbmUtaGVpZ2h0OjUwcHg7IGZvbnQtc2l6ZToxMnB4OyBjb2xvcjojMzMzMzMzOyB0ZXh0LWFsaWduOmNlbnRlcjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBiYWNrZ3JvdW5kOiNmZmY7IGN1cnNvcjpwb2ludGVyO2JvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZTJkYmQzfSBcclxuICAgICAgLnRhYnMgLnRhYnMtbmF2IC50YWJzLW5hdi1pdGVtIHNwYW4sIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LWl0ZW0tZGV1eCBzcGFuIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OjEwcHg7IHBhZGRpbmc6MHB4IDEwcHg7IGhlaWdodDoyNXB4OyBsaW5lLWhlaWdodDoyNnB4OyBjb2xvcjojMzY1M2I4OyBmb250LXNpemU6MTNweDsgZm9udC13ZWlnaHQ6OTAwO31cclxuICAgICAgLnRhYnMgLnRhYnMtbmF2IC50YWJzLW5hdi1pdGVtIGEsIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LWl0ZW0tZGV1eCBhIHtoZWlnaHQ6IDQ1cHg7bGluZS1oZWlnaHQ6IDUwcHg7d2lkdGg6IDEwMCU7ZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuICAgICAgLnRhYnMgLnRhYnMtbmF2IC50YWJzLW5hdi1zdWItaXRlbSwgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtc3ViLWl0ZW0tZGV1eCB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46MDsgcGFkZGluZzowIDIwcHg7IGhlaWdodDo0NXB4OyBsaW5lLWhlaWdodDo1MHB4OyBmb250LXNpemU6MTJweDsgY29sb3I6IzMzMzMzMzsgdGV4dC1hbGlnbjpjZW50ZXI7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgYmFja2dyb3VuZDojZmZmOyBjdXJzb3I6cG9pbnRlcjt9IFxyXG4gICAgICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LXN1Yi1pdGVtIHNwYW4sIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LXN1Yi1pdGVtLWRldXggc3BhbiB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW4tbGVmdDoxMHB4OyBwYWRkaW5nOjBweCAxMHB4OyBoZWlnaHQ6MjVweDsgbGluZS1oZWlnaHQ6MjZweDsgY29sb3I6IzM2NTNiODsgZm9udC1zaXplOjEzcHg7IGZvbnQtd2VpZ2h0OjkwMDt9XHJcbiAgICAgIC50YWJzIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0gYSwgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtc3ViLWl0ZW0tZGV1eCBhIHtoZWlnaHQ6IDQ1cHg7bGluZS1oZWlnaHQ6IDUwcHg7d2lkdGg6IDEwMCU7ZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuIFxyXG4gICAgICAvKiAudGFicyAudGFicy13cmFwcGVyIHsgbWFyZ2luLXRvcDogMzVweDsgfSAqL1xyXG4gICAgICAudGFicyAudGFicy13cmFwcGVyLndoaXRlLCAudGFicy1kZXV4IC50YWJzLXdyYXBwZXItZGV1eC53aGl0ZSB7IGJhY2tncm91bmQ6I2ZmZjt9XHJcbiAgICAgIC50YWJzIC50YWJzLXdyYXBwZXIgLnRhYnMtdGFiLCAudGFicy1kZXV4IC50YWJzLXdyYXBwZXItZGV1eCAudGFicy10YWItZGV1eHsgZGlzcGxheTpub25lOyBwYWRkaW5nOjEwcHg7IH1cclxuICAgICAgLnRhYnMgLnRhYnMtd3JhcHBlciAudGFicy10YWIuYWN0aXZlLCAudGFicy1kZXV4IC50YWJzLXdyYXBwZXItZGV1eCAudGFicy10YWItZGV1eC5hY3RpdmUgeyBkaXNwbGF5OmJsb2NrO31cclxuICAgICAgLnRhYnMtZGV1eCAudGFicy13cmFwcGVyLWRldXggLnRhYnMtdGFiLWRldXguYWN0aXZlIHsgcGFkZGluZzowOyBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxyXG4gICAgXHJcbiAgICAgIC50YWJzIC50YWJzLXdyYXBwZXIgLnRhYnMtc3ViLXRhYiwgLnRhYnMtZGV1eCAudGFicy13cmFwcGVyLWRldXggLnRhYnMtc3ViLXRhYi1kZXV4IHsgZGlzcGxheTpub25lOyBwYWRkaW5nOjEwcHg7IH1cclxuICAgICAgLnRhYnMgLnRhYnMtd3JhcHBlciAudGFicy1zdWItdGFiLmFjdGl2ZSwgLnRhYnMtZGV1eCAudGFicy13cmFwcGVyLWRldXggLnRhYnMtc3ViLXRhYi1kZXV4LmFjdGl2ZSB7IGRpc3BsYXk6YmxvY2s7IH1cclxuIFxyXG4gICAgLyogc3RhdHVzICovXHJcbiAgICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW06aG92ZXIsIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LWl0ZW0tZGV1eDpob3ZlciB7IGJhY2tncm91bmQ6I2Y1ZjZmYTsgYm9yZGVyLWJvdHRvbTozcHggc29saWQgIzM2NTNiODt9XHJcbiAgICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW0uYWN0aXZlLCAudGFicy1kZXV4IC50YWJzLW5hdi1kZXV4IC50YWJzLW5hdi1pdGVtLWRldXguYWN0aXZlIHsgIGJvcmRlci1ib3R0b206M3B4IHNvbGlkICMzNjUzYjg7fVxyXG4gXHJcbiAgICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW06aG92ZXIgc3BhbiwgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtaXRlbS1kZXV4OmhvdmVyIHNwYW4geyBjb2xvcjojMzY1M2I4O31cclxuICAgIC50YWJzIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbS5hY3RpdmUgc3BhbiwgLnRhYnMtZGV1eCAudGFicy1uYXYtZGV1eCAudGFicy1uYXYtaXRlbS1kZXV4LmFjdGl2ZSBzcGFuIHsgY29sb3I6I2ZmZmZmZjt9XHJcbiAgICAudGFicyAudGFicy1uYXYgLnRhYnMtbmF2LXN1Yi1pdGVtOmhvdmVyLCAudGFicy1kZXV4IC50YWJzLW5hdi1kZXV4IC50YWJzLW5hdi1zdWItaXRlbS1kZXV4OmhvdmVyIHsgYmFja2dyb3VuZDojZjVmNmZhOyBib3JkZXItYm90dG9tOjNweCBzb2xpZCAjMzY1M2I4O31cclxuICAgIC50YWJzIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0uYWN0aXZlLCAudGFicy1kZXV4IC50YWJzLW5hdi1kZXV4IC50YWJzLW5hdi1zdWItaXRlbS1kZXV4LmFjdGl2ZSB7ICBib3JkZXItYm90dG9tOjNweCBzb2xpZCAjMzY1M2I4O31cclxuIFxyXG4gICAgLnRhYnMgLnRhYnMtbmF2IC50YWJzLW5hdi1zdWItaXRlbTpob3ZlciBzcGFuLCAudGFicy1kZXV4IC50YWJzLW5hdi1kZXV4IC50YWJzLW5hdi1zdWItaXRlbS1kZXV4OmhvdmVyIHNwYW4geyBjb2xvcjojMzY1M2I4O31cclxuICAgIC50YWJzIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0uYWN0aXZlIHNwYW4sIC50YWJzLWRldXggLnRhYnMtbmF2LWRldXggLnRhYnMtbmF2LXN1Yi1pdGVtLWRldXguYWN0aXZlIHNwYW4geyBjb2xvcjojZmZmZmZmO31cclxuIFxyXG4gXHJcbiAgICAvKiBWZXJzaW9uIGF2ZWMgbGUgbWVudSBkJ29uZ2xldHMgc3VyIGxhIGdhdWNoZSAqL1xyXG4gICAgICAudGFicy50YWJzLXZlcnRpY2FsIHsgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6cm93IG5vd3JhcDsgbWFyZ2luOjA7fVxyXG4gICAgICAudGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiB7IHdpZHRoOjE4MHB4OyBoZWlnaHQ6YXV0bzsgYm9yZGVyLWJvdHRvbTpub25lO31cclxuICAgICAgLnRhYnMudGFicy12ZXJ0aWNhbCAudGFicy1uYXYgLnRhYnMtbmF2LXN0aWNreSB7IHBvc2l0aW9uOnN0aWNreTsgdG9wOiAxMDVweDsgei1pbmRleDogMjt9XHJcbiAgICAgIC50YWJzLnRhYnMtdmVydGljYWwgLnRhYnMtbmF2IC50YWJzLW5hdi1pdGVtIHsgYm94LXNpemluZzpib3JkZXItYm94OyBwYWRkaW5nOjEwcHggMCAxMHB4IDE1cHg7IHdpZHRoOjEwMCU7IGhlaWdodDphdXRvOyBsaW5lLWhlaWdodDoyMHB4OyBib3JkZXItcmlnaHQ6M3B4IHNvbGlkICNlMmRiZDM7IHRleHQtYWxpZ246bGVmdDt9XHJcbiAgICAgIC50YWJzLnRhYnMtdmVydGljYWwgLnRhYnMtbmF2IC50YWJzLW5hdi1zdWItaXRlbSB7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgcGFkZGluZzoxMHB4IDAgMTBweCAxNXB4OyB3aWR0aDoxMDAlOyBoZWlnaHQ6YXV0bzsgbGluZS1oZWlnaHQ6MjBweDsgYm9yZGVyLXJpZ2h0OjNweCBzb2xpZCAjZTJkYmQzOyB0ZXh0LWFsaWduOmxlZnQ7fVxyXG4gICAgICBcclxuICAgICAgLnRhYnMudGFicy12ZXJ0aWNhbCAudGFicy13cmFwcGVyIHtmbGV4LWdyb3c6MTsgYmFja2dyb3VuZDojZmZmOyBib3JkZXI6M3B4IHNvbGlkICNlZmVmZWY7IGJvcmRlci1sZWZ0Om5vbmU7fVxyXG4gXHJcbiAgICAgIC8qIHN0YXR1cyAqL1xyXG4gICAgICAudGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbTpob3ZlciB7IGJvcmRlcjpub25lOyBib3JkZXItcmlnaHQ6M3B4IHNvbGlkICMzNjUzYjg7fVxyXG4gICAgICAudGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbS5hY3RpdmUgeyBiYWNrZ3JvdW5kOiMzNjUzYjg7IGJvcmRlcjpub25lOyBib3JkZXItcmlnaHQ6M3B4IHNvbGlkICMzNjUzYjg7IGNvbG9yOiNmZmY7fVxyXG4gICAgICAudGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW06aG92ZXIgeyBib3JkZXI6bm9uZTsgYm9yZGVyLXJpZ2h0OjNweCBzb2xpZCAjMzY1M2I4O31cclxuICAgICAgLnRhYnMudGFicy12ZXJ0aWNhbCAudGFicy1uYXYgLnRhYnMtbmF2LXN1Yi1pdGVtLmFjdGl2ZSB7IGJhY2tncm91bmQ6IzM2NTNiODsgYm9yZGVyOm5vbmU7IGJvcmRlci1yaWdodDozcHggc29saWQgIzM2NTNiODsgY29sb3I6I2ZmZjt9XHJcblxyXG4gICAgICBcclxuIFxyXG4gICAgLyogVmVyc2lvbiBhdmVjIGxlIHNvdXMgbWVudSBkJ29uZ2xldHMgc3VyIGxhIGdhdWNoZSAqL1xyXG4gICAgLnN1Yi10YWJzLnRhYnMtdmVydGljYWwgeyBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgbm93cmFwOyBtYXJnaW46MDt9XHJcbiAgICAuc3ViLXRhYnMudGFicy12ZXJ0aWNhbCAudGFicy1uYXYgeyB3aWR0aDoxODBweDsgaGVpZ2h0OmF1dG87IGJvcmRlci1ib3R0b206bm9uZTt9XHJcbiAgICAuc3ViLXRhYnMudGFicy12ZXJ0aWNhbCAudGFicy1uYXYgLnRhYnMtbmF2LXN0aWNreSB7IHBvc2l0aW9uOnN0aWNreTsgdG9wOiAxMDVweDsgei1pbmRleDogMjt9XHJcbiAgICAuc3ViLXRhYnMudGFicy12ZXJ0aWNhbCAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW0geyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHBhZGRpbmc6MTBweCAwIDEwcHggMTVweDsgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGxpbmUtaGVpZ2h0OjIwcHg7IGJvcmRlci1yaWdodDozcHggc29saWQgI2UyZGJkMzsgdGV4dC1hbGlnbjpsZWZ0O31cclxuICAgIC5zdWItdGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0geyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHBhZGRpbmc6MTBweCAwIDEwcHggMTVweDsgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGxpbmUtaGVpZ2h0OjIwcHg7IGJvcmRlci1yaWdodDozcHggc29saWQgI2UyZGJkMzsgdGV4dC1hbGlnbjpsZWZ0O31cclxuICAgIFxyXG4gICAgLnN1Yi10YWJzLnRhYnMtdmVydGljYWwgLnRhYnMtd3JhcHBlciB7ZmxleC1ncm93OjE7IGJhY2tncm91bmQ6I2ZmZjsgYm9yZGVyOjNweCBzb2xpZCAjZWZlZmVmOyBib3JkZXItbGVmdDpub25lO31cclxuXHJcbiAgICAvKiBzdGF0dXMgKi9cclxuICAgIC5zdWItdGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbTpob3ZlciB7IGJvcmRlcjpub25lOyBib3JkZXItcmlnaHQ6M3B4IHNvbGlkICMzNjUzYjg7fVxyXG4gICAgLnN1Yi10YWJzLnRhYnMtdmVydGljYWwgLnRhYnMtbmF2IC50YWJzLW5hdi1pdGVtLmFjdGl2ZSB7IGJhY2tncm91bmQ6IzM2NTNiODsgYm9yZGVyOm5vbmU7IGJvcmRlci1yaWdodDozcHggc29saWQgIzM2NTNiODsgY29sb3I6I2ZmZjt9XHJcbiAgICAudGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW06aG92ZXIgeyBib3JkZXI6bm9uZTsgYm9yZGVyLXJpZ2h0OjNweCBzb2xpZCAjMzY1M2I4O31cclxuICAgIC5zdWItdGFicy50YWJzLXZlcnRpY2FsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0uYWN0aXZlIHsgYmFja2dyb3VuZDojMzY1M2I4OyBib3JkZXI6bm9uZTsgYm9yZGVyLXJpZ2h0OjNweCBzb2xpZCAjMzY1M2I4OyBjb2xvcjojZmZmO31cclxuIFxyXG4gICAgLyogVmVyc2lvbiBhdmVjIGxlIG1lbnUgZCdvbmdsZXRzIHN1ciBsZSBkZXNzdXMgKG1vZGlmIEVyd25uKSAqL1xyXG4gICAgICAudGFicy50YWJzLWhvcml6b250YWwgeyBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgd3JhcDsgbWFyZ2luOjA7fVxyXG4gICAgICAudGFicy50YWJzLWhvcml6b250YWwgLnRhYnMtbmF2IHsgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGJvcmRlci1ib3R0b206bm9uZTt9XHJcbiAgICAgIC50YWJzLnRhYnMtaG9yaXpvbnRhbCAudGFicy1uYXYudGFicy1uYXYtc3RpY2t5IHsgcG9zaXRpb246IHN0aWNreTsgdG9wOiAxMDVweDsgei1pbmRleDogMzsgZGlzcGxheTogZmxleDt9XHJcbiAgICAgIC50YWJzLnRhYnMtaG9yaXpvbnRhbCAudGFicy1uYXYgLnRhYnMtbmF2LWl0ZW0geyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHBhZGRpbmc6MTBweCAwIDEwcHggMTVweDsgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGxpbmUtaGVpZ2h0OjIwcHg7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWlubGluZToxcHggc29saWQgI2UyZGJkMzsgYm94LXNoYWRvdzogMHB4IDVweCA1cHggIzAwMDAwMDE0O31cclxuICAgICAgLnRhYnMudGFicy1ob3Jpem9udGFsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW0geyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHBhZGRpbmc6MTBweCAwIDEwcHggMTVweDsgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGxpbmUtaGVpZ2h0OjIwcHg7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWlubGluZToxcHggc29saWQgI2UyZGJkMzsgYm94LXNoYWRvdzogMHB4IDVweCA1cHggIzAwMDAwMDE0O31cclxuICAgICAgXHJcbiAgICAgIC50YWJzLnRhYnMtaG9yaXpvbnRhbCAudGFicy13cmFwcGVyIHtmbGV4LWdyb3c6MTsgYmFja2dyb3VuZDojZmZmO31cclxuIFxyXG4gICAgICAvKiBzdGF0dXMgKi9cclxuICAgICAgLnRhYnMudGFicy1ob3Jpem9udGFsIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbTpob3ZlciB7IGJvcmRlcjpub25lOyBib3JkZXItaW5saW5lOjFweCBzb2xpZCAjMzY1M2I4O31cclxuICAgICAgLnRhYnMudGFicy1ob3Jpem9udGFsIC50YWJzLW5hdiAudGFicy1uYXYtaXRlbS5hY3RpdmUgeyBiYWNrZ3JvdW5kOiMzNjUzYjg7IGJvcmRlcjpub25lOyBib3JkZXItaW5saW5lOjFweCBzb2xpZCAjMzY1M2I4OyBjb2xvcjojZmZmO31cclxuICAgICAgLnRhYnMudGFicy1ob3Jpem9udGFsIC50YWJzLW5hdiAudGFicy1uYXYtc3ViLWl0ZW06aG92ZXIgeyBib3JkZXI6bm9uZTsgYm9yZGVyLWlubGluZToxcHggc29saWQgIzM2NTNiODt9XHJcbiAgICAgIC50YWJzLnRhYnMtaG9yaXpvbnRhbCAudGFicy1uYXYgLnRhYnMtbmF2LXN1Yi1pdGVtLmFjdGl2ZSB7IGJhY2tncm91bmQ6IzM2NTNiODsgYm9yZGVyOm5vbmU7IGJvcmRlci1pbmxpbmU6MXB4IHNvbGlkICMzNjUzYjg7IGNvbG9yOiNmZmY7fSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/