@charset "UTF-8";

/******************************
 3RD PARTY PLUGIN CUSTOMIZATION 
******************************/

/* Cubic Bezier Transition */

/***
Bootstrap Colorpicker
***/

.input-group.color .input-group-btn i {
  position: absolute;
  display: block;
  cursor: pointer;
  width: 20px;
  height: 20px;
  right: 6px;
}

.colorpicker.dropdown-menu {
  padding: 5px;
}

/* change z-index when opened in modal */

.modal-open .colorpicker {
  z-index: 10055 !important;
}

/***
Bootstrap Datepaginator
***/

.datepaginator a {
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 300;
}

.datepicker .today {
  background-image: none !important;
  filter: none !important;
}

#dp-calendar {
  right: 4px !important;
}

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

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

/***
Bootstrap Datepicker
***/

.datepicker.dropdown-menu {
  padding: 5px;
}

.datepicker .selected {
  background-color: #909090 !important;
  background-image: none !important;
  filter: none !important;
}

.datepicker .active {
  background-color: #4b8df8 !important;
  background-image: none !important;
  filter: none !important;
}

.datepicker .active:hover {
  background-color: #2678FC !important;
  background-image: none !important;
  filter: none !important;
}

.datepicker .input-daterange input {
  text-align: left;
}

/* change z-index when opened in modal */

.modal-open .datepicker {
  z-index: 10055 !important;
}

.datepicker table td {
  color: #000;
  font-weight: 300  !important;
  font-family: 'Open Sans' !important;
}

.datepicker table th {
  color: #333;
  font-family: 'Open Sans' !important;
  font-weight: 400  !important;
}

.datepicker.dropdown-menu {
  box-shadow: 5px 5px rgba(102, 102, 102, 0.1);
  border: 1px solid #efefef;
}

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

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

/***
Bootstrap Daterangepicker
***/

.modal-open .daterangepicker {
  z-index: 10055 !important;
}

.daterangepicker {
  margin-top: 4px;
}

.daterangepicker .input-mini {
  width: 100% !important;
  outline: none !important;
}

.daterangepicker td {
  text-shadow: none;
}

.daterangepicker td.active {
  background-color: #4b8df8;
  background-image: none;
  filter: none;
}

.daterangepicker th {
  font-weight: 400;
  font-size: 14px;
}

.daterangepicker .ranges input[type="text"] {
  width: 70px !important;
  font-size: 11px;
  vertical-align: middle;
}

.daterangepicker .ranges label {
  font-weight: 300;
  display: block;
}

.daterangepicker .ranges {
  width: 170px;
}

.daterangepicker .ranges ul > li.active {
  border-radius: 2px;
}

.daterangepicker .ranges .btn {
  margin-top: 10px;
}

.daterangepicker.dropdown-menu {
  padding: 5px;
}

.daterangepicker .ranges li {
  color: #333;
}

.daterangepicker .ranges li.active,
.daterangepicker .ranges li:hover {
  background: #4b8df8 !important;
  border: 1px solid #4b8df8 !important;
  color: #fff;
}

.daterangepicker .range_inputs input {
  margin-bottom: 0 !important;
}

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

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

/***
Bootstrap  Datetimepicker
***/

.datetimepicker table td {
  color: #000;
  font-weight: 300  !important;
  font-family: 'Open Sans' !important;
}

.datetimepicker table th {
  font-family: 'Open Sans' !important;
  font-weight: 400  !important;
}

.datetimepicker.dropdown-menu {
  padding: 5px;
}

.datetimepicker .active {
  background-color: #4b8df8 !important;
  background-image: none !important;
  filter: none !important;
}

.datetimepicker .active:hover {
  background-color: #2678FC !important;
  background-image: none !important;
  filter: none !important;
}

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

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

/* change z-index when opened in modal */

.modal-open .datetimepicker {
  z-index: 10055;
}

.bs-datetime .input-group-addon {
  background: none;
  padding: 0;
  border-left: 0;
}

.bs-datetime .input-group-addon .btn {
  border: 0;
}

/***
Bootstrap Editable
***/

.editable-input table,
.editable-input table th,
.editable-input table td,
.editable-input table tr {
  border: 0 !important;
}

.editable-input .combodate select {
  margin-bottom: 5px;
}

/***
Jansy File Input plugin css changes
***/

.fileinput {
  margin-bottom: 0;
}

.fileinput .close {
  float: none;
}

.fileinput .input-group {
  white-space: nowrap;
  overflow: hidden;
}

/***
Bootstrap Markdown
***/

.md-input {
  padding: 5px !important;
  border-bottom: 0 !important;
  border-radius: 0 0 2px 2px;
}

.md-editor {
  border-radius: 2px;
}

.md-editor .btn-toolbar {
  margin-left: 0px;
  border-radius: 2px 2px 0 0;
}

.md-editor .btn-toolbar .btn-group .btn-sm.btn {
  padding-bottom: 3px;
}

.md-editor .btn-toolbar .btn-group .btn-primary {
  padding-top: 5px;
  padding-bottom: 7px;
}

.md-editor.active {
  border: 1px solid #999999;
  box-shadow: none !important;
}

/***
Error state for WYSIWYG Editors
***/

.has-error .md-editor {
  border: 1px solid #fbe1e3 !important;
}

.has-success .md-editor {
  border: 1px solid #abe7ed !important;
}

.has-warning .md-editor {
  border: 1px solid #f9e491 !important;
}

/***
Bootstrap Modal
***/

/* fix: content shifting to the right on modal open */

.modal-open.page-overflow .page-container,
.modal-open.page-overflow .page-container .navbar-fixed-top,
.modal-open.page-overflow .page-container .navbar-fixed-bottom,
.modal-open.page-overflow .modal-scrollable {
  overflow-y: auto !important;
}

.modal-scrollable {
  overflow: hidden !important;
}

/* BS 3.3.1 fix */

.modal-backdrop {
  position: fixed;
  bottom: 0;
}

.modal-scrollable {
  overflow: hidden !important;
  z-index: 10051;
  overflow-y: scroll !important;
}

.modal {
  border-radius: 2px;
  border: 0 !important;
}

.modal .modal-body {
  border-radius: 2px;
  border: 0;
}

.modal .modal-title {
  font-weight: 400;
}

.modal .modal-footer {
  border: 0 !important;
}

.modal-backdrop,
.modal-backdrop.fade.in {
  opacity: 0.2;
  filter: alpha(opacity=20);
}

/***
Bootstrap Select
***/

.bootstrap-select .btn {
  border-color: #c2cad8;
}

.has-error .bootstrap-select .btn {
  border-color: #fbe1e3;
}

.has-success .bootstrap-select .btn {
  border-color: #abe7ed;
}

.has-warning .bootstrap-select .btn {
  border-color: #f9e491;
}

.bootstrap-select.open .btn {
  border-color: #93a1bb;
}

.bootstrap-select.open.dropup .btn {
  border-color: #93a1bb;
}

.bootstrap-select .btn:focus {
  outline: none !important;
  outline-offset: 0;
}

.bootstrap-select.btn-group .dropdown-menu {
  margin-top: 1px;
}

.bootstrap-select.btn-group .dropdown-menu > li > dt > .text {
  font-weight: 600;
  font-family: 'Open Sans';
  font-size: 14px;
}

.bootstrap-select.btn-group .dropdown-menu .text-muted {
  color: #999 !important;
}

.bootstrap-select .caret {
  border: 0;
  width: auto;
  height: auto;
  margin-top: -10px !important;
}

.bootstrap-select .caret:before {
  content: "\f107";
  display: inline-block;
  border: 0;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
}

.bootstrap-select .selected i {
  color: #aaa;
}

.bootstrap-select .dropdown-menu {
  z-index: 1000 !important;
}

.modal-open .bootstrap-select .dropdown-menu {
  z-index: 10050 !important;
}

/***
Bootstrap Switch 
***/

.bootstrap-switch {
  border-color: #c2cad8;
}

.bootstrap-switch.bootstrap-switch-focused {
  box-shadow: none;
  border-color: #c2cad8;
}

/***
Color variants
***/

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-primary {
  color: #fff;
  background: #337ab7;
}

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-info,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-info {
  color: #fff;
  background: #659be0;
}

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-success {
  color: #fff;
  background: #36c6d3;
}

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-warning,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-warning {
  color: #fff;
  background: #F1C40F;
}

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-danger,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-danger {
  color: #fff;
  background: #ed6b75;
}

.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-default,
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-default {
  color: #444;
  background: #e8eaef;
}

/* Bootstrap switch on portlet headers */

.portlet:not(.light) > .portlet-title > .actions > .bootstrap-switch {
  border-color: transparent;
  margin-top: 0px;
}

/***
Bootstrap Time Picker
***/

.bootstrap-timepicker-widget table td a {
  padding: 4px 0;
}

.bootstrap-timepicker-widget input,
.bootstrap-timepicker-widget input:focus {
  outline: none !important;
  border: 0;
}

.modal-open .bootstrap-timepicker-widget {
  z-index: 10055 !important;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before,
.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
  top: auto;
}

/***
Toastr Notifications
***/

.toast {
  box-shadow: none !important;
}

.toast {
  background-color: #030303;
}

.toast-success {
  background-color: #51a351;
}

.toast-error {
  background-color: #bd362f;
}

.toast-info {
  background-color: #2f96b4;
}

.toast-warning {
  background-color: #f89406;
}

.toast .toast-close-button {
  display: inline-block;
  margin-top: 0px;
  margin-right: 0px;
  text-indent: -100000px;
  width: 11px;
  height: 16px;
  background-repeat: no-repeat !important;
  background-image: url(/images/portlet-remove-icon-white.png?217abc6d6836f8d917b5579ce7772cd1) !important;
}

.toast-top-center {
  top: 12px;
  margin: 0 auto;
  left: 50%;
  margin-left: -150px;
}

.toast-top-center .toast {
  margin: 0 !important;
}

.toast-bottom-center {
  bottom: 12px;
  margin: 0 auto;
  left: 50%;
  margin-left: -150px;
}

.toast-bottom-center .toast {
  margin: 0 !important;
}

/***
Bootstrap Wizard
***/

.form-wizard .progress {
  margin-bottom: 30px;
}

.form-wizard .steps {
  padding: 10px 0;
  margin-bottom: 15px;
  background-color: #fff;
  background-image: none;
  filter: none;
  border: 0px;
  box-shadow: none;
}

.form-wizard .steps > li > a.step {
  background-color: #fff;
  background-image: none;
  filter: none;
  border: 0px;
  box-shadow: none;
}

.form-wizard .steps > li > a.step:hover {
  background: none;
}

.form-wizard .steps > li > a.step > .number {
  background-color: #eee;
  display: inline-block;
  text-align: center !important;
  font-size: 16px;
  font-weight: 300;
  padding: 11px 15px 13px 15px;
  margin-right: 10px;
  height: 45px;
  width: 45px;
  border-radius: 50% !important;
}

.form-wizard .steps > li > a.step > .desc {
  display: inline-block;
  font-size: 16px;
  font-weight: 300;
}

.form-wizard .steps > li > a.step > .desc > i {
  display: none;
}

.form-wizard .steps > li.active > a.step .number {
  background-color: #36c6d3;
  color: #fff;
}

.form-wizard .steps > li.active > a.step .desc {
  color: #333;
}

.form-wizard .steps > li.done > a.step .number {
  background-color: #F1C40F;
  color: #fff;
}

.form-wizard .steps > li.done > a.step .desc {
  color: #333;
}

.form-wizard .steps > li.done > a.step .desc i {
  font-size: 12px;
  font-weight: normal;
  color: #999;
  display: inline-block;
}

@media (min-width: 768px) and (max-width: 1200px) {
  /* 768px & 1200px */

  .form-wizard .step .desc {
    margin-top: 10px;
    display: block;
  }
}

@media (max-width: 768px) {
  /* 768px */

  .form-wizard .steps > li > a {
    text-align: left;
  }
}

/*!
 * Tab drop for Bootstrap
 */

.tabbable-tabdrop .nav-tabs,
.tabbable-tabdrop .nav-pills {
  position: relative;
}

.tabbable-tabdrop .nav-tabs .caret,
.tabbable-tabdrop .nav-pills .caret {
  display: none;
}

.tabbable-tabdrop .nav-tabs .tabdrop .dropdown-toggle i,
.tabbable-tabdrop .nav-pills .tabdrop .dropdown-toggle i {
  font-size: 14px;
}

.tabbable-tabdrop .dropdown-menu:after {
  right: 10px;
  left: auto;
}

.tabbable-tabdrop .dropdown-menu:before {
  right: 9px;
  left: auto;
}

/***
wysihtml5
***/

.wysihtml5-sandbox {
  width: 100% !important;
}

.wysihtml5-toolbar li {
  margin: 0px;
  height: 29px;
}

.wysihtml5-toolbar li .dropdown-menu {
  margin-top: 5px;
}

/***
Error state for WYSIWYG Editors
***/

.has-error .wysihtml5-sandbox {
  border: 1px solid #fbe1e3 !important;
}

.has-success .wysihtml5-sandbox {
  border: 1px solid #abe7ed !important;
}

.has-warning .wysihtml5-sandbox {
  border: 1px solid #f9e491 !important;
}

/***
Error state for WYSIWYG Editors
***/

.note-editor {
  border: 1px solid #c2cad8;
  border-radius: 2px;
}

.note-editor .note-toolbar {
  border-bottom: 1px solid #c2cad8;
  border-radius: 2px 2px 0 0;
}

.note-editor .note-statusbar {
  border-radius: 0 0 2px 2px;
}

.note-editor .note-statusbar .note-resizebar {
  border-top: 1px solid #c2cad8;
}

.note-editor.note-frame.fullscreen {
  z-index: 10050;
  width: 100% !important;
}

.note-editor .dropdown-menu:before {
  left: 9px;
  right: auto;
}

.note-editor .dropdown-menu:after {
  left: 10px;
  right: auto;
}

.note-link-dialog .checkbox {
  margin-left: 20px;
}

.has-error .note-editor {
  border: 1px solid #fbe1e3 !important;
}

.has-success .note-editor {
  border: 1px solid #abe7ed !important;
}

.has-warning .note-editor {
  border: 1px solid #f9e491 !important;
}

/***
Bootstrap GtreeTable
***/

.gtreetable .dropdown-menu {
  margin-top: 0px;
}

.gtreetable .dropdown-menu:after,
.gtreetable .dropdown-menu:before {
  display: none !important;
}

.gtreetable .node-action .form-control {
  position: relative;
  top: 2px;
  display: inline-block;
}

.gtreetable .node-icon-selected,
.gtreetable .node-icon-handle,
.gtreetable .node-icon-ce,
.gtreetable .node-icon-type {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

/***
Modify bootstrap-tagsinput plugin's css
***/

.bootstrap-tagsinput {
  display: block;
  padding: 4px 4px 6px 4px;
  font-size: 14px;
  font-weight: normal;
  min-height: 34px;
  color: #555555;
  background-color: #fff;
  border: 1px solid #c2cad8;
  box-shadow: none;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.bootstrap-tagsinput .tag [data-role="remove"] {
  box-shadow: none;
  font-family: arial;
}

.bootstrap-tagsinput .tag [data-role="remove"]:after {
  font-family: arial;
}

.bootstrap-tagsinput .tag [data-role="remove"]:hover {
  text-decoration: none;
  box-shadow: none;
}

.bootstrap-tagsinput .tag {
  display: inline-block;
  margin-top: 2px;
  padding: 4px 6px 4px 6px;
}

.bootstrap-tagsinput .tag input {
  width: 5em !important;
}

.bootstrap-tagsinput-width-auto .bootstrap-tagsinput {
  display: inline-block;
}

.mt-bootstrap-tables .mt-btm-transform .bars {
  height: auto;
}

.fixed-table-toolbar .columns label {
  margin: 10px;
  padding: 0 0 0 30px;
}

.fixed-table-header th.bs-checkbox {
  outline: none;
}

.fixed-table-header th.bs-checkbox .th-inner {
  overflow: visible;
}

.fixed-table-header th.bs-checkbox .th-inner .mt-checkbox {
  right: -5px;
}

/***
Bootbox
***/

.bootbox .bootbox-close-button {
  margin-top: 0px !important;
}

.tt-suggestion.tt-cursor {
  color: #999;
  background-color: #eee;
}

.multiselect-container > li > a > label {
  padding: 3px 5px 3px 15px;
}

/*--------------------------------------------------
    [CSS Animation Amchart]
----------------------------------------------------*/

.CSSAnimationChart {
  width: 100%;
  height: 500px;
}

.CSSAnimationChart a {
  color: #bbb !important;
  font-size: 12px !important;
}

.amcharts-graph-g2 .amcharts-graph-stroke {
  stroke-dasharray: 3px 3px;
  stroke-linejoin: round;
  stroke-linecap: round;
  animation: am-moving-dashes 1s linear infinite;
}

@keyframes am-moving-dashes {
  100% {
    stroke-dashoffset: -31px;
  }
}

.lastBullet {
  animation: am-pulsating 1s ease-out infinite;
}

@keyframes am-pulsating {
  0% {
    stroke-opacity: 1;
    stroke-width: 0px;
  }

  100% {
    stroke-opacity: 0;
    stroke-width: 50px;
  }
}

.amcharts-graph-column-front {
  transition: all .3s .3s ease-out;
}

.amcharts-graph-column-front:hover {
  fill: #496375;
  stroke: #496375;
  transition: all .3s ease-out;
}

.amcharts-graph-g3 {
  stroke-linejoin: round;
  stroke-linecap: round;
  stroke-dasharray: 500%;
  stroke-dasharray: 0 \0;
  /* fixes IE prob */
  stroke-dashoffset: 0 \0;
  /* fixes IE prob */
  animation: am-draw 40s;
}

@keyframes am-draw {
  0% {
    stroke-dashoffset: 500%;
  }

  100% {
    stroke-dashoffset: 0px;
  }
}

/*--------------------------------------------------
    [Mao Amchart]
----------------------------------------------------*/

.mapChart {
  width: 100%;
  height: 500px;
}

.mapChart a {
  color: #bbb !important;
  font-size: 12px !important;
}

/*--------------------------------------------------
    [Column Line]
----------------------------------------------------*/

.columnLine {
  width: 100%;
  height: 350px;
  font-size: 11px;
}

.amcharts-graph-graph2 .amcharts-graph-stroke {
  stroke-dasharray: 4px 5px;
  stroke-linejoin: round;
  stroke-linecap: round;
  animation: am-moving-dashes 1s linear infinite;
}

@keyframes am-moving-dashes {
  100% {
    stroke-dashoffset: -28px;
  }
}

/*--------------------------------------------------
    [Animated Pie Chart]
----------------------------------------------------*/

.animated-pie-chart {
  width: 100%;
  height: 350px;
  font-size: 11px;
}

/***
CKEditor css changes
***/

.cke {
  border-radius: 2px;
}

.cke .cke-top {
  border-radius: 2px 2px 0 0;
}

.cke .cke-bottom {
  border-radius: 0 0 2px 2px;
}

.cke_bottom,
.cke_inner,
.cke_top,
.cke_reset,
.cke_dialog_title,
.cke_dialog_footer,
.cke_dialog {
  background-image: none !important;
  filter: none;
  border-top: 0;
  border-bottom: 0;
  box-shadow: none !important;
  text-shadow: none;
}

.cke_dialog_ui_button,
.cke_dialog_tab {
  background-image: none !important;
  filter: none;
  box-shadow: none !important;
  text-shadow: none !important;
}

.cke_dialog_ui_button:hover,
.cke_dialog_tab:hover {
  text-decoration: none;
  text-shadow: none;
}

.cke_dialog_ui_input_text {
  background-image: none !important;
  filter: none;
  box-shadow: none !important;
}

.cke_combo_button,
.cke_button,
.cke_toolbar,
.cke_toolgroup {
  background-image: none !important;
  filter: none !important;
  border: 0;
  box-shadow: none !important;
}

.cke_button,
.cke_combo_button,
.cke_panel_grouptitle,
.cke_hc.cke_panel_listItem a {
  background-image: none !important;
  filter: none;
  text-shadow: none;
}

.cke_button:hover,
.cke_combo_button:hover {
  background-color: #ddd;
}

.cke_toolbar_break {
  background-image: none !important;
  filter: none !important;
  border: 0;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  -o-box-shadow: none !important;
}

/***
Error state for WYSIWYG Editors
***/

.has-error .cke {
  border: 1px solid #fbe1e3 !important;
}

.has-success .cke {
  border: 1px solid #abe7ed !important;
}

.has-warning .cke {
  border: 1px solid #f9e491 !important;
}

/***
Clockface
***/

.modal-open .clockface {
  z-index: 10055 !important;
}

.clockface .cell .inner.active,
.clockface .cell .outer.active {
  background-color: #4b8df8 !important;
  background-image: none;
  filter: none;
}

/***
Datatables general customization
***/

.table-checkable tr > th:first-child,
.table-checkable tr > td:first-child {
  text-align: center;
  max-width: 50px;
  min-width: 40px;
  padding-left: 0;
  padding-right: 0;
}

table.dataTable thead th,
table.dataTable thead td {
  border-bottom: 2px solid #e7ecf1;
  outline: none !important;
}

table.dataTable.no-footer {
  border-bottom-color: #e7ecf1;
}

table.dataTable tr.heading > th {
  background-color: #fbfcfd;
}

table.dataTable td.sorting_1,
table.dataTable td.sorting_2,
table.dataTable td.sorting_3,
table.dataTable th.sorting_1,
table.dataTable th.sorting_2,
table.dataTable th.sorting_3 {
  background: #fbfcfd !important;
}

/***
Extended pagination
***/

.paging_bootstrap_extended {
  margin: 5px 0 0 0 !important;
  padding: 0 !important;
  float: none !important;
  font-size: 13px;
}

.dataTables_extended_wrapper {
  margin-top: 10px;
}

.dataTables_extended_wrapper .seperator {
  padding: 0 2px;
}

.dataTables_extended_wrapper .table.dataTable {
  margin: 20px 0 !important;
}

.dataTables_extended_wrapper div.dataTables_paginate,
.dataTables_extended_wrapper div.dataTables_length,
.dataTables_extended_wrapper div.dataTables_info {
  display: inline-block;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  position: static !important;
}

.dataTables_extended_wrapper .table-group-actions > span {
  font-size: 13px;
}

.dataTables_extended_wrapper.DTS .paging_bootstrap_extended {
  display: inline-block;
}

.dataTables_extended_wrapper.DTS .dataTables_info {
  display: inline-block;
  padding-top: 8px !important;
}

.dataTables_extended_wrapper.DTS .dataTables_info .seperator {
  display: none;
}

.dataTables_extended_wrapper.DTS .dataTables_scrollHead {
  border-bottom: 0 !important;
}

.dataTables_extended_wrapper.DTS .dataTables_scrollHead .dataTables_scrollHeadInner .table.dataTable {
  margin-bottom: 0 !important;
}

.dataTables_extended_wrapper.DTS .dataTables_scrollBody {
  border-bottom: 0 !important;
}

.dataTables_extended_wrapper.DTS .dataTables_scrollBody .table.dataTable {
  margin: 0 !important;
}

@media (max-width: 480px) {
  .dataTables_extended_wrapper div.dataTables_paginate,
  .dataTables_extended_wrapper div.dataTables_length,
  .dataTables_extended_wrapper div.dataTables_info {
    display: block;
    margin-bottom: 10px !important;
  }

  .dataTables_extended_wrapper .seperator {
    display: none !important;
  }
}

.dataTables_extended_wrapper div.dataTables_length label {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px;
  float: none !important;
  display: inline-block !important;
}

.table-container .table-actions-wrapper {
  display: none;
}

/***
Scroller Extension
***/

.dataTables_scroll {
  margin-bottom: 10px;
}

.dataTables_scrollHead {
  border-bottom: 2px solid #e7ecf1 !important;
}

.dataTables_scrollHead thead th {
  border-bottom: 0 !important;
}

.dataTables_scrollBody {
  border-bottom: 1px solid #e7ecf1 !important;
}

.table-both-scroll .dataTables_scrollBody {
  border-bottom: 0 !important;
}

/***
Datatables processing
***/

.dataTables_wrapper .dataTables_processing {
  width: 200px;
  display: inline-block;
  padding: 7px;
  left: 50%;
  margin-left: -100px;
  margin-top: 10px;
  text-align: center;
  color: #3f444a;
  border: 1px solid #e7ecf1;
  background: #eef1f5;
  vertical-align: middle;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
}

/***
Tool Buttons
***/

.dt-button-background {
  display: none !important;
}

div.dt-button-collection {
  border: 1px solid #eee;
  background: #ffffff;
  box-shadow: 5px 5px rgba(102, 102, 102, 0.1);
  padding: 0;
}

div.dt-button-collection > a.dt-button {
  background: none;
  padding: 8px 16px;
  font-weight: 300;
  margin: 1px 1px;
  box-shadow: none !important;
  border: 0 !important;
}

div.dt-button-collection > a.dt-button > span {
  font-size: 14px;
  color: #333;
}

div.dt-button-collection > a.dt-button.active {
  background: #f6f6f6 !important;
  box-shadow: none !important;
  border: 0 !important;
}

div.dt-button-collection > a.dt-button.active > span {
  color: #333;
}

button.dt-button,
div.dt-button,
a.dt-button {
  background-image: none !important;
  padding: 6px 12px !important;
}

button.dt-button:last-child,
div.dt-button:last-child,
a.dt-button:last-child {
  margin-right: 0;
}

.dataTables_wrapper .dt-buttons {
  float: right;
}

.portlet.light .dataTables_wrapper .dt-buttons {
  margin-top: -64px;
}

.portlet.box .dataTables_wrapper .dt-buttons {
  margin-top: -50px;
}

/***
Rot Details
***/

.dataTable .row-details.row-details-close {
  background: url(/images/datatable-row-openclose.png?34bc9714b4fd19e5d1b4b9ccc61d34f5) no-repeat 0 0;
}

.dataTable .row-details.row-details-open {
  background: url(/images/datatable-row-openclose.png?34bc9714b4fd19e5d1b4b9ccc61d34f5) no-repeat 0 -23px;
}

/***
Sorting
***/

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
  cursor: pointer;
}

table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:after {
  display: none;
}

table.dataTable thead .sorting {
  background: url(/images/sort_both.png?829aca9a17e2076e65fb2ced99baacb3) no-repeat center right;
}

table.dataTable thead .sorting_asc {
  background: url(/images/sort_asc.png?00a2462e2a80dffd920faf08bdfcc82b) no-repeat center right;
}

table.dataTable thead .sorting_desc {
  background: url(/images/sort_desc.png?4810271af1e8732016d810097b9aac18) no-repeat center right;
}

table.dataTable thead .sorting_asc_disabled {
  background: url(/images/sort_asc_disabled.png?206e1e0d6212ed4373169185c102ae3e) no-repeat center right;
}

table.dataTable thead .sorting_desc_disabled {
  background: url(/images/sort_desc_disabled.png?71b85b7dc4549e4c38eb30e3fdae7647) no-repeat center right;
}

table.dataTable th:active {
  outline: none;
}

/***
Fixed Header
***/

table.dataTable.fixedHeader-floating {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border: 1px solid #dee5ec;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
}

.table-header-fixed thead > tr > th {
  border-top: 0;
}

.table > tfoot > tr > th,
.table > tfoot > tr > td {
  border-bottom: 0;
  padding: 10px 18px;
  border-top: 1px solid #e7ecf1;
  font-weight: 600;
}

/***
Responsive Datatables
***/

.table.dataTable.dt-responsive .table.dataTable.responsive {
  width: 100%;
}

table.dataTable.dtr-column > tbody > tr > td.control,
table.dataTable.dtr-column > tbody > tr > th.control {
  text-align: center;
  width: 14px;
}

table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before {
  margin-left: -8px;
  text-align: center;
  text-indent: 0;
  line-height: 0;
}

table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
  box-shadow: none !important;
  background-color: #b0c1d2;
  font-weight: 300;
  vertical-align: middle;
  line-height: 16px;
  border: 0;
}

table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before {
  background-color: #36c6d3;
  font-weight: 300;
  vertical-align: middle;
  border: 0;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
  top: 10px;
}

table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before {
  text-align: center;
  margin-top: -8px;
}

table.dataTable > tbody > tr.child ul li {
  border: 0;
}

@-moz-document url-prefix()  {
  .portlet-datatable .dataTables_wrapper .table-responsive {
    padding: 0 2px !important;
  }
}

@media (max-width: 767px) {
  /* 767px */

  .portlet.box .dataTables_wrapper .dt-buttons,
  .portlet.light .dataTables_wrapper .dt-buttons {
    margin-top: 0;
    margin-bottom: 20px;
  }

  .portlet.box .dataTables_wrapper .dt-buttons > .dt-button,
  .portlet.light .dataTables_wrapper .dt-buttons > .dt-button {
    margin-top: 5px;
  }
}

.table-scrollable .dataTable th > .btn-group,
.table-scrollable .dataTable td > .btn-group {
  position: absolute;
  margin-top: -2px;
}

.dataTable td .popover-content .btn-group {
  position: static !important;
}

.table .btn-group .btn {
  margin-left: 0;
  margin-right: -1px;
}

/***
Dropzone css changes(new in v1.1.1)
***/

.dropzone {
  border-radius: 0px;
}

.dropzone-file-area {
  border: 2px dashed #028AF4;
  background: white;
  padding: 20px;
  margin: 0 auto;
  text-align: center;
}

.dz-hidden-input {
  left: 0;
}

@media (max-width: 768px) {
  /* 768px */

  .dropzone-file-area {
    width: auto;
  }
}

/***
Fancy box fix overlay fix
***/

.fancybox-overlay {
  z-index: 100000;
}

.fancybox-opened {
  z-index: 100001;
}

/***
FuelUX Spinners
***/

.spinner-buttons.btn-group-vertical .btn {
  text-align: center;
  margin: 0;
  height: 17px;
  width: 22px;
  padding-left: 6px;
  padding-right: 6px;
  padding-top: 0px;
}

.page-style-rounded .spinner-buttons.btn-group-vertical .btn.spinner-up {
  border-radius: 0;
  border-top-right-radius: 2px !important;
}

.page-style-rounded .spinner-buttons.btn-group-vertical .btn.spinner-down {
  border-radius: 0;
  border-bottom-right-radius: 2px;
}

/***
Fullcalendar
***/

/* External events */

.external-event {
  display: inline-block;
  cursor: move;
  margin-bottom: 5px;
  margin-left: 5px;
}

.fc-scroller {
  overflow-y: auto;
  overflow-x: hidden;
}

.fc-month-view .fc-scroller {
  height: auto !important;
}

.portlet .event-form-title {
  font-size: 16px;
  margin-top: 4px;
  font-weight: 400;
  margin-bottom: 10px;
}

.portlet.calendar .fc-button {
  box-shadow: none;
  text-shadow: none;
  border: 0;
  height: 35px;
  padding: 5px 8px 8px 8px;
  margin-left: 2px;
  border-top-style: none;
  border-bottom-style: none;
  border-right-style: solid;
  border-left-style: solid;
  border-color: #ddd;
  background: transparent;
  color: #fff;
  top: -48px;
  outline: none !important;
  border-radius: 2px 2px 0 0;
}

.portlet.calendar .fc-toolbar {
  margin-bottom: 0px;
}

.portlet.calendar .fc-toolbar h2 {
  margin-top: 3px;
  font-size: 17px;
}

.portlet.calendar .fc-header {
  margin-bottom: -21px;
}

.portlet.calendar .fc-button-prev {
  padding-right: 10px;
  padding-left: 8px;
}

.portlet.calendar .fc-button-next {
  padding-right: 8px;
  padding-left: 10px;
}

.portlet.calendar .fc-button .fc-icon {
  height: 20px;
  top: -5px;
}

.portlet.calendar .fc-button.fc-state-active,
.portlet.calendar .fc-button.fc-state-hover {
  color: #666;
  background-color: #fff;
}

.portlet.calendar .fc-button.fc-state-disabled {
  color: #ddd;
}

.portlet.calendar .fc-button .fc-icon-left-single-arrow {
  font-family: FontAwesome;
  display: inline-block;
  font-size: 16px;
}

.portlet.calendar .fc-button .fc-icon-left-single-arrow:after {
  content: "";
  margin: 0;
}

.portlet.calendar .fc-button .fc-icon-left-single-arrow:before {
  content: "\f104";
}

.portlet.calendar .fc-button .fc-icon-right-single-arrow {
  font-family: FontAwesome;
  display: inline-block;
  font-size: 16px;
}

.portlet.calendar .fc-button .fc-icon-right-single-arrow:after {
  margin: 0;
  content: "";
}

.portlet.calendar .fc-button .fc-icon-right-single-arrow:before {
  content: "\f105";
}

.portlet.calendar .fc-text-arrow {
  font-size: 22px;
  font-family: "Courier New", Courier, monospace;
  vertical-align: baseline;
}

.portlet.calendar .fc-event {
  border: 0px;
  background-color: #69a4e0;
  color: #fff;
}

.portlet.calendar .fc-event .fc-content {
  border: 0px;
  padding: 5px 7px;
}

.portlet.calendar .fc-event .fc-time {
  float: left;
  text-align: left;
  color: #fff;
  font-size: 14px;
  font-weight: 300;
  padding-right: 5px;
}

.portlet.calendar .fc-event .fc-title {
  text-align: left;
  float: left;
  color: #fff;
  font-size: 14px;
  font-weight: 300;
}

.portlet.calendar .fc-header-title h2 {
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  color: #111;
}

.portlet.calendar .fc-widget-header {
  background-image: none;
  filter: none;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 300;
}

.portlet.calendar.light .fc-button {
  top: -60px;
  color: #666;
  text-transform: uppercase;
  font-size: 12px;
  padding-bottom: 35px;
}

.portlet.calendar.light .fc-button .fc-text-arrow {
  margin-top: -6px;
  display: inline-block;
}

.portlet.calendar.light .fc-button.fc-state-active,
.portlet.calendar.light .fc-button.fc-state-hover {
  color: #333;
  border-bottom: 2px solid #36c6d3;
}

.portlet.calendar.light .fc-button.fc-state-disabled {
  color: #aaa;
}

.portlet.calendar .mobile .fc-button {
  padding: 0px 6px 20px 6px;
  margin-left: 2px;
  border: 0;
  background-color: #ddd;
  background-image: none;
  box-shadow: none;
  border-radius: 0;
  color: #000;
  text-shadow: none;
  text-align: center;
}

.portlet.calendar .mobile .fc-button.fc-state-hover,
.portlet.calendar .mobile .fc-button.fc-state-active {
  background-color: #eee;
}

.portlet.calendar .mobile .fc-button.fc-state-disabled {
  color: #bbb;
}

.portlet.calendar .mobile .fc-button-prev {
  margin-right: 5px;
  margin-top: -2px;
}

.portlet.calendar .mobile .fc-button-next {
  margin-right: -0px;
  margin-top: -2px;
}

.portlet.calendar .mobile .fc-header-space {
  margin: 0px;
  padding: 0px;
  width: 0px;
}

.portlet.calendar .mobile .fc-header-left {
  position: absolute;
  z-index: 10;
}

.portlet.calendar .mobile .fc-header-left .fc-button {
  top: -2px;
}

.portlet.calendar .mobile .fc-header-right {
  position: relative;
  right: 0;
}

.portlet.calendar .mobile .fc-header-right .fc-button {
  top: 35px;
}

.portlet.calendar .mobile .fc-content {
  margin-top: 53px;
}

.portlet.calendar.light .fc-button {
  top: -47px;
}

/***
Google Maps
***/

.gmaps {
  height: 300px;
  width: 100%;
  /* important!  bootstrap sets max-width on img to 100% which conflicts with google map canvas*/
}

.gmaps img {
  max-width: none;
}

#gmap_static div {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  height: 100%;
  display: block;
  height: 300px;
}

#gmap_routes_instructions {
  margin-top: 10px;
  margin-bottom: 0px;
}

/***
Gritter notification modify
***/

#gritter-notice-wrapper {
  right: 1px !important;
}

.gritter-close {
  left: auto !important;
  right: 3px !important;
}

.gritter-title {
  font-family: 'Open Sans';
  font-size: 18px;
  font-weight: 300;
}

/***
Dashboard Charts(new in v1.2.1)
***/

.easy-pie-chart,
.sparkline-chart {
  text-align: center;
}

.sparkline-chart {
  margin-top: 15px;
  position: relative;
}

.easy-pie-chart .number {
  font-size: 14px !important;
  font-weight: 300;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 75px;
  height: 75px;
  line-height: 75px;
}

.easy-pie-chart .number canvas {
  position: absolute;
  top: 0;
  left: 0;
}

.sparkline-chart .number {
  width: 100px;
  margin: 0 auto;
  margin-bottom: 10px;
}

.sparkline-chart .title,
.easy-pie-chart .title {
  display: block;
  text-align: center;
  color: #333;
  font-weight: 300;
  font-size: 16px;
  margin-top: 5px;
  margin-bottom: 10px;
}

.sparkline-chart .title:hover,
.easy-pie-chart .title:hover {
  color: #666;
  text-decoration: none;
}

.sparkline-chart .title > i,
.easy-pie-chart .title > i {
  margin-top: 5px;
}

/***
jQuery File Upload
***/

.blueimp-gallery .close {
  background-image: url(/images/portlet-remove-icon-white.png?217abc6d6836f8d917b5579ce7772cd1) !important;
  margin-top: -2px;
}

.blueimp-gallery .prev,
.blueimp-gallery .next {
  border-radius: 23px !important;
}

/***
jQuery Multi Select
***/

.ms-container .ms-list {
  border: 1px solid #e5e5e5;
  box-shadow: none;
}

.ms-container .ms-optgroup-label {
  font-size: 14px;
}

.ms-container .ms-selectable li.ms-elem-selectable,
.ms-container .ms-selection li.ms-elem-selection {
  font-size: 13px;
}

.ms-container .ms-list.ms-focus {
  border-color: #999999;
  box-shadow: none;
}

.ms-container .ms-selectable li.ms-hover,
.ms-container .ms-selection li.ms-hover {
  color: #333;
  background-color: #eee;
}

.ms-container .form-control {
  margin-bottom: 5px;
}

/***
jQuery Notific8 Plugin
***/

.jquery-notific8-message {
  font-size: 13px;
}

[class*="jquery-notific8"],
[class*="jquery-notific8"]:after,
[class*="jquery-notific8"]:before {
  box-sizing: content-box;
}

.right .jquery-notific8-close-sticky span,
.left .jquery-notific8-close-sticky span {
  font-size: 10px;
}

.jquery-notific8-heading {
  font-weight: 300;
  font-size: 16px;
}

/***
Password Strength(in v1.4)
***/

.password-strength .password-verdict {
  display: inline-block;
  margin-top: 6px;
  margin-left: 5px;
}

.password-strength .progress {
  margin-top: 5px;
  margin-bottom: 0;
}

.password-strength .progress-bar {
  padding: 2px;
}

/***
jQuery Slimscroll
***/

.scroller {
  padding: 0px;
  margin: 0px;
  padding-right: 12px;
  overflow: hidden;
}

.scroller-footer {
  margin-top: 10px;
}

.scroller-footer:before,
.scroller-footer:after {
  content: " ";
  display: table;
}

.scroller-footer:after {
  clear: both;
}

.portlet-body .slimScrollBar {
  margin-right: 0px;
}

/***
jQuery Sparkline
***/

.jqstooltip {
  width: auto !important;
  height: auto !important;
}

.easy-pie-chart,
.sparkline-chart {
  text-align: center;
}

.sparkline-chart {
  margin-top: 15px;
  position: relative;
}

.easy-pie-chart .number {
  font-size: 16px;
  font-weight: 300;
  width: 85px;
  margin: 0 auto;
}

.sparkline-chart .number {
  width: 100px;
  margin: 0 auto;
  margin-bottom: 10px;
}

.sparkline-chart .title,
.easy-pie-chart .title {
  display: block;
  text-align: center;
  color: #333;
  font-weight: 300;
  font-size: 16px;
  margin-top: 5px;
  margin-bottom: 10px;
}

.sparkline-chart .title:hover,
.easy-pie-chart .title:hover {
  color: #666;
  text-decoration: none;
}

.sparkline-chart .title > i,
.easy-pie-chart .title > i {
  margin-top: 5px;
}

/***
jQuery UI Sliders(new in v1.1.1)
***/

.slider {
  border: 0;
  padding: 0;
  display: block;
  margin: 12px 5px;
  min-height: 11px;
}

.ui-slider-vertical {
  width: 11px;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -3px;
}

.ui-slider-vertical .ui-slider-handle {
  left: -3px;
}

.ui-slider-vertical,
.ui-slider-handle {
  filter: none !important;
  background-image: none !important;
}

/***
JQVMAP Plugin
***/

.jqvmap-zoomout,
.jqvmap-zoomin {
  height: 16px;
  width: 16px;
  background-color: #666;
}

.vmaps {
  position: relative;
  overflow: hidden;
  height: 300px;
}

/***
Jstree
***/

.jstree-default .jstree-clicked {
  border: 0;
  background-color: #e1e1e1;
  box-shadow: none;
}

.jstree-default .jstree-hovered {
  border: 0;
  background-color: #eee;
  box-shadow: none;
}

.jstree-default .jstree-wholerow-clicked,
.jstree-wholerow .jstree-wholerow-clicked {
  background: none;
  border: 0;
  background-color: #e1e1e1;
  box-shadow: none;
}

.jstree-default .jstree-wholerow-hovered,
.jstree-wholerow .jstree-wholerow-hovered {
  border: 0;
  background-color: #eee;
  box-shadow: none;
}

.jstree-icon.icon-lg {
  margin-top: 1px;
}

.jstree-open > .jstree-anchor > .fa-folder:before {
  margin-left: 2px;
  content: "\f07c";
}

.jstree-default.jstree-rtl .jstree-last {
  background: transparent;
  background-repeat: no-repeat;
}

.vakata-context,
.vakata-context ul {
  padding: 0;
  min-width: 125px;
  background-color: #ffffff;
  font-size: 14px;
  font-family: "Segoe UI",Helvetica, Arial, sans-serif;
  box-shadow: 5px 5px rgba(102, 102, 102, 0.1);
  border: 1px solid #efefef;
}

.vakata-context li {
  border: 0;
}

.vakata-context li a {
  padding: 0 10px;
  border: 0;
}

.vakata-context li a i {
  display: none;
}

.vakata-context li a .vakata-contextmenu-sep {
  display: none;
}

.vakata-context .vakata-context-hover > a,
.vakata-context li a:hover {
  background-color: #eee;
  color: #333;
  box-shadow: none;
  margin: 0;
}

.vakata-context .vakata-context-hover > a .span,
.vakata-context .vakata-context-hover > a .ins,
.vakata-context li a:hover .span,
.vakata-context li a:hover .ins {
  border: 0 !important;
}

.vakata-context li a span,
.vakata-context li a ins {
  display: none;
  border: 0 !important;
}

.vakata-context .vakata-context-separator a,
.vakata-context-rtl .vakata-context-separator a {
  margin: 0;
  border: 0;
}

.jstree-rename-input {
  background-color: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  outline: none !important;
  padding: 2px 6px !important;
  margin-right: -4px !important;
}

/***
NoUIRangeSlider
***/

.noUi-horizontal {
  margin: 9px 0;
}

/***
Color variants
***/

.noUi-primary .noUi-connect {
  background: #337ab7;
}

.noUi-info .noUi-connect {
  background: #659be0;
}

.noUi-success .noUi-connect {
  background: #36c6d3;
}

.noUi-warning .noUi-connect {
  background: #F1C40F;
}

.noUi-danger .noUi-connect {
  background: #ed6b75;
}

.noUi-default .noUi-connect {
  background: #bac3d0;
}

/* Conect slider */

/* For this slider, disable the 'origin' size. */

.noui-connect .noUi-origin {
  right: auto;
  width: 0;
}

/* Position the bar and color it. */

.noui-connect .connect {
  position: absolute;
  top: 0;
  bottom: 0;
  background: #80C9F5;
  box-shadow: inset 0 0 3px rgba(51, 51, 51, 0.45);
}

/* When the slider is moved by tap,
   transition the connect bar like the handle. */

.noui-connect.noUi-state-tap .connect {
  transition: left 300ms, right 300ms;
}

/**
noUI Tooltips
**/

.noUi-handle .noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  font-size: 12px;
  border-radius: 3px;
  background: #fff;
  top: -55px;
  padding: 5px;
  left: -10px;
  text-align: center;
  min-width: 50px;
}

.noUi-handle .noUi-tooltip strong {
  display: block;
  padding: 2px;
}

/***
Google reCaptcha
***/

.form-recaptcha-img {
  margin-bottom: 10px;
  clear: both;
  border: 1px solid #e5e5e5;
  padding: 5px;
}

iframe[src="about:blank"] {
  display: none;
}

.select2-container--bootstrap .select2-search--dropdown .select2-search__field,
.select2-container--bootstrap .select2-selection,
.select2-container--bootstrap.select2-container--focus .select2-selection,
.select2-container--bootstrap.select2-container--open .select2-selection {
  box-shadow: none;
}

.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove {
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  margin-right: 3px;
}

.select2-container--bootstrap .select2-results__group {
  display: block;
  font-size: 12px;
  white-space: nowrap;
  font-weight: 600;
  font-family: "Open Sans", sans-serif;
}

.select2-container--bootstrap .select2-selection {
  font-family: "Open Sans", sans-serif;
}

.modal-open .select2-dropdown {
  z-index: 10060;
}

.modal-open .select2-close-mask {
  z-index: 10055;
}

.modal-open .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
  width: auto !important;
}

.select2-result-repository {
  padding-top: 4px;
  padding-bottom: 3px;
}

.select2-result-repository__avatar {
  float: left;
  width: 60px;
  margin-right: 10px;
}

.select2-result-repository__avatar img {
  width: 100%;
  height: auto;
  border-radius: 2px;
}

.select2-result-repository__meta {
  margin-left: 70px;
}

.select2-result-repository__title {
  color: black;
  font-weight: bold;
  word-wrap: break-word;
  line-height: 1.1;
  margin-bottom: 4px;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers {
  margin-right: 1em;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers,
.select2-result-repository__watchers {
  display: inline-block;
  color: #aaa;
  font-size: 11px;
}

.select2-result-repository__description {
  font-size: 13px;
  color: #777;
  margin-top: 4px;
}

.select2-results__option--highlighted .select2-result-repository__title {
  color: white;
}

.select2-results__option--highlighted .select2-result-repository__forks,
.select2-results__option--highlighted .select2-result-repository__stargazers,
.select2-results__option--highlighted .select2-result-repository__description,
.select2-results__option--highlighted .select2-result-repository__watchers {
  color: #c1d7e9;
}

.select2-selection__choice {
  background-color: #eee !important;
  border: 1px solid #eee !important;
}

.select2-selection__choice .select2-selection__choice__remove {
  font-weight: normal !important;
}

/***
Morris Charts
***/

.portlet-body-morris-fit {
  margin-right: -20px;
  margin-left: -20px;
  margin-bottom: -15px;
}

.portlet-body-morris-fit > svg {
  border-radius: 0 0 2px 2px;
}

.morris-hover.morris-default-style .morris-hover-row-label {
  text-align: left;
  font-weight: 400;
  font-size: 15px;
  color: #7D8C9D;
  font-family: "Open Sans", sans-serif;
}

.morris-hover.morris-default-style .morris-hover-point {
  text-align: left;
  font-size: 14px;
  font-weight: 400;
  font-family: "Open Sans", sans-serif;
}

/***
iCheck
***/

.icheck-list > label {
  display: block;
  margin-bottom: 8px;
}

.icheck-list > label:last-child {
  margin-bottom: 0;
}

.form-horizontal .icheck-inline {
  margin-top: 8px;
}

.icheck-inline > label {
  display: inline-block;
  margin-left: 15px;
}

.icheck-inline > label:first-child {
  margin-left: 0;
}

div[class*='icheckbox_'],
div[class*='iradio_'] {
  margin-right: 5px;
  top: -1px !important;
}

.icheck-colors {
  padding: 0;
  margin: 0;
  list-style: none;
}

.icheck-colors > li {
  padding: 0;
  margin: 4px;
  float: left;
  display: inline-block;
  height: 20px;
  width: 20px;
  background: #000000;
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.icheck-colors > li:first-child {
  margin-left: 0;
}

.icheck-colors > li:hover {
  opacity: 1;
  filter: alpha(opacity=100);
  cursor: pointer;
}

.icheck-colors > li.active {
  height: 26px;
  margin-top: 0;
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.icheck-colors > li.red {
  background: #d54e21;
}

.icheck-colors > li.green {
  background: #78a300;
}

.icheck-colors > li.blue {
  background: #0e76a8;
}

.icheck-colors > li.aero {
  background: #9cc2cb;
}

.icheck-colors > li.grey {
  background: #73716e;
}

.icheck-colors > li.orange {
  background: #f70;
}

.icheck-colors > li.yellow {
  background: #fc0;
}

.icheck-colors > li.pink {
  background: #ff66b5;
}

.icheck-colors > li.purple {
  background: #6a5a8c;
}

/***
AngularJS UI-select
***/

.ui-select-match-close {
  margin-top: 5px !important;
  margin-left: 5px !important;
}

.minicolors-swatch {
  border: 0;
}

/***
Codemirror Plugin
***/

.CodeMirror {
  border: 1px solid #eee;
  height: auto;
}

/***
Prism Plugin
***/

pre[class*="language-"] {
  padding: 10px;
  background: none !important;
  border: 1px solid #f1f4f7 !important;
  box-shadow: none !important;
  margin: 0;
}

pre[class*="language-"] code {
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

.socicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'socicon';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}

.socicon-btn:empty .socicon:empty {
  width: 1em;
}

.socicon-btn {
  position: relative;
  display: inline-block;
  font-family: 'socicon';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  width: 44px;
  height: 44px;
  padding-top: 11px;
  font-size: 24px;
  border: 1px solid #e7ecf1;
  color: #3f444a;
  transition: background, color 0.3s;
}

.socicon-btn.socicon-solid {
  border: 0;
  width: 46px;
  height: 46px;
  padding-top: 12px;
}

.socicon-btn.socicon-btn-circle {
  border-radius: 44px !important;
}

.socicon-btn:hover {
  transition: background, color 0.3s;
  text-decoration: none;
}

.socicon-btn.socicon-lg {
  width: 54px;
  height: 54px;
  padding-top: 13px;
  font-size: 28px;
}

.socicon-btn.socicon-lg.socicon-solid {
  border: 0;
  width: 55px;
  height: 55px;
  padding-top: 13px;
}

.socicon-btn.socicon-sm {
  width: 30px;
  height: 30px;
  padding-top: 8px;
  font-size: 16px;
}

.socicon-btn.socicon-sm.socicon-solid {
  border: 0;
  width: 30px;
  height: 30px;
  padding-top: 8px;
}

.socicons .socicon-btn {
  margin-bottom: 5px;
}

.socicon-twitter:before {
  content: "a";
}

.socicon-facebook:before {
  content: "b";
}

.socicon-google:before {
  content: "c";
}

.socicon-pinterest:before {
  content: "d";
}

.socicon-foursquare:before {
  content: "e";
}

.socicon-yahoo:before {
  content: "f";
}

.socicon-skype:before {
  content: "g";
}

.socicon-yelp:before {
  content: "h";
}

.socicon-feedburner:before {
  content: "i";
}

.socicon-linkedin:before {
  content: "j";
}

.socicon-viadeo:before {
  content: "k";
}

.socicon-xing:before {
  content: "l";
}

.socicon-myspace:before {
  content: "m";
}

.socicon-soundcloud:before {
  content: "n";
}

.socicon-spotify:before {
  content: "o";
}

.socicon-grooveshark:before {
  content: "p";
}

.socicon-lastfm:before {
  content: "q";
}

.socicon-youtube:before {
  content: "r";
}

.socicon-vimeo:before {
  content: "s";
}

.socicon-dailymotion:before {
  content: "t";
}

.socicon-vine:before {
  content: "u";
}

.socicon-flickr:before {
  content: "v";
}

.socicon-500px:before {
  content: "w";
}

.socicon-instagram:before {
  content: "x";
}

.socicon-wordpress:before {
  content: "y";
}

.socicon-tumblr:before {
  content: "z";
}

.socicon-blogger:before {
  content: "A";
}

.socicon-technorati:before {
  content: "B";
}

.socicon-reddit:before {
  content: "C";
}

.socicon-dribbble:before {
  content: "D";
}

.socicon-stumbleupon:before {
  content: "E";
}

.socicon-digg:before {
  content: "F";
}

.socicon-envato:before {
  content: "G";
}

.socicon-behance:before {
  content: "H";
}

.socicon-delicious:before {
  content: "I";
}

.socicon-deviantart:before {
  content: "J";
}

.socicon-forrst:before {
  content: "K";
}

.socicon-playstore:before {
  content: "L";
}

.socicon-zerply:before {
  content: "M";
}

.socicon-wikipedia:before {
  content: "N";
}

.socicon-apple:before {
  content: "O";
}

.socicon-flattr:before {
  content: "P";
}

.socicon-github:before {
  content: "Q";
}

.socicon-chimein:before {
  content: "R";
}

.socicon-friendfeed:before {
  content: "S";
}

.socicon-newsvine:before {
  content: "T";
}

.socicon-identica:before {
  content: "U";
}

.socicon-bebo:before {
  content: "V";
}

.socicon-zynga:before {
  content: "W";
}

.socicon-steam:before {
  content: "X";
}

.socicon-xbox:before {
  content: "Y";
}

.socicon-windows:before {
  content: "Z";
}

.socicon-outlook:before {
  content: "1";
}

.socicon-coderwall:before {
  content: "2";
}

.socicon-tripadvisor:before {
  content: "3";
}

.socicon-appnet:before {
  content: "4";
}

.socicon-goodreads:before {
  content: "5";
}

.socicon-tripit:before {
  content: "6";
}

.socicon-lanyrd:before {
  content: "7";
}

.socicon-slideshare:before {
  content: "8";
}

.socicon-buffer:before {
  content: "9";
}

.socicon-rss:before {
  content: ",";
}

.socicon-vkontakte:before {
  content: ";";
}

.socicon-disqus:before {
  content: ":";
}

.socicon-houzz:before {
  content: "+";
}

.socicon-mail:before {
  content: "@";
}

.socicon-patreon:before {
  content: "=";
}

.socicon-paypal:before {
  content: "-";
}

.socicon-playstation:before {
  content: "^";
}

.socicon-smugmug:before {
  content: "¨";
}

.socicon-swarm:before {
  content: "$";
}

.socicon-triplej:before {
  content: "*";
}

.socicon-yammer:before {
  content: "&";
}

.socicon-stackoverflow:before {
  content: "(";
}

.socicon-drupal:before {
  content: "#";
}

.socicon-odnoklassniki:before {
  content: ".";
}

.socicon-android:before {
  content: "_";
}

.socicon-meetup:before {
  content: "]";
}

.socicon-persona:before {
  content: ")";
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy1tZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9fcGx1Z2lucy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9fdmFyaWFibGVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL19jb2xvcnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fb3BhY2l0eS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fc2l6ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2FsZXJ0cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvX2Jvb3RzdHJhcC1vdmVycmlkZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9fYm9vdHN0cmFwLW92ZXJyaWRlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL2NvbXBvbmVudHMvX21peGlucy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ib290c3RyYXAtY29sb3JwaWNrZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLWRhdGVwYWdpbmF0b3Iuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLWRhdGVwaWNrZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLWRhdGVyYW5nZXBpY2tlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLWVkaXRhYmxlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2Jvb3RzdHJhcC1maWxlaW5wdXQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLW1hcmtkb3duLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2Jvb3RzdHJhcC1tb2RhbC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ib290c3RyYXAtc2VsZWN0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2Jvb3RzdHJhcC1zd2l0Y2guc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLXRpbWVwaWNrZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLXRvYXN0ci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ib290c3RyYXAtd2l6YXJkLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2Jvb3RzdHJhcC10YWJkcm9wLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2Jvb3RzdHJhcC13eXNpaHRtbDUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLXN1bW1lcmNvZGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLWd0cmVldGFibGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdHN0cmFwLXRhZ3NpbnB1dC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ib290c3RyYXAtdGFibGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYm9vdGJveC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL190eXBlYWhlYWQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fbXVsdGlzZWxlY3Quc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fYW1jaGFydC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ja2VkaXRvci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19jbG9ja2ZhY2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fZGF0YXRhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19kcm9wem9uZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19mYW5jeWJveC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19mdWVsdXguc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fZnVsbGNhbGVuZGFyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2dtYXBzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2dyaXR0ZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fanF1ZXJ5LWVhc3ktcGllLWNoYXJ0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2pxdWVyeS1maWxlLXVwbG9hZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19qcXVlcnktbXVsdGktc2VsZWN0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2pxdWVyeS1ub3RpZmljOC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19qcXVlcnktcHdzdHJlbmd0aC1ib290c3RyYXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fanF1ZXJ5LXNsaW1zY3JvbGwuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fanF1ZXJ5LXNwYXJrbGluZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19qcXVlcnktdWkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fanF2bWFwLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX2pzdHJlZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19ub3Vpc2xpZGVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX3JlY2FwdGNoYS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19zZWxlY3QyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX21vcnJpcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19pY2hlY2suc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fdWktc2VsZWN0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL3BsdWdpbnMvX21pbmljb2xvcnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvcGx1Z2lucy9fY29kZW1pcnJvci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19wcmlzbS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9wbHVnaW5zL19zb2NpY29uLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuIDNSRCBQQVJUWSBQTFVHSU4gQ1VTVE9NSVpBVElPTiBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLy8gR2xvYmFsIHNldHRpbmdzXG4kdGhlbWUtc3R5bGU6ICdzcXVhcmUnOyBcbiR0aGVtZS10eXBlOiAgJ21hdGVyaWFsLWRlc2lnbic7IFxuXG5AaW1wb3J0ICdfcGx1Z2lucyc7ICAgIiwiQGltcG9ydCAnX3ZhcmlhYmxlcyc7ICAgICBcbkBpbXBvcnQgJ19ib290c3RyYXAtb3ZlcnJpZGUnOyAgICAgXG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvX21peGlucyc7ICBcblxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLWNvbG9ycGlja2VyJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC1kYXRlcGFnaW5hdG9yJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC1kYXRlcGlja2VyJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC1kYXRlcmFuZ2VwaWNrZXInOyAgICAgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyJzsgXG5AaW1wb3J0ICdwbHVnaW5zL19ib290c3RyYXAtZWRpdGFibGUnOyAgICAgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLWZpbGVpbnB1dCc7ICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLW1hcmtkb3duJzsgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLW1vZGFsJzsgICAgICAgICAgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLXNlbGVjdCc7ICAgICAgICAgICAgICAgICAgICAgICAgXG5AaW1wb3J0ICdwbHVnaW5zL19ib290c3RyYXAtc3dpdGNoJzsgICAgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fYm9vdHN0cmFwLXRpbWVwaWNrZXInOyAgICAgICAgXG5AaW1wb3J0ICdwbHVnaW5zL19ib290c3RyYXAtdG9hc3RyJzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC13aXphcmQnOyAgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC10YWJkcm9wJzsgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC13eXNpaHRtbDUnOyAgICAgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC1zdW1tZXJjb2RlJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC1ndHJlZXRhYmxlJzsgICAgXG5AaW1wb3J0ICdwbHVnaW5zL19ib290c3RyYXAtdGFnc2lucHV0JzsgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3RzdHJhcC10YWJsZSc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Jvb3Rib3gnO1xuQGltcG9ydCAncGx1Z2lucy9fdHlwZWFoZWFkJztcbkBpbXBvcnQgJ3BsdWdpbnMvX211bHRpc2VsZWN0JzsgXG5cbkBpbXBvcnQgJ3BsdWdpbnMvX2FtY2hhcnQnO1xuQGltcG9ydCAncGx1Z2lucy9fY2tlZGl0b3InO1xuQGltcG9ydCAncGx1Z2lucy9fY2xvY2tmYWNlJzsgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fZGF0YXRhYmxlcyc7ICAgICAgIFxuQGltcG9ydCAncGx1Z2lucy9fZHJvcHpvbmUnOyAgICAgXG5AaW1wb3J0ICdwbHVnaW5zL19mYW5jeWJveCc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2Z1ZWx1eCc7XG5AaW1wb3J0ICdwbHVnaW5zL19mdWxsY2FsZW5kYXInOyBcbkBpbXBvcnQgJ3BsdWdpbnMvX2dtYXBzJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2dyaXR0ZXInOyAgICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2pxdWVyeS1lYXN5LXBpZS1jaGFydCc7XG5AaW1wb3J0ICdwbHVnaW5zL19qcXVlcnktZmlsZS11cGxvYWQnO1xuQGltcG9ydCAncGx1Z2lucy9fanF1ZXJ5LW11bHRpLXNlbGVjdCc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2pxdWVyeS1ub3RpZmljOCc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2pxdWVyeS1wd3N0cmVuZ3RoLWJvb3RzdHJhcCc7XG5AaW1wb3J0ICdwbHVnaW5zL19qcXVlcnktc2xpbXNjcm9sbCc7ICAgICAgXG5AaW1wb3J0ICdwbHVnaW5zL19qcXVlcnktc3BhcmtsaW5lJztcbkBpbXBvcnQgJ3BsdWdpbnMvX2pxdWVyeS11aSc7XG5AaW1wb3J0ICdwbHVnaW5zL19qcXZtYXAnO1xuQGltcG9ydCAncGx1Z2lucy9fanN0cmVlJztcbkBpbXBvcnQgJ3BsdWdpbnMvX25vdWlzbGlkZXInO1xuQGltcG9ydCAncGx1Z2lucy9fcmVjYXB0Y2hhJztcbkBpbXBvcnQgJ3BsdWdpbnMvX3NlbGVjdDInOyBcbkBpbXBvcnQgJ3BsdWdpbnMvX21vcnJpcyc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2ljaGVjayc7XG5AaW1wb3J0ICdwbHVnaW5zL191aS1zZWxlY3QnO1xuQGltcG9ydCAncGx1Z2lucy9fbWluaWNvbG9ycyc7ICBcbkBpbXBvcnQgJ3BsdWdpbnMvX2NvZGVtaXJyb3InOyBcbkBpbXBvcnQgJ3BsdWdpbnMvX3ByaXNtJzsgIFxuQGltcG9ydCAncGx1Z2lucy9fc29jaWNvbic7ICAgICIsIi8vIyMgQm9vdHN0cmFwIFxuLy9cbi8vIENvcmUgYm9vdHN0cmFwIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiY29sb3JzXCI7XG5cbkBpbXBvcnQgXCIuLi9ib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi4vYm9vdHN0cmFwL21peGluc1wiO1xuXG4kZGlyZWN0aW9uOiBcdFx0XHRcdFx0XHQnbHRyJyAhZGVmYXVsdDtcbiR0aGVtZS1zdHlsZTogXHRcdFx0XHRcdFx0J3NxdWFyZScgIWRlZmF1bHQ7ICAgICAgICAgXG4kdGhlbWUtdHlwZTogIFx0XHRcdFx0XHRcdCdkZWZhdWx0JyAhZGVmYXVsdDtcbiAgICBcbi8vIyMgIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXByaW1hcnk6ICBcdCAgXHRcdCBcdFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbmF2Olx0ICBcdFx0IFx0XHRSb2JvdG8sIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktZGVmYXVsdDogIFx0ICBcdFx0IFx0XCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZ2VuZXJhbC1oZWFkaW5nLWNvbG9yOlx0XHRcdFx0IzNmNDQ0YTtcbiRnZW5lcmFsLXRleHQtY29sb3I6ICBcdFx0XHRcdGRhcmtlbigjNjc3NTgxLCA1JSk7XG4kZ2VuZXJhbC10cmFuc2l0aW9uOlx0XHRcdFx0YWxsIDAuM3M7XG5cbi8vIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIDxib2R5PlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgXHRcdFx0IzMzMzMzMyAhZGVmYXVsdDsgICAgICBcbiAgXG4vLyBHbG9iYWwgbGlnaHQgdGV4dCBjb2xvciBvbiA8Ym9keT5cbiR0ZXh0LWxpZ2h0LWNvbG9yOiAgICAgXHQgXHRcdFx0I2ZmZmZmZiAhZGVmYXVsdDsgIFxuXG4vLyBHbG9iYWwgbXV0ZWQgdGV4dCBjb2xvciBvbiA8Ym9keT5cbiR0ZXh0LW11dGVkLWNvbG9yOiAgICAgIFx0XHRcdCM0NDQ0NDQgIWRlZmF1bHQ7XG4gICBcbi8vIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICBcdFx0XHQjNWI5YmQxICFkZWZhdWx0O1xuXG4vLyBMaW5rIGhvdmVyIGNvbG9yLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgXHRcdFx0ZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuXG4kcHJpbWFyeS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNjVBMEQwICFkZWZhdWx0O1xuXG4kZ2VuZXJhbC1ib3JkZXItcmFkaXVzOlx0XHRcdFx0NHB4ICFkZWZhdWx0O1xuXG5AaWYgJHRoZW1lLXR5cGUgPT0gXCJtYXRlcmlhbC1kZXNpZ25cIiB7XG5cdCRnZW5lcmFsLWJvcmRlci1yYWRpdXM6XHRcdFx0MnB4ICFnbG9iYWw7XG59IFxuXG4kZHJvcGRvd24tc2hhZG93Olx0XHRcdFx0XHQ1cHggNXB4IHJnYmEoIzY2NiwgMC4xKTtcbiRpY29uLXNpemUtbm9ybWFsOlx0XHRcdFx0XHQxNHB4ICFkZWZhdWx0O1xuJGJyYW5kLWRlZmF1bHQ6XHRcdFx0XHRcdFx0bGlnaHRlbigjYjdjMGNlLCAxJSkgIWRlZmF1bHQ7ICBcbiRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yOlx0XHRcdCNmMWY0ZjcgIWRlZmF1bHQ7XG4kZ2VuZXJhbC1wYW5lbC1ib3JkZXItY29sb3I6XHRcdGRhcmtlbigjZjFmNGY3LCAzJSkgIWRlZmF1bHQ7XG4kZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yOlx0XHRcdCMzZjQ0NGEgIWRlZmF1bHQ7XG4kZ2VuZXJhbC1zaGFkb3c6XHRcdFx0XHRcdDBweCAycHggM3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDMpOyAgXG4kZ2VuZXJhbC1pY29uLWNvbG9yOlx0XHRcdFx0ZGFya2VuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAxNSUpO1xuJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvcjogICAgICAgZGFya2VuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAxJSkgIWRlZmF1bHQ7IC8vIGNvbnRlbnQgc29saWQgYmcgY29sb3IuIGRlZmF1bHQ6I0YwRjJGNy5cblxuLy8jIyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICBcdFx0XHQ5OTk1O1xuJHppbmRleC1uYXZiYXItYWJvdmU6ICAgICAgXHRcdFx0OTk5OTtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIFx0XHRcdDEwMDA7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICBcdFx0XHQxMDEwO1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgXHRcdFx0MTAzMDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIFx0XHRcdDEwMzA7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICBcdFx0XHQxMDA0OTsgXG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICBcdFx0XHQxMDA1MDtcbiR6aW5kZXgtdG9wOlx0XHRcdFx0XHRcdDEwMTAwO1xuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vL0RlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgIFx0XHQ0ODBweCAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0ICBcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgXHRcdDc2OHB4ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICBcdFx0OTkycHggIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgIFx0IFx0MTIwMHB4ICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZSAvIHdpZGVyIGRlc2t0b3AgICAgICBcbiRzY3JlZW4tbGctbWVkOiAgICAgICAgICAgICAgICAgICAgIDEyNjBweCAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgIFx0XHQoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDsgIC8vIDc2N3B4XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgIFx0XHQoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDsgIC8vIDk5MXB4XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgIFx0XHQoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDsgIC8vIDExOTlweCAgXG5cbi8vIyMgSW1hZ2UgIHBhdGhzXG4kZ2xvYmFsLWltZy1wYXRoOiAgICAgICAgICAgXHRcdCcuLi9pbWcvJyAhZGVmYXVsdDsgXG4kcGFnZS1pbWctcGF0aDogICAgICAgICAgIFx0XHRcdCcuLi9pbWcvJyAhZGVmYXVsdDsgICBcbiRwYWdlLW1lZGlhLXBhdGg6ICAgICAgICAgICBcdFx0Jy4uL21lZGlhLycgIWRlZmF1bHQ7IFxuXG4vLyBNZXRyb25pYyBncmlkIHN5c3RlbVxuXG4kbS1sYXlvdXQtYnJlYWtwb2ludHM6IChcbiAgLy8gU21hbGwgc2NyZWVuIC8gcGhvbmVcbiAgeHM6IDQ4MHB4LFxuICAvLyBNZWRpdW0gc2NyZWVuIC8gdGFibGV0XG4gIHNtOiA3NjhweCxcbiAgLy8gTGFyZ2Ugc2NyZWVuIC8gZGVza3RvcFxuICBtZDogOTkycHgsXG4gIC8vIEV4dHJhIGxhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuICBsZzogMTI2MHB4XG4pICFkZWZhdWx0O1xuXG4vLz09IEdyaWQgc3lzdGVtXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kbS1ncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRtLWdyaWQtY29sdW1ucy1ndXR0ZXI6ICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cblxuQGltcG9ydCBcIl9ib290c3RyYXAtb3ZlcnJpZGVcIjsiLCIvL0NvbXBvbmVudCBjb2xvcnNcblxuJGNvbXBvbmVudC1jb2xvcnM6IChcblx0XCJ3aGl0ZVwiOlx0KGJhc2U6I2ZmZmZmZiwgZm9udDogIzY2NiksXG5cdFwiZGVmYXVsdFwiOlx0KGJhc2U6I2UxZTVlYywgZm9udDogIzY2NiksXG5cdFwiZGFya1wiOlx0KGJhc2U6IzJmMzUzYiwgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZVwiOlx0KGJhc2U6IzM1OThkYywgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZS1tYWRpc29uXCI6XHQoYmFzZTojNTc4ZWJlLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLWNoYW1icmF5XCI6XHQoYmFzZTojMkMzRTUwLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLWVib255Y2xheVwiOlx0KGJhc2U6IzIyMzEzRiwgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZS1ob2tpXCI6XHQoYmFzZTojNjc4MDlGLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLXN0ZWVsXCI6XHQoYmFzZTojNEI3N0JFLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLXNvZnRcIjpcdChiYXNlOiM0Yzg3YjksIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtZGFya1wiOlx0KGJhc2U6IzVlNzM4YiwgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZS1zaGFycFwiOlx0KGJhc2U6IzVDOUJEMSwgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZS1vbGVvXCI6XHQoYmFzZTojOTRBMEIyLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLWxpZ2h0XCI6IChiYXNlOiMwMEJGRkYsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuXCI6XHQoYmFzZTojMzJjNWQyLCBmb250OiAjRkZGRkZGKSxcblx0XCJncmVlbi1tZWFkb3dcIjpcdChiYXNlOiMxQkJDOUIsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLXNlYWdyZWVuXCI6XHQoYmFzZTojMUJBMzlDLCBmb250OiAjRkZGRkZGKSxcblx0XCJncmVlbi10dXJxdW9pc2VcIjpcdChiYXNlOiMzNkQ3QjcsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLWhhemVcIjpcdChiYXNlOiM0NGI2YWUsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLWp1bmdsZVwiOlx0KGJhc2U6IzI2QzI4MSwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tc29mdFwiOlx0KGJhc2U6IzNmYWJhNCwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tZGFya1wiOlx0KGJhc2U6IzREQjNBMiwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tc2hhcnBcIjpcdChiYXNlOiMyYWI0YzAsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLXN0ZWVsXCI6XHQoYmFzZTojMjliNGI2LCBmb250OiAjRkZGRkZGKSxcblx0XCJncmV5XCI6XHQoYmFzZTojRTVFNUU1LCBmb250OiAjMzMzMzMzKSxcblx0XCJncmV5LXN0ZWVsXCI6XHQoYmFzZTojZTllZGVmLCBmb250OiAjODA4OThlKSxcblx0XCJncmV5LWNhcmFycmFcIjpcdChiYXNlOiNmYWZhZmEsIGZvbnQ6ICMzMzMzMzMpLFxuXHRcImdyZXktZ2FsbGVyeVwiOlx0KGJhc2U6IzU1NTU1NSwgZm9udDogI2ZmZmZmZiksXG5cdFwiZ3JleS1jYXNjYWRlXCI6XHQoYmFzZTojOTVBNUE2LCBmb250OiAjRkZGRkZGKSxcblx0XCJncmV5LXNpbHZlclwiOlx0KGJhc2U6I0JGQkZCRiwgZm9udDogI0ZBRkNGQiksXG5cdFwiZ3JleS1zYWxzYVwiOlx0KGJhc2U6I0FDQjVDMywgZm9udDogI0ZBRkNGQiksXG5cdFwiZ3JleS1zYWx0XCI6XHQoYmFzZTojYmZjYWQxLCBmb250OiAjRkFGQ0ZCKSxcblx0XCJncmV5LW1pbnRcIjpcdChiYXNlOiM1MjVlNjQsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcInJlZFwiOlx0KGJhc2U6I2U3NTA1YSwgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLXBpbmtcIjpcdChiYXNlOiNFMDgyODMsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC1zdW5nbG9cIjpcdChiYXNlOiNFMjZBNkEsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC1pbnRlbnNlXCI6XHQoYmFzZTojZTM1YjVhLCBmb250OiAjZmZmZmZmKSxcblx0XCJyZWQtdGh1bmRlcmJpcmRcIjpcdChiYXNlOiNEOTFFMTgsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC1mbGFtaW5nb1wiOlx0KGJhc2U6I0VGNDgzNiwgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLXNvZnRcIjpcdChiYXNlOiNkMDU0NTQsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC1oYXplXCI6XHQoYmFzZTojZjM2YTVhLCBmb250OiAjZmZmZmZmKSxcblx0XCJyZWQtbWludFwiOlx0KGJhc2U6I2U0M2E0NSwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93XCI6XHQoYmFzZTojYzQ5ZjQ3LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3ctZ29sZFwiOlx0KGJhc2U6I0U4N0UwNCwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LWNhc2FibGFuY2FcIjpcdChiYXNlOiNmMjc4NGIsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInllbGxvdy1jcnVzdGFcIjpcdChiYXNlOiNmM2MyMDAsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInllbGxvdy1sZW1vblwiOlx0KGJhc2U6I0Y3Q0ExOCwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LXNhZmZyb25cIjpcdChiYXNlOiNGNEQwM0YsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInllbGxvdy1zb2Z0XCI6XHQoYmFzZTojYzhkMDQ2LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3ctaGF6ZVwiOlx0KGJhc2U6I2M1YmY2NiwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LW1pbnRcIjpcdChiYXNlOiNjNWI5NmIsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInB1cnBsZVwiOlx0KGJhc2U6IzhFNDRBRCwgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXBsdW1cIjpcdChiYXNlOiM4Nzc1YTcsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInB1cnBsZS1tZWRpdW1cIjpcdChiYXNlOiNCRjU1RUMsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInB1cnBsZS1zdHVkaW9cIjpcdChiYXNlOiM4RTQ0QUQsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInB1cnBsZS13aXN0ZXJpYVwiOlx0KGJhc2U6IzlCNTlCNiwgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXNlYW5jZVwiOlx0KGJhc2U6IzlBMTJCMywgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLWludGVuc2VcIjpcdChiYXNlOiM4Nzc1YTcsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInB1cnBsZS1zaGFycFwiOlx0KGJhc2U6Izc5Njc5OSwgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXNvZnRcIjpcdChiYXNlOiM4ODc3YTksIGZvbnQ6ICNmZmZmZmYpXG4pO1xuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0ZSBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2hpZGUtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy9vcGFjaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC1maWx0ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYi1mb2N1c1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xuQGltcG9ydCBcIm1peGlucy92ZW5kb3ItcHJlZml4ZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXG4vLyBtaXhpbnMgYmVpbmcgcmV1c2VkIGFzIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lLCB0aGlzIGRvZXNuJ3QgaG9sZCB1cC4gQXNcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxuLy9cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIFdlYktpdC1zcGVjaWZpYy4gT3RoZXIgYnJvd3NlcnMgd2lsbCBrZWVwIHRoZWlyIGRlZmF1bHQgb3V0bGluZSBzdHlsZS5cbiAgLy8gKEluaXRpYWxseSB0cmllZCB0byBhbHNvIGZvcmNlIGRlZmF1bHQgdmlhIGBvdXRsaW5lOiBpbml0aWFsYCxcbiAgLy8gYnV0IHRoYXQgc2VlbXMgdG8gZXJyb25lb3VzbHkgcmVtb3ZlIHRoZSBvdXRsaW5lIGluIEZpcmVmb3ggYWx0b2dldGhlci4pXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG5cblxuLy8gQW5pbWF0aW9uc1xuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xufVxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xufVxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gICAgfVxuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIFBhbmVsc1xuXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuIiwiLy8gR3JhZGllbnRzXG5cblxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxuXG5AbWl4aW4gY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG5cbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XG4gIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xuICAgIHBhZGRpbmctbGVmdDogIGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICB9XG59XG5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbkBtaXhpbiBjYWxjLWdyaWQtY29sdW1uKCRpbmRleCwgJGNsYXNzLCAkdHlwZSkge1xuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS0jeyRpbmRleH0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XG4gICAgICBsZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtMCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtI3skaW5kZXh9IHtcbiAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBvZmZzZXQpIHtcbiAgICAuY29sLSN7JGNsYXNzfS1vZmZzZXQtI3skaW5kZXh9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgQGluY2x1ZGUgY2FsYy1ncmlkLWNvbHVtbigkaSwgJGNsYXNzLCAkdHlwZSk7XG4gIH1cbn1cblxuXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcbkBtaXhpbiBtYWtlLWdyaWQoJGNsYXNzKSB7XG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdWxsKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBvZmZzZXQpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1sZWZ0OiAgY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4iLCIvLz09IENvbG9yc1xuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgXHRcdGRhcmtlbigjMzQ0OTVFLCAyMCUpOyBcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpOyBcbiRncmF5OiAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSk7XG4kZ3JheS1saWdodDogICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpO1xuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBcdFx0ZGFya2VuKCM0MjhiY2EsIDYuNSUpO1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgXHRcdGxpZ2h0ZW4oIzMyYzVkMiwgMSUpOyBcbiRicmFuZC1pbmZvOiAgICAgICAgICAgIFx0XHRsaWdodGVuKCM1ODkzZGQsIDMlKTsgXG4kYnJhbmQtd2FybmluZzogICAgICAgIFx0XHRcdCNGMUM0MEY7ICBcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgIFx0XHRsaWdodGVuKCNlYjVkNjgsIDMlKTsgICAgXG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgO1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgZGFya2VuKCNmMWY0ZjcsIDElKTtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCMwMDAwMDAsIDMzLjUlKTtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgZGFya2VuKCNlMWU1ZWMsIDEwJSk7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgIGRhcmtlbigkaW5wdXQtYm9yZGVyLCAxNSUpO1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTk7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcms7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1IDtcblxuLy89PSBEcm9wZG93bnNcblxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAjZTFlNWVjOyAvLyBzZXQgYnkga2VlbnRoZW1lc1xuXG4vLz09IFdlbGxzXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgIFx0bGlnaHRlbigkZ3JheS1iYXNlLCA4NyUpOyAgLy8gc2V0IGJ5IGtlZW50aGVtZXNcblxuLy89PSBUYWJsZXNcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxuICBcbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgbGlnaHRlbigkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvciwgMyUpOyAgXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgZGFya2VuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAxJSk7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlcjtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgXHRkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDMlKTtcblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgZGFya2VuKCRicmFuZC1zdWNjZXNzLCAxMCUpOyAgXG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRicmFuZC1zdWNjZXNzLCAyOCUpO1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtc3VjY2VzcywgMjglKTtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgXHQgZGFya2VuKCRicmFuZC1pbmZvLCAxMiUpOyAgXG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICBcdCBsaWdodGVuKCRicmFuZC1pbmZvLCAyOSUpO1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgXHQgbGlnaHRlbigkYnJhbmQtaW5mbywgMjklKTtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgZGFya2VuKCRicmFuZC1kYW5nZXIsIDEwJSk7ICBcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLWRhbmdlciwgMjYlKTtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLWRhbmdlciwgMjYlKTtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgZGFya2VuKCRicmFuZC13YXJuaW5nLCAxMCUpOyAgXG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRicmFuZC13YXJuaW5nLCAyNyUpOyAgXG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBsaWdodGVuKCRicmFuZC13YXJuaW5nLCAyNyUpO1xuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMztcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmY7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjO1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSk7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmY7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcztcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKTtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZjtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvO1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpO1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmc7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSk7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmY7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyO1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSk7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmc7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyO1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZztcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXI7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnO1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlcjtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZztcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyO1xuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3M7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZztcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlcjtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvO1xuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZjtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnk7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZztcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlcjtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnO1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyO1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmc7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyO1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZztcblxuLy89PSBMaXN0IEdyb3VwXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICBcdFx0JGdlbmVyYWwtcGFuZWwtYmctY29sb3I7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjpcdFx0XHRsaWdodGVuKCRnZW5lcmFsLXBhbmVsLWZvbnQtY29sb3IsIDQ1JSk7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOlx0bGlnaHRlbigkZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yLCA0NSUpOyIsIi8vPT0gQ29sb3JzXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICBcdFx0ZGFya2VuKCMzNDQ5NUUsIDIwJSk7IFxuJGdyYXktZGFyazogICAgICAgICAgICAgIFx0XHRsaWdodGVuKCRncmF5LWJhc2UsIDIwJSk7IFxuJGdyYXk6ICAgICAgICAgICAgICAgICAgIFx0XHRsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKTtcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSk7XG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIFx0XHRkYXJrZW4oIzQyOGJjYSwgNi41JSk7XG4kYnJhbmQtc3VjY2VzczogICAgICAgICBcdFx0bGlnaHRlbigjMzJjNWQyLCAxJSk7IFxuJGJyYW5kLWluZm86ICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oIzU4OTNkZCwgMyUpOyBcbiRicmFuZC13YXJuaW5nOiAgICAgICAgXHRcdFx0I0YxQzQwRjsgIFxuJGJyYW5kLWRhbmdlcjogICAgICAgICAgXHRcdGxpZ2h0ZW4oI2ViNWQ2OCwgMyUpOyAgICBcblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiA7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICBkYXJrZW4oI2YxZjRmNywgMSUpO1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oIzAwMDAwMCwgMzMuNSUpO1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBkYXJrZW4oI2UxZTVlYywgMTAlKTtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgZGFya2VuKCRpbnB1dC1ib3JkZXIsIDE1JSk7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OTtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyaztcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgO1xuXG4vLz09IERyb3Bkb3duc1xuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICNlMWU1ZWM7IC8vIHNldCBieSBrZWVudGhlbWVzXG5cbi8vPT0gV2VsbHNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgXHRsaWdodGVuKCRncmF5LWJhc2UsIDg3JSk7ICAvLyBzZXQgYnkga2VlbnRoZW1lc1xuXG4vLz09IFRhYmxlc1xuXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4gIFxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICBsaWdodGVuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAzJSk7ICBcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDElKTtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyO1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICBcdGRhcmtlbigkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvciwgMyUpO1xuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLXN1Y2Nlc3MsIDEwJSk7ICBcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXN1Y2Nlc3MsIDI4JSk7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBsaWdodGVuKCRicmFuZC1zdWNjZXNzLCAyOCUpO1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICBcdCBkYXJrZW4oJGJyYW5kLWluZm8sIDEyJSk7ICBcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgIFx0IGxpZ2h0ZW4oJGJyYW5kLWluZm8sIDI5JSk7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICBcdCBsaWdodGVuKCRicmFuZC1pbmZvLCAyOSUpO1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLWRhbmdlciwgMTAlKTsgIFxuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAyNiUpO1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAyNiUpO1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLXdhcm5pbmcsIDEwJSk7ICBcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI3JSk7ICBcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI3JSk7XG5cbi8vPT0gQnV0dG9uc1xuLy9cbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsO1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzO1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2M7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmY7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKTtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpO1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm87XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSk7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmY7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZztcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKTtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXI7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKTtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZztcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnO1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlcjtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmc7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyO1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnO1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXI7XG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2Vzcztcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nO1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyO1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm87XG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmO1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeTtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlcjtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnO1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyO1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmc7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXI7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZztcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXI7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnO1xuXG4vLz09IExpc3QgR3JvdXBcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgIFx0XHQkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvcjtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOlx0XHRcdGxpZ2h0ZW4oJGdlbmVyYWwtcGFuZWwtZm9udC1jb2xvciwgNDUlKTtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6XHRsaWdodGVuKCRnZW5lcmFsLXBhbmVsLWZvbnQtY29sb3IsIDQ1JSk7IiwiLy9cbi8vIE1peGluc1xuLy8gQmFzZWQgb24gVHdpdHRlciBCb290c3RyYXAncyBfbWl4aW5ncy5zY3NzXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCR2YWx1ZSwgJGltcG9ydGFudDogJycpIHtcbiAgb3BhY2l0eTogJHZhbHVlICN7JGltcG9ydGFudH07XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0jeyR2YWx1ZSAqIDEwMH0pICN7JGltcG9ydGFudH07XG59XG5cbi8vIEJvcmRlciByYWRpdXMuXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMsICRpbXBvcnRhbnQ6ICcnKSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07XG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgIFxuICAtby1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgICAgICBcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07IFxufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgJjo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICAgeyBjb2xvcjogJGNvbG9yOyBvcGFjaXR5OiAxOyB9IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vIEJ5IGRlZmF1bHQgc2V0IHRvOiBub25lXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vLyBMYWJlbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gIGVhc2Utb3V0KCRkdXJhdGlvbjogNDUwbXMsICRwcm9wZXJ0eTogYWxsLCAkZGVsYXk6IDBtcykge1xuICB0cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSAkZGVsYXk7XG59XG5cbkBtaXhpbiAgcHVsc2F0ZSgkYW5pbWF0aW9uLW5hbWUsICRzdGFydC1zaXplOiAwLjc1LCAkZW5kLXNpemU6IDEsICRkdXJhdGlvbjogMS41cykge1xuICBAa2V5ZnJhbWVzIFwiI3skYW5pbWF0aW9uLW5hbWV9XCIge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHN0YXJ0LXNpemUpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkZW5kLXNpemUpO1xuICAgIH1cbiAgfSAgXG4gIGFuaW1hdGlvbjogJGFuaW1hdGlvbi1uYW1lICRkdXJhdGlvbiBlYXNlIDBzIGluZmluaXRlO1xufVxuXG4vKiBDdWJpYyBCZXppZXIgVHJhbnNpdGlvbiAqL1xuQG1peGluIGN1YmljLXRyYW5zaXRpb24gKCRkZWxheSwgJGR1cmF0aW9uLCAkcHJvcGVydHkpIHtcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICAgIGR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgIHByb3BlcnR5OiAkcHJvcGVydHk7XG4gICAgICAgIHRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNywgMSwgMC43LCAxKTtcbiAgICB9IFxufVxuXG5AbWl4aW4gYmFja2dyb3VuZC1vcGFjaXR5KCRjb2xvciwgJG9wYWNpdHk6IDAuMykge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAkb3BhY2l0eSk7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IGFic29sdXRlKSB7XG4gIHBvc2l0aW9uOiAjeyRwb3NpdGlvbn07XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtKCRkZWdyZWUpIHsgIFxuICB3ZWJraXQtdHJhbnNmb3JtOiAkZGVncmVlO1xuICAtbW96LXRyYW5zZm9ybTogJGRlZ3JlZTtcbiAgLW1zLXRyYW5zZm9ybTogJGRlZ3JlZTtcbiAgLW8tdHJhbnNmb3JtOiAkZGVncmVlO1xuICB0cmFuc2Zvcm06ICRkZWdyZWU7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKSB7XG4gIHdlYmtpdC10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgLW1vei10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgLW1zLXRyYW5zaXRpb246ICN7JHRyYW5zaXRpb259O1xuICAtby10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XG59XG5cbkBtaXhpbiBidXJnZXItaWNvbigkbGluZS1jb2xvciwgJGxpbmUtY29sb3ItaG92ZXIsICRsaW5lLXdpZHRoLCAkbGluZS1oZWlnaHQsICRiYXNlLXRvcDogLTVweCwgJGFib3ZlLXRvcDogNXB4LCAkYmVsb3ctdG9wOiAtNXB4KSB7XG4gID4gc3BhbiB7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gc3BhbixcbiAgPiBzcGFuOmJlZm9yZSxcbiAgPiBzcGFuOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICRsaW5lLXdpZHRoO1xuICAgIGhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6ICRiYXNlLXRvcDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuM3M7XG4gIH1cblxuICA+IHNwYW46YmVmb3JlLFxuICA+IHNwYW46YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgPiBzcGFuOmJlZm9yZSB7XG4gICAgdG9wOiAkYWJvdmUtdG9wO1xuICB9XG5cbiAgPiBzcGFuOmFmdGVyIHtcbiAgICB0b3A6ICRiZWxvdy10b3A7XG4gIH1cblxuICAmLnRoLXRvZ2dsZS1leGl0IHtcbiAgICA+IHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICA+IHNwYW46YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLSRiYXNlLXRvcCkgcm90YXRlWig0NWRlZykpO1xuICAgIH1cblxuICAgID4gc3BhbjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoJGJhc2UtdG9wKSByb3RhdGVaKC00NWRlZykpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnVyZ2VyLWljb24tY29sb3ItY2hhbmdlKCRsaW5lLWNvbG9yLCAkbGluZS1jb2xvci1ob3Zlcikge1xuICA+IHNwYW4sXG4gID4gc3BhbjpiZWZvcmUsXG4gID4gc3BhbjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3I7XG4gIH1cblxuICA+IHNwYW4ge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3ItaG92ZXI7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRoLXRvZ2dsZS1leGl0IHtcbiAgICA+IHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGNsb3NlLWljb24oJGljb24tc2l6ZSwgJGxpbmUtc2l6ZSwgJGNvbG9yLCAkY29sb3ItaG92ZXIpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkaWNvbi1zaXplO1xuICBoZWlnaHQ6ICRpY29uLXNpemU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6ICRsaW5lLXNpemU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAkbGluZS1zaXplIC8gMjtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00NWRlZykpO1xuICB9XG59XG5cbkBtaXhpbiBjbG9zZS1pY29uLWNvbG9yLWNoYW5nZSgkY29sb3IsICRjb2xvci1ob3Zlcikge1xuICAmOmhvdmVyIHtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgfVxufVxuIiwiLyoqKlxuQm9vdHN0cmFwIENvbG9ycGlja2VyXG4qKiovXG5cbi5pbnB1dC1ncm91cC5jb2xvciAuaW5wdXQtZ3JvdXAtYnRuIGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHJpZ2h0OiA2cHg7XG59IFxuXG4uY29sb3JwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLyogY2hhbmdlIHotaW5kZXggd2hlbiBvcGVuZWQgaW4gbW9kYWwgKi9cbi5tb2RhbC1vcGVuIC5jb2xvcnBpY2tlciB7XG4gIHotaW5kZXg6IDEwMDU1ICFpbXBvcnRhbnQ7XG59XG4iLCIvKioqXG5Cb290c3RyYXAgRGF0ZXBhZ2luYXRvclxuKioqL1xuXG4uZGF0ZXBhZ2luYXRvciBhIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5kYXRlcGlja2VyIC50b2RheSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNkcC1jYWxlbmRhciB7XG4gIHJpZ2h0OiA0cHggIWltcG9ydGFudDtcbn1cblxuLmRhdGVwYWdpbmF0b3IgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxmMTA1XCIjeycvKnJ0bDpcIlxcZjEwNFwiKi8nfTtcbn1cblxuLmRhdGVwYWdpbmF0b3IgLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGYxMDRcIiN7Jy8qcnRsOlwiXFxmMTA1XCIqLyd9O1xufVxuIiwiLyoqKlxuQm9vdHN0cmFwIERhdGVwaWNrZXJcbioqKi9cblxuLmRhdGVwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmRhdGVwaWNrZXIgLnNlbGVjdGVkIHsgIFxuICBiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmRhdGVwaWNrZXIgLmFjdGl2ZSB7ICBcbiAgYmFja2dyb3VuZC1jb2xvcjojNGI4ZGY4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRlcGlja2VyIC5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjY3OEZDICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRlcGlja2VyIC5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKiBjaGFuZ2Ugei1pbmRleCB3aGVuIG9wZW5lZCBpbiBtb2RhbCAqL1xuLm1vZGFsLW9wZW4gLmRhdGVwaWNrZXIge1xuICB6LWluZGV4OiAxMDA1NSAhaW1wb3J0YW50O1xufVxuXG4uZGF0ZXBpY2tlciB0YWJsZSB0ZCB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXdlaWdodDogMzAwICAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycgIWltcG9ydGFudDtcbn1cblxuLmRhdGVwaWNrZXIgdGFibGUgdGgge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRlcGlja2VyLmRyb3Bkb3duLW1lbnUge1xuICBib3gtc2hhZG93OiA1cHggNXB4IHJnYmEoIzY2NiwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbn1cblxuLmRhdGVwaWNrZXIgLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDRcIiN7Jy8qcnRsOlwiXFxmMTA1XCIqLyd9O1xufVxuXG4uZGF0ZXBpY2tlciAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDVcIiN7Jy8qcnRsOlwiXFxmMTA0XCIqLyd9OyBcbn0gIiwiLyoqKlxuQm9vdHN0cmFwIERhdGVyYW5nZXBpY2tlclxuKioqL1xuXG4ubW9kYWwtb3BlbiAuZGF0ZXJhbmdlcGlja2VyIHtcbiAgei1pbmRleDogMTAwNTUgIWltcG9ydGFudDtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciB7XG4gIG1hcmdpbi10b3A6IDRweDtcblxuICAuaW5wdXQtbWluaSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRhdGVyYW5nZXBpY2tlciB0ZCB7XG4gIHRleHQtc2hhZG93OiBub25lIDtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciB0ZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGI4ZGY4IDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSA7XG4gIGZpbHRlcjpub25lIDtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciB0aCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciAucmFuZ2VzIGlucHV0W3R5cGU9XCJ0ZXh0XCJdICB7XG4gIHdpZHRoOiA3MHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciAucmFuZ2VzIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kYXRlcmFuZ2VwaWNrZXIgLnJhbmdlcyB7XG4gIHdpZHRoOiAxNzBweDtcblxuICB1bCA+IGxpLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG4uZGF0ZXJhbmdlcGlja2VyIC5yYW5nZXMgLmJ0biB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5kYXRlcmFuZ2VwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciAucmFuZ2VzIGxpIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5kYXRlcmFuZ2VwaWNrZXIgLnJhbmdlcyBsaS5hY3RpdmUsIFxuLmRhdGVyYW5nZXBpY2tlciAucmFuZ2VzIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzRiOGRmOCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNGI4ZGY4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZGF0ZXJhbmdlcGlja2VyIC5yYW5nZV9pbnB1dHMgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRlcmFuZ2VwaWNrZXIgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCIjeycvKnJ0bDpcIlxcZjEwNFwiKi8nfTtcbn1cblxuLmRhdGVyYW5nZXBpY2tlciAuZmEtYW5nbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNFwiI3snLypydGw6XCJcXGYxMDVcIiovJ307XG59IiwiLyoqKlxuQm9vdHN0cmFwICBEYXRldGltZXBpY2tlclxuKioqL1xuXG4uZGF0ZXRpbWVwaWNrZXIgdGFibGUgdGQge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IDMwMCAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRldGltZXBpY2tlciB0YWJsZSB0aCB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJyAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNDAwICAhaW1wb3J0YW50O1xufVxuXG4uZGF0ZXRpbWVwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmRhdGV0aW1lcGlja2VyIC5hY3RpdmUgeyAgXG4gIGJhY2tncm91bmQtY29sb3I6IzRiOGRmOCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZGF0ZXRpbWVwaWNrZXIgLmFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjc4RkMgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcblxufVxuXG4uZGF0ZXRpbWVwaWNrZXIgLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDRcIiN7Jy8qcnRsOlwiXFxmMTA1XCIqLyd9O1xufVxuXG4uZGF0ZXRpbWVwaWNrZXIgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCIjeycvKnJ0bDpcIlxcZjEwNFwiKi8nfTsgXG59IFxuXG4vKiBjaGFuZ2Ugei1pbmRleCB3aGVuIG9wZW5lZCBpbiBtb2RhbCAqL1xuLm1vZGFsLW9wZW4gLmRhdGV0aW1lcGlja2VyIHtcbiAgei1pbmRleDogMTAwNTU7XG59XG5cbi5icy1kYXRldGltZSB7XG4gICAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcGFkZGluZzowOyBcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqKlxuQm9vdHN0cmFwIEVkaXRhYmxlXG4qKiovXG5cbi5lZGl0YWJsZS1pbnB1dCB0YWJsZSxcbi5lZGl0YWJsZS1pbnB1dCB0YWJsZSB0aCxcbi5lZGl0YWJsZS1pbnB1dCB0YWJsZSB0ZCxcbi5lZGl0YWJsZS1pbnB1dCB0YWJsZSB0ciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uZWRpdGFibGUtaW5wdXQgLmNvbWJvZGF0ZSBzZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59IiwiLyoqKlxuSmFuc3kgRmlsZSBJbnB1dCBwbHVnaW4gY3NzIGNoYW5nZXNcbioqKi9cblxuLmZpbGVpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgLmNsb3NlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG4gIFx0d2hpdGUtc3BhY2U6bm93cmFwOyAgIFxuICBcdG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuIiwiLyoqKlxuQm9vdHN0cmFwIE1hcmtkb3duXG4qKiovXG5cbi5tZC1pbnB1dCB7XG4gIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLm1kLWVkaXRvciB7ICAgIFxuICBcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgICBcblxuICAgIC5idG4tdG9vbGJhciB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuXG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRnZW5lcmFsLWJvcmRlci1yYWRpdXMgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAwIDApOyBcbiAgICAgIFxuICAgICAgLmJ0bi1ncm91cCB7XG4gICAgICAgIC5idG4tc20uYnRuIHtcbiAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogN3B4OyBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbn1cblxuLm1kLWVkaXRvci5hY3RpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgLW1vei1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKioqXG5FcnJvciBzdGF0ZSBmb3IgV1lTSVdZRyBFZGl0b3JzXG4qKiovXG5cbi5oYXMtZXJyb3IgLm1kLWVkaXRvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzdGF0ZS1kYW5nZXItYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtc3VjY2VzcyAubWQtZWRpdG9yIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtd2FybmluZyAubWQtZWRpdG9yIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFpbXBvcnRhbnQ7XG59IiwiLyoqKlxuQm9vdHN0cmFwIE1vZGFsXG4qKiovXG4vKiBmaXg6IGNvbnRlbnQgc2hpZnRpbmcgdG8gdGhlIHJpZ2h0IG9uIG1vZGFsIG9wZW4gKi9cblxuLm1vZGFsLW9wZW4ucGFnZS1vdmVyZmxvdyAucGFnZS1jb250YWluZXIsXG4ubW9kYWwtb3Blbi5wYWdlLW92ZXJmbG93IC5wYWdlLWNvbnRhaW5lciAubmF2YmFyLWZpeGVkLXRvcCxcbi5tb2RhbC1vcGVuLnBhZ2Utb3ZlcmZsb3cgLnBhZ2UtY29udGFpbmVyIC5uYXZiYXItZml4ZWQtYm90dG9tLFxuLm1vZGFsLW9wZW4ucGFnZS1vdmVyZmxvdyAubW9kYWwtc2Nyb2xsYWJsZSB7XG4gIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1vZGFsLXNjcm9sbGFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJTIDMuMy4xIGZpeCAqL1xuXG4ubW9kYWwtYmFja2Ryb3AgeyBcblx0cG9zaXRpb246IGZpeGVkOyBcblx0Ym90dG9tOiAwOyBcbn1cblxuLm1vZGFsLXNjcm9sbGFibGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICB6LWluZGV4OiAxMDA1MTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDtcbn1cblxuQGlmICR0aGVtZS10eXBlID09IFwibWF0ZXJpYWwtZGVzaWduXCIgeyBcblxuICAgIC5tb2RhbCB7XG4gICAgICAgIEBleHRlbmQgLm1kLXNoYWRvdy16LTMgIW9wdGlvbmFsO1xuICAgIFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcbiAgICBcdGJvcmRlcjogMCAhaW1wb3J0YW50OyAgIFxuXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtdGl0bGUgeyAgIFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgICAgICAgICAgIFxuICAgICAgICB9XG4gICBcbiAgICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1iYWNrZHJvcCwgXG4gICAgLm1vZGFsLWJhY2tkcm9wLmZhZGUuaW4ge1xuICAgIFx0QGluY2x1ZGUgb3BhY2l0eSgwLjIpOyAgICAgICAgICAgXG4gICAgfSAgXG5cbn0iLCIvKioqXG5Cb290c3RyYXAgU2VsZWN0XG4qKiovXG4uYm9vdHN0cmFwLXNlbGVjdCAuYnRuIHtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyO1xufVxuXG4uaGFzLWVycm9yIHtcbiAgLmJvb3RzdHJhcC1zZWxlY3QgLmJ0biB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc3RhdGUtZGFuZ2VyLWJvcmRlcjtcbiAgfVxufVxuXG4uaGFzLXN1Y2Nlc3Mge1xuICAuYm9vdHN0cmFwLXNlbGVjdCAuYnRuIHtcbiAgICBib3JkZXItY29sb3I6ICRzdGF0ZS1zdWNjZXNzLWJvcmRlcjtcbiAgfVxufVxuXG4uaGFzLXdhcm5pbmcge1xuICAuYm9vdHN0cmFwLXNlbGVjdCAuYnRuIHtcbiAgICBib3JkZXItY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJvcmRlcjtcbiAgfVxufVxuXG4uYm9vdHN0cmFwLXNlbGVjdC5vcGVuIC5idG4ge1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG59XG5cbi5ib290c3RyYXAtc2VsZWN0Lm9wZW4uZHJvcHVwIC5idG4ge1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG59XG5cbi5ib290c3RyYXAtc2VsZWN0IC5idG46Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lLW9mZnNldDogMDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogMXB4O1xufVxuXG4uYm9vdHN0cmFwLXNlbGVjdC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGR0ID4gLnRleHQge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51IC50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICM5OTkgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QgLmNhcmV0IHtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtMTBweCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXNlbGVjdCAuY2FyZXQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDA7IFxuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QgLnNlbGVjdGVkIGkge1xuICBjb2xvcjogI2FhYTtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QgLmRyb3Bkb3duLW1lbnUge1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1vcGVuIC5ib290c3RyYXAtc2VsZWN0IC5kcm9wZG93bi1tZW51ICB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwgIWltcG9ydGFudDtcbn0iLCIvKioqXG5Cb290c3RyYXAgU3dpdGNoIFxuKioqL1xuXG4uYm9vdHN0cmFwLXN3aXRjaCB7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlcjtcbiAgXG4gICYuYm9vdHN0cmFwLXN3aXRjaC1mb2N1c2VkIHtcbiAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyOyBcbiAgfVxufVxuXG4vKioqXG5Db2xvciB2YXJpYW50c1xuKioqL1xuXG5AbWl4aW4gYm9vdHN0cmFwLXN3aXRjaC12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICR0ZXh0KSB7XG4gIFxuICAuYm9vdHN0cmFwLXN3aXRjaCAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb24uYm9vdHN0cmFwLXN3aXRjaC0jeyRzdGF0ZX0sXG4gIC5ib290c3RyYXAtc3dpdGNoIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYuYm9vdHN0cmFwLXN3aXRjaC0jeyRzdGF0ZX0geyAgXG4gICAgY29sb3I6ICR0ZXh0O1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICB9IFxufVxuXG5AaW5jbHVkZSBib290c3RyYXAtc3dpdGNoLXZhcmlhbnQoXCJwcmltYXJ5XCIsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWNvbG9yKTtcbkBpbmNsdWRlIGJvb3RzdHJhcC1zd2l0Y2gtdmFyaWFudChcImluZm9cIiwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tY29sb3IpO1xuQGluY2x1ZGUgYm9vdHN0cmFwLXN3aXRjaC12YXJpYW50KFwic3VjY2Vzc1wiLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1jb2xvcik7IFxuQGluY2x1ZGUgYm9vdHN0cmFwLXN3aXRjaC12YXJpYW50KFwid2FybmluZ1wiLCAkYnRuLXdhcm5pbmctYmcsICRidG4td2FybmluZy1jb2xvcik7XG5AaW5jbHVkZSBib290c3RyYXAtc3dpdGNoLXZhcmlhbnQoXCJkYW5nZXJcIiwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWNvbG9yKTtcbkBpbmNsdWRlIGJvb3RzdHJhcC1zd2l0Y2gtdmFyaWFudChcImRlZmF1bHRcIiwgbGlnaHRlbigkYnJhbmQtZGVmYXVsdCwgMTUlKSwgIzQ0NCk7ICAgIFxuIFxuLyogQm9vdHN0cmFwIHN3aXRjaCBvbiBwb3J0bGV0IGhlYWRlcnMgKi9cbi5wb3J0bGV0Om5vdCgubGlnaHQpID4ge1xuICAgIC5wb3J0bGV0LXRpdGxlIHsgXG4gICAgXHQ+IC5hY3Rpb25zIHtcbiAgICAgICAgICAgID4gLmJvb3RzdHJhcC1zd2l0Y2ggeyAgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqKlxuQm9vdHN0cmFwIFRpbWUgUGlja2VyXG4qKiovXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGEgIHtcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgaW5wdXQsXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IGlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5tb2RhbC1vcGVuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IHtcbiAgei1pbmRleDogMTAwNTUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC1ib3R0b206YmVmb3JlLFxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC1ib3R0b206YWZ0ZXIge1xuICB0b3A6IGF1dG87XG59IiwiLyoqKlxuVG9hc3RyIE5vdGlmaWNhdGlvbnNcbioqKi9cbi50b2FzdCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgIC1tb3otYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAzMDMwMztcbn1cbi50b2FzdC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUxYTM1MTtcbn1cbi50b2FzdC1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZDM2MmY7XG59XG4udG9hc3QtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZjk2YjQ7XG59XG4udG9hc3Qtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmODk0MDY7XG59XG5cbi50b2FzdCAudG9hc3QtY2xvc2UtYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICB0ZXh0LWluZGVudDogLTEwMDAwMHB4O1xuICB3aWR0aDogMTFweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9wb3J0bGV0LXJlbW92ZS1pY29uLXdoaXRlLnBuZ1wiKSAhaW1wb3J0YW50O1xufVxuXG4udG9hc3QtdG9wLWNlbnRlciB7XG4gIHRvcDogMTJweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcblxuICAudG9hc3Qge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi50b2FzdC1ib3R0b20tY2VudGVyIHtcbiAgYm90dG9tOiAxMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTE1MHB4O1xuXG4gIC50b2FzdCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuIiwiLyoqKlxuQm9vdHN0cmFwIFdpemFyZFxuKioqL1xuXG4uZm9ybS13aXphcmQge1xuXHRcblx0LnByb2dyZXNzIHtcbiAgXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblxuXHQuc3RlcHMge1xuXHRcdHBhZGRpbmc6IDEwcHggMDtcblx0ICBcdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdCAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmIDtcblx0IFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZSA7XG5cdCAgXHRmaWx0ZXI6bm9uZSA7XG5cdCAgXHRib3JkZXI6IDBweDtcblx0ICBcdGJveC1zaGFkb3c6IG5vbmUgO1xuXG5cdCAgXHQ+IGxpIHtcblx0ICBcdFx0PiBhLnN0ZXAge1xuXHRcdCAgXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmYgO1xuXHRcdCAgXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgO1xuXHRcdCAgXHRcdGZpbHRlcjpub25lO1xuXHRcdCAgXHRcdGJvcmRlcjogMHB4O1xuXHRcdCAgXHRcdGJveC1zaGFkb3c6IG5vbmUgO1xuXG5cdFx0ICBcdFx0Jjpob3ZlciB7XG4gIFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHR9XHRcdFx0XG5cblx0XHRcdFx0PiAubnVtYmVyIHtcblx0XHRcdFx0XHQgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG5cdFx0XHRcdFx0ICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0ICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblx0XHRcdFx0XHQgIGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0XHQgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdFx0ICBwYWRkaW5nOiAxMXB4IDE1cHggMTNweCAxNXB4O1xuXHRcdFx0XHRcdCAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHRcdCAgaGVpZ2h0OiA0NXB4O1xuXHRcdFx0XHRcdCAgd2lkdGg6IDQ1cHg7XG5cdFx0XHRcdFx0ICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdCAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcblx0XHRcdFx0XHQgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IC5kZXNjIHtcblx0XHRcdFx0ICBcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ICBcdGZvbnQtc2l6ZTogMTZweDsgXG5cdFx0XHRcdCAgXHRmb250LXdlaWdodDogMzAwO1xuXG5cdFx0XHRcdCAgXHQ+IGkge1xuICBcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0PiBhLnN0ZXAge1xuXHRcdFx0XHRcdC5udW1iZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG5cdCAgXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHQgIFx0XHRcdFx0fVxuXG5cdCAgXHRcdFx0XHQuZGVzYyB7XG5cdCAgXHRcdFx0XHRcdGNvbG9yOiAjMzMzO1xuXHQgIFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYuZG9uZSB7XG5cdFx0XHRcdD4gYS5zdGVwIHtcblx0XHRcdFx0XHQubnVtYmVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICBcdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcbiAgXHRcdFx0XHRcdH1cblxuICBcdFx0XHRcdFx0LmRlc2Mge1xuICBcdFx0XHRcdFx0XHRjb2xvcjogIzMzMzsgXHRcdFx0XHRcdFxuXG5cdCAgXHRcdFx0XHRcdGkge1xuXHQgIFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICM5OTk7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgIFxuXHQgIFx0XHRcdFx0XHR9XG5cdCAgXHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgLyogNzY4cHggJiAxMjAwcHggKi9cbiAgLmZvcm0td2l6YXJkIC5zdGVwIC5kZXNjIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59IFxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgLyogNzY4cHggKi9cbiAgLmZvcm0td2l6YXJkIC5zdGVwcyA+IGxpID4gYSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufSIsIi8qIVxuICogVGFiIGRyb3AgZm9yIEJvb3RzdHJhcFxuICovXG5cbi50YWJiYWJsZS10YWJkcm9wIHtcblx0Lm5hdi10YWJzLFxuXHQubmF2LXBpbGxzIHtcbiAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBcdFx0LmNhcmV0IHtcbiAgXHRcdFx0ZGlzcGxheTogbm9uZTsgICAgICBcbiAgXHRcdH1cblxuICBcdFx0LnRhYmRyb3AgLmRyb3Bkb3duLXRvZ2dsZSBpIHtcbiAgXHRcdFx0Zm9udC1zaXplOiAxNHB4OyAgICAgXG4gIFx0XHR9XG5cdH1cblxuXHQuZHJvcGRvd24tbWVudSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRyaWdodDogMTBweDtcblx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0cmlnaHQ6IDlweDtcblx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0fVxuXHR9XG59XG4iLCIvKioqXG53eXNpaHRtbDVcbioqKi9cblxuLnd5c2lodG1sNS1zYW5kYm94IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnd5c2lodG1sNS10b29sYmFyIGxpIHtcbiAgbWFyZ2luOiAwcHg7XG4gIGhlaWdodDogMjlweDtcbn1cblxuLnd5c2lodG1sNS10b29sYmFyIGxpIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vKioqXG5FcnJvciBzdGF0ZSBmb3IgV1lTSVdZRyBFZGl0b3JzXG4qKiovXG4uaGFzLWVycm9yIC53eXNpaHRtbDUtc2FuZGJveCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzdGF0ZS1kYW5nZXItYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtc3VjY2VzcyAud3lzaWh0bWw1LXNhbmRib3gge1xuICBib3JkZXI6IDFweCBzb2xpZCAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWltcG9ydGFudDtcbn1cblxuLmhhcy13YXJuaW5nIC53eXNpaHRtbDUtc2FuZGJveCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhaW1wb3J0YW50O1xufSIsIi8qKipcbkVycm9yIHN0YXRlIGZvciBXWVNJV1lHIEVkaXRvcnNcbioqKi9cbi5ub3RlLWVkaXRvciB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XG5cblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgXG5cblx0Lm5vdGUtdG9vbGJhciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XG5cblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRnZW5lcmFsLWJvcmRlci1yYWRpdXMgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAwIDApOyBcblx0fSAgIFxuXG5cdC5ub3RlLXN0YXR1c2JhciB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgICBcblxuXHRcdC5ub3RlLXJlc2l6ZWJhciB7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjsgXG5cdFx0fVx0XHRcblx0fVxuXG5cdCYubm90ZS1mcmFtZS5mdWxsc2NyZWVuIHtcblx0XHR6LWluZGV4OiAxMDA1MDsgICBcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50OyBcblx0fVxuXG5cdC5kcm9wZG93bi1tZW51IHtcblx0XHQmOmJlZm9yZSB7XG5cdCAgICAgICAgbGVmdDogOXB4O1xuXHQgICAgICAgIHJpZ2h0OiBhdXRvO1xuXHQgICAgfVxuXG5cdCAgICAmOmFmdGVyIHtcblx0ICAgICAgICBsZWZ0OiAxMHB4O1xuXHQgICAgICAgIHJpZ2h0OiBhdXRvO1xuXHQgICAgfVxuXHR9XG59XG5cbi5ub3RlLWxpbmstZGlhbG9nIHtcblx0LmNoZWNrYm94IHtcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0fVxufVxuXG4uaGFzLWVycm9yIC5ub3RlLWVkaXRvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzdGF0ZS1kYW5nZXItYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtc3VjY2VzcyAubm90ZS1lZGl0b3Ige1xuICBib3JkZXI6IDFweCBzb2xpZCAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWltcG9ydGFudDtcbn0gXG5cbi5oYXMtd2FybmluZyAubm90ZS1lZGl0b3Ige1xuICBib3JkZXI6IDFweCBzb2xpZCAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWltcG9ydGFudDtcbn0gIiwiLyoqKlxuQm9vdHN0cmFwIEd0cmVlVGFibGVcbioqKi9cblxuLmd0cmVldGFibGUge1xuXG5cdC5kcm9wZG93bi1tZW51IHtcblx0XHRtYXJnaW4tdG9wOiAwcHg7XG5cblx0XHQmOmFmdGVyLFxuXHRcdCY6YmVmb3JlIHsgICAgXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IFxuXHRcdH1cblx0fSAgIFxuXG5cdC5ub2RlLWFjdGlvbiB7XG5cdFx0LmZvcm0tY29udHJvbCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0b3A6IDJweDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdH1cblxuXHQubm9kZS1pY29uLXNlbGVjdGVkLFxuXHQubm9kZS1pY29uLWhhbmRsZSxcblx0Lm5vZGUtaWNvbi1jZSxcblx0Lm5vZGUtaWNvbi10eXBlIHtcblx0XHRAaW5jbHVkZSBvcGFjaXR5KDAuNik7XG5cdH1cbn0iLCIvKioqXG5Nb2RpZnkgYm9vdHN0cmFwLXRhZ3NpbnB1dCBwbHVnaW4ncyBjc3NcbioqKi9cblxuLmJvb3RzdHJhcC10YWdzaW5wdXQge1xuXHRcblx0LnRhZyBbZGF0YS1yb2xlPVwicmVtb3ZlXCJdIHtcbiAgICBcdGJveC1zaGFkb3c6IG5vbmU7XG4gICAgXHRmb250LWZhbWlseTogYXJpYWw7XG5cbiAgIFx0XHQmOmFmdGVyIHtcbiAgICBcdFx0Zm9udC1mYW1pbHk6IGFyaWFsO1xuXHRcdH1cblxuICAgIFx0Jjpob3ZlciB7XG4gICAgICAgIFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcbiAgICAgICAgXHRib3gtc2hhZG93OiBub25lOyAgIFxuICAgIFx0fVxuICAgIH1cblxuICAgIC50YWcge1xuICAgIFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIFx0bWFyZ2luLXRvcDogMnB4O1xuICAgIFx0cGFkZGluZzogNHB4IDZweCA0cHggNnB4O1xuXG4gICAgXHRpbnB1dCB7XG4gICAgXHRcdHdpZHRoOiA1ZW0gIWltcG9ydGFudDtcbiAgICBcdH1cbiAgICB9XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA0cHggNHB4IDZweCA0cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzO1xufVxuXG4uYm9vdHN0cmFwLXRhZ3NpbnB1dC13aWR0aC1hdXRvIHtcblx0LmJvb3RzdHJhcC10YWdzaW5wdXQge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxufSIsIi5tdC1ib290c3RyYXAtdGFibGVze1xuXHQubXQtYnRtLXRyYW5zZm9ybXtcblx0XHQuYmFycyB7XG5cdFx0XHRoZWlnaHQ6YXV0bztcblx0XHR9XG5cdH1cdFxufVxuXG4uZml4ZWQtdGFibGUtdG9vbGJhciB7XG5cdC5jb2x1bW5zIHtcblx0XHRsYWJlbCB7XG5cdFx0XHRtYXJnaW46IDEwcHg7XG5cdFx0XHRwYWRkaW5nOiAwIDAgMCAzMHB4O1xuXHRcdH1cblx0fVxufVxuXG4uZml4ZWQtdGFibGUtaGVhZGVyIHtcblx0dGguYnMtY2hlY2tib3ggIHsgIFxuXHRcdG91dGxpbmU6IG5vbmU7XG5cblx0XHQudGgtaW5uZXIgIHtcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXG5cdFx0XHQubXQtY2hlY2tib3gge1xuXHRcdFx0XHRyaWdodDogLTVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKioqXG5Cb290Ym94XG4qKiovXG5cbi5ib290Ym94IHtcblx0LmJvb3Rib3gtY2xvc2UtYnV0dG9uIHtcblx0XHRtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcblx0fVxufSIsIi50dC1zdWdnZXN0aW9uLnR0LWN1cnNvciB7IFxuICAgIGNvbG9yOiAjOTk5OyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufSIsIi5tdWx0aXNlbGVjdC1jb250YWluZXIge1xuXHQ+IGxpID4gYSA+IGxhYmVsIHtcblx0XHRwYWRkaW5nOiAzcHggNXB4IDNweCAxNXB4O1xuXHR9XG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFtDU1MgQW5pbWF0aW9uIEFtY2hhcnRdXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLkNTU0FuaW1hdGlvbkNoYXJ0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAjYmJiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmFtY2hhcnRzLWdyYXBoLWcyIC5hbWNoYXJ0cy1ncmFwaC1zdHJva2Uge1xuICBzdHJva2UtZGFzaGFycmF5OiAzcHggM3B4O1xuICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBhbS1tb3ZpbmctZGFzaGVzIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBhbS1tb3ZpbmctZGFzaGVzIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGFtLW1vdmluZy1kYXNoZXMge1xuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTMxcHg7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYW0tbW92aW5nLWRhc2hlcyB7XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMzFweDtcbiAgfVxufVxuXG5cbi5sYXN0QnVsbGV0IHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGFtLXB1bHNhdGluZyAxcyBlYXNlLW91dCBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBhbS1wdWxzYXRpbmcgMXMgZWFzZS1vdXQgaW5maW5pdGU7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYW0tcHVsc2F0aW5nIHtcbiAgMCUge1xuICAgIHN0cm9rZS1vcGFjaXR5OiAxO1xuICAgIHN0cm9rZS13aWR0aDogMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1vcGFjaXR5OiAwO1xuICAgIHN0cm9rZS13aWR0aDogNTBweDtcbiAgfVxufVxuQGtleWZyYW1lcyBhbS1wdWxzYXRpbmcge1xuICAwJSB7XG4gICAgc3Ryb2tlLW9wYWNpdHk6IDE7XG4gICAgc3Ryb2tlLXdpZHRoOiAwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgc3Ryb2tlLW9wYWNpdHk6IDA7XG4gICAgc3Ryb2tlLXdpZHRoOiA1MHB4O1xuICB9XG59XG5cbi5hbWNoYXJ0cy1ncmFwaC1jb2x1bW4tZnJvbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgLjNzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIC4zcyBlYXNlLW91dDtcbn1cbi5hbWNoYXJ0cy1ncmFwaC1jb2x1bW4tZnJvbnQ6aG92ZXIge1xuICBmaWxsOiAjNDk2Mzc1O1xuICBzdHJva2U6ICM0OTYzNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLW91dDtcbn1cblxuLmFtY2hhcnRzLWdyYXBoLWczIHtcbiAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICBzdHJva2UtZGFzaGFycmF5OiA1MDAlO1xuICBzdHJva2UtZGFzaGFycmF5OiAwIFxcMDsgICAgLyogZml4ZXMgSUUgcHJvYiAqL1xuICBzdHJva2UtZGFzaG9mZnNldDogMCBcXDA7ICAgLyogZml4ZXMgSUUgcHJvYiAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogYW0tZHJhdyA0MHM7XG4gIGFuaW1hdGlvbjogYW0tZHJhdyA0MHM7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYW0tZHJhdyB7XG4gICAgMCUge1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogNTAwJTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwcHg7XG4gICAgfVxufVxuQGtleWZyYW1lcyBhbS1kcmF3IHtcbiAgICAwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA1MDAlO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICB9XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFtNYW8gQW1jaGFydF1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubWFwQ2hhcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTAwcHg7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICNiYmIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufSAgIFxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgW0NvbHVtbiBMaW5lXVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5jb2x1bW5MaW5lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbn0gICBcblxuLmFtY2hhcnRzLWdyYXBoLWdyYXBoMiAuYW1jaGFydHMtZ3JhcGgtc3Ryb2tlIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogNHB4IDVweDtcbiAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAtd2Via2l0LWFuaW1hdGlvbjogYW0tbW92aW5nLWRhc2hlcyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogYW0tbW92aW5nLWRhc2hlcyAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBhbS1tb3ZpbmctZGFzaGVzIHtcbiAgMTAwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yOHB4O1xuICB9XG59XG5Aa2V5ZnJhbWVzIGFtLW1vdmluZy1kYXNoZXMge1xuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTI4cHg7XG4gIH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgW0FuaW1hdGVkIFBpZSBDaGFydF1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAgIFxuLmFuaW1hdGVkLXBpZS1jaGFydCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgICBmb250LXNpemU6IDExcHg7XG59IiwiLyoqKlxuQ0tFZGl0b3IgY3NzIGNoYW5nZXNcbioqKi9cblxuLmNrZSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNrZS10b3Age1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICAuY2tlLWJvdHRvbSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgICAgIFxuICB9XG59XG5cbi5ja2VfYm90dG9tLCBcbi5ja2VfaW5uZXIsIFxuLmNrZV90b3AsIFxuLmNrZV9yZXNldCwgXG4uY2tlX2RpYWxvZ190aXRsZSxcbi5ja2VfZGlhbG9nX2Zvb3Rlcixcbi5ja2VfZGlhbG9nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6bm9uZSA7IFxuICBib3JkZXItdG9wOiAwIDtcbiAgYm9yZGVyLWJvdHRvbTogMCA7XG4gICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC1tb3otYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93Om5vbmUgO1xufVxuXG4uY2tlX2RpYWxvZ191aV9idXR0b24sXG4uY2tlX2RpYWxvZ190YWIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gIGZpbHRlcjpub25lIDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcbn1cblxuLmNrZV9kaWFsb2dfdWlfYnV0dG9uOmhvdmVyLFxuLmNrZV9kaWFsb2dfdGFiOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzpub25lIDtcbn1cblxuLmNrZV9kaWFsb2dfdWlfaW5wdXRfdGV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOm5vbmUgO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmNrZV9jb21ib19idXR0b24sIFxuLmNrZV9idXR0b24sIFxuLmNrZV90b29sYmFyLCBcbi5ja2VfdG9vbGdyb3VwIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6bm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgO1xuICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIFxufVxuXG4uY2tlX2J1dHRvbiwgXG4uY2tlX2NvbWJvX2J1dHRvbixcbi5ja2VfcGFuZWxfZ3JvdXB0aXRsZSxcbi5ja2VfaGMuY2tlX3BhbmVsX2xpc3RJdGVtIGEgeyAgXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOm5vbmUgO1xuICB0ZXh0LXNoYWRvdzpub25lIDtcbn1cblxuLmNrZV9idXR0b246aG92ZXIsIFxuLmNrZV9jb21ib19idXR0b246aG92ZXIgeyAgXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG59XG5cbi5ja2VfdG9vbGJhcl9icmVhayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgZmlsdGVyOm5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwIDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3cgOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAtby1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKipcbkVycm9yIHN0YXRlIGZvciBXWVNJV1lHIEVkaXRvcnNcbioqKi9cbi5oYXMtZXJyb3IgLmNrZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzdGF0ZS1kYW5nZXItYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtc3VjY2VzcyAuY2tlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtd2FybmluZyAuY2tlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFpbXBvcnRhbnQ7XG59IiwiLyoqKlxuQ2xvY2tmYWNlXG4qKiovXG5cbi5tb2RhbC1vcGVuIC5jbG9ja2ZhY2Uge1xuICB6LWluZGV4OiAxMDA1NSAhaW1wb3J0YW50O1xufVxuXG4uY2xvY2tmYWNlIC5jZWxsIC5pbm5lci5hY3RpdmUsXG4uY2xvY2tmYWNlIC5jZWxsIC5vdXRlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiM0YjhkZjggIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSA7XG4gIGZpbHRlcjpub25lIDtcbn0iLCIvKioqXG5EYXRhdGFibGVzIGdlbmVyYWwgY3VzdG9taXphdGlvblxuKioqL1xuXG4udGFibGUtY2hlY2thYmxlIHtcbiAgICB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAgIHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNTBweDtcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7ICAgXG4gICAgfVxufVxuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGgsIFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIHJlbW92ZSBib3R0b20gYm9yZGVyXG50YWJsZS5kYXRhVGFibGUubm8tZm9vdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yOyAgXG59XG5cbnRhYmxlLmRhdGFUYWJsZSB0ci5oZWFkaW5nID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7IFxufVxuXG4vLyBjb2x1bWIgb3JkZXJcbnRhYmxlLmRhdGFUYWJsZSB0ZCxcbnRhYmxlLmRhdGFUYWJsZSB0aCB7XG4gICAgJi5zb3J0aW5nXzEsXG4gICAgJi5zb3J0aW5nXzIsXG4gICAgJi5zb3J0aW5nXzMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdGFibGUtYmctYWNjZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKioqXG5FeHRlbmRlZCBwYWdpbmF0aW9uXG4qKiovXG5cbi5wYWdpbmdfYm9vdHN0cmFwX2V4dGVuZGVkIHtcbiAgbWFyZ2luOiA1cHggMCAwIDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEzcHg7IFxufVxuXG4uZGF0YVRhYmxlc19leHRlbmRlZF93cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgLnNlcGVyYXRvciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMnB4O1xuICAgIH1cblxuICAgIC50YWJsZS5kYXRhVGFibGUge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAhaW1wb3J0YW50OyAgXG4gICAgfVxuXG4gICAgZGl2LmRhdGFUYWJsZXNfcGFnaW5hdGUsXG4gICAgZGl2LmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAgIGRpdi5kYXRhVGFibGVzX2luZm8ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudGFibGUtZ3JvdXAtYWN0aW9ucyA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgLy8gc2Nyb2xsZXIgZXh0ZW5zaW9uIGludGVncmF0aW9uXG4gICAgJi5EVFMge1xuICAgICAgLnBhZ2luZ19ib290c3RyYXBfZXh0ZW5kZWQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC5kYXRhVGFibGVzX2luZm8ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4cHggIWltcG9ydGFudDtcblxuICAgICAgICAuc2VwZXJhdG9yIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5kYXRhVGFibGVzX3Njcm9sbEhlYWQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIC5kYXRhVGFibGVzX3Njcm9sbEhlYWRJbm5lciB7XG4gICAgICAgICAgIC50YWJsZS5kYXRhVGFibGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAudGFibGUuZGF0YVRhYmxlIHtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7IFxuXG4gIC5kYXRhVGFibGVzX2V4dGVuZGVkX3dyYXBwZXIgZGl2LmRhdGFUYWJsZXNfcGFnaW5hdGUsXG4gIC5kYXRhVGFibGVzX2V4dGVuZGVkX3dyYXBwZXIgZGl2LmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAuZGF0YVRhYmxlc19leHRlbmRlZF93cmFwcGVyIGRpdi5kYXRhVGFibGVzX2luZm8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kYXRhVGFibGVzX2V4dGVuZGVkX3dyYXBwZXIgLnNlcGVyYXRvciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRhdGFUYWJsZXNfZXh0ZW5kZWRfd3JhcHBlciBkaXYuZGF0YVRhYmxlc19sZW5ndGggbGFiZWwge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4udGFibGUtY29udGFpbmVyIC50YWJsZS1hY3Rpb25zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqXG5TY3JvbGxlciBFeHRlbnNpb25cbioqKi9cblxuLmRhdGFUYWJsZXNfc2Nyb2xsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmRhdGFUYWJsZXNfc2Nyb2xsSGVhZCB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgdGhlYWQgeyAgIFxuICAgIHRoIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmRhdGFUYWJsZXNfc2Nyb2xsQm9keSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7ICAgXG59XG5cbi50YWJsZS1ib3RoLXNjcm9sbCAuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyAgIFxufVxuXG4vKioqXG5EYXRhdGFibGVzIHByb2Nlc3NpbmdcbioqKi9cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wcm9jZXNzaW5nIHsgICAgXG4gIHdpZHRoOiAyMDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAgIFxuICBwYWRkaW5nOiA3cHg7ICBcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDMlKTtcbiAgYmFja2dyb3VuZDogZGFya2VuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAxKTsgIFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxcHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm94LXNoYWRvdzogMCAxcHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgIFxufVxuXG4vKioqXG5Ub29sIEJ1dHRvbnNcbioqKi8gICBcblxuLmR0LWJ1dHRvbi1iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5kaXYuZHQtYnV0dG9uLWNvbGxlY3Rpb24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgXG4gICAgYm94LXNoYWRvdzogJGRyb3Bkb3duLXNoYWRvdztcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgPiBhLmR0LWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW46IDFweCAxcHg7ICAgIFxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oI2VlZSwgMyUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYnV0dG9uLmR0LWJ1dHRvbiwgXG5kaXYuZHQtYnV0dG9uLCBcbmEuZHQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogNnB4IDEycHggIWltcG9ydGFudDtcbiAgICBcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7ICAgICAgXG4gICAgfVxufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kdC1idXR0b25zIHsgICAgXG4gICAgZmxvYXQ6IHJpZ2h0OyAgXG5cbiAgICAucG9ydGxldC5saWdodCAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTY0cHg7XG4gICAgfVxuXG4gICAgLnBvcnRsZXQuYm94ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICB9XG59XG5cbi8qKipcblJvdCBEZXRhaWxzXG4qKiovXG5cbi5kYXRhVGFibGUgLnJvdy1kZXRhaWxzLnJvdy1kZXRhaWxzLWNsb3NlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2RhdGF0YWJsZS1yb3ctb3BlbmNsb3NlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xufVxuXG4uZGF0YVRhYmxlIC5yb3ctZGV0YWlscy5yb3ctZGV0YWlscy1vcGVuIHsgIFxuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZGF0YXRhYmxlLXJvdy1vcGVuY2xvc2UucG5nXCIpIG5vLXJlcGVhdCAwIC0yM3B4IDtcbn1cblxuLyoqKlxuU29ydGluZ1xuKioqL1xuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgeyBiYWNrZ3JvdW5kOiB1cmwoJy4uL3BsdWdpbnMvZGF0YXRhYmxlcy9pbWFnZXMvc29ydF9ib3RoLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IH1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19hc2MgeyBiYWNrZ3JvdW5kOiB1cmwoJy4uL3BsdWdpbnMvZGF0YXRhYmxlcy9pbWFnZXMvc29ydF9hc2MucG5nJykgbm8tcmVwZWF0IGNlbnRlciByaWdodDsgfVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MgeyBiYWNrZ3JvdW5kOiB1cmwoJy4uL3BsdWdpbnMvZGF0YXRhYmxlcy9pbWFnZXMvc29ydF9kZXNjLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCB7IGJhY2tncm91bmQ6IHVybCgnLi4vcGx1Z2lucy9kYXRhdGFibGVzL2ltYWdlcy9zb3J0X2FzY19kaXNhYmxlZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0OyB9XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzY19kaXNhYmxlZCB7IGJhY2tncm91bmQ6IHVybCgnLi4vcGx1Z2lucy9kYXRhdGFibGVzL2ltYWdlcy9zb3J0X2Rlc2NfZGlzYWJsZWQucG5nJykgbm8tcmVwZWF0IGNlbnRlciByaWdodDsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGg6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyoqKlxuRml4ZWQgSGVhZGVyXG4qKiovXG5cbnRhYmxlLmRhdGFUYWJsZS5maXhlZEhlYWRlci1mbG9hdGluZyB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJHRhYmxlLWJvcmRlci1jb2xvciwgMyUpO1xuXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDFweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDFweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpOyBcbn1cblxuLnRhYmxlLWhlYWRlci1maXhlZCB0aGVhZCA+IHRyID4gdGgge1xuICAgIGJvcmRlci10b3A6IDA7XG59XG5cbi50YWJsZT50Zm9vdD50cj50aCwgXG4udGFibGU+dGZvb3Q+dHI+dGQge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxMHB4IDE4cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICBmb250LXdlaWdodDogNjAwO1xufSAgIFxuXG4vKioqXG5SZXNwb25zaXZlIERhdGF0YWJsZXNcbioqKi9cbi50YWJsZS5kYXRhVGFibGUuZHQtcmVzcG9uc2l2ZVxuLnRhYmxlLmRhdGFUYWJsZS5yZXNwb25zaXZlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRkLmNvbnRyb2wsXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0aC5jb250cm9sIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTRweDtcbn1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4+dGJvZHk+dHI+dGQuY29udHJvbDpiZWZvcmUsIHRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uPnRib2R5PnRyPnRoLmNvbnRyb2w6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IDA7ICBcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGQuY29udHJvbDpiZWZvcmUsIFxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGguY29udHJvbDpiZWZvcmUsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLCBcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDIwJSk7ICAgICAgXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIGJvcmRlcjogMDtcbn1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyLnBhcmVudCB0ZC5jb250cm9sOmJlZm9yZSwgXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIucGFyZW50IHRoLmNvbnRyb2w6YmVmb3JlLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ci5wYXJlbnQgPiB0ZDpmaXJzdC1jaGlsZDpiZWZvcmUsIFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ci5wYXJlbnQgPiB0aDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBib3JkZXI6IDA7XG59XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZDpiZWZvcmUsIFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIHRvcDogMTBweDtcbn1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGQuY29udHJvbDpiZWZvcmUsIFxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGguY29udHJvbDpiZWZvcmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC04cHg7ICBcbn1cblxudGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZCB1bCBsaSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gZmlyZWZveCBmaXggZm9yIGFqYXggZGF0YXRhYmxlcyBpbiBwb3J0bGV0XG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgIC5wb3J0bGV0LWRhdGF0YWJsZSB7XG4gICAgICAgIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgICAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9ICBcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gZGF0YXRhYmxlIGJ1dHRvbnMgZml4IG9uIG1vYmlsZSBtb2RlXG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkgeyAvKiA3NjdweCAqL1xuXG4gIC5wb3J0bGV0LmJveCAuZGF0YVRhYmxlc193cmFwcGVyIC5kdC1idXR0b25zLFxuICAucG9ydGxldC5saWdodCAuZGF0YVRhYmxlc193cmFwcGVyIC5kdC1idXR0b25zIHtcbiAgICBtYXJnaW4tdG9wOiAwOyAgXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgXG5cbiAgICA+IC5kdC1idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIGRhdGF0YWJsZSBkcm9wZG93biBtZW51IGZpeFxuXG4udGFibGUtc2Nyb2xsYWJsZSAuZGF0YVRhYmxlIHRoID4gLmJ0bi1ncm91cCxcbi50YWJsZS1zY3JvbGxhYmxlIC5kYXRhVGFibGUgdGQgPiAuYnRuLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbn1cblxuLy8gcG9wb3ZlciBwbHVnaW4gaW50ZWdyYXRpb25cbi5kYXRhVGFibGUgdGQgLnBvcG92ZXItY29udGVudCAuYnRuLWdyb3VwIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xufVxuXG4udGFibGUgLmJ0bi1ncm91cCAuYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn0iLCIvKioqXG5Ecm9wem9uZSBjc3MgY2hhbmdlcyhuZXcgaW4gdjEuMS4xKVxuKioqL1xuLmRyb3B6b25lIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwcHggO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMHB4IDtcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCA7XG59XG5cbi5kcm9wem9uZS1maWxlLWFyZWEge1xuXHRib3JkZXI6IDJweCBkYXNoZWQgIzAyOEFGNDtcblx0YmFja2dyb3VuZDogd2hpdGU7ICBcblx0cGFkZGluZzogMjBweDtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHRleHQtYWxpZ246IGNlbnRlcjsgXG59XG5cbi5kei1oaWRkZW4taW5wdXR7IFxuXHRsZWZ0IDowOyBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IC8qIDc2OHB4ICovXG5cdC5kcm9wem9uZS1maWxlLWFyZWEge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9XG59IiwiLyoqKlxuRmFuY3kgYm94IGZpeCBvdmVybGF5IGZpeFxuKioqL1xuLmZhbmN5Ym94LW92ZXJsYXkge1xuICB6LWluZGV4OiAxMDAwMDAgO1xufVxuXG4uZmFuY3lib3gtb3BlbmVkIHtcbiAgei1pbmRleDogMTAwMDAxO1xufSIsIi8qKipcbkZ1ZWxVWCBTcGlubmVyc1xuKioqL1xuXG4uc3Bpbm5lci1idXR0b25zLmJ0bi1ncm91cC12ZXJ0aWNhbCAuYnRuIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTdweDtcbiAgd2lkdGg6IDIycHg7XG4gIHBhZGRpbmctbGVmdDogNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG5cbiAgLnBhZ2Utc3R5bGUtcm91bmRlZCAmIHtcbiAgXHQgJi5zcGlubmVyLXVwIHtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHQgIFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRnZW5lcmFsLWJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcblx0ICB9ICAgIFxuXG5cdCAgJi5zcGlubmVyLWRvd24geyAgICAgXG5cdCAgXHRib3JkZXItcmFkaXVzOiAwO1xuXHQgIFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnZW5lcmFsLWJvcmRlci1yYWRpdXM7ICAgICAgXG5cdCAgfVxuXHR9IFxufSBcblxuIiwiLyoqKlxuRnVsbGNhbGVuZGFyXG4qKiovXG5cbi8qIEV4dGVybmFsIGV2ZW50cyAqL1xuXG4uZXh0ZXJuYWwtZXZlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgO1xuICBjdXJzb3I6bW92ZTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4IDsgIFxuICBtYXJnaW4tbGVmdDogNXB4IDtcbn1cblxuLmZjLXNjcm9sbGVyIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4uZmMtbW9udGgtdmlldyAuZmMtc2Nyb2xsZXIge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucG9ydGxldCB7XG5cbiAgICAuZXZlbnQtZm9ybS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAmLmNhbGVuZGFyIHtcbiAgICAgICAgLmZjLWJ1dHRvbiB7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgO1xuICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lIDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgOyAgICBcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAwIDtcbiAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCA4cHggOHB4IDhweCA7IFxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MnB4OyAgIFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRvcDogLTQ4cHg7IFxuICAgICAgICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50OyAgICBcbiAgICAgICAgICBcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzIDAgMCk7ICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmZjLXRvb2xiYXIge1xuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyBcbiAgICAgICAgfSAgIFxuXG4gICAgICAgIC5mYy1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTotMjFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1idXR0b24tcHJldiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1idXR0b24tbmV4dCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1idXR0b24ge1xuICAgICAgICAgICAgLmZjLWljb24ge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mYy1zdGF0ZS1hY3RpdmUsXG4gICAgICAgICAgICAmLmZjLXN0YXRlLWhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZjLXN0YXRlLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2RkZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZjLWljb24tbGVmdC1zaW5nbGUtYXJyb3cge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IFxuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDRcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtaWNvbi1yaWdodC1zaW5nbGUtYXJyb3cge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IFxuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZjLXRleHQtYXJyb3cge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJDb3VyaWVyIE5ld1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1ldmVudCB7XG4gICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY5YTRlMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAuZmMtY29udGVudCB7XG4gICAgICAgICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgLmZjLXRpbWUge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtdGl0bGUge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1oZWFkZXItdGl0bGUgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzExMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy13aWRnZXQtaGVhZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lIDtcbiAgICAgICAgICBmaWx0ZXI6bm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlIDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxpZ2h0IHtcbiAgICAgICAgICAuZmMtYnV0dG9uIHtcbiAgICAgICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcblxuICAgICAgICAgICAgLmZjLXRleHQtYXJyb3cge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmMtc3RhdGUtYWN0aXZlLFxuICAgICAgICAgICAgJi5mYy1zdGF0ZS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRicmFuZC1zdWNjZXNzOyBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mYy1zdGF0ZS1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IFxuXG4gICAgICAgIC5tb2JpbGUge1xuXG4gICAgICAgICAgICAuZmMtYnV0dG9uIHsgXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDZweCAyMHB4IDZweCA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MnB4IDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7ICAgIFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQgO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSA7XG4gICAgICAgICAgICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmUgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lIDtcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCA7XG4gICAgICAgICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDAgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgO1xuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJi5mYy1zdGF0ZS1ob3ZlciwgXG4gICAgICAgICAgICAgICAgJi5mYy1zdGF0ZS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlIDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5mYy1zdGF0ZS1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjYmJiIDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYy1idXR0b24tcHJldiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtYnV0dG9uLW5leHQgeyAgIFxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYy1oZWFkZXItc3BhY2Uge1xuICAgICAgICAgICAgICBtYXJnaW46IDBweCA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDBweCA7XG4gICAgICAgICAgICAgIHdpZHRoOiAwcHggO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtaGVhZGVyLWxlZnQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgICAgIC5mYy1idXR0b24geyBcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMnB4IDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5mYy1oZWFkZXItcmlnaHQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICByaWdodDowO1xuXG4gICAgICAgICAgICAgICAgLmZjLWJ1dHRvbiB7IFxuICAgICAgICAgICAgICAgICAgICB0b3A6IDM1cHggO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZjLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpZiAkdGhlbWUtdHlwZSA9PSBcIm1hdGVyaWFsLWRlc2lnblwiIHsgXG4gIC5wb3J0bGV0LmNhbGVuZGFyLmxpZ2h0IC5mYy1idXR0b24ge1xuICAgIHRvcDogLTQ3cHg7XG4gIH1cbn0iLCIvKioqXG5Hb29nbGUgTWFwc1xuKioqL1xuXG4uZ21hcHMge1xuICBcdGhlaWdodDogMzAwcHg7XG4gIFx0d2lkdGg6IDEwMCU7XG5cbiAgXHQvKiBpbXBvcnRhbnQhICBib290c3RyYXAgc2V0cyBtYXgtd2lkdGggb24gaW1nIHRvIDEwMCUgd2hpY2ggY29uZmxpY3RzIHdpdGggZ29vZ2xlIG1hcCBjYW52YXMqL1xuXHRpbWcge1xuICBcdFx0bWF4LXdpZHRoOiBub25lOyBcblx0fVxufVxuXG5cbiNnbWFwX3N0YXRpYyBkaXZ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlIDtcbiAgaGVpZ2h0OjEwMCU7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGhlaWdodDogMzAwcHg7XG59XG5cbiNnbWFwX3JvdXRlc19pbnN0cnVjdGlvbnMge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG59IiwiLyoqKlxuR3JpdHRlciBub3RpZmljYXRpb24gbW9kaWZ5XG4qKiovXG5cbiNncml0dGVyLW5vdGljZS13cmFwcGVyIHtcbiAgcmlnaHQ6MXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5ncml0dGVyLWNsb3NlIHtcbiAgbGVmdDphdXRvICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAzcHggIWltcG9ydGFudDtcbn1cblxuLmdyaXR0ZXItdGl0bGUge1xuICBmb250LWZhbWlseTogICdPcGVuIFNhbnMnIDtcbiAgZm9udC1zaXplOiAxOHB4IDtcbiAgZm9udC13ZWlnaHQ6IDMwMCA7XG59IiwiLyoqKlxuRGFzaGJvYXJkIENoYXJ0cyhuZXcgaW4gdjEuMi4xKVxuKioqL1xuLmVhc3ktcGllLWNoYXJ0LFxuLnNwYXJrbGluZS1jaGFydCB7XG4gICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcGFya2xpbmUtY2hhcnQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwb3NpdGlvbjpyZWxhdGl2ZSA7XG59XG5cbi5lYXN5LXBpZS1jaGFydCAubnVtYmVyIHtcbiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogMzAwOyAgXG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAgIFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogNzVweDsgXG4gICAgaGVpZ2h0OiA3NXB4OyBcbiAgICBsaW5lLWhlaWdodDogNzVweDtcblxuICAgIGNhbnZhcyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICBcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfSBcbn1cblxuLnNwYXJrbGluZS1jaGFydCAubnVtYmVyIHsgIFxuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uc3BhcmtsaW5lLWNoYXJ0IC50aXRsZSxcbi5lYXN5LXBpZS1jaGFydCAudGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnNwYXJrbGluZS1jaGFydCAudGl0bGU6aG92ZXIsXG4uZWFzeS1waWUtY2hhcnQgLnRpdGxlOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNwYXJrbGluZS1jaGFydCAudGl0bGUgPiBpLFxuLmVhc3ktcGllLWNoYXJ0IC50aXRsZSA+IGkge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59IiwiLyoqKlxualF1ZXJ5IEZpbGUgVXBsb2FkXG4qKiovXG5cbi5ibHVlaW1wLWdhbGxlcnkgLmNsb3NlIHsgIFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvcG9ydGxldC1yZW1vdmUtaWNvbi13aGl0ZS5wbmdcIikgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cblxuLmJsdWVpbXAtZ2FsbGVyeSAucHJldixcbi5ibHVlaW1wLWdhbGxlcnkgLm5leHQge1xuICBib3JkZXItcmFkaXVzOiAyM3B4ICFpbXBvcnRhbnQ7XG59IiwiLyoqKlxualF1ZXJ5IE11bHRpIFNlbGVjdFxuKioqL1xuXG4ubXMtY29udGFpbmVyIC5tcy1saXN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxufVxuXG4ubXMtY29udGFpbmVyIC5tcy1vcHRncm91cC1sYWJlbHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ubXMtY29udGFpbmVyIC5tcy1zZWxlY3RhYmxlIGxpLm1zLWVsZW0tc2VsZWN0YWJsZSxcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiBsaS5tcy1lbGVtLXNlbGVjdGlvbntcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4ubXMtY29udGFpbmVyIC5tcy1saXN0Lm1zLWZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTk5OTk5O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubXMtY29udGFpbmVyIC5tcy1zZWxlY3RhYmxlIGxpLm1zLWhvdmVyLFxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0aW9uIGxpLm1zLWhvdmVye1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbn1cblxuLm1zLWNvbnRhaW5lciAuZm9ybS1jb250cm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufSIsIi8qKipcbmpRdWVyeSBOb3RpZmljOCBQbHVnaW5cbioqKi9cblxuLmpxdWVyeS1ub3RpZmljOC1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG5bY2xhc3MqPVwianF1ZXJ5LW5vdGlmaWM4XCJdLFxuW2NsYXNzKj1cImpxdWVyeS1ub3RpZmljOFwiXTphZnRlcixcbltjbGFzcyo9XCJqcXVlcnktbm90aWZpYzhcIl06YmVmb3JlIHtcbiAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLnJpZ2h0IC5qcXVlcnktbm90aWZpYzgtY2xvc2Utc3RpY2t5IHNwYW4sXG4ubGVmdCAuanF1ZXJ5LW5vdGlmaWM4LWNsb3NlLXN0aWNreSBzcGFuIHtcbiAgICBmb250LXNpemU6IDEwcHg7ICBcbn1cblxuLmpxdWVyeS1ub3RpZmljOC1oZWFkaW5nIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xufSIsIi8qKipcblBhc3N3b3JkIFN0cmVuZ3RoKGluIHYxLjQpXG4qKiovXG4ucGFzc3dvcmQtc3RyZW5ndGggLnBhc3N3b3JkLXZlcmRpY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDZweDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoIC5wcm9ncmVzcyB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoIC5wcm9ncmVzcy1iYXIge1xuICBwYWRkaW5nOiAycHg7XG59IiwiLyoqKlxualF1ZXJ5IFNsaW1zY3JvbGxcbioqKi9cblxuLnNjcm9sbGVyIHtcbiAgcGFkZGluZzogMHB4IDtcbiAgbWFyZ2luOiAwcHggO1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4IDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcm9sbGVyLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLnBvcnRsZXQtYm9keSAuc2xpbVNjcm9sbEJhciB7XG4gIG1hcmdpbi1yaWdodDogMHB4IDtcbn0iLCIvKioqXG5qUXVlcnkgU3BhcmtsaW5lXG4qKiovXG5cbi5qcXN0b29sdGlwIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cblxuLmVhc3ktcGllLWNoYXJ0LFxuLnNwYXJrbGluZS1jaGFydCB7XG4gICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcGFya2xpbmUtY2hhcnQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwb3NpdGlvbjpyZWxhdGl2ZSA7XG59XG5cbi5lYXN5LXBpZS1jaGFydCAubnVtYmVyIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB3aWR0aDogODVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnNwYXJrbGluZS1jaGFydCAubnVtYmVyIHsgIFxuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uc3BhcmtsaW5lLWNoYXJ0IC50aXRsZSxcbi5lYXN5LXBpZS1jaGFydCAudGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnNwYXJrbGluZS1jaGFydCAudGl0bGU6aG92ZXIsXG4uZWFzeS1waWUtY2hhcnQgLnRpdGxlOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNwYXJrbGluZS1jaGFydCAudGl0bGUgPiBpLFxuLmVhc3ktcGllLWNoYXJ0IC50aXRsZSA+IGkge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59IiwiLyoqKlxualF1ZXJ5IFVJIFNsaWRlcnMobmV3IGluIHYxLjEuMSlcbioqKi9cbi5zbGlkZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDEycHggNXB4O1xuICBtaW4taGVpZ2h0OiAxMXB4OyBcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMXB4O1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1oYW5kbGUge1xuICB0b3A6IC0zcHg7XG59XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAtM3B4O1xufVxuXG4udWktc2xpZGVyLXZlcnRpY2FsLFxuLnVpLXNsaWRlci1oYW5kbGUge1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufSIsIi8qKipcbkpRVk1BUCBQbHVnaW5cbioqKi9cblxuLmpxdm1hcC16b29tb3V0LFxuLmpxdm1hcC16b29taW4ge1xuIFx0aGVpZ2h0OiAxNnB4O1xuICBcdHdpZHRoOiAxNnB4O1xuICBcdGJhY2tncm91bmQtY29sb3I6ICM2NjYgO1xufVxuXG4udm1hcHMge1xuICBcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gIFx0b3ZlcmZsb3c6IGhpZGRlbjtcbiAgXHRoZWlnaHQ6IDMwMHB4OyAgXG59IiwiLyoqKlxuSnN0cmVlXG4qKiovXG5cbi5qc3RyZWUtZGVmYXVsdCAuanN0cmVlLWNsaWNrZWQge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWUxZTE7XG4gIGJveC1zaGFkb3c6bm9uZTtcbn1cblxuLmpzdHJlZS1kZWZhdWx0IC5qc3RyZWUtaG92ZXJlZCB7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm94LXNoYWRvdzpub25lO1xufVxuXG4uanN0cmVlLWRlZmF1bHQgLmpzdHJlZS13aG9sZXJvdy1jbGlja2VkLFxuLmpzdHJlZS13aG9sZXJvdyAuanN0cmVlLXdob2xlcm93LWNsaWNrZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWUxZTE7XG4gIGJveC1zaGFkb3c6bm9uZTtcbn1cblxuLmpzdHJlZS1kZWZhdWx0IC5qc3RyZWUtd2hvbGVyb3ctaG92ZXJlZCxcbi5qc3RyZWUtd2hvbGVyb3cgLmpzdHJlZS13aG9sZXJvdy1ob3ZlcmVkIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3gtc2hhZG93Om5vbmU7XG59IFxuXG4uanN0cmVlLWljb24uaWNvbi1sZyB7XG4gIG1hcmdpbi10b3A6IDFweDtcbn1cblxuLmpzdHJlZS1vcGVuID4gLmpzdHJlZS1hbmNob3IgPiAuZmEtZm9sZGVyOmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDdjXCI7IFxufVxuXG4uanN0cmVlLWRlZmF1bHQuanN0cmVlLXJ0bCAuanN0cmVlLWxhc3Qge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnZha2F0YS1jb250ZXh0LFxuLnZha2F0YS1jb250ZXh0IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWluLXdpZHRoOiAxMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1mYW1pbHk6IFwiU2Vnb2UgVUlcIixIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBib3gtc2hhZG93OiA1cHggNXB4IHJnYmEoIzY2NiwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbn1cblxuLnZha2F0YS1jb250ZXh0IGxpIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYSB7IFxuICAgICAgcGFkZGluZzogMCAxMHB4OyAgICAgICBcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7ICAgXG4gICAgICB9XG5cbiAgICAgIC52YWthdGEtY29udGV4dG1lbnUtc2VwIHsgIFxuICAgICAgICBkaXNwbGF5OiBub25lOyAgXG4gICAgICB9XG5cbiAgICB9XG59XG5cbi52YWthdGEtY29udGV4dCAudmFrYXRhLWNvbnRleHQtaG92ZXIgPiBhLFxuLnZha2F0YS1jb250ZXh0IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlOyAgIFxuICBjb2xvcjogIzMzMzsgIFxuICBib3gtc2hhZG93OiBub25lOyAgICAgIFxuICBtYXJnaW46IDA7ICAgXG5cbiAgLnNwYW4sXG4gIC5pbnMge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52YWthdGEtY29udGV4dCBsaSBhIHNwYW4sXG4udmFrYXRhLWNvbnRleHQgbGkgYSBpbnMge1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLnZha2F0YS1jb250ZXh0IC52YWthdGEtY29udGV4dC1zZXBhcmF0b3IgYSwgICBcbi52YWthdGEtY29udGV4dC1ydGwgLnZha2F0YS1jb250ZXh0LXNlcGFyYXRvciBhIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG5cbn1cblxuLmpzdHJlZS1yZW5hbWUtaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAycHggNnB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogLTRweCAhaW1wb3J0YW50O1xufSIsIi8qKipcbk5vVUlSYW5nZVNsaWRlclxuKioqL1xuXG4ubm9VaS1ob3Jpem9udGFsIHtcblx0bWFyZ2luOiA5cHggMDsgXG59XG5cbi8qKipcbkNvbG9yIHZhcmlhbnRzXG4qKiovXG5cbkBtaXhpbiBub3VpLXJhbmdlc2xpZGVyLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuXHQubm9VaS0jeyRzdGF0ZX0gLm5vVWktY29ubmVjdCB7XG5cdFx0YmFja2dyb3VuZDogJGJhY2tncm91bmQ7ICAgICAgICAgICBcblx0fVxufVxuXG5AaW5jbHVkZSBub3VpLXJhbmdlc2xpZGVyLXZhcmlhbnQoXCJwcmltYXJ5XCIsICRidG4tcHJpbWFyeS1iZyk7XG5AaW5jbHVkZSBub3VpLXJhbmdlc2xpZGVyLXZhcmlhbnQoXCJpbmZvXCIsICRidG4taW5mby1iZyk7XG5AaW5jbHVkZSBub3VpLXJhbmdlc2xpZGVyLXZhcmlhbnQoXCJzdWNjZXNzXCIsICRidG4tc3VjY2Vzcy1iZyk7IFxuQGluY2x1ZGUgbm91aS1yYW5nZXNsaWRlci12YXJpYW50KFwid2FybmluZ1wiLCAkYnRuLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgbm91aS1yYW5nZXNsaWRlci12YXJpYW50KFwiZGFuZ2VyXCIsICRidG4tZGFuZ2VyLWJnKTtcbkBpbmNsdWRlIG5vdWktcmFuZ2VzbGlkZXItdmFyaWFudChcImRlZmF1bHRcIiwgJGJyYW5kLWRlZmF1bHQpOyBcblxuLyogQ29uZWN0IHNsaWRlciAqL1xuXG4vKiBGb3IgdGhpcyBzbGlkZXIsIGRpc2FibGUgdGhlICdvcmlnaW4nIHNpemUuICovXG4ubm91aS1jb25uZWN0IC5ub1VpLW9yaWdpbiB7XG5cdHJpZ2h0OiBhdXRvO1xuXHR3aWR0aDogMDtcbn1cblxuLyogUG9zaXRpb24gdGhlIGJhciBhbmQgY29sb3IgaXQuICovXG4ubm91aS1jb25uZWN0IC5jb25uZWN0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGJvdHRvbTogMDtcblx0YmFja2dyb3VuZDogIzgwQzlGNTtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDUxLDUxLDUxLDAuNDUpO1xufVxuXG4vKiBXaGVuIHRoZSBzbGlkZXIgaXMgbW92ZWQgYnkgdGFwLFxuICAgdHJhbnNpdGlvbiB0aGUgY29ubmVjdCBiYXIgbGlrZSB0aGUgaGFuZGxlLiAqL1xuLm5vdWktY29ubmVjdC5ub1VpLXN0YXRlLXRhcCAuY29ubmVjdCB7XG4td2Via2l0LXRyYW5zaXRpb246IGxlZnQgMzAwbXMsIHJpZ2h0IDMwMG1zO1xuXHR0cmFuc2l0aW9uOiBsZWZ0IDMwMG1zLCByaWdodCAzMDBtcztcbn1cblxuLyoqXG5ub1VJIFRvb2x0aXBzXG4qKi9cblxuLm5vVWktaGFuZGxlIHtcblx0Lm5vVWktdG9vbHRpcCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNEOUQ5RDk7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDNweDsgICAgIFxuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0dG9wOiAtNTVweDtcblx0XHRwYWRkaW5nOiA1cHg7XG5cdFx0bGVmdDogLTEwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1pbi13aWR0aDogNTBweDtcblxuXHRcdHN0cm9uZyB7ICBcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZzogMnB4O1xuXHRcdH1cblx0fVxufSIsIi8qKipcbkdvb2dsZSByZUNhcHRjaGFcbioqKi9cbi5mb3JtLXJlY2FwdGNoYS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgcGFkZGluZzogNXB4O1xufVxuXG5pZnJhbWVbc3JjPVwiYWJvdXQ6YmxhbmtcIl0ge1xuICBkaXNwbGF5Om5vbmU7XG59IiwiLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXAgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXAuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbiwgXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgIFxuICAgIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xufVxuXG4ubW9kYWwtb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgei1pbmRleDogJHppbmRleC1tb2RhbCArIDEwO1xufVxuXG4ubW9kYWwtb3BlbiAuc2VsZWN0Mi1jbG9zZS1tYXNrIHtcbiAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsICsgNTtcbn1cblxuLm1vZGFsLW9wZW4gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeSB7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7IH1cbiAgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX2F2YXRhciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX2F2YXRhciBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX21ldGEge1xuICAgIG1hcmdpbi1sZWZ0OiA3MHB4OyB9XG4gIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X190aXRsZSB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxuICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fZm9ya3MsIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X19zdGFyZ2F6ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fZm9ya3MsIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X19zdGFyZ2F6ZXJzLCAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fd2F0Y2hlcnMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogI2FhYTtcbiAgICBmb250LXNpemU6IDExcHg7IH1cbiAgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX2Rlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgbWFyZ2luLXRvcDogNHB4OyB9XG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX3RpdGxlIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCAuc2VsZWN0Mi1yZXN1bHQtcmVwb3NpdG9yeV9fZm9ya3MsIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX3N0YXJnYXplcnMsIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQgLnNlbGVjdDItcmVzdWx0LXJlcG9zaXRvcnlfX2Rlc2NyaXB0aW9uLCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIC5zZWxlY3QyLXJlc3VsdC1yZXBvc2l0b3J5X193YXRjaGVycyB7XG4gICAgY29sb3I6ICNjMWQ3ZTk7IH1cblxuXG4uc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWUgIWltcG9ydGFudDtcblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIvKioqXG5Nb3JyaXMgQ2hhcnRzXG4qKiovXG5cbi5wb3J0bGV0LWJvZHktbW9ycmlzLWZpdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG5cbiAgICA+IHN2ZyB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgXG5cdH1cbn1cblxuLm1vcnJpcy1ob3Zlci5tb3JyaXMtZGVmYXVsdC1zdHlsZSB7XG5cblxuXHQubW9ycmlzLWhvdmVyLXJvdy1sYWJlbCB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRjb2xvcjogIzdEOEM5RDtcblx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7ICAgICBcblx0fVxuXG5cdC5tb3JyaXMtaG92ZXItcG9pbnQge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHRcdFxuXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTsgIFxuXHR9XG59IiwiLyoqKlxuaUNoZWNrXG4qKiovXG5cbi5pY2hlY2stbGlzdCB7XG5cdD4gbGFiZWwge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1ib3R0b206IDhweDtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxufVxuXG4uaWNoZWNrLWlubGluZSB7XG5cblx0LmZvcm0taG9yaXpvbnRhbCAmIHtcblx0XHRtYXJnaW4tdG9wOiA4cHg7XG5cdH1cblxuXHQ+IGxhYmVsIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblx0fVxufVxuXG5kaXZbY2xhc3MqPSdpY2hlY2tib3hfJ10sXG5kaXZbY2xhc3MqPSdpcmFkaW9fJ10ge1xuXHRtYXJnaW4tcmlnaHQ6IDVweDtcblx0dG9wOiAtMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5pY2hlY2stY29sb3JzIHtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXG5cdD4gbGkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiA0cHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGhlaWdodDogMjBweDtcblx0XHR3aWR0aDogMjBweDtcblx0XHRiYWNrZ3JvdW5kOiMwMDAwMDA7XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMC42KTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKTtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRoZWlnaHQ6MjZweDtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdEBpbmNsdWRlIG9wYWNpdHkoMC42KTtcblx0XHR9XG5cblx0XHQmLnJlZHtiYWNrZ3JvdW5kOiNkNTRlMjE7fVxuXHRcdCYuZ3JlZW57YmFja2dyb3VuZDojNzhhMzAwO31cblx0XHQmLmJsdWV7YmFja2dyb3VuZDojMGU3NmE4O31cblx0XHQmLmFlcm97YmFja2dyb3VuZDojOWNjMmNiO31cblx0XHQmLmdyZXl7YmFja2dyb3VuZDojNzM3MTZlO31cblx0XHQmLm9yYW5nZXtiYWNrZ3JvdW5kOiNmNzA7fVxuXHRcdCYueWVsbG93e2JhY2tncm91bmQ6I2ZjMDt9XG5cdFx0Ji5waW5re2JhY2tncm91bmQ6I2ZmNjZiNTt9XG5cdFx0Ji5wdXJwbGV7YmFja2dyb3VuZDojNmE1YThjO31cblx0fVxufSIsIi8qKipcbkFuZ3VsYXJKUyBVSS1zZWxlY3RcbioqKi9cblxuLnVpLXNlbGVjdC1tYXRjaC1jbG9zZSB7XG5cdG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tbGVmdDogNXB4ICFpbXBvcnRhbnQ7ICBcbn0gICIsIi8vIE1pbmkgQ29sb3JzXG5cbi5taW5pY29sb3JzLXN3YXRjaCB7XG5cdGJvcmRlcjogMDtcbn0iLCIvKioqXG5Db2RlbWlycm9yIFBsdWdpblxuKioqL1xuXG4uQ29kZU1pcnJvciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICBoZWlnaHQ6IGF1dG87XG59IiwiLyoqKlxuUHJpc20gUGx1Z2luXG4qKiovXG5cbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0bWFyZ2luOiAwO1xuXG5cdGNvZGUge1xuXHRcdGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cdH1cbn0iLCIuc29jaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdzb2NpY29uJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi5zb2NpY29uLWJ0bjplbXB0eVxuLnNvY2ljb246ZW1wdHkge1xuICAgIHdpZHRoOiAxZW07XG59XG5cbi5zb2NpY29uLWJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgXHRmb250LWZhbWlseTogJ3NvY2ljb24nO1xuICBcdGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgXHRmb250LXdlaWdodDogbm9ybWFsO1xuICBcdGxpbmUtaGVpZ2h0OiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdlbmVyYWwtcGFuZWwtYm9yZGVyLWNvbG9yO1xuICAgIGNvbG9yOiAkZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yO1xuXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCwgY29sb3IgMC4zcztcblxuICAgICYuc29jaWNvbi1zb2xpZCB7XG4gICAgXHRib3JkZXI6IDA7XG4gICAgXHR3aWR0aDogNDZweDtcblx0ICAgIGhlaWdodDogNDZweDtcblx0ICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgIH1cblxuICAgICYuc29jaWNvbi1idG4tY2lyY2xlIHtcbiAgICBcdGJvcmRlci1yYWRpdXM6IDQ0cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICBcdHRyYW5zaXRpb246IGJhY2tncm91bmQsIGNvbG9yIDAuM3M7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7ICAgICAgICBcbiAgICB9ICBcblxuICAgICYuc29jaWNvbi1sZyB7XG4gICAgXHR3aWR0aDogNTRweDtcblx0ICAgIGhlaWdodDogNTRweDtcblx0ICAgIHBhZGRpbmctdG9wOiAxM3B4O1xuXHQgICAgZm9udC1zaXplOiAyOHB4O1xuXG5cdCAgICAmLnNvY2ljb24tc29saWQge1xuICAgIFx0XHRib3JkZXI6IDA7XG4gICAgXHRcdHdpZHRoOiA1NXB4O1xuXHQgICAgXHRoZWlnaHQ6IDU1cHg7XG5cdCAgICBcdHBhZGRpbmctdG9wOiAxM3B4O1xuICAgIFx0fVxuICAgIH1cblxuIFx0Ji5zb2NpY29uLXNtIHtcbiAgICBcdHdpZHRoOiAzMHB4O1xuXHQgICAgaGVpZ2h0OiAzMHB4O1xuXHQgICAgcGFkZGluZy10b3A6IDhweDtcblx0ICAgIGZvbnQtc2l6ZTogMTZweDtcblxuXHQgICAgJi5zb2NpY29uLXNvbGlkIHtcbiAgICBcdFx0Ym9yZGVyOiAwO1xuICAgIFx0XHR3aWR0aDogMzBweDtcblx0ICAgIFx0aGVpZ2h0OiAzMHB4O1xuXHQgICAgXHRwYWRkaW5nLXRvcDogOHB4O1xuICAgIFx0fVxuICAgIH1cbn1cblxuLnNvY2ljb25zIHtcblx0LnNvY2ljb24tYnRuIHtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdH1cbn1cblxuLnNvY2ljb24tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBcImFcIjsgfVxuLnNvY2ljb24tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJiXCI7IH1cbi5zb2NpY29uLWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBcImNcIjsgfVxuLnNvY2ljb24tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiZFwiOyB9XG4uc29jaWNvbi1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiZVwiOyB9XG4uc29jaWNvbi15YWhvbzpiZWZvcmUgeyBjb250ZW50OiBcImZcIjsgfVxuLnNvY2ljb24tc2t5cGU6YmVmb3JlIHsgY29udGVudDogXCJnXCI7IH1cbi5zb2NpY29uLXllbHA6YmVmb3JlIHsgY29udGVudDogXCJoXCI7IH1cbi5zb2NpY29uLWZlZWRidXJuZXI6YmVmb3JlIHsgY29udGVudDogXCJpXCI7IH1cbi5zb2NpY29uLWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwialwiOyB9XG4uc29jaWNvbi12aWFkZW86YmVmb3JlIHsgY29udGVudDogXCJrXCI7IH1cbi5zb2NpY29uLXhpbmc6YmVmb3JlIHsgY29udGVudDogXCJsXCI7IH1cbi5zb2NpY29uLW15c3BhY2U6YmVmb3JlIHsgY29udGVudDogXCJtXCI7IH1cbi5zb2NpY29uLXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCJuXCI7IH1cbi5zb2NpY29uLXNwb3RpZnk6YmVmb3JlIHsgY29udGVudDogXCJvXCI7IH1cbi5zb2NpY29uLWdyb292ZXNoYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwicFwiOyB9XG4uc29jaWNvbi1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogXCJxXCI7IH1cbi5zb2NpY29uLXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogXCJyXCI7IH1cbi5zb2NpY29uLXZpbWVvOmJlZm9yZSB7IGNvbnRlbnQ6IFwic1wiOyB9XG4uc29jaWNvbi1kYWlseW1vdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcInRcIjsgfVxuLnNvY2ljb24tdmluZTpiZWZvcmUgeyBjb250ZW50OiBcInVcIjsgfVxuLnNvY2ljb24tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6IFwidlwiOyB9XG4uc29jaWNvbi01MDBweDpiZWZvcmUgeyBjb250ZW50OiBcIndcIjsgfVxuLnNvY2ljb24taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwieFwiOyB9XG4uc29jaWNvbi13b3JkcHJlc3M6YmVmb3JlIHsgY29udGVudDogXCJ5XCI7IH1cbi5zb2NpY29uLXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiBcInpcIjsgfVxuLnNvY2ljb24tYmxvZ2dlcjpiZWZvcmUgeyBjb250ZW50OiBcIkFcIjsgfVxuLnNvY2ljb24tdGVjaG5vcmF0aTpiZWZvcmUgeyBjb250ZW50OiBcIkJcIjsgfVxuLnNvY2ljb24tcmVkZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiQ1wiOyB9XG4uc29jaWNvbi1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBcIkRcIjsgfVxuLnNvY2ljb24tc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogXCJFXCI7IH1cbi5zb2NpY29uLWRpZ2c6YmVmb3JlIHsgY29udGVudDogXCJGXCI7IH1cbi5zb2NpY29uLWVudmF0bzpiZWZvcmUgeyBjb250ZW50OiBcIkdcIjsgfVxuLnNvY2ljb24tYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIkhcIjsgfVxuLnNvY2ljb24tZGVsaWNpb3VzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiSVwiOyB9XG4uc29jaWNvbi1kZXZpYW50YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiSlwiOyB9XG4uc29jaWNvbi1mb3Jyc3Q6YmVmb3JlIHsgY29udGVudDogXCJLXCI7IH1cbi5zb2NpY29uLXBsYXlzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBcIkxcIjsgfVxuLnNvY2ljb24temVycGx5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiTVwiOyB9XG4uc29jaWNvbi13aWtpcGVkaWE6YmVmb3JlIHsgY29udGVudDogXCJOXCI7IH1cbi5zb2NpY29uLWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiT1wiOyB9XG4uc29jaWNvbi1mbGF0dHI6YmVmb3JlIHsgY29udGVudDogXCJQXCI7IH1cbi5zb2NpY29uLWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBcIlFcIjsgfVxuLnNvY2ljb24tY2hpbWVpbjpiZWZvcmUgeyBjb250ZW50OiBcIlJcIjsgfVxuLnNvY2ljb24tZnJpZW5kZmVlZDpiZWZvcmUgeyBjb250ZW50OiBcIlNcIjsgfVxuLnNvY2ljb24tbmV3c3ZpbmU6YmVmb3JlIHsgY29udGVudDogXCJUXCI7IH1cbi5zb2NpY29uLWlkZW50aWNhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiVVwiOyB9XG4uc29jaWNvbi1iZWJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiVlwiOyB9XG4uc29jaWNvbi16eW5nYTpiZWZvcmUgeyBjb250ZW50OiBcIldcIjsgfVxuLnNvY2ljb24tc3RlYW06YmVmb3JlIHsgY29udGVudDogXCJYXCI7IH1cbi5zb2NpY29uLXhib3g6YmVmb3JlIHsgY29udGVudDogXCJZXCI7IH1cbi5zb2NpY29uLXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogXCJaXCI7IH1cbi5zb2NpY29uLW91dGxvb2s6YmVmb3JlIHsgY29udGVudDogXCIxXCI7IH1cbi5zb2NpY29uLWNvZGVyd2FsbDpiZWZvcmUgeyBjb250ZW50OiBcIjJcIjsgfVxuLnNvY2ljb24tdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogXCIzXCI7IH1cbi5zb2NpY29uLWFwcG5ldDpiZWZvcmUgeyBjb250ZW50OiBcIjRcIjsgfVxuLnNvY2ljb24tZ29vZHJlYWRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiNVwiOyB9XG4uc29jaWNvbi10cmlwaXQ6YmVmb3JlIHsgY29udGVudDogXCI2XCI7IH1cbi5zb2NpY29uLWxhbnlyZDpiZWZvcmUgeyBjb250ZW50OiBcIjdcIjsgfVxuLnNvY2ljb24tc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIjhcIjsgfVxuLnNvY2ljb24tYnVmZmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiOVwiOyB9XG4uc29jaWNvbi1yc3M6YmVmb3JlIHsgY29udGVudDogXCIsXCI7IH1cbi5zb2NpY29uLXZrb250YWt0ZTpiZWZvcmUgeyBjb250ZW50OiBcIjtcIjsgfVxuLnNvY2ljb24tZGlzcXVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiOlwiOyB9XG4uc29jaWNvbi1ob3V6ejpiZWZvcmUgeyBjb250ZW50OiBcIitcIjsgfVxuLnNvY2ljb24tbWFpbDpiZWZvcmUgeyBjb250ZW50OiBcIkBcIjsgfVxuLnNvY2ljb24tcGF0cmVvbjpiZWZvcmUgeyBjb250ZW50OiBcIj1cIjsgfVxuLnNvY2ljb24tcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiLVwiOyB9XG4uc29jaWNvbi1wbGF5c3RhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIl5cIjsgfVxuLnNvY2ljb24tc211Z211ZzpiZWZvcmUgeyBjb250ZW50OiBcIsKoXCI7IH1cbi5zb2NpY29uLXN3YXJtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiJFwiOyB9XG4uc29jaWNvbi10cmlwbGVqOmJlZm9yZSB7IGNvbnRlbnQ6IFwiKlwiOyB9XG4uc29jaWNvbi15YW1tZXI6YmVmb3JlIHsgY29udGVudDogXCImXCI7IH1cbi5zb2NpY29uLXN0YWNrb3ZlcmZsb3c6YmVmb3JlIHsgY29udGVudDogXCIoXCI7IH1cbi5zb2NpY29uLWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIiNcIjsgfVxuLnNvY2ljb24tb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50IDogXCIuXCI7fVxuLnNvY2ljb24tYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBcIl9cIjsgfVxuLnNvY2ljb24tbWVldHVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXVwiOyB9XG4uc29jaWNvbi1wZXJzb25hOmJlZm9yZSB7IGNvbnRlbnQ6IFwiKVwiOyB9Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7K0JBRStCO0FzQ3lFL0IsNkJBQTZCO0FDM0U3Qjs7SUFFSTtBQUVKLEFBQUEsWUFBWSxBQUFBLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7RUFDcEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVBQUUsT0FBTztFQUNmLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsR0FBRztDQUNYOztBQUVELEFBQUEsWUFBWSxBQUFBLGNBQWMsQ0FBQztFQUN6QixPQUFPLEVBQUUsR0FBRztDQUNiOztBQUVELHlDQUF5QztBQUN6QyxBQUFBLFdBQVcsQ0FBQyxZQUFZLENBQUM7RUFDdkIsT0FBTyxFQUFFLGdCQUFnQjtDQUMxQjs7QUNwQkQ7O0lBRUk7QUFFSixBQUFBLGNBQWMsQ0FBQyxDQUFDLENBQUM7RUFDZixXQUFXLEVBQUUsV0FBVztFQUN4QixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUVE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 */