/*!******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/dialog.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************/
.modal.dialog {
  min-height: 236px;
}
.modal.dialog:not(.modal-big) {
  height: auto !important;
}
.modal.dialog.modal-big img.content-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.modal.dialog .modal-content {
  padding-bottom: 72px;
}
.modal.dialog .modal-header {
  padding: 18px 24px;
  border-bottom: 1px solid #ccc;
  border-radius: 5px 5px 0 0;
  font-size: large;
  font-weight: bold;
  color: #444;
}
.modal.dialog.error .modal-header {
  background-color: #ffebee;
  color: #f44336;
  border-color: #ffcdd2;
}
.modal.dialog.warning .modal-header {
  background-color: #fff8e1;
  color: #ffc107;
  border-color: #ffecb3;
}
.modal.dialog.info .modal-header {
  background-color: #e8eaf6;
  color: #3f51b5;
  border-color: #c5cae9;
}
.modal.dialog.success .modal-header {
  background-color: #e0f2f1;
  color: #009688;
  border-color: #b2dfdb;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/ajax-card.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.ajax-card .white-space {
  flex: 1;
}
.ajax-card .ajax-card-error {
  display: flex;
  flex-direction: column;
  transition: 250ms ease-in-out;
  padding: 0;
  height: 0;
  overflow: auto;
  color: #eee;
  background-color: #333 !important;
}
.ajax-card .ajax-card-error.show {
  padding: 0.5rem;
  height: auto;
}
.ajax-card .ajax-card-error .errno, .ajax-card .ajax-card-error .err {
  margin: 0;
}
.ajax-card .ajax-card-error .errno {
  margin-bottom: 5px;
  font-weight: bold;
  color: #ff5500;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/empleados-bulk-actions.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************/
.empleados-bulk-actions-element {
  position: fixed;
  top: 45%;
  right: 0;
  width: 70px;
  height: 45px;
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
  border-radius: 0.5rem 0 0 0.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  transition: all ease-in-out 0.3s;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.empleados-bulk-actions-element.hidden {
  right: -70px;
}
.empleados-bulk-actions-element:hover {
  width: 85px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4);
  background-color: var(--md-sys-color-on-primary-container);
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/ausencias-calendar.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.descanso-event {
  padding-left: 2rem;
  position: relative;
  cursor: pointer;
}
.descanso-event::before {
  font-family: "MaterialSymbolsSharp" !important;
  position: absolute;
  left: 2px;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  font-size: 1.3rem;
}
.descanso-event.Permiso::before {
  content: "task_alt";
}
.descanso-event.Vacaciones::before {
  content: "kayaking";
}
.descanso-event.Incapacidad::before {
  content: "medical_services";
}
.descanso-event.Justificación::before {
  content: "description";
}
.descanso-event .fc-event-title {
  vertical-align: baseline !important;
}
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/calendar.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
.calendar-container .calendar {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-template-rows: 0.5fr repeat(5, 1fr);
  row-gap: 5px;
  column-gap: 5px;
  padding: 5px !important;
}
.calendar-container .calendar .slot {
  min-height: 6rem;
  background-color: #ddd;
  border-radius: 5px;
  padding: 5px;
  transition: all 250ms ease-in-out;
  user-select: none;
}
.calendar-container .calendar .slot.active {
  background-color: #eeeaaa;
}
.calendar-container .calendar .slot.header {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0 !important;
  background-color: #aaaeee;
}
.calendar-container .calendar .slot:hover {
  background-color: #aeeeaa;
}
.calendar-container .calendar .slot.selected {
  background-color: #eaaaee;
}
.calendar-container .navigation {
  display: flex;
  flex-direction: row;
  padding: 10px 5px !important;
  justify-content: center;
  align-items: center;
}
.calendar-container .navigation .input-field:nth-child(2) {
  flex-grow: 1;
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/calendar-view.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************/
.calendar-view {
  padding: 0 24px 8px 24px;
}
.calendar-view .calendar-content {
  min-height: 65vh;
  max-height: calc(100vh - 300px);
}
.calendar-view .itinerario-card .fc-event-main {
  display: flex;
  flex-direction: row;
  align-items: center;
  cursor: pointer;
  padding: 5px;
}
.calendar-view .itinerario-card .fc-event-main .title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.calendar-view .itinerario-card .fc-event-main .icon {
  --color: var(--color-primary);
  background-color: whitesmoke;
  color: var(--color);
  border-radius: 100px;
  margin-right: 10px;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.calendar-view .programada {
  color: #ffca28;
}
.calendar-view .abierta {
  color: #26a69a;
}
.calendar-view .cerrada {
  color: #ef5350;
}
.calendar-view .time {
  margin-top: 2px;
  white-space: nowrap;
}
.calendar-view .time span {
  background-color: rgba(245, 245, 245, 0.6666666667);
  padding: 0 5px;
  border-radius: 2px;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/indicadores.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
@property --porcentaje {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
.estadisticas-asistencia .indicador {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  aspect-ratio: 1;
  max-width: 250px;
  min-width: 150px;
  position: relative;
  background-color: #eee;
  margin: 1rem 0 0.5rem 0;
  animation: fadeIn 0.5s ease-in-out;
}
.estadisticas-asistencia .indicador .progress {
  --porcentaje: 0%;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: conic-gradient(var(--md-sys-color-primary) var(--porcentaje), var(--background-color-card) 0deg);
  transition: --porcentaje ease-in-out 0.5s;
  margin: 0;
}
.estadisticas-asistencia .indicador .container {
  position: absolute;
  width: 80%;
  height: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background-color: white;
}
.estadisticas-asistencia .indicador .display {
  position: absolute;
  font-size: 1.2em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.estadisticas-asistencia .indicador .display .value {
  font-size: 1.5em;
  color: #444;
  font-weight: bold;
}
.estadisticas-asistencia .indicador .display .total {
  font-size: 0.8em;
}
.estadisticas-asistencia .indicador .text {
  position: absolute;
  font-size: 0.8em;
  font-weight: bold;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/calendario-actividades-empleado.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
.calendario-actividades-empleado .fc-daygrid-day-top {
  justify-content: space-between;
  align-items: center;
}
.calendario-actividades-empleado .fc-daygrid-day-top .day-cell-icon {
  font-size: 1rem;
  margin-left: 5px;
  border-radius: 50%;
  background-color: var(--secondary-container-color);
  width: 20px;
  height: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  cursor: pointer;
}
.calendario-actividades-empleado td.fc-day:not(:has(.day-cell-icon)) {
  background-color: #eee;
}
.calendario-actividades-empleado td.fc-day:not(.day-selected):hover {
  background-color: #f5f5f5;
}
.calendario-actividades-empleado .fc-day-today {
  background-color: #ffe0b2 !important;
}
.calendario-actividades-empleado .day-selected {
  background-color: #b3e5fc !important;
}

.detalle-dia .material-icons {
  margin-right: 1rem;
}
.detalle-dia .data {
  padding: 1rem;
}
.detalle-dia .title {
  font-size: 1rem;
  font-weight: bold;
  color: #444;
}
.detalle-dia .subtitle {
  font-size: 0.9rem;
  color: #555;
}
.detalle-dia .description {
  font-size: 1rem;
  color: #666;
  margin-top: 5px;
}
.detalle-dia .action {
  border-top: 1px solid var(--fc-border-color);
  padding: 5px 10px;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/fp_svg.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************/
svg g.finger.selected.active.has-fingerprint path {
  fill: #ffcdd2 !important;
}
svg g.finger.selected path {
  fill: #b2dfdb;
}
svg g.finger.active path {
  fill: #b3e5fc;
  cursor: pointer;
}
svg g.finger.active.selected path {
  fill: #ffcdd2;
}
svg g.finger.active.selected:hover path {
  fill: #cf9ea3 !important;
}
svg g.finger:hover:not(.selected):not(.active) path {
  fill: #eeeeee;
  cursor: pointer;
}
svg g.finger.selected:hover path {
  fill: #8cb6b2 !important;
  cursor: pointer;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/color.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
[data-controller=color] {
  height: 14px;
  width: 100%;
  display: inline-block;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/datepicker.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
.datepicker-container .datepicker-controls {
  align-items: center;
}
.datepicker-container button {
  margin: 0 !important;
  padding: 5px;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/datetime-range.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
.datetime-range-dropdown {
  padding: 1rem !important;
}
.datetime-range-dropdown .btn {
  width: 100%;
  justify-content: center;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.datetime-range-dropdown .btn:not(:first-child) {
  margin-top: 5px;
}
.datetime-range-dropdown .flex .btn:not(:first-child) {
  margin-top: 0 !important;
  margin-left: 5px !important;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/dual-range.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
.range_container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.range_container.disabled {
  opacity: 0.5;
  pointer-events: none;
}
.range_container.disabled .bubble, .range_container.disabled #ini, .range_container.disabled #fin {
  display: none;
}
.range_container .sliders_control {
  position: relative;
  min-height: 50px;
}
.range_container input[type=range]::-moz-range-track {
  background: none transparent;
  border: none;
}
.range_container input[type=range]::-webkit-slider-runnable-track {
  background: none transparent;
  border: none;
}
.range_container input[type=range] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  position: absolute;
  pointer-events: none;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  margin: 0;
}
.range_container input[type=range]::-moz-range-thumb {
  pointer-events: all;
  cursor: pointer;
  border-radius: 0 !important;
  width: 8px;
  height: 20px;
}
.range_container input[type=range]::-webkit-slider-thumb {
  pointer-events: all;
  cursor: pointer;
  border-radius: 0 !important;
  width: 8px;
  height: 20px;
}
.range_container .track {
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--secondary-color-hover-solid);
  transform: translate(0, -50%);
  pointer-events: none;
  top: 50%;
}
.range_container .ticks {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translate(0, -50%);
  pointer-events: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 0;
}
.range_container .ticks .tick {
  --tick-value: "";
  width: 2px;
  height: 15px;
  background: var(--secondary-color-hover-solid);
}
.range_container .ticks .tick.mid {
  height: 10px;
}
.range_container .ticks .tick.day-begin {
  height: 20px;
  background-color: #ef5350;
}
.range_container .bubble {
  position: absolute;
  left: var(--bubble-position);
  transform: translate(-50%);
  background: #444;
  color: white;
  padding: 2px 5px;
  border-radius: 5px;
  font-size: 12px;
  pointer-events: none;
  z-index: 2;
  top: -5px;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/editor-fomularios-grid.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************/
.editor-fomularios-grid {
  position: relative;
  flex-grow: 1;
  margin-left: 1rem;
}
.editor-fomularios-grid:not(.empty) {
  height: max-content;
}
.editor-fomularios-grid.empty::after {
  content: "Arrastra un campo para empezar a editar";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4666666667);
  color: white;
  font-size: 1.5rem;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/editor-formularios.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************/
.editor-formularios {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.editor-formularios .editor-formularios-status {
  flex: 1 0 100%;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/editor-formularios-field-configure.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
.editor-formularios-field-configure {
  min-height: 56px;
}
.editor-formularios-field-configure .effc-dropdown {
  padding: 1rem;
}
.editor-formularios-field-configure .effc-dropdown .input-field:not(:last-child) {
  margin-bottom: 1rem;
}
.editor-formularios-field-configure .options {
  padding: 0.5rem 0;
}
.editor-formularios-field-configure .options .btn {
  margin-right: 0.7rem;
}
/*!************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/editor-formularios-field.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************/
.editor-formularios-field {
  padding: 1rem;
  display: flex;
  flex-direction: row;
  justify-content: left;
  align-items: center;
  user-select: none;
  transition: all ease-in-out 0.2s;
  margin-top: 1rem;
}
.editor-formularios-field .icon {
  margin-right: 1rem;
}
.editor-formularios-field .label {
  font-size: 1rem;
  font-weight: bold;
  color: #333;
  flex-grow: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editor-formularios-field .grab {
  margin-left: 1rem;
  color: #999;
  cursor: grab;
}
.editor-formularios-field.dragging {
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.28), 0 6px 2px -4px rgba(0, 0, 0, 0.24), 0 2px 10px 0 rgba(0, 0, 0, 0.4);
}
.editor-formularios-field :active {
  cursor: grabbing;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/editor-formularios-sidebar.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************/
.editor-formularios-sidebar {
  max-width: 250px;
}
/*!***************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/empleado-detalle-checadores.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************/
.checador-container {
  min-width: 150px;
  max-width: 240px;
  width: 15%;
  height: auto;
  margin: 0.5rem;
  background-color: white;
  cursor: pointer;
  transition: all 350ms ease-in-out;
}
.checador-container.empleado-in-it {
  background-color: #e3f2fd;
}
.checador-container:not(.empleado-in-it) {
  background-color: #fafafa;
}
.checador-container:hover {
  transform: scale(1.03);
}
.checador-container.selected {
  background-color: #bbdefb;
}
.checador-container .card-title {
  font-size: 1.2rem !important;
}
.checador-container .card-image {
  padding: 1rem;
}
.checador-container .card-content {
  border-top-color: var(--fc-border-color);
  border-top-width: 1px;
  border-top-style: solid;
  padding: 5px 1rem !important;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/ubicaciones-empleado-planta-controller.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************/
.resultados {
  margin-top: 1rem;
  border: 1px solid #444;
  border-radius: 5px;
  padding: 1rem;
  background-color: #eee;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}
.resultados .empleado-planta {
  padding: 10px;
}
.resultados .empleado-planta img {
  margin-right: 5px;
  width: 50px;
}
.resultados .empleado-planta button {
  margin-left: 5px;
}
.resultados .empleado-planta.in-ubicacion {
  background-color: #c8e6c9; /* Light green */
}
.resultados .empleado-planta .small {
  font-size: 0.8rem;
  color: #555;
  max-width: 256px;
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/eo-controller.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************/
.node {
  --color: var(--primary-color);
  background-color: var(--color);
  height: 100%;
  width: 100%;
  display: flex;
  border-radius: 10px;
  padding: 1rem;
  color: #eee;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.node.non-empleado .hc {
  border-radius: 20px;
  background-color: #eee;
  color: #444;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.node.non-empleado .title {
  display: flex;
  align-items: center;
  flex-grow: 1;
}
.node.non-empleado .title * {
  margin: 0 5px;
}
.node.non-empleado .add-button {
  margin-left: 5px;
}
.node.empleado .pp {
  border-radius: 50%;
  height: 65px;
  border: solid 6px var(--color);
  margin-right: 1rem;
}
.node.empleado .data {
  overflow: hidden;
}
.node.empleado .nombre {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.eo-controller {
  position: relative;
  padding: 0 !important;
  height: calc(100vh - 65px);
}
.eo-controller .filters-card {
  transition: all 0.3s ease-in-out;
  position: absolute;
  opacity: 0.3;
  top: 1rem;
  right: 1rem;
}
.eo-controller .filters-card:hover {
  opacity: 1;
}
.eo-controller .link {
  stroke: #444 !important;
}
.eo-controller .diagram {
  height: 100%;
}
.eo-controller .diagram svg {
  height: 100% !important;
  width: 100% !important;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/fcm-controller.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
.toast.notification {
  flex-direction: column !important;
  align-items: start !important;
  max-width: 500px;
}
.toast.notification .notif-title {
  font-size: 1.5rem !important;
  font-weight: bold !important;
  margin: 0 0 0.5rem 0 !important;
}
.toast.notification .notif-body {
  margin: 0 !important;
}
.toast.notification div {
  width: 100%;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/file-type.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.file-type {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 10px;
  background-color: var(--background-color);
  border: 1px solid var(--font-color-medium);
  border-radius: 4px;
  height: 56px;
  cursor: pointer;
}
.file-type .message {
  text-align: center;
}
.file-type .icon {
  position: relative;
}
.file-type:hover {
  background-color: var(--hover-color);
  color: var(--primary-color);
}
.file-type input[type=file] {
  height: 1px;
  opacity: 0;
}
.file-type.highlight {
  background-color: var(--primary-color);
  color: var(--background-color);
}
.file-type.dropped .icon, .file-type.dropped .message {
  display: none;
}
.file-type .thumbnail {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
.file-type .thumbnail img {
  height: 2rem;
}
.file-type .thumbnail .clear {
  font-family: MaterialSymbolsSharp;
  border: 1px solid var(--error-color);
  border-radius: 15px;
  height: 15px;
  width: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--error-color);
  color: white;
  margin-left: 5px;
  cursor: pointer;
}
/*!************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/horario-type.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************/
.horario-type .horario-type-body .horario-type-row {
  display: flex;
  align-items: center;
}
.horario-type .horario-type-body .horario-type-row .tl {
  flex-grow: 1;
}
.horario-type .horario-type-body .horario-type-row .laboral {
  min-width: 120px;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/interactive-agendas.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************/
.interactive-agendas-container {
  height: calc(100svh - 64px);
  width: 100%;
  position: relative;
}
.interactive-agendas-container .fc-toolbar-title {
  text-align: center;
}
.interactive-agendas-container .toggle-button {
  position: absolute;
  left: 5px;
  top: 13px;
  z-index: 15;
}
.interactive-agendas-container .toggle-button.open {
  left: min(394px, 100vw - 56px);
}
.interactive-agendas-container .card:not(:last-child) {
  margin-bottom: 5px;
}
.interactive-agendas-container .search-bar {
  min-height: 56px;
}
.interactive-agendas-container .panel {
  z-index: 10;
  height: 100%;
  overflow-y: auto;
  position: absolute;
  border: none !important;
  width: 0;
  padding: 0;
}
.interactive-agendas-container .panel.open {
  width: min(450px, 100%);
  border-right: 1px solid #ccc;
  padding: 5px;
}
.interactive-agendas-container .panel .profile-container {
  padding: 1rem;
  width: 100%;
  min-height: 200px;
}
.interactive-agendas-container .panel .profile-container div[data-property=nombreCompleto] {
  font-size: 1rem;
  color: #444;
  font-weight: bold;
}
.interactive-agendas-container .panel .calendar-container {
  width: 100%;
  height: max-content;
}
.interactive-agendas-container .panel .calendar-container .fc-header-toolbar {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 10px 10px;
}
.interactive-agendas-container .panel .calendar-container .fc-toolbar-title {
  font-size: 1rem;
  color: #444;
  font-weight: bold;
}
.interactive-agendas-container .panel .calendar-container .fc-highlight {
  background-color: var(--md-sys-color-primary);
  opacity: 0.3;
}
.interactive-agendas-container .panel .destinations-container {
  padding: 10px;
}
.interactive-agendas-container .map-container {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.interactive-agendas-container .detalle-ubicacion-container {
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 20;
  width: 400px;
  max-height: 400px;
  min-height: 200px;
  overflow-y: auto;
}
.interactive-agendas-container .detalle-ubicacion-container .title {
  padding-left: 10px;
}
.interactive-agendas-container .detalle-ubicacion-container .ubicacion {
  font-size: 0.9rem;
  color: #666;
  gap: 5px;
  padding: 10px 10px 0 10px;
}
.interactive-agendas-container .detalle-ubicacion-container .ubicacion span:not(:last-child)::after {
  content: ">";
  margin: 0 5px;
}
.interactive-agendas-container .geolog-popup {
  position: absolute;
  z-index: 19;
  bottom: 2rem;
  right: 2rem;
  background: rgba(68, 68, 68, 0.9333333333);
  color: #eee;
  border: 1px solid #ccc;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease;
}
.interactive-agendas-container .geolog-popup .material-icons {
  margin-right: 5px;
}
.interactive-agendas-container .geolog-popup.hidden {
  opacity: 0;
}
.interactive-agendas-container .timeline-controller {
  position: absolute;
  bottom: 0;
  left: 450px;
  z-index: 20;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  width: calc(100% - 450px - 15px);
  height: 100px;
  margin: 5px;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/timeline-controller.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************/
.timeline-controller {
  display: flex;
  flex-direction: column;
  overflow-x: auto;
  overflow-y: visible;
}
.timeline-controller .timeline-ticks-container {
  --pixels-per-second: 10px;
  --pixels-per-minute: 600px;
  --pixels-per-hour: 36000px;
  --time-tiks-width: 2px;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-image: linear-gradient(to right, blue var(--time-tiks-width), transparent var(--time-tiks-width)), linear-gradient(to right, green var(--time-tiks-width), transparent var(--time-tiks-width)), linear-gradient(to right, red var(--time-tiks-width), transparent var(--time-tiks-width));
  background-size: var(--pixels-per-hour) 100%, var(--pixels-per-minute) 100%, var(--pixels-per-second) 100%;
  background-repeat: repeat-x, repeat-x, repeat-x;
}
.timeline-controller .timeline-toolbar {
  position: sticky;
  bottom: 0;
  left: 0;
  width: inherit;
  height: 30px;
  background-color: #eee;
  border-bottom: 1px solid #ccc;
  z-index: 10;
  overflow: hidden;
}
.timeline-controller .timeline-toolbar-label {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  font-size: 6pt;
  border-left: 2px #444 solid;
  align-content: center;
  padding: 0 2px;
  width: max-content;
  max-width: 80px;
  overflow: hidden;
}
.timeline-controller .timeline-events-container {
  position: relative;
  height: 100%;
}
.timeline-controller .timeline-event {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.timeline-controller .timeline-event.timeline-event-point {
  width: 10px;
  height: 10px;
  background-color: #007bff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.timeline-controller .timeline-controls-container {
  position: sticky;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #eee;
  height: 25px;
  overflow: hidden;
}
.timeline-controller .timeline-controls-container .gorw-1 {
  flex-grow: 1;
}
.timeline-controller .timeline-controls-container .zoom {
  width: 100px;
}
.timeline-controller .timeline-controls-container input[type=range] {
  margin: 0;
  height: 100%;
}
.timeline-controller .timeline-controls-container button {
  height: 25px;
  width: 25px;
  border: 5px solid transparent;
  background: none;
  font-size: 1.2em;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.timeline-controller .timeline-controls-container button:hover {
  background-color: #ddd;
}
.timeline-controller .timeline-controls-container button .material-icons {
  font-size: 17px;
  margin: 0;
  padding: 0;
}

.timeline-tooltip {
  position: absolute;
  padding: 2px 5px;
  transform: translateX(-50%);
  background-color: #333;
  color: #eee;
  font-size: 0.8em;
  border: 1px solid #eee;
  border-radius: 3px;
  pointer-events: none;
  white-space: nowrap;
  z-index: 1000;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/jsoneditor.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
.json-editor-container .header {
  padding: 0.5rem 1rem;
  display: flex;
  align-items: center;
  flex-direction: row;
  background-color: #dddddd;
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-radius: 10px;
}
.json-editor-container .header .name {
  flex-grow: 1;
}
.json-editor-container .json-editor {
  transition: all 200ms ease-in-out;
}
.json-editor-container.collapsed .json-editor {
  height: 0 !important;
  overflow: hidden;
}
/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/map.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
.map {
  position: relative;
  min-height: 500px;
  border: 1px solid var(--font-color-medium);
  border-radius: 4px;
}
.map .buscador {
  position: absolute;
  padding: 1rem;
  top: 0;
  left: 0;
  overflow-y: hidden;
  opacity: 0.5;
  transition: all ease-in-out 250ms;
}
.map .buscador.focused {
  height: 100%;
}
.map .buscador:hover {
  opacity: 1;
}
.map .buscador input {
  height: 45px !important;
}
.map .buscador .suffix {
  top: 12px !important;
  cursor: pointer;
}
.map .buscador .destinos {
  display: flex;
  flex-direction: column;
  max-height: calc(100% - 45px);
  overflow-y: auto;
}
.map .buscador .destinos .destino {
  cursor: pointer;
  display: flex;
  padding: 1rem;
  border-bottom: 1px #aaa solid;
}
.map .buscador .destinos .destino:hover, .map .buscador .destinos .destino.selected {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.map .map-container {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #eee;
}
.map .map-container .switch-layer {
  position: absolute;
  bottom: 5px;
  right: 5px;
}
.map .map-container .switch-action-mode {
  position: absolute;
  top: 5px;
  right: 5px;
}
.map .map-container .switch-action-mode .material-icons {
  pointer-events: none;
}
.map .map-container .switch-action-mode button:not(:last-child) {
  margin-right: 5px;
}
.map > input {
  position: absolute;
  top: 50%;
  left: 40%;
  width: 0 !important;
  height: 0 !important;
  border: none;
  background: none;
  z-index: -1;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/mapa_ubicaciones.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************/
.muc-container {
  display: flex;
  height: calc(100vh - 64px);
}
.muc-container .muc-lateral-panel {
  background-color: #f9f9f9;
  width: 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.muc-container .muc-lateral-panel.open {
  padding: 10px;
  width: 350px;
  border-right: 1px solid #444;
}
.muc-container .muc-mapa {
  flex-grow: 1;
  height: 100%;
}
.muc-container .current-location-button {
  position: absolute;
  bottom: 4rem;
  right: 2rem;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/maquila-nomina.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.maquila-nomina-container {
  padding: 0 !important;
  width: 100% !important;
  height: calc(100svh - 64px) !important;
  overflow: scroll;
  scroll-padding-top: 200px;
}
.maquila-nomina-container .header {
  writing-mode: sideways-lr;
  pointer-events: none;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.maquila-nomina-container .jexcel thead td {
  background-color: var(--primary-color) !important;
  color: #eee;
  border-left: #aaa solid 1px !important;
  border-right: #aaa solid 1px !important;
}
.maquila-nomina-container .jexcel thead td.arrow-down {
  background-image: none !important;
}
.maquila-nomina-container .jexcel thead td.arrow-down:after {
  content: "▼";
  font-size: 12px;
  color: #eee;
  position: absolute;
  bottom: 10px;
  right: 50%;
  transform: translateX(50%);
}
.maquila-nomina-container .jexcel thead td.arrow-up {
  background-image: none !important;
}
.maquila-nomina-container .jexcel thead td.arrow-up:after {
  content: "▲";
  font-size: 12px;
  color: #eee;
  position: absolute;
  top: 10px;
  right: 50%;
  transform: translateX(50%);
}
.maquila-nomina-container .jexcel tbody td.readonly {
  color: #333;
  font-weight: 500;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even), .maquila-nomina-container .jexcel tbody tr:nth-child(even) .jexcel_row {
  background-color: #EEE9F1 !important;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even) .jexcel_row.selected {
  background-color: #D6C9E0 !important;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even) .percepciones {
  background-color: #e0f2f1 !important;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even) .deducciones {
  background-color: #ffebee !important;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even) .total-percepciones {
  background-color: #80cbc4 !important;
}
.maquila-nomina-container .jexcel tbody tr:nth-child(even) .total-deducciones {
  background-color: #ef9a9a !important;
}
.maquila-nomina-container .jexcel tbody .total-percepciones {
  background-color: #b2dfdb !important;
  font-weight: bold !important;
}
.maquila-nomina-container .jexcel tbody .total-deducciones {
  background-color: #ffcdd2 !important;
  font-weight: bold !important;
}

.maquila-nomina-search-container {
  width: 350px;
  position: fixed;
  top: 78px;
  left: 250px;
  z-index: 1000;
  background-color: #404040;
  border-radius: 5px;
  overflow: hidden;
}
.maquila-nomina-search-container input {
  background-color: transparent;
  border: none;
  padding: 1rem;
  color: #eee !important;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/money-cell.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
.money-cell {
  text-align: end;
  padding: 0 1rem;
  position: relative;
}
.money-cell::before {
  content: "$";
  position: absolute;
  left: 0;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/monitor-vigilancia.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************/
.monitor-vigilancia .left-panel, .monitor-vigilancia .right-panel, .monitor-vigilancia .data > .row, .monitor-vigilancia .log {
  height: 100%;
}
.monitor-vigilancia .data {
  height: calc(100% - 104px);
  padding: 0 !important;
}
.monitor-vigilancia .data .row {
  gap: 0;
}
.monitor-vigilancia .dentro, .monitor-vigilancia .fuera {
  height: 50%;
}
.monitor-vigilancia .dentro, .monitor-vigilancia .fuera, .monitor-vigilancia .log {
  padding: 1rem;
}
.monitor-vigilancia .col > .card {
  height: calc(100svh - 140px);
}
.monitor-vigilancia .dentro {
  border-bottom: 1px #ddd solid;
}
.monitor-vigilancia .log {
  border-left: 1px #ddd solid;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/multi-entity-form.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
.multi-entity-form {
  min-height: 5rem;
  border: 1px solid var(--font-color-medium);
  border-radius: 4px;
  position: relative;
  padding-bottom: 10px;
  margin-top: 10px;
  background-color: #efefef;
}
.multi-entity-form .no-data {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  text-align: center;
}
.multi-entity-form .no-data .material-icons {
  vertical-align: middle;
}
.multi-entity-form .input {
  width: 0 !important;
  height: 0 !important;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.multi-entity-form .label {
  top: -8px;
  left: 16px;
  margin-left: -4px;
  padding: 0 4px;
  background-color: var(--background-color);
  position: absolute;
  transform: scale(0.75);
  transform-origin: top left;
  color: var(--font-color-medium);
  user-select: none;
  font-size: 16px;
}
.multi-entity-form .lines {
  background-color: inherit;
}
.multi-entity-form .lines .line {
  position: relative;
  padding: 1.5rem 1.5rem 1rem 1.5rem;
}
.multi-entity-form .lines .line:not(:last-child) {
  border-bottom: 1px solid var(--font-color-medium);
}
.multi-entity-form .lines .line .delete-line {
  position: absolute;
  top: 50%;
  transform: translate(50%, -35%);
  right: 0;
}
.multi-entity-form .lines .line::after {
  content: "#" attr(data-line-number);
  position: absolute;
  top: 50%;
  background-color: var(--background-color);
  padding: 4px 0;
  transform: translate(-50%, -35%);
  left: 0;
}
.multi-entity-form .lines .line input.disabled {
  color: rgba(var(--md_sys_color_on-surface), 0.7);
  border-color: rgba(var(--md_sys_color_on-surface), 0.3);
  background-color: rgba(0, 0, 0, 0.03);
  pointer-events: none;
}
.multi-entity-form .add-line {
  position: absolute;
  bottom: 0;
  right: 1rem;
  transform: translateY(50%);
}
.multi-entity-form .search {
  position: absolute;
  bottom: 0;
  right: 4rem;
  transform: translateY(50%);
}
.multi-entity-form .alert {
  animation: shake 0.7s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

.searchModal .search-input {
  padding-top: 0 !important;
}
.searchModal .search-clear {
  cursor: pointer;
}
.searchModal .modal-content {
  padding: 0 !important;
}
.searchModal .modal-content .line {
  display: flex;
  padding: 1rem;
  border-bottom: 1px solid var(--font-color-medium);
  cursor: pointer;
}
.searchModal .modal-content .line:hover {
  background-color: var(--md-sys-color-primary);
  color: #eee;
}
.searchModal .modal-content .line.active {
  background-color: var(--md-sys-color-secondary);
  color: #eee;
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/multiview.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.multiview::before {
  content: attr(data-multiview-title-value);
  font-size: 24px;
  font-weight: 300;
  margin: 1rem 2rem 0 2rem;
  display: block;
}
.multiview .card-action {
  flex-wrap: wrap;
}
.multiview .card-action > *:not(button) {
  margin: 0 5px;
  padding: 2px;
}
@media screen and (max-width: 600px) {
  .multiview .card-action .input-field {
    flex-grow: 1;
  }
}
.multiview .card-action #multiview-pagination {
  flex-grow: 1;
  display: flex;
  flex-direction: row;
  justify-content: end;
  align-items: center;
}
@media screen and (max-width: 600px) {
  .multiview .card-action #multiview-pagination {
    justify-content: space-around;
  }
}
.multiview .card-action #multiview-pagination .btn {
  width: 40px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.multiview .suffix:has(+ .filterInput:placeholder-shown) {
  display: none;
}
.multiview tbody tr:last-child {
  border-bottom: none;
}
.multiview tr {
  padding: 0 1rem;
}
.multiview td.highlighted {
  background-color: var(--md-sys-color-primary-container);
  border: 1px solid var(--md-sys-color-primary);
}
.multiview td.prev-highlighted {
  background-color: var(--md-sys-color-tertiary-dark);
  border: 1px solid var(--md-sys-color-tertiary);
}
.multiview th.sortable {
  user-select: none;
  cursor: pointer;
}
.multiview th.sortable::before {
  content: "sort_by_alpha";
  font-family: "MaterialSymbolsSharp";
  margin-right: 5px;
  color: #999;
}
.multiview th.sortable.asc::after {
  content: "arrow_drop_down";
  font-family: "MaterialSymbolsSharp";
}
.multiview th.sortable.desc::after {
  content: "arrow_drop_up";
  font-family: "MaterialSymbolsSharp";
}
.multiview .grid-view {
  grid-auto-rows: 1fr;
  padding: 0 24px 8px 24px;
}
.multiview .card-body {
  padding: 5px 0 0 0 !important;
  height: calc(100% - 57px);
}
.multiview .card-filters {
  padding: 1rem !important;
  margin-top: 0 !important;
}
.multiview .multiselect-checkbox {
  width: 20px;
  height: 20px;
  border: 2px solid var(--md-sys-color-primary);
  display: inline-block;
  position: relative;
  transition: all 0.1s ease-in-out;
}
.multiview .multiselect-checkbox::before {
  content: "";
  outline: none;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: var(--md-sys-on-surface);
  display: none;
}
.multiview .multiselect-checkbox::after {
  content: "check";
  font-family: "MaterialSymbolsSharp";
  color: var(--md-sys-color-primary);
  position: absolute;
  font-weight: bold;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: none;
}
.multiview .multiselect-checkbox:hover {
  background-color: var(--md-sys-color-primary);
}
.multiview .multiselect-checkbox.checked {
  background-color: var(--md-sys-color-primary);
}
.multiview .multiselect-checkbox.checked::after {
  display: block !important;
  color: white;
}
.multiview .multiselect-checkbox:focus-visible ::before {
  display: block;
}

.multiview-focus-stats {
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  background-color: var(--md-sys-color-primary);
  color: var(--md-sys-color-on-primary);
  padding: 0.5rem;
  border-radius: 0.5rem;
  font-size: 0.8rem;
  font-weight: 300;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  z-index: 1000;
  transition: all 0.3s ease-in-out;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.multiview-focus-stats.hidden {
  opacity: 0;
  transform: translateY(100px);
}
.multiview-focus-stats div {
  margin: 0 0.5rem;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/reporte-button.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
.reporte-button {
  height: 100%;
  --side-color: var(--primary-color);
}
.reporte-button .card-image {
  padding: 1rem;
  background-color: var(--side-color);
  color: #fefefe;
}
.reporte-button .card-image .material-icons {
  font-size: 2rem;
}
.reporte-button a {
  background-color: var(--side-color);
}
.reporte-button a .material-icons {
  color: #fefefe;
}

.placeholder {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px dashed var(--primary-color);
  border-radius: 12px;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  background-color: #dfdfdf;
}
.placeholder::before {
  content: "";
  font-size: larger;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  width: calc(100% - 2rem);
  height: calc(100% - 2rem);
  border: 1px dashed var(--primary-color);
  border-radius: 12px;
}
.placeholder::after {
  content: "";
  position: absolute;
  height: calc(100% - 2rem);
  width: 1px;
  background-color: var(--primary-color);
  left: 5rem;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/navegador.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.navegador .page.fadeIn {
  animation: fadeIn 500ms ease-in-out forwards;
}
.navegador .page.fadeOut {
  animation: fadeOut 500ms ease-in-out forwards;
}
.navegador.no-animations .page {
  animation-duration: 0s !important;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/organigrama.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
.organigrama-container {
  width: 100%;
  height: calc(100vh - 64px);
  position: relative;
}
.organigrama-container .card:has([data-organigrama-target=filtros]) {
  position: absolute;
  top: 1rem;
  right: 0;
  opacity: 0.3;
  transition: all 0.3s ease-in-out;
  z-index: 1000;
}
.organigrama-container .card:has([data-organigrama-target=filtros]):hover {
  opacity: 1;
}
.organigrama-container .card:has([data-organigrama-target=filtros]).collapsed {
  transform: translateX(calc(100% - 5rem));
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/process.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
.process-parent {
  margin: 0 2rem;
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
}
.process-parent .process-container {
  position: relative;
  width: 100%;
}
.process-parent .process-container .progress {
  margin: 1rem 0 !important;
}
.process-parent .process-container .indicator {
  --left: 60%;
  position: absolute;
  left: var(--left);
  top: 50%;
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem;
  background-color: var(--md-sys-color-surface-variant);
  border-radius: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all 250ms ease-in-out;
}
.process-parent .process-container .indicator.active {
  border: 2px solid var(--primary-color);
}
.process-parent .process-container .indicator:hover, .process-parent .process-container .indicator.completed {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.process-parent .process-container .indicator:hover {
  border: 1px solid var(--background-color-card);
}

.process-targets {
  position: relative;
}
.process-targets .process-target {
  width: 100%;
  display: none;
  position: absolute;
}
.process-targets .process-target.enter-left {
  display: block;
  animation: enterLeftAnimation 250ms ease-in-out forwards;
}
.process-targets .process-target.enter-right {
  display: block;
  animation: enterRightAnimation 250ms ease-in-out forwards;
}
.process-targets .process-target.exit-left {
  display: block;
  animation: exitLeftAnimation 250ms ease-in-out forwards;
}
.process-targets .process-target.exit-right {
  display: block;
  animation: exitRightAnimation 250ms ease-in-out forwards;
}

@keyframes enterLeftAnimation {
  0% {
    opacity: 0;
    transform: translateX(-50%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes exitLeftAnimation {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(50%);
  }
}
@keyframes enterRightAnimation {
  0% {
    opacity: 0;
    transform: translateX(50%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes exitRightAnimation {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%);
  }
}
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/sapbo-mv.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
.sapb1-multiview {
  padding: 1rem 1rem 0 1rem;
}

.show {
  display: flex;
  flex-direction: row;
  justify-items: flex-start;
  align-items: center;
  flex-grow: 1;
}
.show select {
  max-width: 100px;
  margin-right: 1rem;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/searchable-select.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
.searchable-select {
  position: relative;
}
.searchable-select .fake-select {
  user-select: none;
  cursor: pointer;
}
.searchable-select .carret {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 0;
  fill: var(--font-color-main);
  pointer-events: none;
}

.searchable-select-dropdown .search {
  padding: 5px;
}
.searchable-select-dropdown .search input {
  height: 50px !important;
}
.searchable-select-dropdown span {
  font-size: 16px;
  color: var(--primary-color);
  display: block;
  line-height: 22px;
  padding: 14px 16px;
}
.searchable-select-dropdown li {
  clear: both;
  color: var(--font-color-main);
  cursor: pointer;
  min-height: 50px;
  line-height: 1.5rem;
  width: 100%;
  text-align: left;
  position: relative;
}
.searchable-select-dropdown li.selected:not(.disabled) {
  background-color: var(--focus-color);
}
.searchable-select-dropdown li:focus, .searchable-select-dropdown li.focused, .searchable-select-dropdown li:hover {
  background-color: var(--hover-color);
}
.searchable-select-dropdown li:focus::after, .searchable-select-dropdown li.focused::after {
  content: "";
  position: absolute;
  top: 0;
  right: 1rem;
  bottom: 0;
  background-color: var(--primary-color);
  border-radius: 5px;
  width: 5px;
  height: 5px;
  margin: auto;
}
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/shortcut.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
#shortcut-trigger {
  position: fixed;
  bottom: 0;
  right: 35px;
  padding: 3px;
  z-index: 10;
}
#shortcut-trigger .btn {
  padding: 0 3px;
  height: 24px;
}

#shortcut-modal .input-field input {
  padding-top: 0 !important;
}
#shortcut-modal .modal-content {
  padding: 0 !important;
}
#shortcut-modal .shortcut-card {
  display: flex;
  flex-direction: row;
  padding: 1rem;
  align-items: center;
  cursor: pointer;
}
#shortcut-modal .shortcut-card .data {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
#shortcut-modal .shortcut-card .data .titulo {
  font-weight: bold;
  color: #222;
}
#shortcut-modal .shortcut-card:hover {
  background-color: var(--md-sys-color-primary);
  color: #eee;
}
#shortcut-modal .shortcut-card:hover .titulo {
  color: white;
}
#shortcut-modal .shortcut-card:hover .impersonate {
  color: #eee;
}
#shortcut-modal .shortcut-card.active {
  background-color: var(--md-sys-color-secondary);
  color: #eee;
}
#shortcut-modal .shortcut-card.active .titulo {
  color: white;
}
#shortcut-modal .shortcut-card:not(:last-child) {
  border-bottom: 1px #aaa solid;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/sidebar.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --sidebar-collapsed-width: 60px;
  --sidebar-expanded-width: 200px;
  --sidebar-background-color: #222233;
  --sidebar-text-color: #eee;
  --sidebar-hover-text-color: #B2B8F0;
}

.sidebar {
  overflow-x: hidden;
  transition: 250ms ease-in-out;
  padding: 0 !important;
  margin: 0 !important;
  width: var(--sidebar-expanded-width);
  height: 100svh;
  position: fixed;
  color: var(--sidebar-text-color);
  background-color: var(--sidebar-background-color);
}
.sidebar.collapsed {
  width: var(--sidebar-collapsed-width);
}
.sidebar.collapsed .logo {
  width: 0;
  padding: 0;
  margin: 0;
  opacity: 0;
  pointer-events: none;
  flex-grow: 0;
}
.sidebar.collapsed li.link a .text {
  width: 0;
  flex-grow: 0;
  padding: 0;
  opacity: 0;
}
.sidebar.collapsed .collapsible-header {
  color: transparent;
}
.sidebar.collapsed .collapsible-header::before {
  content: attr(data-siglas);
  color: var(--sidebar-text-color);
  font-size: 1.2rem;
  text-align: center;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 600;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
}
.sidebar.collapsed .collapsible-body li {
  padding-left: 0 !important;
}
.sidebar .collapsible {
  background-color: transparent;
  border: none;
  margin: 0 !important;
  box-shadow: none !important;
}
.sidebar .collapsible .collapsible-header {
  position: relative;
  background-color: transparent;
  border-bottom: none;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 0.8rem;
  user-select: none;
}
.sidebar .collapsible .collapsible-body {
  background-color: rgba(255, 255, 255, 0.03);
  border: none;
  padding: 0;
  position: relative;
}
.sidebar .collapsible .collapsible-body li {
  padding-left: 1rem;
}
.sidebar .collapsible .collapsible-body::before {
  position: absolute;
  left: 0.5rem;
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: var(--sidebar-text-color);
  margin: 0.5rem 0;
  top: -8px;
}
.sidebar.closed {
  width: 0 !important;
}
.sidebar li.header {
  list-style-type: none;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 12px 10px;
}
.sidebar li.header .logo {
  font-size: 2rem;
  flex-grow: 1;
  color: var(--sidebar-text-color);
}
.sidebar li.link a {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 12px 10px;
  color: var(--sidebar-text-color);
}
.sidebar li.link a:hover {
  color: var(--sidebar-hover-text-color);
}
.sidebar li.link a .material-icons {
  font-size: 1.5rem;
}
.sidebar li.link a .text {
  flex-grow: 1;
  padding-left: 1rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  font-size: 0.8rem;
}
.sidebar li.link.active {
  background-color: #333344;
}
.sidebar li.link.active .material-icons {
  color: var(--primary-color);
}
.sidebar img {
  height: 25px;
  width: auto;
}

#sidebar-toggle {
  width: 64px;
  height: 64px;
  justify-content: center;
}

main {
  transition: 250ms ease-in-out all;
}

main.sidebar-collapsed {
  margin-left: var(--sidebar-collapsed-width);
}

main.sidebar-expanded {
  margin-left: var(--sidebar-expanded-width);
}

main.sidebar-closed {
  margin-left: 0;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/text-truncator.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
.text-truncator {
  --max-width: 150px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: var(--max-width);
  display: inline-block;
  cursor: help;
}
/*!***************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/time-controller.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************/
.time-controller .toggle {
  cursor: pointer;
  text-decoration: underline;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/topbar.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --topbar-background-color: #363652;
}

.topbar {
  background-color: var(--topbar-background-color);
  padding: 0 1rem;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.topbar .breadcrumb {
  color: #aaaaaa;
}
.topbar .breadcrumbs {
  white-space: nowrap;
  overflow-x: auto;
}
@media only screen and (max-width: 600px) {
  .topbar {
    padding: 0 0;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/unidad-card.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
.unidad-card .card-image {
  background-color: var(--primary-color);
  padding: 1rem;
}
.unidad-card .card-image i {
  font-size: 3rem;
  color: var(--font-on-primary-color-main);
  opacity: 0.9;
}
.unidad-card .modelo, .unidad-card .tipo {
  margin-top: 0.5rem !important;
  font-size: 1.1rem;
}
.unidad-card .modelo strong, .unidad-card .tipo strong {
  color: var(--font-on-primary-color-medium);
}
.unidad-card .label {
  font-weight: bold;
  color: var(--font-color-main);
}
/*!********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/visita-cp-formulario.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************/
.visita-cp-formulario #ningunVisitante, .visita-cp-formulario #ningunaUnidad {
  padding: 1rem;
  border: 1px solid #aaa;
  background-color: #eee;
  border-radius: 10px;
  margin: 0;
}
.visita-cp-formulario #ningunVisitante #noPerson, .visita-cp-formulario #ningunaUnidad #noPerson {
  font-size: 3rem;
  color: #444;
}
.visita-cp-formulario #buscar-visitante, .visita-cp-formulario #buscar-unidad {
  min-width: 70%;
  background-color: #eee;
}
.visita-cp-formulario #buscar-visitante .row, .visita-cp-formulario #buscar-unidad .row {
  margin-top: 0;
  padding-bottom: 4rem;
  position: relative;
  grid-template-rows: max-content;
}
.visita-cp-formulario #buscar-visitante .message, .visita-cp-formulario #buscar-unidad .message {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.visita-cp-formulario #buscar-visitante .message i, .visita-cp-formulario #buscar-unidad .message i {
  font-size: 3rem;
  color: #444;
}
.visita-cp-formulario #buscar-visitante .modal-footer, .visita-cp-formulario #buscar-unidad .modal-footer {
  z-index: 10;
}
.visita-cp-formulario #buscar-visitante .modal-search, .visita-cp-formulario #buscar-unidad .modal-search {
  height: 60px;
  position: relative;
}
.visita-cp-formulario #buscar-visitante .modal-search input, .visita-cp-formulario #buscar-unidad .modal-search input {
  position: absolute;
  width: 100%;
  height: 60px;
  padding-left: 3rem;
  z-index: 1;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #ccc;
  background-color: white;
}
.visita-cp-formulario #buscar-visitante .modal-search .search, .visita-cp-formulario #buscar-unidad .modal-search .search {
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  z-index: 2;
  color: #444;
  pointer-events: none;
}
.visita-cp-formulario #buscar-visitante .modal-search .delete, .visita-cp-formulario #buscar-unidad .modal-search .delete {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  z-index: 2;
  color: #444;
  cursor: pointer;
}
.visita-cp-formulario #buscar-visitante .modal-search .delete:hover, .visita-cp-formulario #buscar-unidad .modal-search .delete:hover {
  color: var(--primary-color);
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/visitante-card.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************/
.visitante-card {
  position: relative;
  height: 140px;
  z-index: 2;
}
.visitante-card .img {
  position: absolute;
  width: 120px;
  height: 120px;
  background-color: white;
  border-radius: 100px;
  border: 1px solid #444;
  overflow: hidden;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
}
.visitante-card .img img {
  width: 100%;
}
.visitante-card .content {
  background-color: white;
  overflow: hidden;
  padding-left: 72px;
  position: absolute;
  right: 0;
  z-index: 2;
  width: calc(100% - 60px);
  top: 50%;
  transform: translateY(-50%);
}
.visitante-card .content p {
  text-transform: uppercase;
}
.visitante-card .content p:not(.doc-indicator) {
  margin: 1rem 0 8px 0 !important;
}
.visitante-card .separator {
  border-top: #ddd 1px solid;
}
.visitante-card.wiggle {
  animation: wiggle 700ms;
  animation-iteration-count: 2;
}
.visitante-card .doc-indicator {
  margin: 0 0 8px 0 !important;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

@keyframes wiggle {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}
/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  --md-source: #006495;
  /* primary */
  --md-ref-palette-primary0: #000000;
  --md-ref-palette-primary10: #001e30;
  --md-ref-palette-primary20: #003450;
  --md-ref-palette-primary25: #003f60;
  --md-ref-palette-primary30: #004b71;
  --md-ref-palette-primary35: #005783;
  --md-ref-palette-primary40: #006495;
  --md-ref-palette-primary50: #0f7eb8;
  --md-ref-palette-primary60: #3d98d4;
  --md-ref-palette-primary70: #5db3f0;
  --md-ref-palette-primary80: #8fcdff;
  --md-ref-palette-primary90: #cbe6ff;
  --md-ref-palette-primary95: #e6f2ff;
  --md-ref-palette-primary98: #f7f9ff;
  --md-ref-palette-primary99: #fcfcff;
  --md-ref-palette-primary100: #ffffff;
  /* secondary */
  --md-ref-palette-secondary0: #000000;
  --md-ref-palette-secondary10: #0d1d29;
  --md-ref-palette-secondary20: #22323f;
  --md-ref-palette-secondary25: #2d3d4b;
  --md-ref-palette-secondary30: #394856;
  --md-ref-palette-secondary35: #445462;
  --md-ref-palette-secondary40: #50606f;
  --md-ref-palette-secondary50: #697988;
  --md-ref-palette-secondary60: #8293a2;
  --md-ref-palette-secondary70: #9dadbd;
  --md-ref-palette-secondary80: #b8c8d9;
  --md-ref-palette-secondary90: #d4e4f6;
  --md-ref-palette-secondary95: #e6f2ff;
  --md-ref-palette-secondary98: #f7f9ff;
  --md-ref-palette-secondary99: #fcfcff;
  --md-ref-palette-secondary100: #ffffff;
  /* tertiary */
  --md-ref-palette-tertiary0: #000000;
  --md-ref-palette-tertiary10: #211634;
  --md-ref-palette-tertiary20: #362b4a;
  --md-ref-palette-tertiary25: #423656;
  --md-ref-palette-tertiary30: #4d4162;
  --md-ref-palette-tertiary35: #594c6e;
  --md-ref-palette-tertiary40: #66587b;
  --md-ref-palette-tertiary50: #7f7195;
  --md-ref-palette-tertiary60: #998ab0;
  --md-ref-palette-tertiary70: #b4a4cb;
  --md-ref-palette-tertiary80: #d0bfe7;
  --md-ref-palette-tertiary90: #ecdcff;
  --md-ref-palette-tertiary95: #f7edff;
  --md-ref-palette-tertiary98: #fef7ff;
  --md-ref-palette-tertiary99: #fffbff;
  --md-ref-palette-tertiary100: #ffffff;
  /* neutral */
  --md-ref-palette-neutral0: #000000;
  --md-ref-palette-neutral10: #1a1c1e;
  --md-ref-palette-neutral20: #2e3133;
  --md-ref-palette-neutral25: #3a3c3e;
  --md-ref-palette-neutral30: #454749;
  --md-ref-palette-neutral35: #515255;
  --md-ref-palette-neutral40: #5d5e61;
  --md-ref-palette-neutral50: #76777a;
  --md-ref-palette-neutral60: #8f9194;
  --md-ref-palette-neutral70: #aaabae;
  --md-ref-palette-neutral80: #c6c6c9;
  --md-ref-palette-neutral90: #e2e2e5;
  --md-ref-palette-neutral95: #f0f0f3;
  --md-ref-palette-neutral98: #f9f9fc;
  --md-ref-palette-neutral99: #fcfcff;
  --md-ref-palette-neutral100: #ffffff;
  /* neutral-variant */
  --md-ref-palette-neutral-variant0: #000000;
  --md-ref-palette-neutral-variant10: #161c22;
  --md-ref-palette-neutral-variant20: #2b3137;
  --md-ref-palette-neutral-variant25: #363c42;
  --md-ref-palette-neutral-variant30: #41474d;
  --md-ref-palette-neutral-variant35: #4d5359;
  --md-ref-palette-neutral-variant40: #595f65;
  --md-ref-palette-neutral-variant50: #72787e;
  --md-ref-palette-neutral-variant60: #8b9198;
  --md-ref-palette-neutral-variant70: #a6acb3;
  --md-ref-palette-neutral-variant80: #c1c7ce;
  --md-ref-palette-neutral-variant90: #dee3ea;
  --md-ref-palette-neutral-variant95: #ecf1f9;
  --md-ref-palette-neutral-variant98: #f7f9ff;
  --md-ref-palette-neutral-variant99: #fcfcff;
  --md-ref-palette-neutral-variant100: #ffffff;
  /* error */
  --md-ref-palette-error0: #000000;
  --md-ref-palette-error10: #410002;
  --md-ref-palette-error20: #690005;
  --md-ref-palette-error25: #7e0007;
  --md-ref-palette-error30: #93000a;
  --md-ref-palette-error35: #a80710;
  --md-ref-palette-error40: #ba1a1a;
  --md-ref-palette-error50: #de3730;
  --md-ref-palette-error60: #ff5449;
  --md-ref-palette-error70: #ff897d;
  --md-ref-palette-error80: #ffb4ab;
  --md-ref-palette-error90: #ffdad6;
  --md-ref-palette-error95: #ffedea;
  --md-ref-palette-error98: #fff8f7;
  --md-ref-palette-error99: #fffbff;
  --md-ref-palette-error100: #ffffff;
  /* light */
  --md-sys-color-primary-light: #006495;
  --md-sys-color-on-primary-light: #ffffff;
  --md-sys-color-primary-container-light: #cbe6ff;
  --md-sys-color-on-primary-container-light: #001e30;
  --md-sys-color-secondary-light: #50606f;
  --md-sys-color-on-secondary-light: #ffffff;
  --md-sys-color-secondary-container-light: #d4e4f6;
  --md-sys-color-on-secondary-container-light: #0d1d29;
  --md-sys-color-tertiary-light: #66587b;
  --md-sys-color-on-tertiary-light: #ffffff;
  --md-sys-color-tertiary-container-light: #ecdcff;
  --md-sys-color-on-tertiary-container-light: #211634;
  --md-sys-color-error-light: #ba1a1a;
  --md-sys-color-error-container-light: #ffdad6;
  --md-sys-color-on-error-light: #ffffff;
  --md-sys-color-on-error-container-light: #410002;
  --md-sys-color-background-light: #fcfcff;
  --md-sys-color-on-background-light: #1a1c1e;
  --md-sys-color-surface-light: #fcfcff;
  --md-sys-color-on-surface-light: #1a1c1e;
  --md-sys-color-surface-variant-light: #dee3ea;
  --md-sys-color-on-surface-variant-light: #41474d;
  --md-sys-color-outline-light: #72787e;
  --md-sys-color-inverse-on-surface-light: #f0f0f3;
  --md-sys-color-inverse-surface-light: #2e3133;
  --md-sys-color-inverse-primary-light: #8fcdff;
  --md-sys-color-shadow-light: #000000;
  --md-sys-color-surface-tint-light: #006495;
  --md-sys-color-outline-variant-light: #c1c7ce;
  --md-sys-color-scrim-light: #000000;
  /* dark */
  --md-sys-color-primary-dark: #8fcdff;
  --md-sys-color-on-primary-dark: #003450;
  --md-sys-color-primary-container-dark: #004b71;
  --md-sys-color-on-primary-container-dark: #cbe6ff;
  --md-sys-color-secondary-dark: #b8c8d9;
  --md-sys-color-on-secondary-dark: #22323f;
  --md-sys-color-secondary-container-dark: #394856;
  --md-sys-color-on-secondary-container-dark: #d4e4f6;
  --md-sys-color-tertiary-dark: #d0bfe7;
  --md-sys-color-on-tertiary-dark: #362b4a;
  --md-sys-color-tertiary-container-dark: #4d4162;
  --md-sys-color-on-tertiary-container-dark: #ecdcff;
  --md-sys-color-error-dark: #ffb4ab;
  --md-sys-color-error-container-dark: #93000a;
  --md-sys-color-on-error-dark: #690005;
  --md-sys-color-on-error-container-dark: #ffdad6;
  --md-sys-color-background-dark: #1a1c1e;
  --md-sys-color-on-background-dark: #e2e2e5;
  --md-sys-color-surface-dark: #1a1c1e;
  --md-sys-color-on-surface-dark: #e2e2e5;
  --md-sys-color-surface-variant-dark: #41474d;
  --md-sys-color-on-surface-variant-dark: #c1c7ce;
  --md-sys-color-outline-dark: #8b9198;
  --md-sys-color-inverse-on-surface-dark: #1a1c1e;
  --md-sys-color-inverse-surface-dark: #e2e2e5;
  --md-sys-color-inverse-primary-dark: #006495;
  --md-sys-color-shadow-dark: #000000;
  --md-sys-color-surface-tint-dark: #8fcdff;
  --md-sys-color-outline-variant-dark: #41474d;
  --md-sys-color-scrim-dark: #000000;
  /* display - large */
  --md-sys-typescale-display-large-font-family-name: Roboto;
  --md-sys-typescale-display-large-font-family-style: Regular;
  --md-sys-typescale-display-large-font-weight: 400px;
  --md-sys-typescale-display-large-font-size: 57px;
  --md-sys-typescale-display-large-line-height: 64px;
  --md-sys-typescale-display-large-letter-spacing: -0.25px;
  /* display - medium */
  --md-sys-typescale-display-medium-font-family-name: Roboto;
  --md-sys-typescale-display-medium-font-family-style: Regular;
  --md-sys-typescale-display-medium-font-weight: 400px;
  --md-sys-typescale-display-medium-font-size: 45px;
  --md-sys-typescale-display-medium-line-height: 52px;
  --md-sys-typescale-display-medium-letter-spacing: 0px;
  /* display - small */
  --md-sys-typescale-display-small-font-family-name: Roboto;
  --md-sys-typescale-display-small-font-family-style: Regular;
  --md-sys-typescale-display-small-font-weight: 400px;
  --md-sys-typescale-display-small-font-size: 36px;
  --md-sys-typescale-display-small-line-height: 44px;
  --md-sys-typescale-display-small-letter-spacing: 0px;
  /* headline - large */
  --md-sys-typescale-headline-large-font-family-name: Roboto;
  --md-sys-typescale-headline-large-font-family-style: Regular;
  --md-sys-typescale-headline-large-font-weight: 400px;
  --md-sys-typescale-headline-large-font-size: 32px;
  --md-sys-typescale-headline-large-line-height: 40px;
  --md-sys-typescale-headline-large-letter-spacing: 0px;
  /* headline - medium */
  --md-sys-typescale-headline-medium-font-family-name: Roboto;
  --md-sys-typescale-headline-medium-font-family-style: Regular;
  --md-sys-typescale-headline-medium-font-weight: 400px;
  --md-sys-typescale-headline-medium-font-size: 28px;
  --md-sys-typescale-headline-medium-line-height: 36px;
  --md-sys-typescale-headline-medium-letter-spacing: 0px;
  /* headline - small */
  --md-sys-typescale-headline-small-font-family-name: Roboto;
  --md-sys-typescale-headline-small-font-family-style: Regular;
  --md-sys-typescale-headline-small-font-weight: 400px;
  --md-sys-typescale-headline-small-font-size: 24px;
  --md-sys-typescale-headline-small-line-height: 32px;
  --md-sys-typescale-headline-small-letter-spacing: 0px;
  /* body - large */
  --md-sys-typescale-body-large-font-family-name: Roboto;
  --md-sys-typescale-body-large-font-family-style: Regular;
  --md-sys-typescale-body-large-font-weight: 400px;
  --md-sys-typescale-body-large-font-size: 16px;
  --md-sys-typescale-body-large-line-height: 24px;
  --md-sys-typescale-body-large-letter-spacing: 0.50px;
  /* body - medium */
  --md-sys-typescale-body-medium-font-family-name: Roboto;
  --md-sys-typescale-body-medium-font-family-style: Regular;
  --md-sys-typescale-body-medium-font-weight: 400px;
  --md-sys-typescale-body-medium-font-size: 14px;
  --md-sys-typescale-body-medium-line-height: 20px;
  --md-sys-typescale-body-medium-letter-spacing: 0.25px;
  /* body - small */
  --md-sys-typescale-body-small-font-family-name: Roboto;
  --md-sys-typescale-body-small-font-family-style: Regular;
  --md-sys-typescale-body-small-font-weight: 400px;
  --md-sys-typescale-body-small-font-size: 12px;
  --md-sys-typescale-body-small-line-height: 16px;
  --md-sys-typescale-body-small-letter-spacing: 0.40px;
  /* label - large */
  --md-sys-typescale-label-large-font-family-name: Roboto;
  --md-sys-typescale-label-large-font-family-style: Medium;
  --md-sys-typescale-label-large-font-weight: 500px;
  --md-sys-typescale-label-large-font-size: 14px;
  --md-sys-typescale-label-large-line-height: 20px;
  --md-sys-typescale-label-large-letter-spacing: 0.10px;
  /* label - medium */
  --md-sys-typescale-label-medium-font-family-name: Roboto;
  --md-sys-typescale-label-medium-font-family-style: Medium;
  --md-sys-typescale-label-medium-font-weight: 500px;
  --md-sys-typescale-label-medium-font-size: 12px;
  --md-sys-typescale-label-medium-line-height: 16px;
  --md-sys-typescale-label-medium-letter-spacing: 0.50px;
  /* label - small */
  --md-sys-typescale-label-small-font-family-name: Roboto;
  --md-sys-typescale-label-small-font-family-style: Medium;
  --md-sys-typescale-label-small-font-weight: 500px;
  --md-sys-typescale-label-small-font-size: 11px;
  --md-sys-typescale-label-small-line-height: 16px;
  --md-sys-typescale-label-small-letter-spacing: 0.50px;
  /* title - large */
  --md-sys-typescale-title-large-font-family-name: Roboto;
  --md-sys-typescale-title-large-font-family-style: Regular;
  --md-sys-typescale-title-large-font-weight: 400px;
  --md-sys-typescale-title-large-font-size: 22px;
  --md-sys-typescale-title-large-line-height: 28px;
  --md-sys-typescale-title-large-letter-spacing: 0px;
  /* title - medium */
  --md-sys-typescale-title-medium-font-family-name: Roboto;
  --md-sys-typescale-title-medium-font-family-style: Medium;
  --md-sys-typescale-title-medium-font-weight: 500px;
  --md-sys-typescale-title-medium-font-size: 16px;
  --md-sys-typescale-title-medium-line-height: 24px;
  --md-sys-typescale-title-medium-letter-spacing: 0.15px;
  /* title - small */
  --md-sys-typescale-title-small-font-family-name: Roboto;
  --md-sys-typescale-title-small-font-family-style: Medium;
  --md-sys-typescale-title-small-font-weight: 500px;
  --md-sys-typescale-title-small-font-size: 14px;
  --md-sys-typescale-title-small-line-height: 20px;
  --md-sys-typescale-title-small-letter-spacing: 0.10px;
}

.primary {
  background-color: var(--md-sys-color-primary);
}

.primary-text {
  color: var(--md-sys-color-primary);
}

.on-primary {
  background-color: var(--md-sys-color-on-primary);
}

.on-primary-text {
  color: var(--md-sys-color-on-primary);
}

.primary-container {
  background-color: var(--md-sys-color-primary-container);
}

.primary-container-text {
  color: var(--md-sys-color-primary-container);
}

.on-primary-container {
  background-color: var(--md-sys-color-on-primary-container);
}

.on-primary-container-text {
  color: var(--md-sys-color-on-primary-container);
}

.secondary {
  background-color: var(--md-sys-color-secondary);
}

.secondary-text {
  color: var(--md-sys-color-secondary);
}

.on-secondary {
  background-color: var(--md-sys-color-on-secondary);
}

.on-secondary-text {
  color: var(--md-sys-color-on-secondary);
}

.secondary-container {
  background-color: var(--md-sys-color-secondary-container);
}

.secondary-container-text {
  color: var(--md-sys-color-secondary-container);
}

.on-secondary-container {
  background-color: var(--md-sys-color-on-secondary-container);
}

.on-secondary-container-text {
  color: var(--md-sys-color-on-secondary-container);
}

.tertiary {
  background-color: var(--md-sys-color-tertiary);
}

.tertiary-text {
  color: var(--md-sys-color-tertiary);
}

.on-tertiary {
  background-color: var(--md-sys-color-on-tertiary);
}

.on-tertiary-text {
  color: var(--md-sys-color-on-tertiary);
}

.tertiary-container {
  background-color: var(--md-sys-color-tertiary-container);
}

.tertiary-container-text {
  color: var(--md-sys-color-tertiary-container);
}

.on-tertiary-container {
  background-color: var(--md-sys-color-on-tertiary-container);
}

.on-tertiary-container-text {
  color: var(--md-sys-color-on-tertiary-container);
}

.error {
  background-color: var(--md-sys-color-error);
}

.error-text {
  color: var(--md-sys-color-error);
}

.on-error {
  background-color: var(--md-sys-color-on-error);
}

.on-error-text {
  color: var(--md-sys-color-on-error);
}

.error-container {
  background-color: var(--md-sys-color-error-container);
}

.error-container-text {
  color: var(--md-sys-color-error-container);
}

.on-error-container {
  background-color: var(--md-sys-color-on-error-container);
}

.on-error-container-text {
  color: var(--md-sys-color-on-error-container);
}

.background {
  background-color: var(--md-sys-color-background);
}

.background-text {
  color: var(--md-sys-color-background);
}

.on-background {
  background-color: var(--md-sys-color-on-background);
}

.on-background-text {
  color: var(--md-sys-color-on-background);
}

.surface, .switch label input[type=checkbox]:checked + .lever:after {
  background-color: var(--md-sys-color-surface);
}

.surface-text {
  color: var(--md-sys-color-surface);
}

.on-surface {
  background-color: var(--md-sys-color-on-surface);
}

.on-surface-text {
  color: var(--md-sys-color-on-surface);
}

.surface-variant, .progress, input[type=range]::-moz-range-track, input[type=range]::-webkit-slider-runnable-track, .switch label .lever {
  background-color: var(--md-sys-color-surface-variant);
}

.surface-variant-text {
  color: var(--md-sys-color-surface-variant);
}

.on-surface-variant {
  background-color: var(--md-sys-color-on-surface-variant);
}

.on-surface-variant-text, .chip > .material-icons {
  color: var(--md-sys-color-on-surface-variant);
}

.outline, .switch label .lever:after {
  background-color: var(--md-sys-color-outline);
}

.outline-text {
  color: var(--md-sys-color-outline);
}

.inverse-on-surface {
  background-color: var(--md-sys-color-inverse-on-surface);
}

.inverse-on-surface-text {
  color: var(--md-sys-color-inverse-on-surface);
}

.inverse-surface {
  background-color: var(--md-sys-color-inverse-surface);
}

.inverse-surface-text {
  color: var(--md-sys-color-inverse-surface);
}

.inverse-primary {
  background-color: var(--md-sys-color-inverse-primary);
}

.inverse-primary-text {
  color: var(--md-sys-color-inverse-primary);
}

.shadow {
  background-color: var(--md-sys-color-shadow);
}

.shadow-text {
  color: var(--md-sys-color-shadow);
}

.surface-tint {
  background-color: var(--md-sys-color-surface-tint);
}

.surface-tint-text {
  color: var(--md-sys-color-surface-tint);
}

.outline-variant {
  background-color: var(--md-sys-color-outline-variant);
}

.outline-variant-text {
  color: var(--md-sys-color-outline-variant);
}

.scrim {
  background-color: var(--md-sys-color-scrim);
}

.scrim-text {
  color: var(--md-sys-color-scrim);
}

.display-large {
  font-family: var(--md-sys-typescale-display-large-font-family-name);
  font-style: var(--md-sys-typescale-display-large-font-family-style);
  font-weight: var(--md-sys-typescale-display-large-font-weight);
  font-size: var(--md-sys-typescale-display-large-font-size);
  letter-spacing: var(--md-sys-typescale-display-large-tracking);
  line-height: var(--md-sys-typescale-display-large-height);
  text-transform: var(--md-sys-typescale-display-large-text-transform);
  text-decoration: var(--md-sys-typescale-display-large-text-decoration);
}

.display-medium {
  font-family: var(--md-sys-typescale-display-medium-font-family-name);
  font-style: var(--md-sys-typescale-display-medium-font-family-style);
  font-weight: var(--md-sys-typescale-display-medium-font-weight);
  font-size: var(--md-sys-typescale-display-medium-font-size);
  letter-spacing: var(--md-sys-typescale-display-medium-tracking);
  line-height: var(--md-sys-typescale-display-medium-height);
  text-transform: var(--md-sys-typescale-display-medium-text-transform);
  text-decoration: var(--md-sys-typescale-display-medium-text-decoration);
}

.display-small {
  font-family: var(--md-sys-typescale-display-small-font-family-name);
  font-style: var(--md-sys-typescale-display-small-font-family-style);
  font-weight: var(--md-sys-typescale-display-small-font-weight);
  font-size: var(--md-sys-typescale-display-small-font-size);
  letter-spacing: var(--md-sys-typescale-display-small-tracking);
  line-height: var(--md-sys-typescale-display-small-height);
  text-transform: var(--md-sys-typescale-display-small-text-transform);
  text-decoration: var(--md-sys-typescale-display-small-text-decoration);
}

.headline-large {
  font-family: var(--md-sys-typescale-headline-large-font-family-name);
  font-style: var(--md-sys-typescale-headline-large-font-family-style);
  font-weight: var(--md-sys-typescale-headline-large-font-weight);
  font-size: var(--md-sys-typescale-headline-large-font-size);
  letter-spacing: var(--md-sys-typescale-headline-large-tracking);
  line-height: var(--md-sys-typescale-headline-large-height);
  text-transform: var(--md-sys-typescale-headline-large-text-transform);
  text-decoration: var(--md-sys-typescale-headline-large-text-decoration);
}

.headline-medium {
  font-family: var(--md-sys-typescale-headline-medium-font-family-name);
  font-style: var(--md-sys-typescale-headline-medium-font-family-style);
  font-weight: var(--md-sys-typescale-headline-medium-font-weight);
  font-size: var(--md-sys-typescale-headline-medium-font-size);
  letter-spacing: var(--md-sys-typescale-headline-medium-tracking);
  line-height: var(--md-sys-typescale-headline-medium-height);
  text-transform: var(--md-sys-typescale-headline-medium-text-transform);
  text-decoration: var(--md-sys-typescale-headline-medium-text-decoration);
}

.headline-small {
  font-family: var(--md-sys-typescale-headline-small-font-family-name);
  font-style: var(--md-sys-typescale-headline-small-font-family-style);
  font-weight: var(--md-sys-typescale-headline-small-font-weight);
  font-size: var(--md-sys-typescale-headline-small-font-size);
  letter-spacing: var(--md-sys-typescale-headline-small-tracking);
  line-height: var(--md-sys-typescale-headline-small-height);
  text-transform: var(--md-sys-typescale-headline-small-text-transform);
  text-decoration: var(--md-sys-typescale-headline-small-text-decoration);
}

.body-large {
  font-family: var(--md-sys-typescale-body-large-font-family-name);
  font-style: var(--md-sys-typescale-body-large-font-family-style);
  font-weight: var(--md-sys-typescale-body-large-font-weight);
  font-size: var(--md-sys-typescale-body-large-font-size);
  letter-spacing: var(--md-sys-typescale-body-large-tracking);
  line-height: var(--md-sys-typescale-body-large-height);
  text-transform: var(--md-sys-typescale-body-large-text-transform);
  text-decoration: var(--md-sys-typescale-body-large-text-decoration);
}

.body-medium {
  font-family: var(--md-sys-typescale-body-medium-font-family-name);
  font-style: var(--md-sys-typescale-body-medium-font-family-style);
  font-weight: var(--md-sys-typescale-body-medium-font-weight);
  font-size: var(--md-sys-typescale-body-medium-font-size);
  letter-spacing: var(--md-sys-typescale-body-medium-tracking);
  line-height: var(--md-sys-typescale-body-medium-height);
  text-transform: var(--md-sys-typescale-body-medium-text-transform);
  text-decoration: var(--md-sys-typescale-body-medium-text-decoration);
}

.body-small {
  font-family: var(--md-sys-typescale-body-small-font-family-name);
  font-style: var(--md-sys-typescale-body-small-font-family-style);
  font-weight: var(--md-sys-typescale-body-small-font-weight);
  font-size: var(--md-sys-typescale-body-small-font-size);
  letter-spacing: var(--md-sys-typescale-body-small-tracking);
  line-height: var(--md-sys-typescale-body-small-height);
  text-transform: var(--md-sys-typescale-body-small-text-transform);
  text-decoration: var(--md-sys-typescale-body-small-text-decoration);
}

.label-large {
  font-family: var(--md-sys-typescale-label-large-font-family-name);
  font-style: var(--md-sys-typescale-label-large-font-family-style);
  font-weight: var(--md-sys-typescale-label-large-font-weight);
  font-size: var(--md-sys-typescale-label-large-font-size);
  letter-spacing: var(--md-sys-typescale-label-large-tracking);
  line-height: var(--md-sys-typescale-label-large-height);
  text-transform: var(--md-sys-typescale-label-large-text-transform);
  text-decoration: var(--md-sys-typescale-label-large-text-decoration);
}

.label-medium {
  font-family: var(--md-sys-typescale-label-medium-font-family-name);
  font-style: var(--md-sys-typescale-label-medium-font-family-style);
  font-weight: var(--md-sys-typescale-label-medium-font-weight);
  font-size: var(--md-sys-typescale-label-medium-font-size);
  letter-spacing: var(--md-sys-typescale-label-medium-tracking);
  line-height: var(--md-sys-typescale-label-medium-height);
  text-transform: var(--md-sys-typescale-label-medium-text-transform);
  text-decoration: var(--md-sys-typescale-label-medium-text-decoration);
}

.label-small {
  font-family: var(--md-sys-typescale-label-small-font-family-name);
  font-style: var(--md-sys-typescale-label-small-font-family-style);
  font-weight: var(--md-sys-typescale-label-small-font-weight);
  font-size: var(--md-sys-typescale-label-small-font-size);
  letter-spacing: var(--md-sys-typescale-label-small-tracking);
  line-height: var(--md-sys-typescale-label-small-height);
  text-transform: var(--md-sys-typescale-label-small-text-transform);
  text-decoration: var(--md-sys-typescale-label-small-text-decoration);
}

.title-large {
  font-family: var(--md-sys-typescale-title-large-font-family-name);
  font-style: var(--md-sys-typescale-title-large-font-family-style);
  font-weight: var(--md-sys-typescale-title-large-font-weight);
  font-size: var(--md-sys-typescale-title-large-font-size);
  letter-spacing: var(--md-sys-typescale-title-large-tracking);
  line-height: var(--md-sys-typescale-title-large-height);
  text-transform: var(--md-sys-typescale-title-large-text-transform);
  text-decoration: var(--md-sys-typescale-title-large-text-decoration);
}

.title-medium {
  font-family: var(--md-sys-typescale-title-medium-font-family-name);
  font-style: var(--md-sys-typescale-title-medium-font-family-style);
  font-weight: var(--md-sys-typescale-title-medium-font-weight);
  font-size: var(--md-sys-typescale-title-medium-font-size);
  letter-spacing: var(--md-sys-typescale-title-medium-tracking);
  line-height: var(--md-sys-typescale-title-medium-height);
  text-transform: var(--md-sys-typescale-title-medium-text-transform);
  text-decoration: var(--md-sys-typescale-title-medium-text-decoration);
}

.title-small {
  font-family: var(--md-sys-typescale-title-small-font-family-name);
  font-style: var(--md-sys-typescale-title-small-font-family-style);
  font-weight: var(--md-sys-typescale-title-small-font-weight);
  font-size: var(--md-sys-typescale-title-small-font-size);
  letter-spacing: var(--md-sys-typescale-title-small-tracking);
  line-height: var(--md-sys-typescale-title-small-height);
  text-transform: var(--md-sys-typescale-title-small-text-transform);
  text-decoration: var(--md-sys-typescale-title-small-text-decoration);
}

:root {
  --md-sys-color-primary: var(--md-sys-color-primary-light);
  --md-sys-color-on-primary: var(--md-sys-color-on-primary-light);
  --md-sys-color-primary-container: var(--md-sys-color-primary-container-light);
  --md-sys-color-on-primary-container: var(--md-sys-color-on-primary-container-light);
  --md-sys-color-secondary: var(--md-sys-color-secondary-light);
  --md-sys-color-on-secondary: var(--md-sys-color-on-secondary-light);
  --md-sys-color-secondary-container: var(--md-sys-color-secondary-container-light);
  --md-sys-color-on-secondary-container: var(--md-sys-color-on-secondary-container-light);
  --md-sys-color-tertiary: var(--md-sys-color-tertiary-light);
  --md-sys-color-on-tertiary: var(--md-sys-color-on-tertiary-light);
  --md-sys-color-tertiary-container: var(--md-sys-color-tertiary-container-light);
  --md-sys-color-on-tertiary-container: var(--md-sys-color-on-tertiary-container-light);
  --md-sys-color-error: var(--md-sys-color-error-light);
  --md-sys-color-on-error: var(--md-sys-color-on-error-light);
  --md-sys-color-error-container: var(--md-sys-color-error-container-light);
  --md-sys-color-on-error-container: var(--md-sys-color-on-error-container-light);
  --md-sys-color-outline: var(--md-sys-color-outline-light);
  --md-sys-color-background: var(--md-sys-color-background-light);
  --md-sys-color-on-background: var(--md-sys-color-on-background-light);
  --md-sys-color-surface: var(--md-sys-color-surface-light);
  --md-sys-color-on-surface: var(--md-sys-color-on-surface-light);
  --md-sys-color-surface-variant: var(--md-sys-color-surface-variant-light);
  --md-sys-color-on-surface-variant: var(--md-sys-color-on-surface-variant-light);
  --md-sys-color-inverse-surface: var(--md-sys-color-inverse-surface-light);
  --md-sys-color-inverse-on-surface: var(--md-sys-color-inverse-on-surface-light);
  --md-sys-color-inverse-primary: var(--md-sys-color-inverse-primary-light);
  --md-sys-color-shadow: var(--md-sys-color-shadow-light);
  --md-sys-color-surface-tint: var(--md-sys-color-surface-tint-light);
  --md-sys-color-outline-variant: var(--md-sys-color-outline-variant-light);
  --md-sys-color-scrim: var(--md-sys-color-scrim-light);
}

:root[theme=dark] {
  --md-sys-color-primary: var(--md-sys-color-primary-dark);
  --md-sys-color-on-primary: var(--md-sys-color-on-primary-dark);
  --md-sys-color-primary-container: var(--md-sys-color-primary-container-dark);
  --md-sys-color-on-primary-container: var(--md-sys-color-on-primary-container-dark);
  --md-sys-color-secondary: var(--md-sys-color-secondary-dark);
  --md-sys-color-on-secondary: var(--md-sys-color-on-secondary-dark);
  --md-sys-color-secondary-container: var(--md-sys-color-secondary-container-dark);
  --md-sys-color-on-secondary-container: var(--md-sys-color-on-secondary-container-dark);
  --md-sys-color-tertiary: var(--md-sys-color-tertiary-dark);
  --md-sys-color-on-tertiary: var(--md-sys-color-on-tertiary-dark);
  --md-sys-color-tertiary-container: var(--md-sys-color-tertiary-container-dark);
  --md-sys-color-on-tertiary-container: var(--md-sys-color-on-tertiary-container-dark);
  --md-sys-color-error: var(--md-sys-color-error-dark);
  --md-sys-color-on-error: var(--md-sys-color-on-error-dark);
  --md-sys-color-error-container: var(--md-sys-color-error-container-dark);
  --md-sys-color-on-error-container: var(--md-sys-color-on-error-container-dark);
  --md-sys-color-outline: var(--md-sys-color-outline-dark);
  --md-sys-color-background: var(--md-sys-color-background-dark);
  --md-sys-color-on-background: var(--md-sys-color-on-background-dark);
  --md-sys-color-surface: var(--md-sys-color-surface-dark);
  --md-sys-color-on-surface: var(--md-sys-color-on-surface-dark);
  --md-sys-color-surface-variant: var(--md-sys-color-surface-variant-dark);
  --md-sys-color-on-surface-variant: var(--md-sys-color-on-surface-variant-dark);
  --md-sys-color-inverse-surface: var(--md-sys-color-inverse-surface-dark);
  --md-sys-color-inverse-on-surface: var(--md-sys-color-inverse-on-surface-dark);
  --md-sys-color-inverse-primary: var(--md-sys-color-inverse-primary-dark);
  --md-sys-color-shadow: var(--md-sys-color-shadow-dark);
  --md-sys-color-surface-tint: var(--md-sys-color-surface-tint-dark);
  --md-sys-color-outline-variant: var(--md-sys-color-outline-variant-dark);
  --md-sys-color-scrim: var(--md-sys-color-scrim-dark);
}

:root, :host {
  --surface-color: var(--md-sys-color-surface);
  --background-color: var(--md-sys-color-background);
  --font-color-main: var(--md-sys-color-on-background);
  --font-color-medium: var(--md-sys-color-on-surface-variant);
  --font-color-disabled: var(--md-sys-color-on-surface);
  --font-on-primary-color-main: var(--md-sys-color-on-primary);
  --font-on-primary-color-dark-main: var(--md-sys-color-on-primary-dark);
  --font-on-primary-color-dark-medium: var(--md-sys-color-on-surface-variant-dark);
  --font-on-primary-color-medium: var(--md-sys-color-on-surface-variant);
  --font-on-primary-color-disabled: rgba(255, 255, 255, 0.38);
  --font-on-secondary-color-main: var(--md-sys-color-on-secondary);
  --hover-color: rgba(0, 0, 0, 0.04);
  --focus-color: rgba(0, 0, 0, 0.12);
  --focus-color-solid: #E0E0E0;
  --background-color-disabled: rgba(0, 0, 0, 0.12);
  --background-color-level-4dp: rgba(0, 0, 0, 0.09);
  --background-color-level-16dp-solid: var(--surface-color);
  --background-color-slight-emphasis: rgba(0, 0, 0, 0.08);
  --background-color-card: var(--surface-color);
  --tooltip-background-color: #313033;
  --tooltip-font-color: rgba(255, 255, 255, 0.77);
  --separator-color: #DDDDDD; /* borders between components */
  --error-color: #F44336;
  --slider-track-color: var(--md-sys-color-shadow-light);
  --switch-thumb-off-color: var(--md-ref-palette-primary100);
  --carousel-indicator-color: rgba(255, 255, 255, 0.45);
  --carousel-indicator-active-color: var(--md-ref-palette-primary100);
  --primary-color: var(--md-sys-color-primary);
  --primary-color-dark: var(--md-sys-color-primary-dark);
  --primary-color-raised-hover-solid: var(--md-ref-palette-primary70);
  --primary-color-raised-focus-solid: var(--md-ref-palette-primary80);
  --primary-color-font-medium-color: rgba(var(--primary-color-numeric), 0.7);
  --primary-color-font-disabled-color: rgba(var(--primary-color-numeric), 0.4);
  --primary-color-hover-opaque: rgba(var(--primary-color-numeric), 0.06);
  --primary-color-focus-opaque: rgba(var(--primary-color-numeric), 0.18);
  --secondary-color: var(--md-sys-color-secondary);
  --secondary-color-hover-solid: var(--md-ref-palette-secondary70);
  --secondary-color-focus-solid: var(--md-ref-palette-secondary80);
  --secondary-container-color: var(--md-sys-color-secondary-container);
  --font-on-secondary-container-color: var(--md-sys-color-on-secondary-container);
  --md_sys_color_on-surface: 28, 27, 31;
}

:root[theme=dark] {
  --font-on-primary-color-disabled: rgba(0, 0, 0, 0.38);
  --hover-color: rgba(255, 255, 255, 0.04);
  --focus-color: rgba(255, 255, 255, 0.12);
  --focus-color-solid: #424242;
  --background-color-disabled: rgba(255, 255, 255, 0.12);
  --background-color-level-4dp: rgba(255, 255, 255, 0.09);
  --background-color-slight-emphasis: rgba(255, 255, 255, 0.05);
  --separator-color: #424242; /* borders between components */
  --error-color: #CF6679;
  --switch-thumb-off-color: #bababa;
  --md_sys_color_on-surface: 230, 225, 229;
}

.materialize-red {
  background-color: #e51c23 !important;
}

.materialize-red-text {
  color: #e51c23 !important;
}

.materialize-red.lighten-5 {
  background-color: #fdeaeb !important;
}

.materialize-red-text.text-lighten-5 {
  color: #fdeaeb !important;
}

.materialize-red.lighten-4 {
  background-color: #f8c1c3 !important;
}

.materialize-red-text.text-lighten-4 {
  color: #f8c1c3 !important;
}

.materialize-red.lighten-3 {
  background-color: #f3989b !important;
}

.materialize-red-text.text-lighten-3 {
  color: #f3989b !important;
}

.materialize-red.lighten-2 {
  background-color: #ee6e73 !important;
}

.materialize-red-text.text-lighten-2 {
  color: #ee6e73 !important;
}

.materialize-red.lighten-1 {
  background-color: #ea454b !important;
}

.materialize-red-text.text-lighten-1 {
  color: #ea454b !important;
}

.materialize-red.darken-1 {
  background-color: #d0181e !important;
}

.materialize-red-text.text-darken-1 {
  color: #d0181e !important;
}

.materialize-red.darken-2 {
  background-color: #b9151b !important;
}

.materialize-red-text.text-darken-2 {
  color: #b9151b !important;
}

.materialize-red.darken-3 {
  background-color: #a21318 !important;
}

.materialize-red-text.text-darken-3 {
  color: #a21318 !important;
}

.materialize-red.darken-4 {
  background-color: #8b1014 !important;
}

.materialize-red-text.text-darken-4 {
  color: #8b1014 !important;
}

.red {
  background-color: #F44336 !important;
}

.red-text {
  color: #F44336 !important;
}

.red.lighten-5 {
  background-color: #FFEBEE !important;
}

.red-text.text-lighten-5 {
  color: #FFEBEE !important;
}

.red.lighten-4 {
  background-color: #FFCDD2 !important;
}

.red-text.text-lighten-4 {
  color: #FFCDD2 !important;
}

.red.lighten-3 {
  background-color: #EF9A9A !important;
}

.red-text.text-lighten-3 {
  color: #EF9A9A !important;
}

.red.lighten-2 {
  background-color: #E57373 !important;
}

.red-text.text-lighten-2 {
  color: #E57373 !important;
}

.red.lighten-1 {
  background-color: #EF5350 !important;
}

.red-text.text-lighten-1 {
  color: #EF5350 !important;
}

.red.darken-1 {
  background-color: #E53935 !important;
}

.red-text.text-darken-1 {
  color: #E53935 !important;
}

.red.darken-2 {
  background-color: #D32F2F !important;
}

.red-text.text-darken-2 {
  color: #D32F2F !important;
}

.red.darken-3 {
  background-color: #C62828 !important;
}

.red-text.text-darken-3 {
  color: #C62828 !important;
}

.red.darken-4 {
  background-color: #B71C1C !important;
}

.red-text.text-darken-4 {
  color: #B71C1C !important;
}

.red.accent-1 {
  background-color: #FF8A80 !important;
}

.red-text.text-accent-1 {
  color: #FF8A80 !important;
}

.red.accent-2 {
  background-color: #FF5252 !important;
}

.red-text.text-accent-2 {
  color: #FF5252 !important;
}

.red.accent-3 {
  background-color: #FF1744 !important;
}

.red-text.text-accent-3 {
  color: #FF1744 !important;
}

.red.accent-4 {
  background-color: #D50000 !important;
}

.red-text.text-accent-4 {
  color: #D50000 !important;
}

.pink {
  background-color: #e91e63 !important;
}

.pink-text {
  color: #e91e63 !important;
}

.pink.lighten-5 {
  background-color: #fce4ec !important;
}

.pink-text.text-lighten-5 {
  color: #fce4ec !important;
}

.pink.lighten-4 {
  background-color: #f8bbd0 !important;
}

.pink-text.text-lighten-4 {
  color: #f8bbd0 !important;
}

.pink.lighten-3 {
  background-color: #f48fb1 !important;
}

.pink-text.text-lighten-3 {
  color: #f48fb1 !important;
}

.pink.lighten-2 {
  background-color: #f06292 !important;
}

.pink-text.text-lighten-2 {
  color: #f06292 !important;
}

.pink.lighten-1 {
  background-color: #ec407a !important;
}

.pink-text.text-lighten-1 {
  color: #ec407a !important;
}

.pink.darken-1 {
  background-color: #d81b60 !important;
}

.pink-text.text-darken-1 {
  color: #d81b60 !important;
}

.pink.darken-2 {
  background-color: #c2185b !important;
}

.pink-text.text-darken-2 {
  color: #c2185b !important;
}

.pink.darken-3 {
  background-color: #ad1457 !important;
}

.pink-text.text-darken-3 {
  color: #ad1457 !important;
}

.pink.darken-4 {
  background-color: #880e4f !important;
}

.pink-text.text-darken-4 {
  color: #880e4f !important;
}

.pink.accent-1 {
  background-color: #ff80ab !important;
}

.pink-text.text-accent-1 {
  color: #ff80ab !important;
}

.pink.accent-2 {
  background-color: #ff4081 !important;
}

.pink-text.text-accent-2 {
  color: #ff4081 !important;
}

.pink.accent-3 {
  background-color: #f50057 !important;
}

.pink-text.text-accent-3 {
  color: #f50057 !important;
}

.pink.accent-4 {
  background-color: #c51162 !important;
}

.pink-text.text-accent-4 {
  color: #c51162 !important;
}

.purple {
  background-color: #9c27b0 !important;
}

.purple-text {
  color: #9c27b0 !important;
}

.purple.lighten-5 {
  background-color: #f3e5f5 !important;
}

.purple-text.text-lighten-5 {
  color: #f3e5f5 !important;
}

.purple.lighten-4 {
  background-color: #e1bee7 !important;
}

.purple-text.text-lighten-4 {
  color: #e1bee7 !important;
}

.purple.lighten-3 {
  background-color: #ce93d8 !important;
}

.purple-text.text-lighten-3 {
  color: #ce93d8 !important;
}

.purple.lighten-2 {
  background-color: #ba68c8 !important;
}

.purple-text.text-lighten-2 {
  color: #ba68c8 !important;
}

.purple.lighten-1 {
  background-color: #ab47bc !important;
}

.purple-text.text-lighten-1 {
  color: #ab47bc !important;
}

.purple.darken-1 {
  background-color: #8e24aa !important;
}

.purple-text.text-darken-1 {
  color: #8e24aa !important;
}

.purple.darken-2 {
  background-color: #7b1fa2 !important;
}

.purple-text.text-darken-2 {
  color: #7b1fa2 !important;
}

.purple.darken-3 {
  background-color: #6a1b9a !important;
}

.purple-text.text-darken-3 {
  color: #6a1b9a !important;
}

.purple.darken-4 {
  background-color: #4a148c !important;
}

.purple-text.text-darken-4 {
  color: #4a148c !important;
}

.purple.accent-1 {
  background-color: #ea80fc !important;
}

.purple-text.text-accent-1 {
  color: #ea80fc !important;
}

.purple.accent-2 {
  background-color: #e040fb !important;
}

.purple-text.text-accent-2 {
  color: #e040fb !important;
}

.purple.accent-3 {
  background-color: #d500f9 !important;
}

.purple-text.text-accent-3 {
  color: #d500f9 !important;
}

.purple.accent-4 {
  background-color: #aa00ff !important;
}

.purple-text.text-accent-4 {
  color: #aa00ff !important;
}

.deep-purple {
  background-color: #673ab7 !important;
}

.deep-purple-text {
  color: #673ab7 !important;
}

.deep-purple.lighten-5 {
  background-color: #ede7f6 !important;
}

.deep-purple-text.text-lighten-5 {
  color: #ede7f6 !important;
}

.deep-purple.lighten-4 {
  background-color: #d1c4e9 !important;
}

.deep-purple-text.text-lighten-4 {
  color: #d1c4e9 !important;
}

.deep-purple.lighten-3 {
  background-color: #b39ddb !important;
}

.deep-purple-text.text-lighten-3 {
  color: #b39ddb !important;
}

.deep-purple.lighten-2 {
  background-color: #9575cd !important;
}

.deep-purple-text.text-lighten-2 {
  color: #9575cd !important;
}

.deep-purple.lighten-1 {
  background-color: #7e57c2 !important;
}

.deep-purple-text.text-lighten-1 {
  color: #7e57c2 !important;
}

.deep-purple.darken-1 {
  background-color: #5e35b1 !important;
}

.deep-purple-text.text-darken-1 {
  color: #5e35b1 !important;
}

.deep-purple.darken-2 {
  background-color: #512da8 !important;
}

.deep-purple-text.text-darken-2 {
  color: #512da8 !important;
}

.deep-purple.darken-3 {
  background-color: #4527a0 !important;
}

.deep-purple-text.text-darken-3 {
  color: #4527a0 !important;
}

.deep-purple.darken-4 {
  background-color: #311b92 !important;
}

.deep-purple-text.text-darken-4 {
  color: #311b92 !important;
}

.deep-purple.accent-1 {
  background-color: #b388ff !important;
}

.deep-purple-text.text-accent-1 {
  color: #b388ff !important;
}

.deep-purple.accent-2 {
  background-color: #7c4dff !important;
}

.deep-purple-text.text-accent-2 {
  color: #7c4dff !important;
}

.deep-purple.accent-3 {
  background-color: #651fff !important;
}

.deep-purple-text.text-accent-3 {
  color: #651fff !important;
}

.deep-purple.accent-4 {
  background-color: #6200ea !important;
}

.deep-purple-text.text-accent-4 {
  color: #6200ea !important;
}

.indigo {
  background-color: #3f51b5 !important;
}

.indigo-text {
  color: #3f51b5 !important;
}

.indigo.lighten-5 {
  background-color: #e8eaf6 !important;
}

.indigo-text.text-lighten-5 {
  color: #e8eaf6 !important;
}

.indigo.lighten-4 {
  background-color: #c5cae9 !important;
}

.indigo-text.text-lighten-4 {
  color: #c5cae9 !important;
}

.indigo.lighten-3 {
  background-color: #9fa8da !important;
}

.indigo-text.text-lighten-3 {
  color: #9fa8da !important;
}

.indigo.lighten-2 {
  background-color: #7986cb !important;
}

.indigo-text.text-lighten-2 {
  color: #7986cb !important;
}

.indigo.lighten-1 {
  background-color: #5c6bc0 !important;
}

.indigo-text.text-lighten-1 {
  color: #5c6bc0 !important;
}

.indigo.darken-1 {
  background-color: #3949ab !important;
}

.indigo-text.text-darken-1 {
  color: #3949ab !important;
}

.indigo.darken-2 {
  background-color: #303f9f !important;
}

.indigo-text.text-darken-2 {
  color: #303f9f !important;
}

.indigo.darken-3 {
  background-color: #283593 !important;
}

.indigo-text.text-darken-3 {
  color: #283593 !important;
}

.indigo.darken-4 {
  background-color: #1a237e !important;
}

.indigo-text.text-darken-4 {
  color: #1a237e !important;
}

.indigo.accent-1 {
  background-color: #8c9eff !important;
}

.indigo-text.text-accent-1 {
  color: #8c9eff !important;
}

.indigo.accent-2 {
  background-color: #536dfe !important;
}

.indigo-text.text-accent-2 {
  color: #536dfe !important;
}

.indigo.accent-3 {
  background-color: #3d5afe !important;
}

.indigo-text.text-accent-3 {
  color: #3d5afe !important;
}

.indigo.accent-4 {
  background-color: #304ffe !important;
}

.indigo-text.text-accent-4 {
  color: #304ffe !important;
}

.blue {
  background-color: #2196F3 !important;
}

.blue-text {
  color: #2196F3 !important;
}

.blue.lighten-5 {
  background-color: #E3F2FD !important;
}

.blue-text.text-lighten-5 {
  color: #E3F2FD !important;
}

.blue.lighten-4 {
  background-color: #BBDEFB !important;
}

.blue-text.text-lighten-4 {
  color: #BBDEFB !important;
}

.blue.lighten-3 {
  background-color: #90CAF9 !important;
}

.blue-text.text-lighten-3 {
  color: #90CAF9 !important;
}

.blue.lighten-2 {
  background-color: #64B5F6 !important;
}

.blue-text.text-lighten-2 {
  color: #64B5F6 !important;
}

.blue.lighten-1 {
  background-color: #42A5F5 !important;
}

.blue-text.text-lighten-1 {
  color: #42A5F5 !important;
}

.blue.darken-1 {
  background-color: #1E88E5 !important;
}

.blue-text.text-darken-1 {
  color: #1E88E5 !important;
}

.blue.darken-2 {
  background-color: #1976D2 !important;
}

.blue-text.text-darken-2 {
  color: #1976D2 !important;
}

.blue.darken-3 {
  background-color: #1565C0 !important;
}

.blue-text.text-darken-3 {
  color: #1565C0 !important;
}

.blue.darken-4 {
  background-color: #0D47A1 !important;
}

.blue-text.text-darken-4 {
  color: #0D47A1 !important;
}

.blue.accent-1 {
  background-color: #82B1FF !important;
}

.blue-text.text-accent-1 {
  color: #82B1FF !important;
}

.blue.accent-2 {
  background-color: #448AFF !important;
}

.blue-text.text-accent-2 {
  color: #448AFF !important;
}

.blue.accent-3 {
  background-color: #2979FF !important;
}

.blue-text.text-accent-3 {
  color: #2979FF !important;
}

.blue.accent-4 {
  background-color: #2962FF !important;
}

.blue-text.text-accent-4 {
  color: #2962FF !important;
}

.light-blue {
  background-color: #03a9f4 !important;
}

.light-blue-text {
  color: #03a9f4 !important;
}

.light-blue.lighten-5 {
  background-color: #e1f5fe !important;
}

.light-blue-text.text-lighten-5 {
  color: #e1f5fe !important;
}

.light-blue.lighten-4 {
  background-color: #b3e5fc !important;
}

.light-blue-text.text-lighten-4 {
  color: #b3e5fc !important;
}

.light-blue.lighten-3 {
  background-color: #81d4fa !important;
}

.light-blue-text.text-lighten-3 {
  color: #81d4fa !important;
}

.light-blue.lighten-2 {
  background-color: #4fc3f7 !important;
}

.light-blue-text.text-lighten-2 {
  color: #4fc3f7 !important;
}

.light-blue.lighten-1 {
  background-color: #29b6f6 !important;
}

.light-blue-text.text-lighten-1 {
  color: #29b6f6 !important;
}

.light-blue.darken-1 {
  background-color: #039be5 !important;
}

.light-blue-text.text-darken-1 {
  color: #039be5 !important;
}

.light-blue.darken-2 {
  background-color: #0288d1 !important;
}

.light-blue-text.text-darken-2 {
  color: #0288d1 !important;
}

.light-blue.darken-3 {
  background-color: #0277bd !important;
}

.light-blue-text.text-darken-3 {
  color: #0277bd !important;
}

.light-blue.darken-4 {
  background-color: #01579b !important;
}

.light-blue-text.text-darken-4 {
  color: #01579b !important;
}

.light-blue.accent-1 {
  background-color: #80d8ff !important;
}

.light-blue-text.text-accent-1 {
  color: #80d8ff !important;
}

.light-blue.accent-2 {
  background-color: #40c4ff !important;
}

.light-blue-text.text-accent-2 {
  color: #40c4ff !important;
}

.light-blue.accent-3 {
  background-color: #00b0ff !important;
}

.light-blue-text.text-accent-3 {
  color: #00b0ff !important;
}

.light-blue.accent-4 {
  background-color: #0091ea !important;
}

.light-blue-text.text-accent-4 {
  color: #0091ea !important;
}

.cyan {
  background-color: #00bcd4 !important;
}

.cyan-text {
  color: #00bcd4 !important;
}

.cyan.lighten-5 {
  background-color: #e0f7fa !important;
}

.cyan-text.text-lighten-5 {
  color: #e0f7fa !important;
}

.cyan.lighten-4 {
  background-color: #b2ebf2 !important;
}

.cyan-text.text-lighten-4 {
  color: #b2ebf2 !important;
}

.cyan.lighten-3 {
  background-color: #80deea !important;
}

.cyan-text.text-lighten-3 {
  color: #80deea !important;
}

.cyan.lighten-2 {
  background-color: #4dd0e1 !important;
}

.cyan-text.text-lighten-2 {
  color: #4dd0e1 !important;
}

.cyan.lighten-1 {
  background-color: #26c6da !important;
}

.cyan-text.text-lighten-1 {
  color: #26c6da !important;
}

.cyan.darken-1 {
  background-color: #00acc1 !important;
}

.cyan-text.text-darken-1 {
  color: #00acc1 !important;
}

.cyan.darken-2 {
  background-color: #0097a7 !important;
}

.cyan-text.text-darken-2 {
  color: #0097a7 !important;
}

.cyan.darken-3 {
  background-color: #00838f !important;
}

.cyan-text.text-darken-3 {
  color: #00838f !important;
}

.cyan.darken-4 {
  background-color: #006064 !important;
}

.cyan-text.text-darken-4 {
  color: #006064 !important;
}

.cyan.accent-1 {
  background-color: #84ffff !important;
}

.cyan-text.text-accent-1 {
  color: #84ffff !important;
}

.cyan.accent-2 {
  background-color: #18ffff !important;
}

.cyan-text.text-accent-2 {
  color: #18ffff !important;
}

.cyan.accent-3 {
  background-color: #00e5ff !important;
}

.cyan-text.text-accent-3 {
  color: #00e5ff !important;
}

.cyan.accent-4 {
  background-color: #00b8d4 !important;
}

.cyan-text.text-accent-4 {
  color: #00b8d4 !important;
}

.teal {
  background-color: #009688 !important;
}

.teal-text {
  color: #009688 !important;
}

.teal.lighten-5 {
  background-color: #e0f2f1 !important;
}

.teal-text.text-lighten-5 {
  color: #e0f2f1 !important;
}

.teal.lighten-4 {
  background-color: #b2dfdb !important;
}

.teal-text.text-lighten-4 {
  color: #b2dfdb !important;
}

.teal.lighten-3 {
  background-color: #80cbc4 !important;
}

.teal-text.text-lighten-3 {
  color: #80cbc4 !important;
}

.teal.lighten-2 {
  background-color: #4db6ac !important;
}

.teal-text.text-lighten-2 {
  color: #4db6ac !important;
}

.teal.lighten-1 {
  background-color: #26a69a !important;
}

.teal-text.text-lighten-1 {
  color: #26a69a !important;
}

.teal.darken-1 {
  background-color: #00897b !important;
}

.teal-text.text-darken-1 {
  color: #00897b !important;
}

.teal.darken-2 {
  background-color: #00796b !important;
}

.teal-text.text-darken-2 {
  color: #00796b !important;
}

.teal.darken-3 {
  background-color: #00695c !important;
}

.teal-text.text-darken-3 {
  color: #00695c !important;
}

.teal.darken-4 {
  background-color: #004d40 !important;
}

.teal-text.text-darken-4 {
  color: #004d40 !important;
}

.teal.accent-1 {
  background-color: #a7ffeb !important;
}

.teal-text.text-accent-1 {
  color: #a7ffeb !important;
}

.teal.accent-2 {
  background-color: #64ffda !important;
}

.teal-text.text-accent-2 {
  color: #64ffda !important;
}

.teal.accent-3 {
  background-color: #1de9b6 !important;
}

.teal-text.text-accent-3 {
  color: #1de9b6 !important;
}

.teal.accent-4 {
  background-color: #00bfa5 !important;
}

.teal-text.text-accent-4 {
  color: #00bfa5 !important;
}

.green {
  background-color: #4CAF50 !important;
}

.green-text {
  color: #4CAF50 !important;
}

.green.lighten-5 {
  background-color: #E8F5E9 !important;
}

.green-text.text-lighten-5 {
  color: #E8F5E9 !important;
}

.green.lighten-4 {
  background-color: #C8E6C9 !important;
}

.green-text.text-lighten-4 {
  color: #C8E6C9 !important;
}

.green.lighten-3 {
  background-color: #A5D6A7 !important;
}

.green-text.text-lighten-3 {
  color: #A5D6A7 !important;
}

.green.lighten-2 {
  background-color: #81C784 !important;
}

.green-text.text-lighten-2 {
  color: #81C784 !important;
}

.green.lighten-1 {
  background-color: #66BB6A !important;
}

.green-text.text-lighten-1 {
  color: #66BB6A !important;
}

.green.darken-1 {
  background-color: #43A047 !important;
}

.green-text.text-darken-1 {
  color: #43A047 !important;
}

.green.darken-2 {
  background-color: #388E3C !important;
}

.green-text.text-darken-2 {
  color: #388E3C !important;
}

.green.darken-3 {
  background-color: #2E7D32 !important;
}

.green-text.text-darken-3 {
  color: #2E7D32 !important;
}

.green.darken-4 {
  background-color: #1B5E20 !important;
}

.green-text.text-darken-4 {
  color: #1B5E20 !important;
}

.green.accent-1 {
  background-color: #B9F6CA !important;
}

.green-text.text-accent-1 {
  color: #B9F6CA !important;
}

.green.accent-2 {
  background-color: #69F0AE !important;
}

.green-text.text-accent-2 {
  color: #69F0AE !important;
}

.green.accent-3 {
  background-color: #00E676 !important;
}

.green-text.text-accent-3 {
  color: #00E676 !important;
}

.green.accent-4 {
  background-color: #00C853 !important;
}

.green-text.text-accent-4 {
  color: #00C853 !important;
}

.light-green {
  background-color: #8bc34a !important;
}

.light-green-text {
  color: #8bc34a !important;
}

.light-green.lighten-5 {
  background-color: #f1f8e9 !important;
}

.light-green-text.text-lighten-5 {
  color: #f1f8e9 !important;
}

.light-green.lighten-4 {
  background-color: #dcedc8 !important;
}

.light-green-text.text-lighten-4 {
  color: #dcedc8 !important;
}

.light-green.lighten-3 {
  background-color: #c5e1a5 !important;
}

.light-green-text.text-lighten-3 {
  color: #c5e1a5 !important;
}

.light-green.lighten-2 {
  background-color: #aed581 !important;
}

.light-green-text.text-lighten-2 {
  color: #aed581 !important;
}

.light-green.lighten-1 {
  background-color: #9ccc65 !important;
}

.light-green-text.text-lighten-1 {
  color: #9ccc65 !important;
}

.light-green.darken-1 {
  background-color: #7cb342 !important;
}

.light-green-text.text-darken-1 {
  color: #7cb342 !important;
}

.light-green.darken-2 {
  background-color: #689f38 !important;
}

.light-green-text.text-darken-2 {
  color: #689f38 !important;
}

.light-green.darken-3 {
  background-color: #558b2f !important;
}

.light-green-text.text-darken-3 {
  color: #558b2f !important;
}

.light-green.darken-4 {
  background-color: #33691e !important;
}

.light-green-text.text-darken-4 {
  color: #33691e !important;
}

.light-green.accent-1 {
  background-color: #ccff90 !important;
}

.light-green-text.text-accent-1 {
  color: #ccff90 !important;
}

.light-green.accent-2 {
  background-color: #b2ff59 !important;
}

.light-green-text.text-accent-2 {
  color: #b2ff59 !important;
}

.light-green.accent-3 {
  background-color: #76ff03 !important;
}

.light-green-text.text-accent-3 {
  color: #76ff03 !important;
}

.light-green.accent-4 {
  background-color: #64dd17 !important;
}

.light-green-text.text-accent-4 {
  color: #64dd17 !important;
}

.lime {
  background-color: #cddc39 !important;
}

.lime-text {
  color: #cddc39 !important;
}

.lime.lighten-5 {
  background-color: #f9fbe7 !important;
}

.lime-text.text-lighten-5 {
  color: #f9fbe7 !important;
}

.lime.lighten-4 {
  background-color: #f0f4c3 !important;
}

.lime-text.text-lighten-4 {
  color: #f0f4c3 !important;
}

.lime.lighten-3 {
  background-color: #e6ee9c !important;
}

.lime-text.text-lighten-3 {
  color: #e6ee9c !important;
}

.lime.lighten-2 {
  background-color: #dce775 !important;
}

.lime-text.text-lighten-2 {
  color: #dce775 !important;
}

.lime.lighten-1 {
  background-color: #d4e157 !important;
}

.lime-text.text-lighten-1 {
  color: #d4e157 !important;
}

.lime.darken-1 {
  background-color: #c0ca33 !important;
}

.lime-text.text-darken-1 {
  color: #c0ca33 !important;
}

.lime.darken-2 {
  background-color: #afb42b !important;
}

.lime-text.text-darken-2 {
  color: #afb42b !important;
}

.lime.darken-3 {
  background-color: #9e9d24 !important;
}

.lime-text.text-darken-3 {
  color: #9e9d24 !important;
}

.lime.darken-4 {
  background-color: #827717 !important;
}

.lime-text.text-darken-4 {
  color: #827717 !important;
}

.lime.accent-1 {
  background-color: #f4ff81 !important;
}

.lime-text.text-accent-1 {
  color: #f4ff81 !important;
}

.lime.accent-2 {
  background-color: #eeff41 !important;
}

.lime-text.text-accent-2 {
  color: #eeff41 !important;
}

.lime.accent-3 {
  background-color: #c6ff00 !important;
}

.lime-text.text-accent-3 {
  color: #c6ff00 !important;
}

.lime.accent-4 {
  background-color: #aeea00 !important;
}

.lime-text.text-accent-4 {
  color: #aeea00 !important;
}

.yellow {
  background-color: #ffeb3b !important;
}

.yellow-text {
  color: #ffeb3b !important;
}

.yellow.lighten-5 {
  background-color: #fffde7 !important;
}

.yellow-text.text-lighten-5 {
  color: #fffde7 !important;
}

.yellow.lighten-4 {
  background-color: #fff9c4 !important;
}

.yellow-text.text-lighten-4 {
  color: #fff9c4 !important;
}

.yellow.lighten-3 {
  background-color: #fff59d !important;
}

.yellow-text.text-lighten-3 {
  color: #fff59d !important;
}

.yellow.lighten-2 {
  background-color: #fff176 !important;
}

.yellow-text.text-lighten-2 {
  color: #fff176 !important;
}

.yellow.lighten-1 {
  background-color: #ffee58 !important;
}

.yellow-text.text-lighten-1 {
  color: #ffee58 !important;
}

.yellow.darken-1 {
  background-color: #fdd835 !important;
}

.yellow-text.text-darken-1 {
  color: #fdd835 !important;
}

.yellow.darken-2 {
  background-color: #fbc02d !important;
}

.yellow-text.text-darken-2 {
  color: #fbc02d !important;
}

.yellow.darken-3 {
  background-color: #f9a825 !important;
}

.yellow-text.text-darken-3 {
  color: #f9a825 !important;
}

.yellow.darken-4 {
  background-color: #f57f17 !important;
}

.yellow-text.text-darken-4 {
  color: #f57f17 !important;
}

.yellow.accent-1 {
  background-color: #ffff8d !important;
}

.yellow-text.text-accent-1 {
  color: #ffff8d !important;
}

.yellow.accent-2 {
  background-color: #ffff00 !important;
}

.yellow-text.text-accent-2 {
  color: #ffff00 !important;
}

.yellow.accent-3 {
  background-color: #ffea00 !important;
}

.yellow-text.text-accent-3 {
  color: #ffea00 !important;
}

.yellow.accent-4 {
  background-color: #ffd600 !important;
}

.yellow-text.text-accent-4 {
  color: #ffd600 !important;
}

.amber {
  background-color: #ffc107 !important;
}

.amber-text {
  color: #ffc107 !important;
}

.amber.lighten-5 {
  background-color: #fff8e1 !important;
}

.amber-text.text-lighten-5 {
  color: #fff8e1 !important;
}

.amber.lighten-4 {
  background-color: #ffecb3 !important;
}

.amber-text.text-lighten-4 {
  color: #ffecb3 !important;
}

.amber.lighten-3 {
  background-color: #ffe082 !important;
}

.amber-text.text-lighten-3 {
  color: #ffe082 !important;
}

.amber.lighten-2 {
  background-color: #ffd54f !important;
}

.amber-text.text-lighten-2 {
  color: #ffd54f !important;
}

.amber.lighten-1 {
  background-color: #ffca28 !important;
}

.amber-text.text-lighten-1 {
  color: #ffca28 !important;
}

.amber.darken-1 {
  background-color: #ffb300 !important;
}

.amber-text.text-darken-1 {
  color: #ffb300 !important;
}

.amber.darken-2 {
  background-color: #ffa000 !important;
}

.amber-text.text-darken-2 {
  color: #ffa000 !important;
}

.amber.darken-3 {
  background-color: #ff8f00 !important;
}

.amber-text.text-darken-3 {
  color: #ff8f00 !important;
}

.amber.darken-4 {
  background-color: #ff6f00 !important;
}

.amber-text.text-darken-4 {
  color: #ff6f00 !important;
}

.amber.accent-1 {
  background-color: #ffe57f !important;
}

.amber-text.text-accent-1 {
  color: #ffe57f !important;
}

.amber.accent-2 {
  background-color: #ffd740 !important;
}

.amber-text.text-accent-2 {
  color: #ffd740 !important;
}

.amber.accent-3 {
  background-color: #ffc400 !important;
}

.amber-text.text-accent-3 {
  color: #ffc400 !important;
}

.amber.accent-4 {
  background-color: #ffab00 !important;
}

.amber-text.text-accent-4 {
  color: #ffab00 !important;
}

.orange {
  background-color: #ff9800 !important;
}

.orange-text {
  color: #ff9800 !important;
}

.orange.lighten-5 {
  background-color: #fff3e0 !important;
}

.orange-text.text-lighten-5 {
  color: #fff3e0 !important;
}

.orange.lighten-4 {
  background-color: #ffe0b2 !important;
}

.orange-text.text-lighten-4 {
  color: #ffe0b2 !important;
}

.orange.lighten-3 {
  background-color: #ffcc80 !important;
}

.orange-text.text-lighten-3 {
  color: #ffcc80 !important;
}

.orange.lighten-2 {
  background-color: #ffb74d !important;
}

.orange-text.text-lighten-2 {
  color: #ffb74d !important;
}

.orange.lighten-1 {
  background-color: #ffa726 !important;
}

.orange-text.text-lighten-1 {
  color: #ffa726 !important;
}

.orange.darken-1 {
  background-color: #fb8c00 !important;
}

.orange-text.text-darken-1 {
  color: #fb8c00 !important;
}

.orange.darken-2 {
  background-color: #f57c00 !important;
}

.orange-text.text-darken-2 {
  color: #f57c00 !important;
}

.orange.darken-3 {
  background-color: #ef6c00 !important;
}

.orange-text.text-darken-3 {
  color: #ef6c00 !important;
}

.orange.darken-4 {
  background-color: #e65100 !important;
}

.orange-text.text-darken-4 {
  color: #e65100 !important;
}

.orange.accent-1 {
  background-color: #ffd180 !important;
}

.orange-text.text-accent-1 {
  color: #ffd180 !important;
}

.orange.accent-2 {
  background-color: #ffab40 !important;
}

.orange-text.text-accent-2 {
  color: #ffab40 !important;
}

.orange.accent-3 {
  background-color: #ff9100 !important;
}

.orange-text.text-accent-3 {
  color: #ff9100 !important;
}

.orange.accent-4 {
  background-color: #ff6d00 !important;
}

.orange-text.text-accent-4 {
  color: #ff6d00 !important;
}

.deep-orange {
  background-color: #ff5722 !important;
}

.deep-orange-text {
  color: #ff5722 !important;
}

.deep-orange.lighten-5 {
  background-color: #fbe9e7 !important;
}

.deep-orange-text.text-lighten-5 {
  color: #fbe9e7 !important;
}

.deep-orange.lighten-4 {
  background-color: #ffccbc !important;
}

.deep-orange-text.text-lighten-4 {
  color: #ffccbc !important;
}

.deep-orange.lighten-3 {
  background-color: #ffab91 !important;
}

.deep-orange-text.text-lighten-3 {
  color: #ffab91 !important;
}

.deep-orange.lighten-2 {
  background-color: #ff8a65 !important;
}

.deep-orange-text.text-lighten-2 {
  color: #ff8a65 !important;
}

.deep-orange.lighten-1 {
  background-color: #ff7043 !important;
}

.deep-orange-text.text-lighten-1 {
  color: #ff7043 !important;
}

.deep-orange.darken-1 {
  background-color: #f4511e !important;
}

.deep-orange-text.text-darken-1 {
  color: #f4511e !important;
}

.deep-orange.darken-2 {
  background-color: #e64a19 !important;
}

.deep-orange-text.text-darken-2 {
  color: #e64a19 !important;
}

.deep-orange.darken-3 {
  background-color: #d84315 !important;
}

.deep-orange-text.text-darken-3 {
  color: #d84315 !important;
}

.deep-orange.darken-4 {
  background-color: #bf360c !important;
}

.deep-orange-text.text-darken-4 {
  color: #bf360c !important;
}

.deep-orange.accent-1 {
  background-color: #ff9e80 !important;
}

.deep-orange-text.text-accent-1 {
  color: #ff9e80 !important;
}

.deep-orange.accent-2 {
  background-color: #ff6e40 !important;
}

.deep-orange-text.text-accent-2 {
  color: #ff6e40 !important;
}

.deep-orange.accent-3 {
  background-color: #ff3d00 !important;
}

.deep-orange-text.text-accent-3 {
  color: #ff3d00 !important;
}

.deep-orange.accent-4 {
  background-color: #dd2c00 !important;
}

.deep-orange-text.text-accent-4 {
  color: #dd2c00 !important;
}

.brown {
  background-color: #795548 !important;
}

.brown-text {
  color: #795548 !important;
}

.brown.lighten-5 {
  background-color: #efebe9 !important;
}

.brown-text.text-lighten-5 {
  color: #efebe9 !important;
}

.brown.lighten-4 {
  background-color: #d7ccc8 !important;
}

.brown-text.text-lighten-4 {
  color: #d7ccc8 !important;
}

.brown.lighten-3 {
  background-color: #bcaaa4 !important;
}

.brown-text.text-lighten-3 {
  color: #bcaaa4 !important;
}

.brown.lighten-2 {
  background-color: #a1887f !important;
}

.brown-text.text-lighten-2 {
  color: #a1887f !important;
}

.brown.lighten-1 {
  background-color: #8d6e63 !important;
}

.brown-text.text-lighten-1 {
  color: #8d6e63 !important;
}

.brown.darken-1 {
  background-color: #6d4c41 !important;
}

.brown-text.text-darken-1 {
  color: #6d4c41 !important;
}

.brown.darken-2 {
  background-color: #5d4037 !important;
}

.brown-text.text-darken-2 {
  color: #5d4037 !important;
}

.brown.darken-3 {
  background-color: #4e342e !important;
}

.brown-text.text-darken-3 {
  color: #4e342e !important;
}

.brown.darken-4 {
  background-color: #3e2723 !important;
}

.brown-text.text-darken-4 {
  color: #3e2723 !important;
}

.blue-grey {
  background-color: #607d8b !important;
}

.blue-grey-text {
  color: #607d8b !important;
}

.blue-grey.lighten-5 {
  background-color: #eceff1 !important;
}

.blue-grey-text.text-lighten-5 {
  color: #eceff1 !important;
}

.blue-grey.lighten-4 {
  background-color: #cfd8dc !important;
}

.blue-grey-text.text-lighten-4 {
  color: #cfd8dc !important;
}

.blue-grey.lighten-3 {
  background-color: #b0bec5 !important;
}

.blue-grey-text.text-lighten-3 {
  color: #b0bec5 !important;
}

.blue-grey.lighten-2 {
  background-color: #90a4ae !important;
}

.blue-grey-text.text-lighten-2 {
  color: #90a4ae !important;
}

.blue-grey.lighten-1 {
  background-color: #78909c !important;
}

.blue-grey-text.text-lighten-1 {
  color: #78909c !important;
}

.blue-grey.darken-1 {
  background-color: #546e7a !important;
}

.blue-grey-text.text-darken-1 {
  color: #546e7a !important;
}

.blue-grey.darken-2 {
  background-color: #455a64 !important;
}

.blue-grey-text.text-darken-2 {
  color: #455a64 !important;
}

.blue-grey.darken-3 {
  background-color: #37474f !important;
}

.blue-grey-text.text-darken-3 {
  color: #37474f !important;
}

.blue-grey.darken-4 {
  background-color: #263238 !important;
}

.blue-grey-text.text-darken-4 {
  color: #263238 !important;
}

.grey {
  background-color: #9e9e9e !important;
}

.grey-text {
  color: #9e9e9e !important;
}

.grey.lighten-5 {
  background-color: #fafafa !important;
}

.grey-text.text-lighten-5 {
  color: #fafafa !important;
}

.grey.lighten-4 {
  background-color: #f5f5f5 !important;
}

.grey-text.text-lighten-4 {
  color: #f5f5f5 !important;
}

.grey.lighten-3 {
  background-color: #eeeeee !important;
}

.grey-text.text-lighten-3 {
  color: #eeeeee !important;
}

.grey.lighten-2 {
  background-color: #e0e0e0 !important;
}

.grey-text.text-lighten-2 {
  color: #e0e0e0 !important;
}

.grey.lighten-1 {
  background-color: #bdbdbd !important;
}

.grey-text.text-lighten-1 {
  color: #bdbdbd !important;
}

.grey.darken-1 {
  background-color: #757575 !important;
}

.grey-text.text-darken-1 {
  color: #757575 !important;
}

.grey.darken-2 {
  background-color: #616161 !important;
}

.grey-text.text-darken-2 {
  color: #616161 !important;
}

.grey.darken-3 {
  background-color: #424242 !important;
}

.grey-text.text-darken-3 {
  color: #424242 !important;
}

.grey.darken-4 {
  background-color: #212121 !important;
}

.grey-text.text-darken-4 {
  color: #212121 !important;
}

.black {
  background-color: #000000 !important;
}

.black-text {
  color: #000000 !important;
}

.white {
  background-color: #FFFFFF !important;
}

.white-text {
  color: #FFFFFF !important;
}

.transparent {
  background-color: transparent !important;
}

.transparent-text {
  color: transparent !important;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

html {
  box-sizing: border-box;
}

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

button,
input,
optgroup,
select,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

a {
  color: #039be5;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.valign-wrapper {
  display: flex;
  align-items: center;
}

.clearfix {
  clear: both;
}

.z-depth-0 {
  box-shadow: none !important;
}

/* 2dp elevation modified*/
.z-depth-1, .sidenav, .collapsible, .dropdown-content, .btn-floating, .btn.elevated, .elevated.btn-small, .elevated.btn-large, .toast, .card, .card-panel, nav {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}

.z-depth-1-half, .btn-floating:focus, .btn-floating:hover, .btn:focus, .btn-small:focus, .btn-large:focus, .btn:hover, .btn-small:hover, .btn-large:hover {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
}

/* 6dp elevation modified*/
.z-depth-2 {
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}

/* 12dp elevation modified*/
.z-depth-3 {
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

/* 16dp elevation */
.z-depth-4 {
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -7px rgba(0, 0, 0, 0.2);
}

/* 24dp elevation */
.z-depth-5, .modal {
  box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
}

.hoverable {
  transition: box-shadow 0.25s;
}
.hoverable:hover {
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.divider {
  height: 1px;
  overflow: hidden;
  background-color: var(--separator-color);
}

blockquote {
  margin: 20px 0;
  padding-left: 1.5rem;
  border-left: 5px solid var(--primary-color);
}

i {
  line-height: inherit;
}
i.left {
  float: left;
  margin-left: -8px;
}
i.right {
  float: right;
}
i.tiny {
  font-size: 1rem;
}
i.small {
  font-size: 2rem;
}
i.medium {
  font-size: 4rem;
}
i.large {
  font-size: 6rem;
}

img.responsive-img,
video.responsive-video {
  max-width: 100%;
  height: auto;
}

.pagination li {
  display: inline-block;
  border-radius: 2px;
  text-align: center;
  vertical-align: top;
  height: 30px;
}
.pagination li a {
  color: var(--font-color-medium);
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 10px;
  line-height: 30px;
}
.pagination li:hover:not(.disabled) {
  background-color: var(--primary-color-hover-opaque);
}
.pagination li.active a {
  color: var(--font-on-primary-color-main);
}
.pagination li.active, .pagination li.active:hover {
  background-color: var(--primary-color);
}
.pagination li.disabled a {
  cursor: default;
  color: var(--font-color-disabled);
}
.pagination li i {
  font-size: 2rem;
}
.pagination li.pages ul li {
  display: inline-block;
  float: none;
}

@media only screen and (max-width : 992.99px) {
  .pagination {
    width: 100%;
  }
  .pagination li.prev,
  .pagination li.next {
    width: 10%;
  }
  .pagination li.pages {
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
  }
}
.breadcrumb {
  display: inline-block;
  font-size: 18px;
  color: var(--font-on-primary-color-medium);
}
.breadcrumb i,
.breadcrumb [class^=mdi-], .breadcrumb [class*=mdi-],
.breadcrumb i.material-icons, .breadcrumb i.material-symbols-outlined,
.breadcrumb i.material-symbols-rounded, .breadcrumb i.material-symbols-sharp {
  display: block;
  float: left;
  font-size: 24px;
}
.breadcrumb:before {
  content: "\e5cc";
  color: var(--font-on-primary-color-medium);
  vertical-align: top;
  display: inline-block;
  font-family: "Material Symbols Outlined", "Material Symbols Rounded", "Material Symbols Sharp", "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 25px;
  margin: 0 10px 0 8px;
  -webkit-font-smoothing: antialiased;
  float: left;
}
.breadcrumb:first-child:before {
  display: none;
}
.breadcrumb:last-child {
  color: var(--font-on-primary-color-main);
}

.parallax-container {
  position: relative;
  overflow: hidden;
  height: 500px;
}
.parallax-container .parallax {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.parallax-container .parallax img {
  opacity: 0;
  position: absolute;
  left: 50%;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  transform: translate3d(0, 0, 0);
  transform: translateX(-50%);
}

.pin-top, .pin-bottom {
  position: relative;
}

.pinned {
  position: fixed !important;
}

/*********************
  Transition Classes
**********************/
ul.staggered-list li {
  opacity: 0;
}

.fade-in {
  opacity: 0;
  transform-origin: 0 50%;
}

/*********************
  Media Query Classes
**********************/
@media only screen and (max-width : 600.99px) {
  .hide-on-small-only, .hide-on-small-and-down {
    display: none !important;
  }
}

@media only screen and (max-width : 992.99px) {
  .hide-on-med-and-down {
    display: none !important;
  }
}

@media only screen and (min-width : 601px) {
  .hide-on-med-and-up {
    display: none !important;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992.99px) {
  .hide-on-med-only {
    display: none !important;
  }
}

@media only screen and (min-width : 993px) {
  .hide-on-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .hide-on-extra-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .show-on-extra-large {
    display: block !important;
  }
}

@media only screen and (min-width : 993px) {
  .show-on-large {
    display: block !important;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992.99px) {
  .show-on-medium {
    display: block !important;
  }
}

@media only screen and (max-width : 600.99px) {
  .show-on-small {
    display: block !important;
  }
}

@media only screen and (min-width : 601px) {
  .show-on-medium-and-up {
    display: block !important;
  }
}

@media only screen and (max-width : 992.99px) {
  .show-on-medium-and-down {
    display: block !important;
  }
}

@media only screen and (max-width : 600.99px) {
  .center-on-small-only {
    text-align: center;
  }
}

.page-footer {
  padding-top: 20px;
  color: var(--font-on-primary-color-main);
  background-color: var(--primary-color);
}
.page-footer a {
  color: var(--font-on-primary-color-main);
}
.page-footer .footer-copyright,
.page-footer .footer-copyright a {
  overflow: hidden;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0px;
  color: var(--font-on-primary-color-dark-medium);
  background-color: var(--primary-color-dark);
}

.page-footer ul {
  padding-left: 0;
  list-style-type: none;
}

table, th, td {
  border: none;
}

table {
  width: 100%;
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
}
table.striped tr {
  border-bottom: none;
}
table.striped tbody > tr:nth-child(odd) {
  background-color: var(--background-color-slight-emphasis);
}
table.highlight > tbody > tr {
  transition: background-color 0.25s ease;
}
table.highlight > tbody > tr:hover {
  background-color: var(--hover-color);
}
table thead {
  color: var(--font-color-medium);
}
table.centered thead tr th, table.centered tbody tr td {
  text-align: center;
}

tr {
  border-bottom: 1px solid var(--separator-color);
}

td, th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 0;
}

@media only screen and (max-width : 992.99px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative;
    /* sort out borders */
  }
  table.responsive-table td:empty:before {
    content: " ";
  }
  table.responsive-table th,
  table.responsive-table td {
    margin: 0;
    vertical-align: top;
  }
  table.responsive-table th {
    text-align: left;
  }
  table.responsive-table thead {
    display: block;
    float: left;
  }
  table.responsive-table thead tr {
    display: block;
    padding: 0 10px 0 0;
  }
  table.responsive-table thead tr th::before {
    content: " ";
  }
  table.responsive-table tbody {
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap;
  }
  table.responsive-table tbody tr {
    display: inline-block;
    vertical-align: top;
  }
  table.responsive-table th {
    display: block;
    text-align: right;
  }
  table.responsive-table td {
    display: block;
    min-height: 1.25em;
    text-align: left;
  }
  table.responsive-table tr {
    border-bottom: none;
    padding: 0 10px;
  }
  table.responsive-table thead {
    border: 0;
    border-right: 1px solid var(--separator-color);
  }
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*******************
  Utility Classes
*******************/
.hide {
  display: none !important;
}

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

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

.center, .center-align {
  text-align: center;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.no-select, input[type=range],
input[type=range] + .thumb {
  user-select: none;
}

.circle {
  border-radius: 50%;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.truncate {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.no-padding {
  padding: 0 !important;
}

/**************************
  Utility Spacing Classes
**************************/
.m-0 {
  margin: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mr-1 {
  margin-right: 0.25rem !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.mx-1 {
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mr-2 {
  margin-right: 0.5rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2 {
  margin-left: 0.5rem !important;
}

.mx-2 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.m-3 {
  margin: 0.75rem !important;
}

.mt-3 {
  margin-top: 0.75rem !important;
}

.mr-3 {
  margin-right: 0.75rem !important;
}

.mb-3 {
  margin-bottom: 0.75rem !important;
}

.ml-3 {
  margin-left: 0.75rem !important;
}

.mx-3 {
  margin-left: 0.75rem !important;
  margin-right: 0.75rem !important;
}

.my-3 {
  margin-top: 0.75rem !important;
  margin-bottom: 0.75rem !important;
}

.m-4 {
  margin: 1rem !important;
}

.mt-4 {
  margin-top: 1rem !important;
}

.mr-4 {
  margin-right: 1rem !important;
}

.mb-4 {
  margin-bottom: 1rem !important;
}

.ml-4 {
  margin-left: 1rem !important;
}

.mx-4 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.my-4 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.m-5 {
  margin: 1.5rem !important;
}

.mt-5 {
  margin-top: 1.5rem !important;
}

.mr-5 {
  margin-right: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 1.5rem !important;
}

.ml-5 {
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}

.my-5 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.m-6 {
  margin: 3rem !important;
}

.mt-6 {
  margin-top: 3rem !important;
}

.mr-6 {
  margin-right: 3rem !important;
}

.mb-6 {
  margin-bottom: 3rem !important;
}

.ml-6 {
  margin-left: 3rem !important;
}

.mx-6 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.my-6 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto {
  margin-top: auto !important;
}

.mr-auto {
  margin-right: auto !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ml-auto {
  margin-left: auto !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pr-1 {
  padding-right: 0.25rem !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1 {
  padding-left: 0.25rem !important;
}

.px-1 {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pr-2 {
  padding-right: 0.5rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2 {
  padding-left: 0.5rem !important;
}

.px-2 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.p-3 {
  padding: 0.75rem !important;
}

.pt-3 {
  padding-top: 0.75rem !important;
}

.pr-3 {
  padding-right: 0.75rem !important;
}

.pb-3 {
  padding-bottom: 0.75rem !important;
}

.pl-3 {
  padding-left: 0.75rem !important;
}

.px-3 {
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}

.py-3 {
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
}

.p-4 {
  padding: 1rem !important;
}

.pt-4 {
  padding-top: 1rem !important;
}

.pr-4 {
  padding-right: 1rem !important;
}

.pb-4 {
  padding-bottom: 1rem !important;
}

.pl-4 {
  padding-left: 1rem !important;
}

.px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.p-5 {
  padding: 1.5rem !important;
}

.pt-5 {
  padding-top: 1.5rem !important;
}

.pr-5 {
  padding-right: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 1.5rem !important;
}

.pl-5 {
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.py-5 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.p-6 {
  padding: 3rem !important;
}

.pt-6 {
  padding-top: 3rem !important;
}

.pr-6 {
  padding-right: 3rem !important;
}

.pb-6 {
  padding-bottom: 3rem !important;
}

.pl-6 {
  padding-left: 3rem !important;
}

.px-6 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.py-6 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.p-auto {
  padding: auto !important;
}

.pt-auto {
  padding-top: auto !important;
}

.pr-auto {
  padding-right: auto !important;
}

.pb-auto {
  padding-bottom: auto !important;
}

.pl-auto {
  padding-left: auto !important;
}

.px-auto {
  padding-left: auto !important;
  padding-right: auto !important;
}

.py-auto {
  padding-top: auto !important;
  padding-bottom: auto !important;
}

.collection {
  padding-left: 0;
  list-style-type: none;
  margin: 0.5rem 0 1rem 0;
  border: 1px solid var(--separator-color);
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}
.collection .collection-item {
  background-color: transparent;
  line-height: 1.5rem;
  padding: 10px 20px;
  margin: 0;
  border-bottom: 1px solid var(--separator-color);
}
.collection .collection-item.avatar {
  min-height: 84px;
  padding-left: 72px;
  position: relative;
}
.collection .collection-item.avatar:not(.circle-clipper) > .circle,
.collection .collection-item.avatar :not(.circle-clipper) > .circle {
  position: absolute;
  width: 42px;
  height: 42px;
  overflow: hidden;
  left: 15px;
  display: inline-block;
  vertical-align: middle;
}
.collection .collection-item.avatar i.circle {
  font-size: 18px;
  line-height: 42px;
  color: #fff;
  background-color: var(--slider-track-color);
  text-align: center;
}
.collection .collection-item.avatar .title {
  font-size: 16px;
}
.collection .collection-item.avatar p {
  margin: 0;
}
.collection .collection-item.avatar .secondary-content {
  position: absolute;
  top: 16px;
  right: 16px;
}
.collection .collection-item:last-child {
  border-bottom: none;
}
.collection .collection-item.active {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.collection .collection-item.active .secondary-content {
  color: var(--font-on-primary-color-main);
}
.collection a.collection-item {
  display: block;
  transition: 0.25s;
  color: var(--primary-color);
}
.collection a.collection-item:not(.active):hover {
  background-color: var(--hover-color);
}
.collection.with-header .collection-header {
  background-color: transparent;
  border-bottom: 1px solid var(--separator-color);
  padding: 10px 20px;
}
.collection.with-header .collection-item {
  padding-left: 30px;
}
.collection.with-header .collection-item.avatar {
  padding-left: 72px;
}

.secondary-content {
  float: right;
  color: var(--primary-color);
}

.collapsible .collection {
  margin: 0;
  border: none;
}

span.badge {
  min-width: 3rem;
  padding: 0 6px;
  margin-left: 14px;
  text-align: center;
  font-size: 1rem;
  line-height: 22px;
  height: 22px;
  color: var(--font-color-medium);
  float: right;
  box-sizing: border-box;
}
span.badge.new {
  font-weight: 300;
  font-size: 0.8rem;
  color: var(--font-on-primary-color-main);
  background-color: var(--primary-color);
  border-radius: 2px;
}
span.badge.new:after {
  content: " new";
}
span.badge[data-badge-caption]::after {
  content: " " attr(data-badge-caption);
}

.active span.badge {
  color: var(--font-on-primary-color-main);
}

nav ul a span.badge {
  display: inline-block;
  float: none;
  margin-left: 4px;
  line-height: 22px;
  height: 22px;
  -webkit-font-smoothing: auto;
}

.collection-item span.badge {
  margin-top: calc(0.75rem - 11px);
}

.collapsible span.badge {
  margin-left: auto;
}

.collapsible .active span.badge:not(.new) {
  color: var(--font-color-medium);
}

.sidenav span.badge {
  margin-top: calc(24px - 11px);
}

table span.badge {
  display: inline-block;
  float: none;
  margin-left: auto;
}

/* This is needed for some mobile phones to display the Google Icon font properly */
.material-icons, .material-symbols-outlined,
.material-symbols-rounded, .material-symbols-sharp {
  text-rendering: optimizeLegibility;
  font-feature-settings: "liga";
}

.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}

@media only screen and (min-width : 601px) {
  .container {
    width: 85%;
  }
}
@media only screen and (min-width : 993px) {
  .container {
    width: 70%;
  }
}
.section {
  padding: 1rem 0;
}

.row {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.row .s1 {
  grid-column: auto/span 1;
}
.row .s2 {
  grid-column: auto/span 2;
}
.row .s3 {
  grid-column: auto/span 3;
}
.row .s4 {
  grid-column: auto/span 4;
}
.row .s5 {
  grid-column: auto/span 5;
}
.row .s6 {
  grid-column: auto/span 6;
}
.row .s7 {
  grid-column: auto/span 7;
}
.row .s8 {
  grid-column: auto/span 8;
}
.row .s9 {
  grid-column: auto/span 9;
}
.row .s10 {
  grid-column: auto/span 10;
}
.row .s11 {
  grid-column: auto/span 11;
}
.row .s12 {
  grid-column: auto/span 12;
}
.row .offset-s1 {
  grid-column-start: 3;
}
.row .offset-s2 {
  grid-column-start: 2;
}
.row .offset-s3 {
  grid-column-start: 4;
}
.row .offset-s4 {
  grid-column-start: 5;
}
.row .offset-s5 {
  grid-column-start: 6;
}
.row .offset-s6 {
  grid-column-start: 7;
}
.row .offset-s7 {
  grid-column-start: 8;
}
.row .offset-s8 {
  grid-column-start: 9;
}
.row .offset-s9 {
  grid-column-start: 10;
}
.row .offset-s10 {
  grid-column-start: 11;
}
.row .offset-s11 {
  grid-column-start: 12;
}
@media only screen and (min-width : 601px) {
  .row .m1 {
    grid-column: auto/span 1;
  }
  .row .m2 {
    grid-column: auto/span 2;
  }
  .row .m3 {
    grid-column: auto/span 3;
  }
  .row .m4 {
    grid-column: auto/span 4;
  }
  .row .m5 {
    grid-column: auto/span 5;
  }
  .row .m6 {
    grid-column: auto/span 6;
  }
  .row .m7 {
    grid-column: auto/span 7;
  }
  .row .m8 {
    grid-column: auto/span 8;
  }
  .row .m9 {
    grid-column: auto/span 9;
  }
  .row .m10 {
    grid-column: auto/span 10;
  }
  .row .m11 {
    grid-column: auto/span 11;
  }
  .row .m12 {
    grid-column: auto/span 12;
  }
  .row .offset-m1 {
    grid-column-start: 2;
  }
  .row .offset-m2 {
    grid-column-start: 3;
  }
  .row .offset-m3 {
    grid-column-start: 4;
  }
  .row .offset-m4 {
    grid-column-start: 5;
  }
  .row .offset-m5 {
    grid-column-start: 6;
  }
  .row .offset-m6 {
    grid-column-start: 7;
  }
  .row .offset-m7 {
    grid-column-start: 8;
  }
  .row .offset-m8 {
    grid-column-start: 9;
  }
  .row .offset-m9 {
    grid-column-start: 10;
  }
  .row .offset-m10 {
    grid-column-start: 11;
  }
  .row .offset-m11 {
    grid-column-start: 12;
  }
}
@media only screen and (min-width : 993px) {
  .row .l1 {
    grid-column: auto/span 1;
  }
  .row .l2 {
    grid-column: auto/span 2;
  }
  .row .l3 {
    grid-column: auto/span 3;
  }
  .row .l4 {
    grid-column: auto/span 4;
  }
  .row .l5 {
    grid-column: auto/span 5;
  }
  .row .l6 {
    grid-column: auto/span 6;
  }
  .row .l7 {
    grid-column: auto/span 7;
  }
  .row .l8 {
    grid-column: auto/span 8;
  }
  .row .l9 {
    grid-column: auto/span 9;
  }
  .row .l10 {
    grid-column: auto/span 10;
  }
  .row .l11 {
    grid-column: auto/span 11;
  }
  .row .l12 {
    grid-column: auto/span 12;
  }
  .row .offset-l1 {
    grid-column-start: 2;
  }
  .row .offset-l2 {
    grid-column-start: 3;
  }
  .row .offset-l3 {
    grid-column-start: 4;
  }
  .row .offset-l4 {
    grid-column-start: 5;
  }
  .row .offset-l5 {
    grid-column-start: 6;
  }
  .row .offset-l6 {
    grid-column-start: 7;
  }
  .row .offset-l7 {
    grid-column-start: 8;
  }
  .row .offset-l8 {
    grid-column-start: 9;
  }
  .row .offset-l9 {
    grid-column-start: 10;
  }
  .row .offset-l10 {
    grid-column-start: 11;
  }
  .row .offset-l11 {
    grid-column-start: 12;
  }
}
@media only screen and (min-width : 1201px) {
  .row .xl1 {
    grid-column: auto/span 1;
  }
  .row .xl2 {
    grid-column: auto/span 2;
  }
  .row .xl3 {
    grid-column: auto/span 3;
  }
  .row .xl4 {
    grid-column: auto/span 4;
  }
  .row .xl5 {
    grid-column: auto/span 5;
  }
  .row .xl6 {
    grid-column: auto/span 6;
  }
  .row .xl7 {
    grid-column: auto/span 7;
  }
  .row .xl8 {
    grid-column: auto/span 8;
  }
  .row .xl9 {
    grid-column: auto/span 9;
  }
  .row .xl10 {
    grid-column: auto/span 10;
  }
  .row .xl11 {
    grid-column: auto/span 11;
  }
  .row .xl12 {
    grid-column: auto/span 12;
  }
  .row .offset-xl1 {
    grid-column-start: 2;
  }
  .row .offset-xl2 {
    grid-column-start: 3;
  }
  .row .offset-xl3 {
    grid-column-start: 4;
  }
  .row .offset-xl4 {
    grid-column-start: 5;
  }
  .row .offset-xl5 {
    grid-column-start: 6;
  }
  .row .offset-xl6 {
    grid-column-start: 7;
  }
  .row .offset-xl7 {
    grid-column-start: 8;
  }
  .row .offset-xl8 {
    grid-column-start: 9;
  }
  .row .offset-xl9 {
    grid-column-start: 10;
  }
  .row .offset-xl10 {
    grid-column-start: 11;
  }
  .row .offset-xl11 {
    grid-column-start: 12;
  }
}

nav {
  color: var(--font-on-primary-color-main);
  background-color: var(--secondary-container-color);
  width: 100%;
  height: 56px;
  line-height: 56px;
}
nav.nav-extended {
  height: auto;
}
nav.nav-extended .nav-wrapper {
  min-height: 56px;
  height: auto;
}
nav.nav-extended .nav-content {
  position: relative;
  line-height: normal;
}
nav a {
  color: var(--font-on-primary-color-main);
}
nav i,
nav [class^=mdi-], nav [class*=mdi-],
nav i.material-icons, nav i.material-symbols-outlined,
nav i.material-symbols-rounded, nav i.material-symbols-sharp {
  display: block;
  font-size: 24px;
  height: 56px;
  line-height: 56px;
}
nav .nav-wrapper {
  position: relative;
  height: 100%;
}
@media only screen and (min-width : 993px) {
  nav a.sidenav-trigger {
    display: none;
  }
}
nav .sidenav-trigger {
  float: left;
  position: relative;
  z-index: 1;
  height: 56px;
  margin: 0 18px;
}
nav .sidenav-trigger i {
  height: 56px;
  line-height: 56px;
}
nav .brand-logo {
  position: absolute;
  color: var(--font-on-primary-color-main);
  display: inline-block;
  font-size: 2.1rem;
  padding: 0;
}
nav .brand-logo.center {
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width : 992.99px) {
  nav .brand-logo {
    left: 50%;
    transform: translateX(-50%);
  }
  nav .brand-logo.left, nav .brand-logo.right {
    padding: 0;
    transform: none;
  }
  nav .brand-logo.left {
    left: 0.5rem;
  }
  nav .brand-logo.right {
    right: 0.5rem;
    left: auto;
  }
}
nav .brand-logo.right {
  right: 0.5rem;
  padding: 0;
}
nav .brand-logo i,
nav .brand-logo [class^=mdi-], nav .brand-logo [class*=mdi-],
nav .brand-logo i.material-icons, nav .brand-logo i.material-symbols-outlined,
nav .brand-logo i.material-symbols-rounded, nav .brand-logo i.material-symbols-sharp {
  float: left;
  margin-right: 15px;
}
nav .nav-title {
  display: inline-block;
  font-size: 32px;
  padding: 28px 0;
}
nav ul:not(.dropdown-content) {
  list-style-type: none;
  margin: 0;
}
nav ul:not(.dropdown-content) > li {
  transition: background-color 0.3s;
  float: left;
  padding: 0;
}
nav ul:not(.dropdown-content) > li > a {
  transition: background-color 0.3s;
  font-size: 1rem;
  color: var(--font-on-primary-color-main);
  display: block;
  padding: 0 15px;
  cursor: pointer;
}
nav ul:not(.dropdown-content) > li > a.active {
  background-color: var(--primary-color-raised-focus-solid);
}
nav ul:not(.dropdown-content) > li > a:hover:not(.active) {
  background-color: var(--primary-color-raised-hover-solid);
}
nav ul:not(.dropdown-content) > li > a.btn, nav ul:not(.dropdown-content) > li > a.btn-small, nav ul:not(.dropdown-content) > li > a.btn-large, nav ul:not(.dropdown-content) > li > a.btn-flat, nav ul:not(.dropdown-content) > li > a.btn-floating {
  margin-top: -2px;
  margin-left: 15px;
  margin-right: 15px;
  display: inline-block;
}
nav ul:not(.dropdown-content) > li > a.btn > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-small > .material-icons, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-large > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-sharp {
  height: inherit;
  line-height: inherit;
}
nav ul:not(.dropdown-content).left {
  float: left;
}
nav form {
  height: 100%;
}
nav .input-field {
  margin: 0;
  height: 100%;
}
nav .input-field input[type=search] {
  height: 100%;
  font-size: 1.2rem;
  border: none;
  padding-left: 2rem;
  color: #888;
}
nav .input-field input[type=search]:focus, nav .input-field input[type=search][type=text]:valid, nav .input-field input[type=search][type=password]:valid, nav .input-field input[type=search][type=email]:valid, nav .input-field input[type=search][type=url]:valid, nav .input-field input[type=search][type=date]:valid {
  border: none;
  box-shadow: none;
}
nav .input-field label {
  top: 0;
  left: 0;
}
nav .input-field label i {
  color: var(--font-on-primary-color-medium);
  transition: color 0.3s;
}
nav .input-field label.active i {
  color: var(--font-on-primary-color-main);
}

.navbar-fixed {
  position: relative;
  height: 56px;
  z-index: 997;
}
.navbar-fixed nav {
  position: fixed;
  right: 0;
}

@media only screen and (min-width : 601px) {
  nav.nav-extended .nav-wrapper {
    min-height: 64px;
  }
  nav, nav .nav-wrapper i, nav a.sidenav-trigger, nav a.sidenav-trigger i {
    height: 64px;
    line-height: 64px;
  }
  .navbar-fixed {
    height: 64px;
  }
}
a {
  text-decoration: none;
}

html {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-weight: normal;
  color: var(--font-color-main);
}
@media only screen and (min-width: 0) {
  html {
    font-size: 14px;
  }
}
@media only screen and (min-width: 993px) {
  html {
    font-size: 14.5px;
  }
}
@media only screen and (min-width: 1201px) {
  html {
    font-size: 15px;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  line-height: 1.3;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit;
}

h1 {
  font-size: 4.2rem;
  line-height: 110%;
  margin: 2.8rem 0 1.68rem 0;
}

h2 {
  font-size: 3.56rem;
  line-height: 110%;
  margin: 2.3733333333rem 0 1.424rem 0;
}

h3 {
  font-size: 2.92rem;
  line-height: 110%;
  margin: 1.9466666667rem 0 1.168rem 0;
}

h4 {
  font-size: 2.28rem;
  line-height: 110%;
  margin: 1.52rem 0 0.912rem 0;
}

h5 {
  font-size: 1.64rem;
  line-height: 110%;
  margin: 1.0933333333rem 0 0.656rem 0;
}

h6 {
  font-size: 1.15rem;
  line-height: 110%;
  margin: 0.7666666667rem 0 0.46rem 0;
}

em {
  font-style: italic;
}

strong {
  font-weight: 500;
}

small {
  font-size: 75%;
}

.light {
  font-weight: 300;
}

.thin {
  font-weight: 200;
}

@media only screen and (min-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 390px) {
  .flow-text {
    font-size: 1.224rem;
  }
}
@media only screen and (min-width: 420px) {
  .flow-text {
    font-size: 1.248rem;
  }
}
@media only screen and (min-width: 450px) {
  .flow-text {
    font-size: 1.272rem;
  }
}
@media only screen and (min-width: 480px) {
  .flow-text {
    font-size: 1.296rem;
  }
}
@media only screen and (min-width: 510px) {
  .flow-text {
    font-size: 1.32rem;
  }
}
@media only screen and (min-width: 540px) {
  .flow-text {
    font-size: 1.344rem;
  }
}
@media only screen and (min-width: 570px) {
  .flow-text {
    font-size: 1.368rem;
  }
}
@media only screen and (min-width: 600px) {
  .flow-text {
    font-size: 1.392rem;
  }
}
@media only screen and (min-width: 630px) {
  .flow-text {
    font-size: 1.416rem;
  }
}
@media only screen and (min-width: 660px) {
  .flow-text {
    font-size: 1.44rem;
  }
}
@media only screen and (min-width: 690px) {
  .flow-text {
    font-size: 1.464rem;
  }
}
@media only screen and (min-width: 720px) {
  .flow-text {
    font-size: 1.488rem;
  }
}
@media only screen and (min-width: 750px) {
  .flow-text {
    font-size: 1.512rem;
  }
}
@media only screen and (min-width: 780px) {
  .flow-text {
    font-size: 1.536rem;
  }
}
@media only screen and (min-width: 810px) {
  .flow-text {
    font-size: 1.56rem;
  }
}
@media only screen and (min-width: 840px) {
  .flow-text {
    font-size: 1.584rem;
  }
}
@media only screen and (min-width: 870px) {
  .flow-text {
    font-size: 1.608rem;
  }
}
@media only screen and (min-width: 900px) {
  .flow-text {
    font-size: 1.632rem;
  }
}
@media only screen and (min-width: 930px) {
  .flow-text {
    font-size: 1.656rem;
  }
}
@media only screen and (min-width: 960px) {
  .flow-text {
    font-size: 1.68rem;
  }
}
@media only screen and (max-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}

.scale-transition {
  transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
}
.scale-transition.scale-out {
  transform: scale(0);
  transition: transform 0.2s !important;
}
.scale-transition.scale-in {
  transform: scale(1);
}

.card-panel {
  transition: box-shadow 0.25s;
  padding: 24px;
  margin: 0.5rem 0 1rem 0;
  border-radius: 12px;
  background-color: var(--background-color-card);
}

.card {
  overflow: hidden;
  position: relative;
  background-color: var(--background-color-card);
  transition: box-shadow 0.25s;
  border-radius: 12px;
}
.card .card-title {
  font-size: 24px;
  font-weight: 300;
}
.card .card-title.activator {
  cursor: pointer;
}
.card.small, .card.medium, .card.large {
  position: relative;
}
.card.small .card-image, .card.medium .card-image, .card.large .card-image {
  max-height: 60%;
  overflow: hidden;
}
.card.small .card-image + .card-content, .card.medium .card-image + .card-content, .card.large .card-image + .card-content {
  max-height: 40%;
}
.card.small .card-content, .card.medium .card-content, .card.large .card-content {
  max-height: 100%;
  overflow: hidden;
}
.card.small .card-action, .card.medium .card-action, .card.large .card-action {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.card.small {
  height: 300px;
}
.card.medium {
  height: 400px;
}
.card.large {
  height: 500px;
}
.card.horizontal {
  display: flex;
}
.card.horizontal.small .card-image, .card.horizontal.medium .card-image, .card.horizontal.large .card-image {
  height: 100%;
  max-height: none;
  overflow: visible;
}
.card.horizontal.small .card-image img, .card.horizontal.medium .card-image img, .card.horizontal.large .card-image img {
  height: 100%;
}
.card.horizontal .card-image {
  max-width: 50%;
}
.card.horizontal .card-image img {
  border-radius: 2px 0 0 2px;
  max-width: 100%;
  width: auto;
}
.card.horizontal .card-stacked {
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
}
.card.horizontal .card-stacked .card-content {
  flex-grow: 1;
}
.card.sticky-action .card-action {
  z-index: 2;
}
.card.sticky-action .card-reveal {
  z-index: 1;
  padding-bottom: 64px;
}
.card .card-image {
  position: relative;
}
.card .card-image img {
  display: block;
  border-radius: 2px 2px 0 0;
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
}
.card .card-image .card-title {
  color: var(--background-color-card);
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 100%;
  padding: 24px;
}
.card .card-content {
  padding: 24px;
  border-radius: 0 0 2px 2px;
}
.card .card-content p {
  margin: 0;
}
.card .card-content .card-title {
  display: block;
  line-height: 32px;
  margin-bottom: 8px;
}
.card .card-content .card-title i {
  line-height: 32px;
}
.card .card-action {
  border-top: 1px solid var(--separator-color);
  position: relative;
  background-color: inherit;
}
.card .card-action:last-child {
  border-radius: 0 0 2px 2px;
}
.card .card-action a {
  padding: 16px 24px;
  display: inline-block;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating) {
  color: var(--primary-color);
  transition: color 0.3s ease;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating):hover {
  background-color: var(--primary-color-hover-opaque);
}
.card .card-reveal {
  padding: 24px;
  position: absolute;
  background-color: var(--background-color-card);
  width: 100%;
  overflow-y: auto;
  left: 0;
  top: 100%;
  height: 100%;
  z-index: 3;
  display: none;
}
.card .card-reveal .card-title {
  cursor: pointer;
  display: block;
}

#toast-container {
  display: block;
  position: fixed;
  z-index: 10000;
}
@media only screen and (max-width : 600.99px) {
  #toast-container {
    min-width: 100%;
    bottom: 0%;
  }
}
@media only screen and (min-width : 601px) and (max-width : 992.99px) {
  #toast-container {
    left: 5%;
    bottom: 7%;
    max-width: 90%;
  }
}
@media only screen and (min-width : 993px) {
  #toast-container {
    top: 10%;
    right: 7%;
    max-width: 86%;
  }
}

.toast {
  border-radius: 2px;
  top: 35px;
  width: auto;
  margin-top: 10px;
  position: relative;
  max-width: 100%;
  height: auto;
  min-height: 48px;
  line-height: 1.5em;
  background-color: var(--tooltip-background-color);
  padding: 10px 25px;
  font-size: 1rem;
  font-weight: 400;
  color: var(--tooltip-font-color);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: default;
}
.toast .toast-action {
  color: #eeff41;
  font-weight: 500;
  margin-right: -25px;
  margin-left: 3rem;
}
.toast.rounded {
  border-radius: 24px;
}
@media only screen and (max-width : 600.99px) {
  .toast {
    width: 100%;
    border-radius: 0;
  }
}

.tabs {
  padding-left: 0;
  list-style-type: none;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  height: 48px;
  width: 100%;
  background-color: var(--surface-color);
  margin: 0 auto;
  white-space: nowrap;
}
.tabs.tabs-transparent {
  background-color: transparent;
}
.tabs.tabs-transparent .tab a {
  color: var(--font-on-primary-color-medium);
}
.tabs.tabs-transparent .tab.disabled a,
.tabs.tabs-transparent .tab.disabled a:hover,
.tabs.tabs-transparent .tab.disabled a:focus {
  color: var(--font-on-primary-color-disabled);
}
.tabs.tabs-transparent .tab a:hover {
  background-color: var(--hover-color);
}
.tabs.tabs-transparent .tab a.active,
.tabs.tabs-transparent .tab a:focus {
  background-color: transparent;
}
.tabs.tabs-transparent .tab a:hover,
.tabs.tabs-transparent .tab a.active,
.tabs.tabs-transparent .tab a:focus {
  color: var(--font-on-primary-color-main);
}
.tabs.tabs-transparent .indicator {
  background-color: var(--font-on-primary-color-main);
}
.tabs.tabs-fixed-width {
  display: flex;
}
.tabs.tabs-fixed-width .tab {
  flex-grow: 1;
}
.tabs .tab {
  padding-left: 0;
  list-style-type: none;
  display: inline-block;
  text-align: center;
  line-height: 48px;
  height: 48px;
  padding: 0;
  margin: 0;
}
.tabs .tab a {
  color: var(--font-color-medium);
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  font-size: 14px;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: color 0.28s ease, background-color 0.28s ease;
}
.tabs .tab a.active {
  background-color: transparent;
}
.tabs .tab a.active, .tabs .tab a:focus, .tabs .tab a:hover {
  color: var(--primary-color);
}
.tabs .tab a:hover {
  background-color: var(--primary-color-hover-opaque);
}
.tabs .tab a:focus, .tabs .tab a.active {
  background-color: var(--primary-color-focus-opaque);
  outline: none;
}
.tabs .tab.disabled a, .tabs .tab.disabled a:hover {
  color: var(--font-color-disabled);
  cursor: default;
  background-color: transparent;
}
.tabs .tab.disabled a:not(:focus), .tabs .tab.disabled a:hover:not(:focus) {
  background-color: transparent;
}
.tabs .indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: var(--primary-color);
  will-change: left, right;
}

@media only screen and (max-width : 992.99px) {
  .tabs {
    display: flex;
  }
  .tabs .tab {
    flex-grow: 1;
  }
  .tabs .tab a {
    padding: 0 12px;
  }
}
.material-tooltip {
  padding: 0 8px;
  border-radius: 4px;
  background-color: var(--md-sys-color-inverse-surface);
  color: var(--md-sys-color-inverse-on-surface);
  font-family: var(--md-sys-typescale-body-small-font-family-name);
  font-size: var(--md-sys-typescale-body-small-font-size);
  line-height: var(--md-sys-typescale-body-small-line-height);
  font-weight: var(--md-sys-typescale-body-small-font-weight);
  min-height: 24px;
  opacity: 0;
  text-align: center;
  position: absolute;
  max-width: calc(100% - 4px);
  overflow: hidden;
  left: 0;
  top: 0;
  pointer-events: none;
  display: flex;
  align-items: center;
  visibility: hidden;
  z-index: 2000;
}

.backdrop {
  position: absolute;
  opacity: 0;
  height: 7px;
  width: 14px;
  border-radius: 0 0 50% 50%;
  background-color: var(--md-sys-color-inverse-surface);
  z-index: -1;
  transform-origin: 50% 0;
  visibility: hidden;
}

.btn, .btn-small, .btn-large, .btn-floating, .btn-flat {
  --font-size-icon: 16px;
  --padding: 24px;
  --padding-icon: 16px;
  --gap-icon: 8px;
  height: 40px;
  border: none;
  border-radius: 4px;
  padding-left: var(--padding);
  padding-right: var(--padding);
  color: var(--font-on-primary-color-main);
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  white-space: nowrap;
  outline: 0;
  user-select: none;
  transition: background-color 0.2s ease-out;
}

.btn.icon-left, .icon-left.btn-small, .icon-left.btn-large, .btn.icon-right, .icon-right.btn-small, .icon-right.btn-large {
  position: relative;
}

.btn.icon-left, .icon-left.btn-small, .icon-left.btn-large {
  padding-left: calc(var(--padding-icon) + var(--font-size-icon) + var(--gap-icon));
}

.btn.icon-right, .icon-right.btn-small, .icon-right.btn-large {
  padding-right: calc(var(--padding-icon) + var(--font-size-icon) + var(--gap-icon));
}

.btn.icon-left i, .icon-left.btn-small i, .icon-left.btn-large i, .btn.icon-right i, .icon-right.btn-small i, .icon-right.btn-large i {
  position: absolute;
  font-size: var(--font-size-icon);
}

.btn.icon-left i, .icon-left.btn-small i, .icon-left.btn-large i {
  left: var(--padding-icon);
}

.btn.icon-right i, .icon-right.btn-small i, .icon-right.btn-large i {
  right: var(--padding-icon);
}

.btn.disabled,
.btn-floating.disabled,
.btn-large.disabled,
.btn-small.disabled,
.btn-flat.disabled,
.btn:disabled,
.btn-floating:disabled,
.btn-large:disabled,
.btn-small:disabled,
.btn-flat:disabled,
.btn[disabled],
.btn-floating[disabled],
.btn-large[disabled],
.btn-small[disabled],
.btn-flat[disabled] {
  pointer-events: none;
  background-color: var(--background-color-disabled) !important;
  box-shadow: none;
  color: var(--font-color-disabled) !important;
  cursor: default;
}
.btn.disabled:hover,
.btn-floating.disabled:hover,
.btn-large.disabled:hover,
.btn-small.disabled:hover,
.btn-flat.disabled:hover,
.btn:disabled:hover,
.btn-floating:disabled:hover,
.btn-large:disabled:hover,
.btn-small:disabled:hover,
.btn-flat:disabled:hover,
.btn[disabled]:hover,
.btn-floating[disabled]:hover,
.btn-large[disabled]:hover,
.btn-small[disabled]:hover,
.btn-flat[disabled]:hover {
  background-color: var(--background-color-disabled) !important;
  color: var(--font-color-disabled) !important;
}

.btn.filled, .btn, .btn-small, .btn-large {
  background-color: var(--md-sys-color-primary);
}

.btn.tonal, .tonal.btn-small, .tonal.btn-large, .btn.elevated, .elevated.btn-small, .elevated.btn-large {
  background-color: var(--md-sys-color-secondary-container);
  color: var(--md-sys-color-on-secondary-container);
}

.btn.text, .text.btn-small, .text.btn-large, .btn-flat {
  box-shadow: none;
  background-color: transparent;
  color: var(--md-sys-color-primary);
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn.text:focus, .text.btn-small:focus, .text.btn-large:focus, .btn.text:hover, .text.btn-small:hover, .text.btn-large:hover, .btn-flat:focus, .btn-flat:hover {
  box-shadow: none;
  background-color: var(--hover-color);
}
.btn.text:focus, .text.btn-small:focus, .text.btn-large:focus, .btn-flat:focus {
  background-color: var(--focus-color);
}
.btn.text.disabled, .text.disabled.btn-small, .text.disabled.btn-large, .btn.text.btn.text[disabled], .text.text[disabled].btn-small, .text.text[disabled].btn-large, .btn.text.btn-flat[disabled], .btn-flat.disabled, .btn-flat.btn.text[disabled], .btn-flat.btn-flat[disabled] {
  background-color: transparent !important;
  color: var(--font-color-disabled) !important;
  cursor: default;
}

.btn.outlined, .outlined.btn-small, .outlined.btn-large {
  background-color: transparent;
  color: var(--primary-color);
  border: 1px solid var(--primary-color);
}

.btn:hover, .btn-small:hover, .btn-large:hover {
  background-color: var(--primary-color-raised-hover-solid);
}
.btn:focus, .btn-small:focus, .btn-large:focus {
  background-color: var(--primary-color-raised-focus-solid);
}

.btn-floating {
  color: var(--font-on-secondary-color-main);
  width: 40px;
  height: 40px;
  background-color: var(--secondary-color);
  border-radius: 16px;
  padding: 0;
  display: grid;
  grid-auto-flow: column;
  align-items: center;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: background-color 0.3s;
  cursor: pointer;
  vertical-align: middle;
}
.btn-floating:hover {
  background-color: var(--secondary-color-hover-solid);
}
.btn-floating:focus {
  background-color: var(--secondary-color-focus-solid);
}
.btn-floating:before {
  border-radius: 0;
}
.btn-floating.btn-large {
  width: 56px;
  height: 56px;
  padding: 0;
}
.btn-floating.btn-large.halfway-fab {
  bottom: -28px;
}
.btn-floating.btn-small {
  width: 30px;
  height: 30px;
}
.btn-floating.btn-small.halfway-fab {
  bottom: -15px;
}
.btn-floating.halfway-fab {
  position: absolute;
  right: 24px;
  bottom: -20px;
}
.btn-floating.halfway-fab.left {
  right: auto;
  left: 24px;
}
.btn-floating i {
  color: var(--font-on-secondary-color-main);
  font-size: 1.6rem;
  width: inherit;
  display: inline-block;
  text-align: center;
}

button.btn-floating {
  border: none;
}

.fixed-action-btn {
  position: fixed;
  right: 23px;
  bottom: 23px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 997;
}
.fixed-action-btn.active ul {
  visibility: visible;
  padding-left: 0;
  list-style-type: none;
}
.fixed-action-btn.direction-left, .fixed-action-btn.direction-right {
  padding: 0 0 0 15px;
}
.fixed-action-btn.direction-left ul, .fixed-action-btn.direction-right ul {
  text-align: right;
  right: 64px;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  left: auto;
  /*width 100% only goes to width of button container */
  width: 500px;
}
.fixed-action-btn.direction-left ul li, .fixed-action-btn.direction-right ul li {
  display: inline-block;
  margin: 7.5px 15px 0 0;
}
.fixed-action-btn.direction-right {
  padding: 0 15px 0 0;
}
.fixed-action-btn.direction-right ul {
  text-align: left;
  direction: rtl;
  left: 64px;
  right: auto;
}
.fixed-action-btn.direction-right ul li {
  margin: 7.5px 0 0 15px;
}
.fixed-action-btn.direction-bottom {
  padding: 0 0 15px 0;
}
.fixed-action-btn.direction-bottom ul {
  top: 64px;
  bottom: auto;
  display: flex;
  flex-direction: column-reverse;
}
.fixed-action-btn.direction-bottom ul li {
  margin: 15px 0 0 0;
}
.fixed-action-btn.toolbar {
  padding: 0;
  height: 56px;
}
.fixed-action-btn.toolbar.active > a i {
  opacity: 0;
}
.fixed-action-btn.toolbar ul {
  display: flex;
  top: 0;
  bottom: 0;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li {
  flex: 1;
  display: inline-block;
  margin: 0;
  height: 100%;
  transition: none;
}
.fixed-action-btn.toolbar ul li a {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  box-shadow: none;
  color: var(--font-on-secondary-color-main);
  line-height: 56px;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li a i {
  line-height: inherit;
}
.fixed-action-btn ul {
  left: 0;
  right: 0;
  text-align: center;
  position: absolute;
  bottom: 64px;
  margin: 0;
  visibility: hidden;
}
.fixed-action-btn ul li {
  margin-bottom: 15px;
}
.fixed-action-btn ul a.btn-floating {
  opacity: 0;
}
.fixed-action-btn .fab-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 40px;
  height: 40px;
  background-color: var(--secondary-color);
  border-radius: 16px;
  transform: scale(0);
}

.btn-large {
  height: 60px;
  font-size: 18px;
  padding: 0 28px;
}
.btn-large i {
  font-size: 1.6rem;
}

.btn-small {
  height: 30px;
  line-height: 30px;
  font-size: 13px;
}
.btn-small i {
  font-size: 1.2rem;
}

.btn-block {
  display: block;
}

.btn.rounded, .rounded.btn-large, .rounded.btn-small {
  border-radius: 99999px;
}

.dropdown-content {
  padding-left: 0;
  list-style-type: none;
  background-color: var(--surface-color);
  margin: 0;
  display: none;
  min-width: 100px;
  overflow-y: auto;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999;
  transform-origin: 0 0;
}
.dropdown-content:focus {
  outline: 0;
}
.dropdown-content li {
  clear: both;
  color: var(--font-color-main);
  cursor: pointer;
  min-height: 50px;
  line-height: 1.5rem;
  width: 100%;
  text-align: left;
}
.dropdown-content li:hover, .dropdown-content li.active {
  background-color: var(--hover-color);
}
.dropdown-content li:focus {
  outline: none;
}
.dropdown-content li.divider {
  min-height: 0;
  height: 1px;
}
.dropdown-content li > a, .dropdown-content li > span {
  font-size: 16px;
  color: var(--primary-color);
  display: block;
  line-height: 22px;
  padding: 14px 16px;
}
.dropdown-content li > span > label {
  top: 1px;
  left: 0;
  height: 18px;
}
.dropdown-content li > a > i {
  height: inherit;
  line-height: inherit;
  float: left;
  margin: 0 24px 0 0;
  width: 24px;
}

body.keyboard-focused .dropdown-content li:focus {
  background-color: var(--focus-color);
}

.input-field.col .dropdown-content [type=checkbox] + label {
  top: 1px;
  left: 0;
  height: 18px;
  transform: none;
}

.dropdown-trigger {
  cursor: pointer;
}

.modal {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  background-color: var(--background-color-level-16dp-solid);
  padding: 0;
  max-height: 70%;
  width: 55%;
  margin: auto;
  overflow-y: auto;
  border-radius: 2px;
  will-change: top, opacity;
}
.modal:focus {
  outline: none;
}
@media only screen and (max-width : 992.99px) {
  .modal {
    width: 80%;
  }
}
.modal h1, .modal h2, .modal h3, .modal h4 {
  margin-top: 0;
}
.modal .modal-content {
  padding: 24px;
  overflow-y: hidden;
}
.modal .modal-close {
  cursor: pointer;
}
.modal .modal-footer {
  border-radius: 0 0 2px 2px;
  background-color: var(--background-color-level-16dp-solid);
  padding: 4px 6px;
  height: 56px;
  width: 100%;
  text-align: right;
}
.modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-small, .modal .modal-footer .btn-flat {
  margin: 6px 0;
}

.modal-overlay {
  position: fixed;
  z-index: 999;
  top: -25%;
  left: 0;
  bottom: 0;
  right: 0;
  height: 125%;
  width: 100%;
  background: #000;
  display: none;
  will-change: opacity;
}

.modal.modal-fixed-footer {
  padding: 0;
  height: 70%;
}
.modal.modal-fixed-footer .modal-content {
  position: absolute;
  height: calc(100% - 56px);
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
}
.modal.modal-fixed-footer .modal-footer {
  border-top: 1px solid var(--separator-color);
  position: absolute;
  bottom: 0;
}

.modal.bottom-sheet {
  top: auto;
  bottom: -100%;
  margin: 0;
  width: 100%;
  max-height: 45%;
  border-radius: 0;
  will-change: bottom, opacity;
}

.collapsible {
  padding-left: 0;
  list-style-type: none;
  border-top: 1px solid var(--separator-color);
  border-right: 1px solid var(--separator-color);
  border-left: 1px solid var(--separator-color);
  margin: 0.5rem 0 1rem 0;
}

.collapsible-header {
  display: flex;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  padding: 1rem;
  border-bottom: 1px solid var(--separator-color);
  background-color: var(--surface-color);
}
.collapsible-header:focus {
  outline: 0;
}
.collapsible-header i {
  width: 2rem;
  font-size: 1.6rem;
  display: inline-block;
  text-align: center;
  margin-right: 1rem;
}

.collapsible-header::after {
  content: "▾";
  text-align: right;
  margin-right: 0.25rem;
  width: 100%;
}

.active .collapsible-header::after {
  content: "▴";
}

.keyboard-focused .collapsible-header:focus {
  background-color: var(--focus-color);
}

.collapsible-body {
  max-height: 0;
  border-bottom: 1px solid var(--separator-color);
  box-sizing: border-box;
  padding: 0 2rem;
  overflow: hidden;
  background-color: var(--surface-color);
}

.collapsible.popout {
  border: none;
  box-shadow: none;
}
.collapsible.popout > li {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  margin: 0 24px;
  transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.collapsible.popout > li.active {
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
  margin: 16px 0;
}

.chip {
  --font-size: 14px;
  --font-size-icon: 18px;
  --padding: 8px;
  background-color: var(--background-color-level-4dp);
  display: inline-flex;
  white-space: nowrap;
  gap: 8px;
  margin: 0;
  height: 32px;
  padding-left: var(--padding);
  padding-right: var(--padding);
  font-size: var(--font-size);
  font-weight: 500;
  color: var(--font-color-medium);
  border-radius: 8px;
  align-items: center;
  user-select: none;
  vertical-align: top;
}
.chip:focus {
  outline: none;
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}

.chip.outlined {
  background-color: transparent;
  border-color: var(--md-sys-color-outline);
  border-width: 1px;
  border-style: solid;
}

.chip > img {
  margin: 0;
  width: 24px;
  height: 24px;
  object-fit: cover;
  border-radius: 12px;
}

.chip > .material-icons {
  font-size: var(--font-size-icon);
}

.chip .close {
  border-radius: 50%;
  height: 24px;
  width: 24px;
  padding: 0;
  display: grid;
  justify-content: center;
  align-content: center;
  cursor: pointer;
}

.chip .close:hover {
  background-color: rgba(136, 136, 136, 0.5333333333);
}

.chips {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  border: none;
  border-bottom: 1px solid var(--font-color-medium);
  box-shadow: none;
  margin: 0 0 8px 0;
  padding: 4px;
  outline: none;
  transition: all 0.3s;
}
.chips.focus {
  border-bottom: 1px solid var(--primary-color);
  box-shadow: 0 1px 0 0 var(--primary-color);
}
.chips:hover {
  cursor: text;
}
.chips input:not([type]):not(.browser-default).input {
  background: none;
  border: 0;
  color: var(--font-color-main);
  display: inline-block;
  font-size: 16px;
  height: 32px;
  outline: 0;
  margin: 0;
  padding: 0;
  width: 120px;
}
.chips input:not([type]):not(.browser-default).input:focus {
  border: 0;
  box-shadow: none;
}
.chips .autocomplete-content {
  margin-top: 0;
  margin-bottom: 0;
}

.prefix ~ .chips {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.suffix ~ .chips {
  margin-right: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.chips:empty ~ label {
  font-size: 0.8rem;
  transform: translateY(-140%);
}

.materialboxed {
  display: block;
  cursor: zoom-in;
  position: relative;
  transition: opacity 0.4s;
  -webkit-backface-visibility: hidden;
}
.materialboxed:hover:not(.active) {
  opacity: 0.8;
}
.materialboxed.active {
  cursor: zoom-out;
}

#materialbox-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--md-sys-color-background);
  z-index: 1000;
  will-change: opacity;
}

.materialbox-caption {
  position: fixed;
  display: none;
  color: var(--font-color-main);
  line-height: 50px;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 0% 15%;
  height: 50px;
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
}

select:focus {
  outline: 1px solid var(--primary-color-raised-focus-solid);
}

button:focus {
  outline: none;
  background-color: var(--primary-color-raised-focus-solid);
}

label {
  font-size: 0.8rem;
  color: var(--font-color-medium);
}

/* Text Inputs + Textarea
   ========================================================================== */
/* Style Placeholders */
::placeholder {
  color: var(--font-color-medium);
}

/* Text inputs */
input:not([type]):not(.browser-default),
input[type=text]:not(.browser-default),
input[type=password]:not(.browser-default),
input[type=email]:not(.browser-default),
input[type=url]:not(.browser-default),
input[type=time]:not(.browser-default),
input[type=date]:not(.browser-default),
input[type=datetime]:not(.browser-default),
input[type=datetime-local]:not(.browser-default),
input[type=month]:not(.browser-default),
input[type=tel]:not(.browser-default),
input[type=number]:not(.browser-default),
input[type=search]:not(.browser-default),
textarea.materialize-textarea {
  outline: none;
  color: var(--font-color-main);
  width: 100%;
  font-size: 16px;
  height: 56px;
}

/* Validation Sass Placeholders */
/*
%custom-success-message {
  content: attr(data-success);
  color: $input-success-color;
}
%custom-error-message {
  content: attr(data-error);
  color: $input-error-color;
}
*/
.input-field {
  position: relative;
  clear: both;
}
.input-field input, .input-field textarea {
  box-sizing: border-box; /* https://stackoverflow.com/questions/1377719/padding-within-inputs-breaks-width-100*/
  padding: 0 16px;
  padding-top: 20px;
  background-color: var(--surface-color);
  border: none;
  border-radius: 4px;
  border-bottom: 1px solid var(--font-color-medium);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.input-field input:focus:not([readonly]), .input-field textarea:focus:not([readonly]) {
  border-bottom: 2px solid var(--primary-color);
  padding-top: 21px;
}
.input-field input:disabled, .input-field input[readonly=readonly], .input-field textarea:disabled, .input-field textarea[readonly=readonly] {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
  border-color: rgba(var(--md_sys_color_on-surface), 0.12);
  background-color: rgba(var(--md_sys_color_on-surface), 0.04);
}
.input-field input:focus:not([readonly]) + label, .input-field textarea:focus:not([readonly]) + label {
  color: var(--primary-color);
}
.input-field input:focus:not([readonly]) + label, .input-field input:not([placeholder=" "]) + label, .input-field input:not(:placeholder-shown) + label, .input-field textarea:focus:not([readonly]) + label, .input-field textarea:not([placeholder=" "]) + label, .input-field textarea:not(:placeholder-shown) + label {
  transform: scale(0.75);
  top: 8px;
}
.input-field input:disabled + label, .input-field input[readonly=readonly] + label, .input-field textarea:disabled + label, .input-field textarea[readonly=readonly] + label {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
}
.input-field input::placeholder {
  user-select: none;
}
.input-field > label {
  color: var(--font-color-medium);
  user-select: none;
  font-size: 16px;
  position: absolute;
  left: 16px;
  top: 16px;
  cursor: text;
  transform-origin: top left;
  transition: left 0.2s ease-out, top 0.2s ease-out, transform 0.2s ease-out;
}
.input-field .supporting-text {
  color: var(--font-color-medium);
  font-size: 12px;
  padding: 0 16px;
  margin-top: 4px;
}
.input-field .character-counter {
  color: var(--font-color-medium);
  font-size: 12px;
  float: right;
  padding: 0 16px;
  margin-top: 4px;
}
.input-field .prefix {
  position: absolute;
  left: 12px;
  top: 16px;
  user-select: none;
  display: flex;
  align-self: center;
}
.input-field .suffix {
  position: absolute;
  right: 12px;
  top: 16px;
  user-select: none;
}
.input-field .prefix ~ input, .input-field .prefix ~ textarea {
  padding-left: 52px;
}
.input-field .suffix ~ input, .input-field .suffix ~ textarea {
  padding-right: 52px;
}
.input-field .prefix ~ label {
  left: 52px;
}
.input-field.outlined input, .input-field.outlined textarea {
  padding-top: 0;
  background-color: var(--background-color);
  border: 1px solid var(--font-color-medium);
  border-radius: 4px;
}
.input-field.outlined input:focus:not([readonly]), .input-field.outlined textarea:focus:not([readonly]) {
  border: 2px solid var(--primary-color);
  padding-top: 0;
  margin-left: -1px;
}
.input-field.outlined input:focus:not([readonly]) + label, .input-field.outlined textarea:focus:not([readonly]) + label {
  color: var(--primary-color);
}
.input-field.outlined input:focus:not([readonly]) + label, .input-field.outlined input:not([placeholder=" "]) + label, .input-field.outlined input:not(:placeholder-shown) + label, .input-field.outlined textarea:focus:not([readonly]) + label, .input-field.outlined textarea:not([placeholder=" "]) + label, .input-field.outlined textarea:not(:placeholder-shown) + label {
  top: -8px;
  left: 16px;
  margin-left: -4px;
  padding: 0 4px;
  background-color: var(--background-color);
}
.input-field.outlined input:disabled, .input-field.outlined input[readonly=readonly], .input-field.outlined textarea:disabled, .input-field.outlined textarea[readonly=readonly] {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
  border-color: rgba(var(--md_sys_color_on-surface), 0.12);
}
.input-field.error input, .input-field.error textarea {
  border-color: var(--error-color);
}
.input-field.error input:focus:not([readonly]), .input-field.error textarea:focus:not([readonly]) {
  border-color: var(--error-color);
}
.input-field.error input:focus:not([readonly]) + label, .input-field.error textarea:focus:not([readonly]) + label {
  color: var(--error-color);
}
.input-field.error label {
  color: var(--error-color);
}
.input-field.error .supporting-text {
  color: var(--error-color);
}
.input-field.error .suffix {
  color: var(--error-color);
}

/* Search Field */
.searchbar .prefix {
  position: absolute;
  padding-left: 1rem;
  top: 0;
  user-select: none;
  display: flex;
  align-self: center;
}
.searchbar > input {
  border-width: 0;
  background-color: transparent;
  padding-left: 3rem;
}

.searchbar.has-sidebar {
  margin-left: 0;
}
@media only screen and (min-width : 993px) {
  .searchbar.has-sidebar {
    margin-left: 300px;
  }
}

/*
.input-field input[type=search] {
  display: block;
  line-height: inherit;

  .nav-wrapper & {
    height: inherit;
    padding-left: 4rem;
    width: calc(100% - 4rem);
    border: 0;
    box-shadow: none;
  }
  &:focus:not(.browser-default) {
    border: 0;
    box-shadow: none;
  }
  & + .label-icon {
    transform: none;
    left: 1rem;
  }
}
*/
/* Textarea */
textarea {
  width: 100%;
  height: 3rem;
  background-color: transparent;
}
textarea.materialize-textarea {
  padding-top: 26px !important;
  padding-bottom: 4px !important;
  line-height: normal;
  overflow-y: hidden; /* prevents scroll bar flash */
  resize: none;
  min-height: 3rem;
  box-sizing: border-box;
}

.hiddendiv {
  visibility: hidden;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word; /* future version of deprecated 'word-wrap' */
  padding-top: 1.2rem; /* prevents text jump on Enter keypress */
  position: absolute;
  top: 0;
  z-index: -1;
}

/* Autocomplete Items */
.autocomplete-content li .highlight {
  color: var(--font-color-main);
}
.autocomplete-content li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
}

/* Radio Buttons
   ========================================================================== */
[type=radio]:not(:checked),
[type=radio]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=radio]:not(:checked) + span,
[type=radio]:checked + span {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  transition: 0.28s ease;
  user-select: none;
}

[type=radio] + span:before,
[type=radio] + span:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 4px;
  width: 16px;
  height: 16px;
  z-index: 0;
  transition: 0.28s ease;
}

/* Unchecked styles */
[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after,
[type=radio]:checked + span:before,
[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border-radius: 50%;
}

[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after {
  border: 2px solid var(--font-color-medium);
}

[type=radio]:not(:checked) + span:after {
  transform: scale(0);
}

/* Checked styles */
[type=radio]:checked + span:before {
  border: 2px solid transparent;
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border: 2px solid var(--primary-color);
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:after {
  background-color: var(--primary-color);
}

[type=radio]:checked + span:after {
  transform: scale(1.02);
}

/* Radio With gap */
[type=radio].with-gap:checked + span:after {
  transform: scale(0.5);
}

/* Focused styles */
[type=radio].tabbed:focus + span:before {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

/* Disabled Radio With gap */
[type=radio].with-gap:disabled:checked + span:before {
  border: 2px solid var(--font-color-disabled);
}

[type=radio].with-gap:disabled:checked + span:after {
  border: none;
  background-color: var(--font-color-disabled);
}

/* Disabled style */
[type=radio]:disabled:not(:checked) + span:before,
[type=radio]:disabled:checked + span:before {
  background-color: transparent;
  border-color: var(--font-color-disabled);
}

[type=radio]:disabled + span {
  color: var(--font-color-disabled);
}

[type=radio]:disabled:not(:checked) + span:before {
  border-color: var(--font-color-disabled);
}

[type=radio]:disabled:checked + span:after {
  background-color: var(--font-color-disabled);
  border-color: var(--font-color-disabled);
}

/* Checkboxes
   ========================================================================== */
/* Remove default checkbox */
[type=checkbox]:not(:checked),
[type=checkbox]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=checkbox] {
  /* checkbox aspect */
}
[type=checkbox] + span:not(.lever) {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  user-select: none;
}
[type=checkbox] + span:not(.lever):before, [type=checkbox]:not(.filled-in) + span:not(.lever):after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid var(--font-color-medium);
  border-radius: 1px;
  margin-top: 3px;
  transition: 0.2s;
}
[type=checkbox]:not(.filled-in) + span:not(.lever):after {
  border: 0;
  transform: scale(0);
}
[type=checkbox]:not(:checked):disabled + span:not(.lever):before {
  border: none;
  background-color: var(--font-color-disabled);
}
[type=checkbox].tabbed:focus + span:not(.lever):after {
  transform: scale(1);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 10px var(--focus-color);
  background-color: var(--focus-color);
}

[type=checkbox]:checked + span:not(.lever):before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid var(--primary-color);
  border-bottom: 2px solid var(--primary-color);
  transform: rotate(40deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:checked:disabled + span:before {
  border-right: 2px solid var(--font-color-disabled);
  border-bottom: 2px solid var(--font-color-disabled);
}

/* Indeterminate checkbox */
[type=checkbox]:indeterminate + span:not(.lever):before {
  top: -11px;
  left: -12px;
  width: 10px;
  height: 22px;
  border-top: none;
  border-left: none;
  border-right: 2px solid var(--primary-color);
  border-bottom: none;
  transform: rotate(90deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:indeterminate:disabled + span:not(.lever):before {
  border-right: 2px solid var(--font-color-disabled);
  background-color: transparent;
}

[type=checkbox].filled-in + span:not(.lever):after {
  border-radius: 2px;
}
[type=checkbox].filled-in + span:not(.lever):before,
[type=checkbox].filled-in + span:not(.lever):after {
  content: "";
  left: 0;
  position: absolute;
  /* .1s delay is for check animation */
  transition: border 0.25s, background-color 0.25s, width 0.2s 0.1s, height 0.2s 0.1s, top 0.2s 0.1s, left 0.2s 0.1s;
  z-index: 1;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):before {
  width: 0;
  height: 0;
  border: 3px solid transparent;
  left: 6px;
  top: 10px;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):after {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid var(--font-color-medium);
  top: 0px;
  z-index: 0;
}
[type=checkbox].filled-in:checked + span:not(.lever):before {
  top: 0;
  left: 1px;
  width: 8px;
  height: 13px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid var(--font-on-primary-color-main);
  border-bottom: 2px solid var(--font-on-primary-color-main);
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:checked + span:not(.lever):after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid var(--primary-color);
  background-color: var(--primary-color);
  z-index: 0;
}
[type=checkbox].filled-in.tabbed:focus + span:not(.lever):after {
  border-radius: 2px;
  border-color: var(--font-color-medium);
  background-color: var(--focus-color);
}
[type=checkbox].filled-in.tabbed:checked:focus + span:not(.lever):after {
  border-radius: 2px;
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):before {
  background-color: transparent;
  border: 2px solid transparent;
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):after {
  border-color: transparent;
  background-color: var(--font-color-disabled);
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):before {
  background-color: transparent;
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):after {
  background-color: var(--font-color-disabled);
  border-color: var(--font-color-disabled);
}

/* Switch
   ========================================================================== */
.switch {
  --track-height: 32px;
  --track-width: 52px;
  --border-width: 2px;
  --size-off: 16px;
  --size-on: 24px;
  --icon-size: 16px;
  --gap-on: calc(((var(--track-height) - var(--size-on)) / 2) - var(--border-width));
  --gap-off: calc(((var(--track-height) - var(--size-off)) / 2) - var(--border-width));
}

.switch,
.switch * {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

.switch label {
  cursor: pointer;
}

.switch label input[type=checkbox] {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch label input[type=checkbox]:checked + .lever {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
.switch label input[type=checkbox]:checked + .lever:before, .switch label input[type=checkbox]:checked + .lever:after {
  top: var(--gap-on);
  left: calc(var(--track-width) - var(--size-on) - var(--gap-on) - 2 * var(--border-width));
  width: var(--size-on);
  height: var(--size-on);
}
.switch label .lever {
  content: "";
  display: inline-block;
  position: relative;
  width: var(--track-width);
  height: var(--track-height);
  border-style: solid;
  border-width: 2px;
  border-color: var(--md-sys-color-outline);
  border-radius: 15px;
  margin-right: 10px;
  transition: background 0.3s ease;
  vertical-align: middle;
  margin: 0 16px;
}
.switch label .lever:before, .switch label .lever:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: var(--size-off);
  height: var(--size-off);
  border-radius: 50%;
  left: var(--gap-off);
  top: var(--gap-off);
  transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease, transform 0.1s ease;
}
.switch label .lever:after {
  height: var(--size-off);
  width: var(--size-off);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:before,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::before,
input[type=checkbox]:not(:disabled) ~ .lever:hover::before {
  transform: scale(2.4);
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:hover::before {
  background-color: var(--primary-color-hover-opaque);
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:active::before,
input[type=checkbox]:checked:not(:disabled).tabbed:focus ~ .lever::before {
  background-color: var(--primary-color-focus-opaque);
}

input[type=checkbox]:not(:disabled) ~ .lever:hover::before {
  background-color: var(--hover-color);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:before,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::before {
  background-color: var(--focus-color);
}

.switch input[type=checkbox][disabled] + .lever {
  cursor: default;
  opacity: 0.5;
}

/* Select Field
   ========================================================================== */
select.browser-default {
  opacity: 1;
  color: var(--font-color-main);
}

select {
  opacity: 0;
  background-color: var(--surface-color);
  width: 100%;
  padding: 5px;
  border: 1px solid var(--separator-color);
  border-radius: 2px;
  height: 3rem;
}

.select-wrapper {
  /*
  &.valid .helper-text[data-success],
  &.invalid ~ .helper-text[data-error] {
    @extend %hidden-text;
  }

  &.valid {
    & > input.select-dropdown {
      @extend %valid-input-style;
    }
    & ~ .helper-text:after {
      //@extend %custom-success-message;
    }
  }

  &.invalid {
    & > input.select-dropdown,
    & > input.select-dropdown:focus {
      @extend %invalid-input-style;
    }
    & ~ .helper-text:after {
      //@extend %custom-error-message;
    }
  }

  &.valid + label,
  &.invalid + label {
    width: 100%;
    pointer-events: none;
  }
  & + label:after {
    //@extend %input-after-style;
  }
  */
  position: relative;
  /*
  input.select-dropdown {    
    &:focus {
      border-bottom: 1px solid $input-focus-color;
    }
    position: relative;
    cursor: pointer;
    background-color: transparent;
    border: none;
    border-bottom: $input-border;
    outline: none;
    height: $input-height;
    line-height: $input-height;
    width: 100%;
    font-size: $input-font-size;
    margin: $input-margin;
    padding: 0;
    display: block;
    user-select:none;
    z-index: 1;
    color: $select-input-color;
  }
  */
  /*
  & + label {
    position: absolute;
    top: -26px;
    font-size: $label-font-size;
  }
  */
}
.select-wrapper .caret {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 0;
  fill: var(--font-color-main);
}
.select-wrapper .hide-select {
  width: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  z-index: -1;
}

select:disabled {
  color: var(--font-color-disabled);
}

.select-wrapper.disabled + label {
  color: var(--font-color-disabled);
}
.select-wrapper.disabled .caret {
  fill: var(--font-color-disabled);
}

.select-wrapper input.select-dropdown:disabled {
  color: var(--font-color-disabled);
  cursor: default;
  user-select: none;
}

.select-wrapper i {
  color: var(--font-color-disabled);
}

.select-dropdown li.disabled,
.select-dropdown li.disabled > span,
.select-dropdown li.optgroup {
  color: var(--font-color-disabled);
  background-color: transparent;
}

body.keyboard-focused .select-dropdown.dropdown-content li:focus {
  background-color: var(--focus-color);
}

.select-dropdown.dropdown-content li:hover:not(.disabled) {
  background-color: var(--hover-color);
}
.select-dropdown.dropdown-content li.selected:not(.disabled) {
  background-color: var(--focus-color);
}

/*
// Prefix Icons
.prefix ~ .select-wrapper {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}
.prefix ~ label { margin-left: 3rem; }
// Suffix Icons
.suffix ~ .select-wrapper {
  margin-right: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}
.suffix ~ label { margin-right: 3rem; }
*/
.select-dropdown li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
  float: right;
}

.select-dropdown li.optgroup {
  border-top: 1px solid var(--hover-color);
}
.select-dropdown li.optgroup.selected > span {
  color: var(--font-color-main);
}
.select-dropdown li.optgroup > span {
  color: var(--font-color-medium);
}
.select-dropdown li.optgroup ~ li.optgroup-option {
  padding-left: 1rem;
}

/* File Input
   ========================================================================== */
.file-field {
  display: grid;
  grid-template-columns: min-content auto;
  gap: 10px;
}
.file-field .file-path-wrapper {
  overflow: hidden;
}
.file-field input.file-path {
  width: 100%;
}
.file-field .btn, .file-field .btn-large, .file-field .btn-small {
  height: 3rem;
  line-height: 3rem;
}
.file-field span {
  cursor: pointer;
}
.file-field input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  cursor: pointer;
  width: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  font-size: 20px;
  filter: alpha(opacity=0);
}
.file-field input[type=file]::-webkit-file-upload-button {
  display: none;
}

/* Range
   ========================================================================== */
.range-field {
  position: relative;
}

input[type=range],
input[type=range] + .thumb {
  cursor: pointer;
}

input[type=range] {
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  margin: 15px 0;
  padding: 0;
}
input[type=range]:focus {
  outline: none;
}

input[type=range] + .thumb {
  position: absolute;
  top: 10px;
  left: 0;
  border: none;
  height: 0;
  width: 0;
  border-radius: 50%;
  background-color: var(--primary-color);
  margin-left: 7px;
  transform-origin: 50% 50%;
  transform: rotate(-45deg);
}
input[type=range] + .thumb .value {
  display: block;
  width: 30px;
  text-align: center;
  color: var(--primary-color);
  font-size: 0;
  transform: rotate(45deg);
}
input[type=range] + .thumb.active {
  border-radius: 50% 50% 50% 0;
}
input[type=range] + .thumb.active .value {
  color: var(--font-on-primary-color-main);
  margin-left: -1px;
  margin-top: 8px;
  font-size: 10px;
}

input[type=range] {
  -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track {
  height: 3px;
  border: none;
}

input[type=range]::-webkit-slider-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
  -webkit-appearance: none;
  background-color: var(--primary-color);
  transform-origin: 50% 50%;
  margin: -5px 0 0 0;
}

.keyboard-focused input[type=range]:focus:not(.active)::-webkit-slider-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

input[type=range] {
  /*required for proper track sizing in FF*/
}

input[type=range]::-moz-range-track {
  height: 3px;
  border: none;
}

input[type=range]::-moz-focus-inner {
  border: 0;
}

input[type=range]::-moz-range-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
  margin-top: -5px;
}

input[type=range]:-moz-focusring {
  outline: 1px solid #fff;
  outline-offset: -1px;
}

.keyboard-focused input[type=range]:focus:not(.active)::-moz-range-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

input[type=range]::-ms-track {
  height: 3px;
  background: transparent;
  border-color: transparent;
  border-width: 6px 0;
  /*remove default tick marks*/
  color: transparent;
}

input[type=range]::-ms-fill-lower,
input[type=range]::-moz-range-progress {
  background: var(--primary-color);
}

input[type=range]::-ms-fill-upper,
input[type=range]::-moz-range-track {
  background: var(--slider-track-color);
}

input[type=range]::-ms-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
}

.keyboard-focused input[type=range]:focus:not(.active)::-ms-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

/***************
    Nav List
***************/
.table-of-contents.fixed {
  position: fixed;
}
.table-of-contents li {
  padding: 0;
}
.table-of-contents a {
  display: inline-block;
  font-weight: 400;
  color: var(--font-color-medium);
  padding-left: 16px;
  height: 2rem;
  line-height: 2rem;
  border-left: 1px solid var(--separator-color);
}
.table-of-contents a:hover {
  color: var(--font-color-main);
  padding-left: 15px;
}
.table-of-contents a.active {
  color: var(--primary-color);
  font-weight: 500;
  padding-left: 14px;
  border-left: 2px solid var(--primary-color);
}

/* This should be an UL-Element*/
.sidenav {
  position: fixed;
  width: 300px;
  left: 0;
  top: 0;
  margin: 0;
  transform: translateX(-100%);
  height: 100vh;
  padding: 0;
  background-color: var(--background-color-level-16dp-solid);
  z-index: 999;
  overflow-y: auto;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateX(-105%);
  user-select: none;
  /* Hover only on top row */
}
.sidenav.right-aligned {
  right: 0;
  transform: translateX(105%);
  left: auto;
  transform: translateX(100%);
}
.sidenav .collapsible {
  margin: 0;
}
.sidenav a:hover {
  background-color: var(--hover-color);
}
.sidenav a:focus {
  background-color: var(--focus-color);
}
.sidenav li.active > a:not(.collapsible-header):not(.btn):not(.btn-large):not(.btn-small):not(.btn-large):not(.btn-small):not(.btn-flat):not(.btn-large):not(.btn-floating) {
  color: var(--font-on-secondary-container-color);
  background-color: var(--secondary-container-color);
}
.sidenav .collapsible-body > ul {
  padding-left: 10px;
}
.sidenav li {
  list-style: none;
  display: grid;
  align-content: center;
}
.sidenav li > a {
  /* https://stackoverflow.com/questions/5848090/full-width-hover-background-for-nested-lists */
  margin: 0 12px;
  padding: 0 16px;
  /*
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  */
  display: flex;
  height: 48px;
  font-size: 14px;
  font-weight: 500;
  align-items: center;
  overflow: hidden;
  border-radius: 100px;
  /* TODO: Use special class in future like "mw-icon" */
}
.sidenav li > a:not(.btn):not(.btn-large):not(.btn-small):not(.btn-flat):not(.btn-large):not(.btn-floating) {
  color: var(--font-color-main);
}
.sidenav li > a.btn, .sidenav li > a.btn-small, .sidenav li > a.btn-large, .sidenav li > a.btn-flat, .sidenav li > a.btn-floating {
  margin: 10px 15px;
}
.sidenav li > a > .material-icons, .sidenav li > a > .material-symbols-outlined, .sidenav li > a > .material-symbols-rounded, .sidenav li > a > .material-symbols-sharp {
  display: inline-flex;
  vertical-align: middle;
  color: var(--font-color-medium);
  margin-right: 12px;
}
.sidenav .divider {
  margin: 8px 0 0 0;
}
.sidenav .subheader {
  cursor: initial;
  pointer-events: none;
  color: var(--font-color-medium);
  font-size: 14px;
  font-weight: 500;
  line-height: 48px;
}
.sidenav .user-view {
  position: relative;
  padding: 32px 32px 0;
  margin-bottom: 8px;
}
.sidenav .user-view > a {
  height: auto;
  padding: 0;
}
.sidenav .user-view > a:hover {
  background-color: transparent;
}
.sidenav .user-view .background {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.sidenav .user-view .circle, .sidenav .user-view .name, .sidenav .user-view .email {
  display: block;
}
.sidenav .user-view .circle {
  height: 64px;
  width: 64px;
}
.sidenav .user-view .name,
.sidenav .user-view .email {
  font-size: 14px;
  line-height: 24px;
}
.sidenav .user-view .name {
  margin-top: 16px;
  font-weight: 500;
}
.sidenav .user-view .email {
  padding-bottom: 16px;
  font-weight: 400;
}

.drag-target {
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
}
.drag-target.right-aligned {
  right: 0;
}

.sidenav.sidenav-fixed {
  left: 0;
  transform: translateX(0);
  position: fixed;
}
.sidenav.sidenav-fixed.right-aligned {
  right: 0;
  left: auto;
}

@media only screen and (max-width : 992.99px) {
  .sidenav.sidenav-fixed {
    transform: translateX(-105%);
  }
  .sidenav.sidenav-fixed.right-aligned {
    transform: translateX(105%);
  }
  .sidenav > a {
    padding: 0 16px;
  }
  .sidenav .user-view {
    padding: 16px 16px 0;
  }
}
.sidenav .collapsible-body {
  padding: 0;
}

.sidenav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  height: 120vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 997;
  display: none;
}

.sidenav .collapsible,
.sidenav.sidenav-fixed .collapsible {
  border: none;
  box-shadow: none;
}
.sidenav .collapsible-header,
.sidenav.sidenav-fixed .collapsible-header {
  border: none;
}
.sidenav .collapsible-body,
.sidenav.sidenav-fixed .collapsible-body {
  border: none;
}

.progress {
  position: relative;
  height: 4px;
  display: block;
  width: 100%;
  border-radius: 2px;
  margin: 0.5rem 0 1rem 0;
  overflow: hidden;
}
.progress .determinate {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: var(--primary-color);
  transition: width 0.3s linear;
}
.progress .indeterminate {
  background-color: var(--primary-color);
}
.progress .indeterminate:before {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}
.progress .indeterminate:after {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  animation-delay: 1.15s;
}

@keyframes indeterminate {
  0% {
    left: -35%;
    right: 100%;
  }
  60% {
    left: 100%;
    right: -90%;
  }
  100% {
    left: 100%;
    right: -90%;
  }
}
@keyframes indeterminate-short {
  0% {
    left: -200%;
    right: 100%;
  }
  60% {
    left: 107%;
    right: -8%;
  }
  100% {
    left: 107%;
    right: -8%;
  }
}
/*
    @license
    Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
    This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
    The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
    The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
    Code distributed by Google as part of the polymer project is also
    subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */
/**************************/
/* STYLES FOR THE SPINNER */
/**************************/
/*
 * Constants:
 *      STROKEWIDTH = 3px
 *      ARCSIZE     = 270 degrees (amount of circle the arc takes up)
 *      ARCTIME     = 1333ms (time it takes to expand and contract arc)
 *      ARCSTARTROT = 216 degrees (how much the start location of the arc
 *                                should rotate each time, 216 gives us a
 *                                5 pointed star shape (it's 360/5 * 3).
 *                                For a 7 pointed star, we might do
 *                                360/7 * 3 = 154.286)
 *      CONTAINERWIDTH = 28px
 *      SHRINK_TIME = 400ms
 */
.preloader-wrapper {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
}
.preloader-wrapper.small {
  width: 36px;
  height: 36px;
}
.preloader-wrapper.big {
  width: 64px;
  height: 64px;
}
.preloader-wrapper.active {
  /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
  -webkit-animation: container-rotate 1568ms linear infinite;
  animation: container-rotate 1568ms linear infinite;
}

@-webkit-keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes container-rotate {
  to {
    transform: rotate(360deg);
  }
}
.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-color: var(--primary-color);
}

.spinner-blue,
.spinner-blue-only {
  border-color: #4285f4;
}

.spinner-red,
.spinner-red-only {
  border-color: #db4437;
}

.spinner-yellow,
.spinner-yellow-only {
  border-color: #f4b400;
}

.spinner-green,
.spinner-green-only {
  border-color: #0f9d58;
}

/**
 * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
 *
 * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
 * guarantee that the animation will start _exactly_ after that value. So we avoid using
 * animation-delay and instead set custom keyframes for each color (as redundant as it
 * seems).
 *
 * We write out each animation in full (instead of separating animation-name,
 * animation-duration, etc.) because under the polyfill, Safari does not recognize those
 * specific properties properly, treats them as -webkit-animation, and overrides the
 * other animation rules. See https://github.com/Polymer/platform/issues/53.
 */
.active .spinner-layer.spinner-blue {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-red {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-yellow {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-green {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer,
.active .spinner-layer.spinner-blue-only,
.active .spinner-layer.spinner-red-only,
.active .spinner-layer.spinner-yellow-only,
.active .spinner-layer.spinner-green-only {
  /* durations: 4 * ARCTIME */
  opacity: 1;
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg);
  } /* 0.5 * ARCSIZE */
  25% {
    -webkit-transform: rotate(270deg);
  } /* 1   * ARCSIZE */
  37.5% {
    -webkit-transform: rotate(405deg);
  } /* 1.5 * ARCSIZE */
  50% {
    -webkit-transform: rotate(540deg);
  } /* 2   * ARCSIZE */
  62.5% {
    -webkit-transform: rotate(675deg);
  } /* 2.5 * ARCSIZE */
  75% {
    -webkit-transform: rotate(810deg);
  } /* 3   * ARCSIZE */
  87.5% {
    -webkit-transform: rotate(945deg);
  } /* 3.5 * ARCSIZE */
  to {
    -webkit-transform: rotate(1080deg);
  } /* 4   * ARCSIZE */
}
@keyframes fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg);
  } /* 0.5 * ARCSIZE */
  25% {
    transform: rotate(270deg);
  } /* 1   * ARCSIZE */
  37.5% {
    transform: rotate(405deg);
  } /* 1.5 * ARCSIZE */
  50% {
    transform: rotate(540deg);
  } /* 2   * ARCSIZE */
  62.5% {
    transform: rotate(675deg);
  } /* 2.5 * ARCSIZE */
  75% {
    transform: rotate(810deg);
  } /* 3   * ARCSIZE */
  87.5% {
    transform: rotate(945deg);
  } /* 3.5 * ARCSIZE */
  to {
    transform: rotate(1080deg);
  } /* 4   * ARCSIZE */
}
@-webkit-keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@-webkit-keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@-webkit-keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/**
 * Patch the gap that appear between the two adjacent div.circle-clipper while the
 * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
 */
.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.gap-patch .circle {
  width: 1000%;
  left: -450%;
}

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}
.circle-clipper .circle {
  width: 200%;
  height: 100%;
  border-width: 3px; /* STROKEWIDTH */
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  border-radius: 50%;
  -webkit-animation: none;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.circle-clipper.left .circle {
  left: 0;
  border-right-color: transparent !important;
  -webkit-transform: rotate(129deg);
  transform: rotate(129deg);
}
.circle-clipper.right .circle {
  left: -100%;
  border-left-color: transparent !important;
  -webkit-transform: rotate(-129deg);
  transform: rotate(-129deg);
}

.active .circle-clipper.left .circle {
  /* duration: ARCTIME */
  -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .circle-clipper.right .circle {
  /* duration: ARCTIME */
  -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg);
  }
  50% {
    -webkit-transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(130deg);
  }
}
@keyframes left-spin {
  from {
    transform: rotate(130deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  to {
    transform: rotate(130deg);
  }
}
@-webkit-keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
  }
  to {
    -webkit-transform: rotate(-130deg);
  }
}
@keyframes right-spin {
  from {
    transform: rotate(-130deg);
  }
  50% {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-130deg);
  }
}
#spinnerContainer.cooldown {
  /* duration: SHRINK_TIME */
  -webkit-animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
  animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
}

@-webkit-keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.slider {
  position: relative;
  height: 400px;
  width: 100%;
}
.slider.fullscreen {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.slider.fullscreen ul.slides {
  padding-left: 0;
  list-style-type: none;
  height: 100%;
}
.slider.fullscreen ul.indicators {
  padding-left: 0;
  list-style-type: none;
  z-index: 2;
  bottom: 30px;
}
.slider.fullscreen ul.indicators .indicator-item {
  background-color: var(--carousel-indicator-color);
}
.slider.fullscreen ul.indicators .indicator-item.active {
  background-color: var(--carousel-indicator-active-color);
}
.slider .slides {
  background-color: var(--surface-color);
  margin: 0;
  height: 400px;
  padding-left: 0;
  list-style-type: none;
}
.slider .slides li {
  padding-left: 0;
  list-style-type: none;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit;
  overflow: hidden;
}
.slider .slides li img {
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}
.slider .slides li .caption {
  color: #fff;
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  opacity: 0;
}
.slider .slides li .caption p {
  color: rgba(255, 255, 255, 0.75);
}
.slider .slides li.active {
  z-index: 2;
}
.slider .indicators {
  padding-left: 0;
  list-style-type: none;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.slider .indicators .indicator-item {
  display: inline-block;
  position: relative;
  height: 16px;
  width: 16px;
  margin: 0 12px;
}
.slider .indicators .indicator-item-btn {
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
  background-color: var(--slider-track-color);
  transition: background-color 0.3s;
  border-radius: 50%;
  border-width: 0;
  width: 100%;
  height: 100%;
}
.slider .indicators .indicator-item-btn.active {
  background-color: var(--primary-color);
}

.carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 400px;
  perspective: 500px;
  transform-style: preserve-3d;
  transform-origin: 0% 50%;
}
.carousel.carousel-slider {
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-fixed-item {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  z-index: 1;
}
.carousel.carousel-slider .carousel-fixed-item.with-indicators {
  bottom: 68px;
}
.carousel.carousel-slider .carousel-item {
  width: 100%;
  height: 100%;
  min-height: 400px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-item h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 32px;
}
.carousel.carousel-slider .carousel-item p {
  font-size: 15px;
}
.carousel .carousel-item {
  visibility: hidden;
  width: 200px;
  height: 200px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel .carousel-item > img {
  width: 100%;
}
.carousel .indicators {
  padding-left: 0;
  list-style-type: none;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.carousel .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 24px 4px;
  background-color: var(--carousel-indicator-color);
  transition: background-color 0.3s;
  border-radius: 50%;
}
.carousel .indicators .indicator-item.active {
  background-color: var(--carousel-indicator-active-color);
}
.carousel.scrolling .carousel-item .materialboxed,
.carousel .carousel-item:not(.active) .materialboxed {
  pointer-events: none;
}

.tap-target-wrapper {
  width: 800px;
  height: 800px;
  position: fixed;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s 0.3s;
}

.tap-target-wrapper.open {
  visibility: visible;
  transition: visibility 0s;
}
.tap-target-wrapper.open .tap-target {
  transform: scale(1);
  opacity: 0.95;
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.tap-target-wrapper.open .tap-target-wave::before {
  transform: scale(1);
}
.tap-target-wrapper.open .tap-target-wave::after {
  visibility: visible;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  transition: opacity 0.3s, transform 0.3s, visibility 0s 1s;
}

.tap-target {
  position: absolute;
  font-size: 1rem;
  border-radius: 50%;
  background-color: var(--secondary-color);
  color: var(--font-on-secondary-color-main);
  box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.14), 0 10px 50px 0 rgba(0, 0, 0, 0.12), 0 30px 10px -20px rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tap-target-content {
  position: relative;
  display: table-cell;
}

.tap-target-wave {
  position: absolute;
  border-radius: 50%;
  z-index: 10001;
}
.tap-target-wave::before, .tap-target-wave::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: var(--surface-color);
}
.tap-target-wave::before {
  transform: scale(0);
  transition: transform 0.3s;
}
.tap-target-wave::after {
  visibility: hidden;
  transition: opacity 0.3s, transform 0.3s, visibility 0s;
  z-index: -1;
}

.tap-target-origin {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  position: absolute !important;
}
.tap-target-origin:not(.btn):not(.btn-large):not(.btn-small), .tap-target-origin:not(.btn):not(.btn-large):not(.btn-small):hover {
  background: none;
}

@media only screen and (max-width: 600px) {
  .tap-target, .tap-target-wrapper {
    width: 600px;
    height: 600px;
  }
}
.pulse {
  overflow: visible;
  position: relative;
}
.pulse::before {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: inherit;
  border-radius: inherit;
  transition: opacity 0.3s, transform 0.3s;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  z-index: -1;
}

@keyframes pulse-animation {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(1.5);
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}
/* Modal */
.datepicker-modal {
  max-width: 325px;
  min-width: 300px;
  max-height: none;
}

.datepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
  background-color: var(--surface-color);
}

.datepicker-controls {
  display: flex;
  justify-content: space-between;
  width: 280px;
  margin: 0 auto;
}
.datepicker-controls .selects-container {
  display: flex;
}
.datepicker-controls .select-wrapper input {
  border-bottom: none;
  text-align: center;
  margin: 0;
}
.datepicker-controls .select-wrapper input:focus {
  border-bottom: none;
}
.datepicker-controls .select-wrapper .caret {
  display: none;
}
.datepicker-controls .select-year input {
  width: 50px;
}
.datepicker-controls .select-month input {
  width: 80px;
}
.datepicker-controls .month-prev,
.datepicker-controls .month-next {
  display: inline-flex;
  align-items: center;
}
.datepicker-controls .month-prev > svg,
.datepicker-controls .month-next > svg {
  fill: var(--font-color-medium);
}

.month-prev, .month-next {
  margin-top: 4px;
  cursor: pointer;
  background-color: transparent;
  border: none;
}

/* Date Display */
.datepicker-date-display {
  flex: 1 auto;
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
  padding: 20px 22px;
  font-weight: 500;
}
.datepicker-date-display .year-text {
  display: block;
  font-size: 1.5rem;
  line-height: 25px;
  color: var(--font-on-primary-color-main);
}
.datepicker-date-display .date-text {
  display: block;
  font-size: 2.8rem;
  line-height: 47px;
  font-weight: 500;
}

/* Calendar */
.datepicker-calendar-container {
  flex: 2.5 auto;
}

.datepicker-table {
  width: 280px;
  font-size: 1rem;
  margin: 0 auto;
}
.datepicker-table thead {
  border-bottom: none;
}
.datepicker-table th {
  padding: 10px 5px;
  text-align: center;
}
.datepicker-table tr {
  border: none;
}
.datepicker-table abbr {
  text-decoration: none;
  color: var(--font-color-medium);
}
.datepicker-table td {
  color: var(--font-color-main);
  border-radius: 50%;
  padding: 0;
}
.datepicker-table td.is-today {
  color: var(--primary-color);
}
.datepicker-table td.is-selected {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.datepicker-table td.is-outside-current-month, .datepicker-table td.is-disabled {
  color: var(--font-color-disabled);
  pointer-events: none;
}

.datepicker-day-button {
  background-color: transparent;
  border: none;
  line-height: 38px;
  display: block;
  width: 100%;
  border-radius: 50%;
  padding: 0 5px;
  cursor: pointer;
  color: inherit;
}
.datepicker-day-button:hover {
  background-color: var(--primary-color-hover-opaque);
}
.datepicker-day-button:focus {
  background-color: var(--primary-color-focus-opaque);
}

/* Footer */
.datepicker-footer {
  width: 280px;
  margin: 0 auto;
  padding-bottom: 5px;
  display: flex;
  justify-content: space-between;
}

.datepicker-cancel,
.datepicker-clear,
.datepicker-today,
.datepicker-done {
  color: var(--primary-color);
  padding: 0 1rem;
}

.datepicker-clear {
  color: var(--error-color);
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .datepicker-modal {
    max-width: 625px;
  }
  .datepicker-container.modal-content {
    flex-direction: row;
  }
  .datepicker-date-display {
    flex: 0 1 270px;
  }
  .datepicker-controls,
  .datepicker-table,
  .datepicker-footer {
    width: 320px;
  }
  .datepicker-day-button {
    line-height: 44px;
  }
}
/* Timepicker Containers */
.timepicker-modal {
  max-width: 325px;
  max-height: none;
}

.timepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
}

.text-primary {
  color: var(--font-on-primary-color-main);
}

/* Clock Digital Display */
.timepicker-digital-display {
  width: 200px;
  flex: 1 auto;
  background-color: var(--primary-color);
  padding: 10px;
  font-weight: 300;
}

.timepicker-text-container {
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  color: var(--font-on-primary-color-medium);
  font-weight: 400;
  position: relative;
  user-select: none;
}
.timepicker-text-container input[type=text] {
  height: 4rem;
  color: rgba(255, 255, 255, 0.6);
  border-bottom: 0px;
  font-size: 4rem;
  direction: ltr;
}

.timepicker-input-hours,
.timepicker-input-minutes,
.timepicker-span-am-pm div {
  cursor: pointer;
}

input[type=text].timepicker-input-hours {
  text-align: right;
  width: 28%;
  margin-right: 3px;
}

input[type=text].timepicker-input-minutes {
  width: 33%;
  margin-left: 3px;
}

input[type=text].text-primary {
  color: rgb(255, 255, 255);
}

.timepicker-display-am-pm {
  font-size: 1.3rem;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  font-weight: 400;
}

/* Analog Clock Display */
.timepicker-analog-display {
  flex: 2.5 auto;
  background-color: var(--surface-color);
}

.timepicker-plate {
  background-color: var(--background-color-level-4dp);
  border-radius: 50%;
  width: 270px;
  height: 270px;
  overflow: visible;
  position: relative;
  margin: auto;
  margin-top: 25px;
  margin-bottom: 5px;
  user-select: none;
}

.timepicker-canvas,
.timepicker-dial {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.timepicker-minutes {
  visibility: hidden;
}

.timepicker-tick {
  border-radius: 50%;
  color: var(--font-color-main);
  line-height: 40px;
  text-align: center;
  width: 40px;
  height: 40px;
  position: absolute;
  cursor: pointer;
  font-size: 15px;
}

.timepicker-tick.active,
.timepicker-tick:hover {
  background-color: var(--primary-color-hover-opaque);
}

.timepicker-dial {
  transition: transform 350ms, opacity 350ms;
}

.timepicker-dial-out {
  opacity: 0;
}
.timepicker-dial-out.timepicker-hours {
  transform: scale(1.1, 1.1);
}
.timepicker-dial-out.timepicker-minutes {
  transform: scale(0.8, 0.8);
}

.timepicker-canvas {
  transition: opacity 175ms;
}
.timepicker-canvas line {
  stroke: var(--primary-color);
  stroke-width: 4;
  stroke-linecap: round;
}

.timepicker-canvas-out {
  opacity: 0.25;
}

.timepicker-canvas-bearing {
  stroke: none;
  fill: var(--primary-color);
}

.timepicker-canvas-bg {
  stroke: none;
  fill: var(--primary-color);
}

/* Footer */
.timepicker-footer {
  margin: 0 auto;
  padding: 5px 1rem;
  display: flex;
  justify-content: space-between;
}

.timepicker-clear {
  color: var(--error-color);
}

.timepicker-close {
  color: var(--primary-color);
}

.timepicker-clear,
.timepicker-close {
  padding: 0 20px;
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .timepicker-modal {
    max-width: 600px;
  }
  .timepicker-container.modal-content {
    flex-direction: row;
  }
  .timepicker-text-container {
    top: 32%;
  }
  .timepicker-display-am-pm {
    position: relative;
    right: auto;
    bottom: auto;
    text-align: center;
    margin-top: 1.2rem;
  }
}
.visita-resumen {
  --card-color: var(--primary-color);
}
.visita-resumen .card-image {
  background-color: var(--card-color);
  padding: 1rem;
}
.visita-resumen .card-image i {
  font-size: 3rem;
  color: var(--font-on-primary-color-main);
  opacity: 0.9;
}
.visita-resumen .indicadores {
  margin: 1rem 0;
  cursor: help;
}
.visita-resumen .indicadores .indicador:not(:last-child) {
  margin-right: 1rem;
}
.visita-resumen .folio {
  font-size: 2rem;
  color: var(--font-color-main);
}
.visita-resumen .tipo, .visita-resumen .proveedor {
  margin-top: 0.5rem !important;
  font-size: 1.1rem;
}
.visita-resumen .tipo strong, .visita-resumen .proveedor strong {
  color: var(--font-on-primary-color-medium);
}
.card.itinerario {
  padding: 5px 1rem;
}
.card.itinerario .fecha, .card.itinerario .hora {
  margin-top: 5px;
  margin-bottom: 0 !important;
}

.complemento.estado p {
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
}

.visitante-resumen, .empleado-resumen {
  --status-color: var(--primary-color);
  position: relative;
  overflow: visible;
  padding-top: 72px;
  margin-top: 45px;
}
.visitante-resumen .pp, .empleado-resumen .pp {
  position: absolute;
  top: -45px;
  left: 50%;
  max-width: 128px;
  transform: translateX(-50%);
  border: 3px solid var(--status-color);
  border-radius: 80px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
.visitante-resumen .indicadores, .empleado-resumen .indicadores {
  margin: 1rem 0;
  cursor: help;
}
.visitante-resumen .indicadores .indicador:not(:last-child), .empleado-resumen .indicadores .indicador:not(:last-child) {
  margin-right: 1rem;
}
.visitante-resumen .procedencia, .visitante-resumen .estado, .visitante-resumen .situacion, .empleado-resumen .procedencia, .empleado-resumen .estado, .empleado-resumen .situacion {
  margin-top: 5px !important;
}
.visitante-resumen .nombre, .empleado-resumen .nombre {
  margin-bottom: 1rem;
  font-weight: bold;
  white-space: nowrap;
}

.unidad-resumen .card-image {
  background-color: var(--primary-color);
  padding: 1rem;
}
.unidad-resumen .card-image i {
  font-size: 3rem;
  color: var(--font-on-primary-color-main);
  opacity: 0.9;
}
.unidad-resumen .indicadores {
  margin-top: 1rem;
  cursor: help;
}
.unidad-resumen .indicadores .indicador:not(:last-child) {
  margin-right: 1rem;
}
.unidad-resumen .modelo, .unidad-resumen .tipo {
  margin-top: 0.5rem !important;
  font-size: 1.1rem;
}
.unidad-resumen .modelo strong, .unidad-resumen .tipo strong {
  color: var(--font-on-primary-color-medium);
}
.unidad-resumen .label {
  font-weight: bold;
  color: var(--font-color-main);
}

.timeline {
  --child-min-cross-axis-height: 8rem;
  --background-color: var(--surface-color);
  display: flex;
  position: relative;
}
.timeline::before {
  content: "";
  position: absolute;
}
.timeline.horizontal {
  flex-direction: row;
}
.timeline.horizontal::before {
  height: 2px;
  width: 100%;
  background-color: var(--primary-color);
  top: 50%;
  transform: translateY(-50%);
}
.timeline.horizontal.alternate .timeslot:nth-child(even) {
  flex-direction: column-reverse;
}
.timeline.horizontal.alternate .timeslot:nth-child(even) .data {
  align-items: center;
}
.timeline.horizontal.alternate .timeslot:nth-child(even) .data::before {
  width: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 15px solid var(--primary-color);
  content: " ";
}
.timeline.horizontal.alternate .timeslot:nth-child(even) .complemento {
  justify-content: flex-end;
}
.timeline.horizontal.alternate .timeslot:nth-child(odd) {
  flex-direction: column;
}
.timeline.horizontal.alternate .timeslot:nth-child(odd) .data {
  align-items: center;
}
.timeline.horizontal.alternate .timeslot:nth-child(odd) .data::after {
  width: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 15px solid var(--primary-color);
  content: " ";
}
.timeline.horizontal .timeslot .data, .timeline.horizontal .timeslot .complemento {
  flex-direction: column;
  min-height: var(--child-min-cross-axis-height);
}
.timeline.horizontal .timeslot .block {
  height: 2rem;
}
.timeline.vertical {
  flex-direction: column;
}
.timeline.vertical.alternate .timeslot:nth-child(odd) {
  flex-direction: row-reverse;
}
.timeline.vertical.alternate .timeslot:nth-child(even) {
  flex-direction: row;
}
.timeline.vertical .timeslot {
  width: var(--child-cross-axis-height);
}
.timeline.between {
  justify-content: space-between;
}
.timeline.center {
  justify-content: center;
}
.timeline.even {
  justify-content: space-evenly;
}
.timeline.start {
  justify-content: flex-start;
}
.timeline.end {
  justify-content: flex-end;
}
.timeline.around {
  justify-content: space-around;
}
.timeline .timeslot {
  display: flex;
  position: relative;
  justify-content: center;
}
.timeline .timeslot .data, .timeline .timeslot .complemento {
  display: flex;
}
.timeline .timeslot::before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  border: 2px solid var(--primary-color);
  border-radius: 20px;
  background-color: #eee;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.timeline .timeslot.active::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border: 2px solid var(--primary-color);
  border-radius: 20px;
  background-color: var(--primary-color);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.timeline .timeslot.active .itinerario {
  background-color: var(--primary-color);
  color: #eee;
}
.timeline .timeslot.closed::before {
  background-color: var(--primary-color);
}

.cumpleanos-item {
  position: relative;
  margin: 5px 1rem;
  text-align: center;
  padding: 32px 5px 32px 5px;
  color: var(--font-color-main);
  transition: all 0.15s;
}
.cumpleanos-item .data {
  position: absolute;
  padding: 15px;
  height: 60px;
  font-size: 0.7rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 10px);
}
.cumpleanos-item .data::after {
  content: attr(data-edad);
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(25deg);
  font-size: 1rem;
}
.cumpleanos-item .data > * {
  margin-top: 5px;
}
.cumpleanos-item .gorrito {
  position: absolute;
  top: 32px;
  left: 65%;
  transform: translate(-50%, -50%);
}
.cumpleanos-item:hover {
  background-color: var(--bg-color-hover);
  transform: scale(1.05);
}
.cumpleanos-item.hbd {
  border: 1px dashed var(--primary-color);
  border-radius: 5px;
}

.login-logo {
  max-width: 300px;
}

@font-face {
  font-family: "MaterialSymbolsSharp";
  font-style: normal;
  src: url(/build/fonts/MaterialSymbolsSharp.14034e54.woff) format("woff");
}
@font-face {
  font-family: "MaterialSymbolsFilled";
  src: url(/build/fonts/MaterialSymbolsSharp.14034e54.woff) format("woff");
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
}
.primary {
  background-color: var(--primary-color);
}

.text-primary {
  color: var(--primary-color);
}

.text-on-primary {
  color: var(--font-on-primary-color-main);
}

button.primary {
  background-color: var(--primary-color);
  color: white;
}
button.primary:hover {
  background-color: var(--primary-color-dark);
}

.material-icons {
  font-family: "MaterialSymbolsSharp" !important;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
}

.row {
  gap: 1rem;
}
.row:not(:first-child) {
  margin-top: 1rem;
}

.module {
  padding: 1rem;
}

.card.horizontal.reverse {
  flex-direction: row-reverse;
}

body {
  background-color: #eee;
}

.surface, .switch label input[type=checkbox]:checked + .lever:after {
  --md-elevation-level: 3;
}

input:required + label::before,
input:required + span::before,
textarea:required + label::before,
.input-field.required label::before {
  content: "* ";
  color: #ff4400;
}

.input-field.outlined input:focus:not([readonly]) + label, .input-field.outlined input:not([placeholder=" "]) + label, .input-field.outlined input:not(:placeholder-shown) + label, .input-field.outlined textarea:focus:not([readonly]) + label, .input-field.outlined textarea:not([placeholder=" "]) + label, .input-field.outlined textarea:not(:placeholder-shown) + label {
  white-space: nowrap;
  overflow-x: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

input:disabled + label,
textarea:disabled + label,
select:disabled + label {
  background-color: #f4f4f7 !important;
}

.card-action {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: end;
}
.card-action button {
  margin-left: 5px;
}

a.skip {
  display: inline-flex !important;
}

.fullH {
  height: 100svh;
}
.fullH .row {
  width: 100%;
}

.loader {
  margin: 5px;
  width: 30px;
  aspect-ratio: 1;
  --c: linear-gradient(var(--primary-color) 0 0);
  --m: radial-gradient(farthest-side, var(--primary-color) 92%, #0000);
  background: var(--c), var(--m), var(--c), var(--m), var(--c), var(--m);
  background-size: 8px 12px, 8px 8px;
  background-repeat: no-repeat;
  animation: l13 1s infinite alternate;
}

@keyframes l13 {
  0%, 100% {
    background-position: 0 0, 0 100%, 50% 0, 50% 100%, 100% 0, 100% 100%;
  }
  20% {
    background-position: 0 calc(50% - 6px), 0 calc(50% + 4px), 50% 0, 50% 100%, 100% 0, 100% 100%;
  }
  40% {
    background-position: 0 calc(50% - 6px), 0 calc(50% + 4px), 50% calc(50% - 6px), 50% calc(50% + 4px), 100% 0, 100% 100%;
  }
  60% {
    background-position: 0 0, 0 100%, 50% calc(50% - 6px), 50% calc(50% + 4px), 100% calc(50% - 6px), 100% calc(50% + 4px);
  }
  80% {
    background-position: 0 0, 0 100%, 50% 0, 50% 100%, 100% calc(50% - 6px), 100% calc(50% + 4px);
  }
}
.loader-circle {
  width: 25px !important;
  height: 25px !important;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  background: linear-gradient(0deg, rgba(255, 61, 0, 0.2) 33%, #ff3d00 100%);
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}

.loader-circle::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #009688;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.btn.tight, .tight.btn-large, .tight.btn-small {
  padding: 0 10px;
}

.btn-small.tight {
  height: 20px;
  line-height: 20px;
}
.btn-small.tight .material-icons {
  font-size: 16px;
}

.btn-med.tight {
  height: 24px;
  line-height: 24px;
}
.btn-med.tight .material-icons {
  font-size: 22px;
}

.preload * {
  transition: none !important;
}

.card-content {
  overflow-x: auto;
}

.userMiniCard,
.empleadoMiniCard {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100%;
  padding: 1rem;
}
.userMiniCard img,
.empleadoMiniCard img {
  max-width: 30%;
}
.userMiniCard .data,
.empleadoMiniCard .data {
  padding-left: 1rem;
  height: 100%;
  flex-grow: 1;
  max-width: 70%;
}
.userMiniCard .data p,
.empleadoMiniCard .data p {
  text-overflow: ellipsis;
  overflow: hidden;
}
.userMiniCard .username,
.empleadoMiniCard .username {
  font-weight: bold;
}
.userMiniCard .last-ip,
.userMiniCard .last-access,
.empleadoMiniCard .last-ip,
.empleadoMiniCard .last-access {
  text-align: end;
  font-size: small;
}

.btn.text.active, .text.active.btn-large, .text.active.btn-small {
  background-color: var(--md-sys-color-primary);
  color: #eee;
}

table td {
  padding: 8px 5px;
}
table th:not(:first-child),
table td:not(:first-child) {
  border-left: solid var(--separator-color) 1px;
}

img.max-h {
  --max-height: 512px;
  max-height: var(--max-height);
}

table.thin td,
table.thin th {
  padding: 5px 5px !important;
}

table.soft th {
  color: #333;
}

table.hdata th {
  background-color: #efefef;
}
table.hdata th::after {
  content: ":";
}

.helper-text {
  font-size: smaller;
  color: var(--md-ref-palette-neutral60);
}

.input-field.outlined input:disabled,
.input-field.outlined input[readonly=readonly],
.input-field.outlined textarea:disabled,
.input-field.outlined textarea[readonly=readonly] {
  color: rgba(var(--md_sys_color_on-surface), 0.7);
  border-color: rgba(var(--md_sys_color_on-surface), 0.3);
  background-color: rgba(0, 0, 0, 0.03);
}

.flex {
  display: flex;
}
.flex.flex-row {
  flex-direction: row;
}
.flex.flex-col {
  flex-direction: column;
}
.flex.justify-center {
  justify-content: center;
}
.flex.justify-space-between {
  justify-content: space-between;
}
.flex.justify-space-around {
  justify-content: space-around;
}
.flex.justify-end {
  justify-content: flex-end;
}
.flex.items-center {
  align-items: center;
}
.flex.wrap {
  flex-wrap: wrap;
}
.flex.gap-5-px {
  gap: 5px;
}

.flex.force {
  display: flex !important;
}

.horizontal-rem-1 {
  width: 1rem;
}

.grow-1 {
  flex-grow: 1;
}

.user-img {
  height: 100%;
}

strong {
  font-weight: 700 !important;
}

.m-h-1-rem {
  margin-left: 1rem;
  margin-right: 1rem;
}

.m-h-5-px {
  margin-left: 5px;
  margin-right: 5px;
}

.m-v-1-rem {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.m-b-1-rem {
  margin-bottom: 1rem;
}

.h-100-p {
  height: 100%;
}

.w-100-p {
  width: 100%;
}

.profileTrigger {
  color: var(--font-on-primary-color-main) !important;
}

.font-size-xs {
  font-size: 0.6rem;
}

.font-size-s {
  font-size: 0.8rem;
}

.font-size-l {
  font-size: 1.2rem;
}

.font-size-xl {
  font-size: 1.4rem;
}

#profile {
  color: #333;
  padding: 1rem;
}
#profile * {
  line-height: normal;
}
#profile .logout-button {
  width: 100%;
}

.margin-left-10 {
  margin-left: 2rem !important;
}

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

.margin-left-5-px {
  margin-left: 5px !important;
}

.no-margin {
  margin: 0 !important;
}

.btn.center, .center.btn-large, .center.btn-small {
  justify-content: center;
}

.btn.all-width, .all-width.btn-large, .all-width.btn-small {
  width: 100%;
}

.suffix.delete {
  cursor: pointer;
}

.card-title-image {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 0.5rem;
  background-color: var(--md-sys-color-primary);
  opacity: 0.9;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: white;
}

.card-action {
  padding: 5px;
}
.card-action a:not(.padding) {
  padding: 0 !important;
}
.card-action a.padding {
  display: inline-flex !important;
}

.padding-1rem {
  padding: 1rem !important;
}

.padding-1rem-05rem {
  padding: 1rem 0.5rem !important;
}

.fixed-action-btn {
  position: fixed;
  right: 25px;
  bottom: 40px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 997;
}

.btn.elevated, .elevated.btn-large, .elevated.btn-small {
  background-color: var(--md-sys-color-primary);
  color: white;
}

.btn.elevated.white, .elevated.white.btn-large, .elevated.white.btn-small {
  color: var(--md-sys-color-primary);
}

.card-title-label {
  position: absolute;
  top: 0;
  transform: translateY(-50%);
  background-color: var(--background-color-card);
  padding: 2px 1rem;
  border-radius: 5px;
}
.card-title-label:not(.right) {
  right: auto;
  left: 1.5rem;
}
.card-title-label.right {
  left: auto;
  right: 1.5rem;
}
.card-title-label.wide {
  padding: 10px 10px;
}
.card-title-label.angle {
  transform: rotateZ(45deg);
}

.card:has(.card-title-label) {
  overflow: visible !important;
  margin-top: 5px;
}

.p-v-5 {
  padding: 5px 0;
}

.breadcrumb::before {
  font-family: "MaterialSymbolsSharp";
  color: #aaa;
}
@media screen and (max-width: 600px) {
  .breadcrumb {
    font-size: small;
  }
}

.overflow-auto {
  overflow: auto;
}

.modal-content {
  overflow: hidden;
}
.modal-content .modal-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  font-size: 2rem;
  padding: 12px 24px;
  color: var(--md-sys-color-on-primary);
  background-color: var(--error-color);
  overflow: hidden;
  text-overflow: ellipsis;
}
.modal-content .modal-title.info {
  background-color: var(--md-sys-color-primary);
}
.modal-content:has(.modal-title) {
  padding-top: 3.2rem;
}

.modal {
  overflow: hidden;
}

.modal:has(.modal-title) {
  overflow: hidden;
}

.big {
  font-size: 1.5rem;
}

.full-element-loading-parent {
  position: relative;
}

.full-screen-loading,
.full-element-loading {
  z-index: 10000;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.6666666667);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.full-screen-loading .message,
.full-element-loading .message {
  color: #aaa;
}

.full-element-loading {
  position: absolute;
}

.full-screen-loading {
  position: fixed;
}

.full-screen-badge-loading {
  position: fixed;
  z-index: 10000;
  bottom: 3rem;
  right: 0;
  background-color: var(--background-color-card);
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 30px 0 0 30px;
  min-width: 14rem;
  min-height: 5rem;
  padding: 0 1rem;
  transition: all 750ms ease-in-out;
}
.full-screen-badge-loading.hide {
  right: -14rem;
  display: flex !important;
  opacity: 0;
}
.full-screen-badge-loading .progress-container {
  --progress: 0deg display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 1rem;
  background: conic-gradient(var(--md-sys-color-primary) var(--progress), var(--background-color-card) 0deg);
  padding: 8px;
  border-radius: 50%;
}
.full-screen-badge-loading .progress-container .quant {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--sidebar-background-color);
  color: #eee;
  text-align: center;
  line-height: 48px;
}
.full-screen-badge-loading .progress-container .message {
  flex-grow: 1;
}

.empleado-pp {
  height: calc(100% - 51px);
}

.input-field .caret {
  pointer-events: none;
}
.input-field.little-margin {
  margin: 0 5px;
}

.input-field textarea.materialize-textarea {
  padding: 16px !important;
}

span.hl {
  background-color: #eeeeaa;
  color: #333;
}

.itinerario-collection {
  display: flex;
  flex-direction: row;
}
.itinerario-collection .itinerario-card:not(:only-child):not(:last-child)::after {
  content: "keyboard_double_arrow_right";
  font-family: "MaterialSymbolsSharp" !important;
  position: absolute;
  font-size: x-large;
  top: 50%;
  left: calc(100% + 5px);
  transform: translateY(-50%);
  color: #333;
}
.itinerario-collection .itinerario-card:not(:first-child) {
  margin-left: 1rem;
}
.itinerario-collection .itinerario-card:not(:last-child) {
  margin-right: 1rem;
}
.itinerario-collection .itinerario-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border: solid var(--separator-color) 1px;
  border-radius: 10px;
  flex: 1;
}
.itinerario-collection .itinerario-card div {
  margin: 6px 0;
}

.title-type {
  color: #777;
  border-bottom: solid var(--separator-color) 1px;
  margin-top: 0.4rem;
  margin-bottom: 0.2rem;
}

.input-field input[type=color] {
  width: 100%;
  height: 100%;
  padding: 0;
}

.nowrap {
  white-space: nowrap;
}

.fixed-action-btn {
  bottom: 64px;
}

.btn.outlined, .outlined.btn-large, .outlined.btn-small {
  margin: 0 5px;
}

.btn.margin-h, .margin-h.btn-large, .margin-h.btn-small {
  margin: 0 5px !important;
}

a.inline {
  margin: 0 10px;
}

.etiquetasChips .chip {
  --bgColor: #000;
  background-color: var(--bgColor);
  color: white;
  height: 20px;
}
.etiquetasChips .chip .delete {
  cursor: pointer;
  color: white;
  border-radius: 20px;
  animation: all 0.3s ease-in-out;
}
.etiquetasChips .chip .delete:hover {
  color: var(--bgColor);
  background-color: white;
}

.card-action.upper {
  border-bottom: 1px solid var(--separator-color);
  position: relative;
  background-color: inherit;
}

.card-content.bottom {
  padding: 1rem 24px;
}

.small {
  font-size: 0.8rem;
}

.inline-icon {
  vertical-align: bottom;
  font-size: 18px !important;
}

.error-page {
  background-color: var(--primary-color);
}
.error-page .error-image {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  display: block;
}
.error-page .error-code {
  font-size: 2rem;
  color: var(--error-color);
}

.input-field.visual-disabled input,
.input-field.visual-disabled textarea {
  pointer-events: none;
  color: rgba(var(--md_sys_color_on-surface), 0.38);
  border-color: rgba(var(--md_sys_color_on-surface), 0.12);
  background-color: rgba(var(--md_sys_color_on-surface), 0.04);
}

.enlace-field {
  padding: 15px;
  border: 1px solid var(--separator-color);
  background-color: #feffc7;
  text-align: center;
  margin: 1rem 0;
}

.pagination li a {
  padding: 0 10px !important;
}
.pagination li.active a {
  color: white !important;
}

.underlined {
  text-decoration: underline;
}

p.large {
  font-size: 1.5rem;
}

strong {
  font-weight: bold;
}

table.transparent th,
table.transparent td,
table.transparent tr {
  border-color: transparent;
}

table.hard th,
table.hard td {
  border: 1px solid #444;
}

td.money {
  position: relative;
  text-align: end !important;
  padding: 5px 15px 5px 30px;
  background-color: rgba(245, 245, 245, 0.5);
}
td.money::before {
  content: "$";
  position: absolute;
  left: 5px;
}

td.stretch {
  width: 1%;
  white-space: nowrap;
}

.margin-right-rem-1 {
  margin-right: 1rem;
}

.wiggle {
  animation: wiggle 0.7s ease-in-out;
  animation-iteration-count: 2;
}

@keyframes wiggle {
  0% {
    transform: rotate(0deg);
    background-color: white;
  }
  20% {
    transform: rotate(1deg);
  }
  50% {
    transform: rotate(-1deg);
  }
  80% {
    transform: rotate(1deg);
    background-color: var(--md-sys-color-primary);
    color: white;
  }
  100% {
    transform: rotate(0deg);
  }
}
.bounce-shadow {
  animation: bounceShadow 2s ease-in-out infinite;
}

@keyframes bounceShadow {
  0% {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  }
  75% {
    box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
  }
  100% {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  }
}
tr.smoothIn {
  animation: trSmoothIn 0.3s ease-in-out;
}

tr.error {
  background-color: var(--md-sys-color-error);
  color: #eee;
}

.input-field.x-small input {
  height: 20px !important;
  padding: 0 5px !important;
  font-size: 14px;
  max-width: 6rem;
}

.input-field.small .select-wrapper input {
  height: 27px !important;
}

@keyframes trSmoothIn {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
.transition-all {
  transition: all 0.3s ease-in-out;
}

.po-header {
  padding: 24px 24px 0 24px;
  position: absolute;
  width: 100%;
  background-color: #fafafa;
  z-index: 1;
}

.modal:has(.po-header) {
  height: 90% !important;
  width: 70%;
}
.modal:has(.po-header) .modal-content {
  padding-top: calc(216px + 1rem);
  z-index: 0;
}
.modal:has(.po-header) .modal-content p.large {
  margin: 10px 0;
}

table.stretch {
  width: 100%;
}
table.stretch td {
  padding: 2px 5px;
}

.dropdown-content li {
  display: flex;
  align-items: center;
}
.dropdown-content li button {
  width: 100%;
}

.overflow-hidden {
  overflow: hidden;
}

.empleado-resumen .card-image {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.empleado-resumen .card-image img {
  margin: 1rem;
  border-radius: 50% !important;
  border: solid 3px var(--primary-color);
  width: 150px;
}
.empleado-resumen .card-content {
  flex-grow: 1;
}

.empleado-resumen {
  --status-color: var(--primary-color);
  position: relative;
  overflow: visible;
  padding-top: 72px;
  margin-top: 45px;
}
.empleado-resumen .pp {
  position: absolute;
  top: -45px;
  left: 50%;
  max-width: 128px;
  transform: translateX(-50%);
  border: 3px solid var(--status-color);
  border-radius: 80px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
.empleado-resumen .card-content div {
  margin-bottom: 0.5rem;
}
.empleado-resumen .card-content .direccion span {
  position: relative;
  padding-right: 1rem;
}
.empleado-resumen .card-content .direccion span:not(:last-child):after {
  content: "\e5cc";
  font-family: "MaterialSymbolsSharp";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #444;
}

.card-content.no-bottom-padding {
  padding-bottom: 0;
}

.card-content.no-top-padding {
  padding-top: 0;
}

.input-field textarea {
  padding: 1rem 16px !important;
}

.flex .card-title {
  margin-bottom: 0 !important;
}

.collection-item.thin {
  padding: 5px 10px;
}

.tabs-floating {
  transition: box-shadow 0.25s;
  border-radius: 12px;
  margin-bottom: 5px;
}

.tabs .indicator {
  height: 3px;
  border-radius: 3px 3px 0 0;
}

.badge-indicator {
  width: 23px;
  height: 23px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--md-sys-color-primary);
  color: white;
  line-height: 20px;
  text-align: center;
  font-size: 0.8rem;
  pointer-events: none;
}

img.cumpleanos {
  width: 120px;
}

input[type=checkbox].no-label + span:not(.lever) {
  height: 20px !important;
  padding-left: 20px !important;
}

.long-material-icons {
  font-size: 3rem;
  color: var(--md-sys-color-primary);
}

tr.inactive {
  background-color: #f5f5f5;
}
tr.inactive td:not(:first-child) {
  opacity: 0.6;
}

.head-count-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  padding: 1rem;
  margin: 1rem 1rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  min-width: 100px;
  background-color: var(--color);
  color: #ddd;
  text-shadow: #333 0px 0px 2px;
}
.head-count-card.resumen-card {
  text-shadow: none;
  border: none;
  color: white;
}
.head-count-card.resumen-card .card-title-label {
  color: #000;
}
.head-count-card .headcount {
  font-size: 2rem;
  color: #333;
  text-shadow: #ddd 0px 0px 2px;
}
.head-count-card .nombre {
  font-size: 0.7rem;
  font-weight: bold;
  text-align: center;
}
.head-count-card .info {
  position: absolute;
  right: 0;
  top: 0;
}
.head-count-card .info:hover {
  color: var(--primary-color);
}
.head-count-card:hover {
  transform: scale(1.1);
}
.head-count-card.auto-hover {
  transform-origin: center;
  animation: hc-hover 1s ease-in-out infinite;
}
.head-count-card span.center-text {
  text-align: center;
}

@keyframes hc-hover {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.hc-breadcrumb {
  color: #333;
}
.hc-breadcrumb .breadcrumb:last-child {
  color: var(--md-sys-color-primary);
}

.asistencia-ok {
  background-color: #d9f7be;
}

.asistencia-warning {
  background-color: #fff9c4;
}

.asistencia-error {
  background-color: #ffccbc;
}

.asistencia-special {
  background-color: rgba(187, 222, 251, 0.6666666667);
}

.asistencia-rose {
  background-color: #f8bbd0;
}

.asistencia-neutral {
  background-color: #f5f5f5;
}

button[disabled].tooltipped {
  pointer-events: initial !important;
}

.tabTitle {
  margin-bottom: 0 !important;
}

.low-priority {
  background-color: #f5f5f5;
}

.medium-priority {
  background-color: #fff9c4;
}

.high-priority {
  background-color: #ffccbc;
}

.ot-por-revisar {
  background-color: #f5f5f5;
}

.ot-por-autorizar {
  background-color: #fff9c4;
}

.ot-autorizadas {
  background-color: #d9f7be;
}

.ot-rechazadas {
  background-color: #ffccbc;
}

.ot-pagadas {
  background-color: #bbdefb;
}

.same-day {
  background-color: #d9f7be;
}

.title {
  font-size: 1rem;
  color: #444;
  font-weight: bold;
}

.modal .modal-warning {
  padding: 24px;
}
.modal:has(.modal-warning + .modal-content) .modal-content {
  padding-bottom: 200px !important;
}

.card .card-panel.placa-engomado {
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}
.card .card-panel.placa-engomado span {
  color: white;
  font-weight: 500;
  font-size: 1.25rem;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.65);
}
.card .card-content .placa-encabezado h2 {
  margin: 1.3rem;
}
.card .contenido-reporte {
  min-height: 22vh;
}

.card.placa-contenido {
  transition: all 0.2s ease-in-out;
}
.card.placa-contenido:hover {
  transform: scale(1.04);
}

.observaciones-reporte {
  background: #F2F2F2;
  border-left: 0.3rem solid #2A4759;
  padding: 1rem 1rem;
  margin-bottom: 1rem;
  border-radius: 5px;
  margin-bottom: 0.3rem;
  cursor: pointer;
}

.contenerodr-observaciones {
  overflow: auto;
  max-height: 50vh;
  height: 90%;
}

.sin-reporte {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.trapecio-inverso {
  clip-path: polygon(0% 0%, 100% 0%, 90% 100%, 10% 100%);
}

.contenido-reporte {
  overflow: auto;
}
.contenido-reporte figure {
  display: flex;
  flex-direction: column;
  max-height: 13rem;
}
.contenido-reporte figcaption div {
  width: 100%;
}
.contenido-reporte .evidencia-container {
  min-width: 25rem;
}
.contenido-reporte .img-evidencia-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 14rem;
  background-color: #dddddd;
}
.contenido-reporte p {
  text-transform: uppercase;
  font-size: 0.9rem;
}
.contenido-reporte img {
  cursor: pointer;
  max-width: 80%;
}
.contenido-reporte .description-image {
  background-color: #274c6b;
  border-radius: 5px;
  padding: 0.5rem;
  color: white;
}

.status-flotilla.active::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-radius: 7.5px;
  background-color: rgb(15, 219, 97);
}

.status-flotilla.inactive::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-radius: 7.5px;
  background-color: rgb(219, 32, 15);
}

i.on {
  text-shadow: 0px 0px 15px rgba(51, 214, 62, 0.7);
}
i.on:hover {
  text-shadow: 0px 0px 20px rgba(213, 13, 13, 0.7);
}
i.off {
  text-shadow: 0px 0px 15px rgba(213, 13, 13, 0.7);
}
i.off:hover {
  text-shadow: 0px 0px 20px rgba(51, 214, 62, 0.7);
}

.small-card-container {
  flex-wrap: wrap;
  display: flex;
  justify-content: center;
  position: relative;
  transition: all 0.2s ease-in-out;
}
.small-card-container .data-container {
  border-radius: 8px 8px 0px 0px;
  background-color: white;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0px 0px 4px #878787;
}
.small-card-container .img-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}
.small-card-container .img-container img {
  border: solid #6e6eb0 2px;
  border-radius: 50%;
}
.small-card-container .image-label {
  background-color: #7f7fc4;
  border-radius: 8px;
  color: white;
  padding: 5px;
}
.small-card-container p {
  width: 100px;
  word-break: break-word;
}
.small-card-container:not(.responsable-modulo):hover {
  transform: scale(1.04);
  cursor: pointer;
}

.file-flotilla {
  transition: opacity 0.5s ease;
}
.file-flotilla .card-content {
  height: 13rem;
}
.file-flotilla .card-content div {
  height: 30%;
}

.container-resumen-cards {
  gap: 3rem;
  justify-content: space-around;
}

.add-btn-input {
  position: absolute;
  top: 20px;
  right: 10px;
}

table.centered th {
  text-align: center;
}

.big-number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  font-size: 2rem;
  border-radius: 8px;
  padding: 1rem;
}
.big-number .number {
  font-size: clamp(1.5rem, 3vw, 3rem);
  font-weight: bold;
}
.big-number .title {
  font-size: 1.2rem;
  font-weight: lighter;
  margin-top: 0.5rem;
  color: inherit !important;
}

.table-dashboard-fleet {
  text-transform: capitalize;
  text-align: center;
}

span.label-dashboard {
  font-size: 1.5rem;
  color: white;
}

.container-no-files {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 25vh;
}
.container-no-files p {
  font-weight: bold;
}

.space-forms .modal-content {
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
}

#documentos-unidad .documentos-container {
  height: 55vh;
}
#documentos-unidad .card-content {
  max-height: 55vh;
}
#documentos-unidad .card-action {
  display: flex;
  flex-wrap: wrap;
}

#periodos .card-content {
  width: 100%;
}

.btn-floating.btn-large {
  opacity: 0.5;
  transition: opacity 0.3s ease-in-out;
}
.btn-floating.btn-large:hover {
  opacity: 1;
}

.reglamento-container {
  transition: all 0.2s ease-in-out;
}
.reglamento-container:hover {
  transform: scale(1.08);
}
.reglamento-container a {
  color: black;
}

.mapa-flotillas {
  height: 30vw;
}

.card-action {
  border-radius: 0 0 12px 12px !important;
}

.p-10-px {
  padding: 10px !important;
}

.pv-10-px {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTtFQUNJO0FBQ0o7QUFBSTtFQUNJO0FBRVI7QUFFUTtFQUNJO0VBQ0E7RUFDQTtBQUFaO0FBSUk7RUFDSTtBQUZSO0FBS0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFIUjtBQU9RO0VBQ0k7RUFDQTtFQUNBO0FBTFo7QUFTUTtFQUNJO0VBQ0E7RUFDQTtBQVBaO0FBV1E7RUFDSTtFQUNBO0VBQ0E7QUFUWjtBQWFRO0VBQ0k7RUFDQTtFQUNBO0FBWFosQzs7OztBQ3hDSTtFQUNJO0FBQVI7QUFFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBUjtBQUNRO0VBQ0k7RUFDQTtBQUNaO0FBQ1E7RUFDSTtBQUNaO0FBQ1E7RUFDSTtFQUNBO0VBQ0E7QUFDWixDOzs7O0FDeEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUNJO0VBQ0k7QUFDUjtBQUVJO0VBQ0k7RUFDQTtFQUNBO0FBQVIsQzs7OztBQ3pCQSxnQkFBZ0I7QUFBaEI7RUFDSTtFQUNBO0VBQ0E7QUFFSjtBQURJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFHUjtBQUFRO0VBQ0k7QUFFWjtBQUdRO0VBQ0k7QUFEWjtBQU1RO0VBQ0k7QUFKWjtBQVFRO0VBQ0k7QUFOWjtBQVVJO0VBQ0k7QUFSUixDOzs7O0FDNUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQVI7QUFDUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNaO0FBQVk7RUFDSTtBQUVoQjtBQUFZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVoQjtBQUFZO0VBQ0k7QUFFaEI7QUFBWTtFQUNJO0FBRWhCO0FBRUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQVI7QUFDUTtFQUNJO0FBQ1osQzs7OztBQ3pDQTtFQUNJO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7QUFFUjtBQUNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNaO0FBQ1k7RUFDSTtFQUNBO0VBQ0E7QUFDaEI7QUFFWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQWhCO0FBS0k7RUFDSTtBQUhSO0FBS0k7RUFDSTtBQUhSO0FBS0k7RUFDSTtBQUhSO0FBT0k7RUFDSTtFQU1BO0FBVlI7QUFLUTtFQUNJO0VBQ0E7RUFDQTtBQUhaLEM7Ozs7QUNoREE7RUFDSTtFQUNBO0VBQ0E7QUFDSjtBQUVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQVI7QUFFUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBWjtBQUdRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQURaO0FBSVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRlo7QUFHWTtFQUNJO0VBQ0E7RUFDQTtBQURoQjtBQUdZO0VBQ0k7QUFEaEI7QUFLUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUhaOztBQVFBO0VBQ0k7SUFDSTtFQUxOO0VBT0U7SUFDSTtFQUxOO0FBQ0YsQzs7OztBQ2xFSTtFQUNJO0VBQ0E7QUFBUjtBQUNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNaO0FBSVE7RUFDSTtBQUZaO0FBSVE7RUFDSTtBQUZaO0FBTUk7RUFDSTtBQUpSO0FBT0k7RUFDSTtBQUxSOztBQVVJO0VBQ0k7QUFQUjtBQVNJO0VBQ0k7QUFQUjtBQVNJO0VBQ0k7RUFDQTtFQUNBO0FBUFI7QUFTSTtFQUNJO0VBQ0E7QUFQUjtBQVNJO0VBQ0k7RUFDQTtFQUNBO0FBUFI7QUFVSTtFQUNJO0VBQ0E7QUFSUixDOzs7O0FDcERJO0VBQ0k7QUFBUjtBQUdJO0VBQ0k7QUFEUjtBQUlJO0VBQ0k7RUFDQTtBQUZSO0FBS0k7RUFDSTtBQUhSO0FBTUk7RUFDSTtBQUpSO0FBT0k7RUFDSTtFQUNBO0FBTFI7QUFRSTtFQUNJO0VBQ0E7QUFOUixDOzs7O0FDdkJBO0VBQ0k7RUFDQTtFQUNBO0FBQ0osQzs7OztBQ0hJO0VBQ0k7QUFBUjtBQUVJO0VBQ0k7RUFDQTtBQUFSLEM7Ozs7QUNIQTtFQUNJO0FBRko7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBRFI7QUFFUTtFQUNJO0FBQVo7QUFLUTtFQUNJO0VBQ0E7QUFIWixDOzs7O0FDUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQU5KO0FBUUk7RUFDSTtFQUNBO0FBTlI7QUFPUTtFQUNJO0FBTFo7QUFTSTtFQUNJO0VBQ0E7QUFQUjtBQVVJO0VBQ0k7RUFDQTtBQVJSO0FBVUk7RUFDSTtFQUNBO0FBUlI7QUFXSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQVRSO0FBakNRO0VBNkNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFUUjtBQXhDUTtFQTZDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRlI7QUFLSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBSFI7QUFNSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUpSO0FBTVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUpaO0FBS1k7RUFDSTtBQUhoQjtBQUtZO0VBQ0k7RUFDQTtBQUhoQjtBQVFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQU5SLEM7Ozs7QUMvRkE7RUFDSTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7QUFFUjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVSLEM7Ozs7QUNwQkE7RUFDSTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7QUFFUixDOzs7O0FDUEE7RUFDSTtBQUNKO0FBQUk7RUFDSTtBQUVSO0FBRFE7RUFDSTtBQUdaO0FBQUk7RUFDSTtBQUVSO0FBRFE7RUFDSTtBQUdaLEM7Ozs7QUNkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7QUFFUjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFUjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0FBRVI7QUFBSTtFQUNJO0FBRVI7QUFBSTtFQUNJO0FBRVIsQzs7OztBQ2hDQTtFQUNJO0FBQ0osQzs7OztBQ0ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNKO0FBQ0k7RUFDSTtBQUNSO0FBRUk7RUFDSTtBQUFSO0FBR0k7RUFDSTtBQURSO0FBSUk7RUFDSTtBQUZSO0FBS0k7RUFDSTtBQUhSO0FBTUk7RUFDSTtBQUpSO0FBT0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUxSLEM7Ozs7QUNqQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7QUFDSTtFQUNJO0FBQ1I7QUFBUTtFQUNJO0VBQ0E7QUFFWjtBQUFRO0VBQ0k7QUFFWjtBQUFRO0VBQ0k7QUFFWjtBQUFRO0VBQ0k7RUFDQTtFQUNBO0FBRVosQzs7OztBQzlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUFaO0FBR1E7RUFDSTtFQUNBO0VBQ0E7QUFEWjtBQUVZO0VBQ0k7QUFBaEI7QUFJUTtFQUNJO0FBRlo7QUFPUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBTFo7QUFPUTtFQUNJO0FBTFo7QUFPUTtFQUNJO0VBQ0E7RUFDQTtBQUxaOztBQVdBO0VBQ0k7RUFDQTtFQUNBO0FBUko7QUFTSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFQUjtBQVFRO0VBQ0k7QUFOWjtBQVNJO0VBQ0k7QUFQUjtBQVNJO0VBQ0k7QUFQUjtBQVFRO0VBQ0k7RUFDQTtBQU5aLEM7Ozs7QUN6RUE7RUFDSTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0FBRVI7QUFBSTtFQUNJO0FBRVI7QUFBSTtFQUNJO0FBRVIsQzs7OztBQ2ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNKO0FBQUk7RUFDSTtBQUVSO0FBQUk7RUFDSTtBQUVSO0FBQUk7RUFDSTtFQUNBO0FBRVI7QUFBSTtFQUNJO0VBQ0E7QUFFUjtBQUFJO0VBQ0k7RUFDQTtBQUVSO0FBQ1E7RUFDSTtBQUNaO0FBRUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUFSO0FBQ1E7RUFDSTtBQUNaO0FBQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDWixDOzs7O0FDdERRO0VBQ0k7RUFDQTtBQURaO0FBRVk7RUFDSTtBQUFoQjtBQUVZO0VBQ0k7QUFBaEIsQzs7OztBQ1JBO0VBQ0k7RUFDQTtFQUNBO0FBQUo7QUFFSTtFQUNJO0FBQVI7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBRFI7QUFHUTtFQUNJO0FBRFo7QUFJSTtFQUNJO0FBRlI7QUFJSTtFQUNJO0FBRlI7QUFJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRlI7QUFJUTtFQUNJO0VBQ0E7RUFDQTtBQUZaO0FBS1E7RUFDSTtFQUNBO0VBQ0E7QUFIWjtBQUlZO0VBQ0k7RUFDQTtFQUNBO0FBRmhCO0FBTVE7RUFDSTtFQUNBO0FBSlo7QUFNWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBSmhCO0FBUVk7RUFDSTtFQUNBO0VBQ0E7QUFOaEI7QUFTWTtFQUNJO0VBQ0E7QUFQaEI7QUFXUTtFQUNJO0FBVFo7QUFhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQVhSO0FBY0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBWlI7QUFjUTtFQUNJO0FBWlo7QUFlUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBYlo7QUFjWTtFQUNJO0VBQ0E7QUFaaEI7QUFpQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZlI7QUFpQlE7RUFDSTtBQWZaO0FBbUJRO0VBQ0k7QUFqQlo7QUFxQkk7RUFDSTtFQUNBO0VBQ0EsV0E5SUM7RUErSUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW5CUixDOzs7O0FDbElBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QUFESjtBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb1NBQ0k7RUFnQkosMEdBQ0k7RUFJSiwrQ0FDSTtBQXRCWjtBQTRCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTFCUjtBQTZCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEzQlI7QUE4Qkk7RUFDSTtFQUNBO0FBNUJSO0FBK0JJO0VBQ0k7RUFDQTtFQUNBO0FBN0JSO0FBK0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTdCWjtBQWlDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBdEdnQjtFQXVHaEI7QUEvQlI7QUFpQ1E7RUFDSTtBQS9CWjtBQWtDUTtFQUNJO0FBaENaO0FBbUNRO0VBQ0k7RUFDQTtBQWpDWjtBQW9DUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFsQ1o7QUFvQ1k7RUFDSTtBQWxDaEI7QUFxQ1k7RUFDSTtFQUNBO0VBQ0E7QUFuQ2hCOztBQXlDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF0Q0osQzs7OztBQ2pISTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUFSO0FBQ1E7RUFDSTtBQUNaO0FBRUk7RUFDSTtBQUFSO0FBR1E7RUFDSTtFQUNBO0FBRFosQzs7OztBQ3BCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRVI7QUFEUTtFQUNJO0FBR1o7QUFEUTtFQUNJO0FBR1o7QUFEUTtFQUNJO0FBR1o7QUFEUTtFQUNJO0VBQ0E7QUFHWjtBQURRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFHWjtBQUZZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFJaEI7QUFIZ0I7RUFDSTtFQUNBO0FBS3BCO0FBQUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUVSO0FBRFE7RUFDSTtFQUNBO0VBQ0E7QUFHWjtBQURRO0VBQ0k7RUFDQTtFQUNBO0FBR1o7QUFGWTtFQUNJO0FBSWhCO0FBRlk7RUFDSTtBQUloQjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVSLEM7Ozs7QUMzRUE7RUFDSTtFQUNBO0FBQ0o7QUFDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQ1I7QUFBUTtFQUNJO0VBQ0E7RUFDQTtBQUVaO0FBRUk7RUFDSTtFQUNBO0FBQVI7QUFHSTtFQUNJO0VBQ0E7RUFDQTtBQURSLEM7Ozs7QUN2QkEsZ0JBQWdCO0FBQWhCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVGO0FBQUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFSjtBQUVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFBTjtBQUNNO0VBQ0U7QUFDUjtBQUFRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFVjtBQUNNO0VBQ0U7QUFDUjtBQUFRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFVjtBQUtJO0VBQ0U7RUFDQTtBQUhOO0FBTU07RUFDRTtBQUpSO0FBTU07RUFDRTtBQUpSO0FBTU07RUFDRTtBQUpSO0FBTU07RUFDRTtBQUpSO0FBTU07RUFDRTtBQUpSO0FBTU07RUFDRTtBQUpSO0FBT0k7RUFDRTtFQUNBO0FBTE47QUFPSTtFQUNFO0VBQ0E7QUFMTjs7QUFVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFQRjtBQVNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFQSixDOzs7O0FDNUZBO0VBQ0k7RUFDQTtFQUNBO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7RUFDQTtBQUVSLEM7Ozs7QUNSSTtFQUNJO0FBQVI7QUFFSTtFQUNJO0VBQ0E7QUFBUjtBQUNRO0VBQ0k7QUFDWjtBQUVJO0VBQ0k7QUFBUjtBQUVJO0VBQ0k7QUFBUjtBQUVJO0VBQ0k7QUFBUjtBQUVJO0VBQ0k7QUFBUjtBQUVJO0VBQ0k7QUFBUixDOzs7O0FDeEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRVI7QUFEUTtFQUNJO0FBR1o7QUFBSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRVI7QUFBSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFUjtBQUFJO0VBQ0k7QUFFUjtBQURRO0VBQ0k7RUFDQTtBQUdaO0FBRlk7RUFDSTtBQUloQjtBQUZZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFJaEI7QUFGWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBSWhCO0FBRlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUloQjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFFUjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFFUjtBQUFJO0VBQ0k7QUFFUjs7QUFFSTtFQUNJO0FBQ1I7QUFDSTtFQUNJO0FBQ1I7QUFDSTtFQUNJO0FBQ1I7QUFBUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBRVo7QUFEWTtFQUNJO0VBQ0E7QUFHaEI7QUFEWTtFQUNJO0VBQ0E7QUFHaEI7O0FBR0E7RUFDSTtJQUNJO0VBQU47RUFHRTtJQUNJO0VBRE47RUFJRTtJQUNJO0VBRk47RUFLRTtJQUNJO0VBSE47QUFDRixDOzs7O0FDN0hJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUFSO0FBRUk7RUFDSTtBQUFSO0FBQ1E7RUFDSTtFQUNBO0FBQ1o7QUFFWTtFQURKO0lBRVE7RUFDZDtBQUNGO0FBQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0FBRlo7QUFEWTtFQUxKO0lBTVE7RUFJZDtBQUNGO0FBRlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBSWhCO0FBQUk7RUFDSTtBQUVSO0FBQUk7RUFDSTtBQUVSO0FBQUk7RUFDSTtBQUVSO0FBQ0k7RUFDSTtFQUNBO0FBQ1I7QUFFSTtFQUNJO0VBQ0E7QUFBUjtBQUdJO0VBQ0k7RUFDQTtBQURSO0FBRVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUFaO0FBRVE7RUFDSTtFQUNBO0FBQVo7QUFFUTtFQUNJO0VBQ0E7QUFBWjtBQUdJO0VBQ0k7RUFDQTtBQURSO0FBR0k7RUFDSTtFQUNBO0FBRFI7QUFHSTtFQUNJO0VBQ0E7QUFEUjtBQUlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRlI7QUFHUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRFo7QUFHUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQURaO0FBR1E7RUFDSTtBQURaO0FBR1E7RUFDSTtBQURaO0FBRVk7RUFDSTtFQUNBO0FBQWhCO0FBR1E7RUFDSTtBQURaOztBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBT0E7RUFDQTtFQUNBO0VBQ0E7QUFUSjtBQUNJO0VBQ0k7RUFDQTtBQUNSO0FBT0k7RUFDSTtBQUxSLEM7Ozs7QUN2SkE7RUFDSTtFQUNBO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7RUFDQTtBQUVSO0FBRFE7RUFDSTtBQUdaO0FBQUk7RUFDSTtBQUVSO0FBRFE7RUFDSTtBQUdaOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRVI7QUFBSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVSLEM7Ozs7QUMvQ1E7RUFDSTtBQURaO0FBR1E7RUFDSTtBQURaO0FBS1E7RUFDSTtBQUhaOztBQVFBO0VBQ0k7SUFDSTtFQUxOO0VBT0U7SUFDSTtFQUxOO0FBQ0Y7QUFRQTtFQUNJO0lBQ0k7RUFOTjtFQVFFO0lBQ0k7RUFOTjtBQUNGLEM7Ozs7QUN6QkE7RUFDSTtFQUNBO0VBQ0E7QUFDSjtBQUNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ1I7QUFBUTtFQUNJO0FBRVo7QUFBUTtFQUNJO0FBRVosQzs7OztBQ2xCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUFJO0VBQ0k7RUFDQTtBQUVSO0FBRFE7RUFDSTtBQUdaO0FBRFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBR1o7QUFGWTtFQUNJO0FBSWhCO0FBRlk7RUFDSTtFQUNBO0FBSWhCO0FBRlk7RUFDSTtBQUloQjs7QUFFQTtFQUNJO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7RUFDQTtBQUVSO0FBRFE7RUFDSTtFQUNBO0FBR1o7QUFEUTtFQUNJO0VBQ0E7QUFHWjtBQURRO0VBQ0k7RUFDQTtBQUdaO0FBRFE7RUFDSTtFQUNBO0FBR1o7O0FBRUE7RUFDSTtJQUNJO0lBQ0E7RUFDTjtFQUNFO0lBQ0k7SUFDQTtFQUNOO0FBQ0Y7QUFFQTtFQUNJO0lBQ0k7SUFDQTtFQUFOO0VBRUU7SUFDSTtJQUNBO0VBQU47QUFDRjtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VBRE47RUFHRTtJQUNJO0lBQ0E7RUFETjtBQUNGO0FBSUE7RUFDSTtJQUNJO0lBQ0E7RUFGTjtFQUlFO0lBQ0k7SUFDQTtFQUZOO0FBQ0YsQzs7OztBQ3pHQTtFQUNJO0FBQ0o7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUo7QUFESTtFQUNJO0VBQ0E7QUFHUixDOzs7O0FDZEE7RUFDSTtBQUNKO0FBQUk7RUFDSTtFQUNBO0FBRVI7QUFBSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFUjs7QUFFSTtFQUNJO0FBQ1I7QUFBUTtFQUNJO0FBRVo7QUFDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDUjtBQUNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNSO0FBQ1E7RUFDSTtBQUNaO0FBRVE7RUFDSTtBQUFaO0FBR1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQURaLEM7Ozs7QUMxREE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7QUFBSTtFQUNJO0VBQ0E7QUFFUjs7QUFHSTtFQUNJO0FBQVI7QUFFSTtFQUNJO0FBQVI7QUFFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBUjtBQUVRO0VBQ0k7RUFDQTtFQUNBO0FBQVo7QUFDWTtFQUNJO0VBQ0E7QUFDaEI7QUFFUTtFQUNJO0VBQ0E7QUFBWjtBQUNZO0VBQ0k7QUFDaEI7QUFFWTtFQUNJO0FBQWhCO0FBR1E7RUFDSTtFQUNBO0FBRFo7QUFFWTtFQUNJO0FBQWhCO0FBR1E7RUFDSTtBQURaLEM7Ozs7QUNyREE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFSjtBQURJO0VBQ0k7QUFHUjtBQUZRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBSVo7QUFGUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBSVo7QUFEUTtFQUNJO0FBR1o7QUFGWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUloQjtBQUFZO0VBQ0k7QUFFaEI7QUFFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQVI7QUFDUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ1o7QUFDUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQ1o7QUFDWTtFQUNJO0FBQ2hCO0FBRVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBaEI7QUFJSTtFQUNJO0FBRlI7QUFJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUZSO0FBSVE7RUFDSTtFQUNBO0VBQ0E7QUFGWjtBQUtJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBSFI7QUFJUTtFQUNJO0FBRlo7QUFLUTtFQUNJO0FBSFo7QUFNUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUpaO0FBUUk7RUFDSTtBQU5SO0FBT1E7RUFDSTtBQUxaO0FBU0k7RUFDSTtFQUNBO0FBUFI7O0FBV0E7RUFDSTtFQUNBO0VBQ0E7QUFSSjs7QUFVQTtFQUNJO0FBUEo7O0FBU0E7RUFDSTtBQU5KOztBQVFBO0VBQ0k7QUFMSjs7QUFPQTtFQUNJO0FBSkosQzs7OztBQ25LQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0osQzs7OztBQ1BJO0VBQ0k7RUFDQTtBQUFSLEM7Ozs7QUNIQTtFQUNJO0FBQ0o7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUo7QUFBSTtFQUNJO0FBRVI7QUFBSTtFQUNJO0VBQ0E7QUFFUjtBQUFJO0VBZEo7SUFlUTtFQUdOO0FBQ0YsQzs7OztBQ3JCSTtFQUNJO0VBQ0E7QUFBUjtBQUNRO0VBQ0k7RUFDQTtFQUNBO0FBQ1o7QUFFSTtFQUNJO0VBQ0E7QUFBUjtBQUNRO0VBQ0k7QUFDWjtBQUVJO0VBQ0k7RUFDQTtBQUFSLEM7Ozs7QUNsQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQVI7QUFDUTtFQUNJO0VBQ0E7QUFDWjtBQUVJO0VBQ0k7RUFDQTtBQUFSO0FBQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUNaO0FBQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQUNaO0FBQVk7RUFDSTtFQUNBO0FBRWhCO0FBQ1E7RUFDSTtBQUNaO0FBQ1E7RUFDSTtFQUNBO0FBQ1o7QUFBWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRWhCO0FBQVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVoQjtBQUFZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFaEI7QUFEZ0I7RUFDSTtBQUdwQixDOzs7O0FDckVBO0VBQ0k7RUFDQTtFQUNBO0FBQUo7QUFDSTtFQUNJO0VBQ0EsWUFQRTtFQVFGLGFBUkU7RUFTRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNSO0FBQVE7RUFDSTtBQUVaO0FBQ0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDUjtBQUFRO0VBQ0k7QUFFWjtBQURZO0VBQ0k7QUFHaEI7QUFDSTtFQUNJO0FBQ1I7QUFDSTtFQUNJO0VBQ0E7QUFDUjtBQUNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFDUjs7QUFFQTtFQUNJO0lBQVc7RUFFYjtFQURFO0lBQVc7RUFJYjtFQUhFO0lBQWdCO0VBTWxCO0VBTEU7SUFBVztFQVFiO0FBQ0YsQzs7OztBQ2hFQSxnQkFBZ0I7QUNBaEI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURHRjs7QUVqUkE7RUFDRTtBRm9SRjs7QUVsUkE7RUFDRTtBRnFSRjs7QUVuUkE7RUFDRTtBRnNSRjs7QUVwUkE7RUFDRTtBRnVSRjs7QUVyUkE7RUFDRTtBRndSRjs7QUV0UkE7RUFDRTtBRnlSRjs7QUV2UkE7RUFDRTtBRjBSRjs7QUV4UkE7RUFDRTtBRjJSRjs7QUV6UkE7RUFDRTtBRjRSRjs7QUUxUkE7RUFDRTtBRjZSRjs7QUUzUkE7RUFDRTtBRjhSRjs7QUU1UkE7RUFDRTtBRitSRjs7QUU3UkE7RUFDRTtBRmdTRjs7QUU5UkE7RUFDRTtBRmlTRjs7QUUvUkE7RUFDRTtBRmtTRjs7QUVoU0E7RUFDRTtBRm1TRjs7QUVqU0E7RUFDRTtBRm9TRjs7QUVsU0E7RUFDRTtBRnFTRjs7QUVuU0E7RUFDRTtBRnNTRjs7QUVwU0E7RUFDRTtBRnVTRjs7QUVyU0E7RUFDRTtBRndTRjs7QUV0U0E7RUFDRTtBRnlTRjs7QUV2U0E7RUFDRTtBRjBTRjs7QUV4U0E7RUFDRTtBRjJTRjs7QUV6U0E7RUFDRTtBRjRTRjs7QUUxU0E7RUFDRTtBRjZTRjs7QUUzU0E7RUFDRTtBRjhTRjs7QUU1U0E7RUFDRTtBRitTRjs7QUU3U0E7RUFDRTtBRmdURjs7QUU5U0E7RUFDRTtBRmlURjs7QUUvU0E7RUFDRTtBRmtURjs7QUVoVEE7RUFDRTtBRm1URjs7QUVqVEE7RUFDRTtBRm9URjs7QUVsVEE7RUFDRTtBRnFURjs7QUVuVEE7RUFDRTtBRnNURjs7QUVwVEE7RUFDRTtBRnVURjs7QUVyVEE7RUFDRTtBRndURjs7QUV0VEE7RUFDRTtBRnlURjs7QUV2VEE7RUFDRTtBRjBURjs7QUV4VEE7RUFDRTtBRjJURjs7QUV6VEE7RUFDRTtBRjRURjs7QUUxVEE7RUFDRTtBRjZURjs7QUUzVEE7RUFDRTtBRjhURjs7QUU1VEE7RUFDRTtBRitURjs7QUU3VEE7RUFDRTtBRmdVRjs7QUU5VEE7RUFDRTtBRmlVRjs7QUUvVEE7RUFDRTtBRmtVRjs7QUVoVUE7RUFDRTtBRm1VRjs7QUVqVUE7RUFDRTtBRm9VRjs7QUVsVUE7RUFDRTtBRnFVRjs7QUVuVUE7RUFDRTtBRnNVRjs7QUVwVUE7RUFDRTtBRnVVRjs7QUVyVUE7RUFDRTtBRndVRjs7QUV0VUE7RUFDRTtBRnlVRjs7QUV2VUE7RUFDRTtBRjBVRjs7QUV4VUE7RUFDRTtBRjJVRjs7QUV6VUE7RUFDRTtBRjRVRjs7QUUxVUE7RUFDRTtBRjZVRjs7QUUzVUE7RUFDRTtBRjhVRjs7QUU1VUE7RUFDRTtBRitVRjs7QUdqZ0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSG9nQkY7O0FHbGdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhxZ0JGOztBR25nQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIc2dCRjs7QUdwZ0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHVnQkY7O0FHcmdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUh3Z0JGOztBR3RnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIeWdCRjs7QUd2Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDBnQkY7O0FHeGdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUgyZ0JGOztBR3pnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FINGdCRjs7QUcxZ0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDZnQkY7O0FHM2dCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUg4Z0JGOztBRzVnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIK2dCRjs7QUc3Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGdoQkY7O0FHOWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhpaEJGOztBRy9nQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIa2hCRjs7QUl0cUJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKeXFCRDs7QUt2c0JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FMMHNCRDs7QU14dUJBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBTit0Qko7O0FNM3RCQTtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBRUE7QU53dEJKOztBTzd4Qk07RUFDRTtBUGd5QlI7O0FPOXhCTTtFQUNFO0FQaXlCUjs7QU83eEJNO0VBQ0U7QVBneUJSOztBTzl4Qk07RUFDRTtBUGl5QlI7O0FPcnlCTTtFQUNFO0FQd3lCUjs7QU90eUJNO0VBQ0U7QVB5eUJSOztBTzd5Qk07RUFDRTtBUGd6QlI7O0FPOXlCTTtFQUNFO0FQaXpCUjs7QU9yekJNO0VBQ0U7QVB3ekJSOztBT3R6Qk07RUFDRTtBUHl6QlI7O0FPN3pCTTtFQUNFO0FQZzBCUjs7QU85ekJNO0VBQ0U7QVBpMEJSOztBT3IwQk07RUFDRTtBUHcwQlI7O0FPdDBCTTtFQUNFO0FQeTBCUjs7QU83MEJNO0VBQ0U7QVBnMUJSOztBTzkwQk07RUFDRTtBUGkxQlI7O0FPcjFCTTtFQUNFO0FQdzFCUjs7QU90MUJNO0VBQ0U7QVB5MUJSOztBTzcxQk07RUFDRTtBUGcyQlI7O0FPOTFCTTtFQUNFO0FQaTJCUjs7QU83MkJNO0VBQ0U7QVBnM0JSOztBTzkyQk07RUFDRTtBUGkzQlI7O0FPNzJCTTtFQUNFO0FQZzNCUjs7QU85MkJNO0VBQ0U7QVBpM0JSOztBT3IzQk07RUFDRTtBUHczQlI7O0FPdDNCTTtFQUNFO0FQeTNCUjs7QU83M0JNO0VBQ0U7QVBnNEJSOztBTzkzQk07RUFDRTtBUGk0QlI7O0FPcjRCTTtFQUNFO0FQdzRCUjs7QU90NEJNO0VBQ0U7QVB5NEJSOztBTzc0Qk07RUFDRTtBUGc1QlI7O0FPOTRCTTtFQUNFO0FQaTVCUjs7QU9yNUJNO0VBQ0U7QVB3NUJSOztBT3Q1Qk07RUFDRTtBUHk1QlI7O0FPNzVCTTtFQUNFO0FQZzZCUjs7QU85NUJNO0VBQ0U7QVBpNkJSOztBT3I2Qk07RUFDRTtBUHc2QlI7O0FPdDZCTTtFQUNFO0FQeTZCUjs7QU83NkJNO0VBQ0U7QVBnN0JSOztBTzk2Qk07RUFDRTtBUGk3QlI7O0FPcjdCTTtFQUNFO0FQdzdCUjs7QU90N0JNO0VBQ0U7QVB5N0JSOztBTzc3Qk07RUFDRTtBUGc4QlI7O0FPOTdCTTtFQUNFO0FQaThCUjs7QU9yOEJNO0VBQ0U7QVB3OEJSOztBT3Q4Qk07RUFDRTtBUHk4QlI7O0FPNzhCTTtFQUNFO0FQZzlCUjs7QU85OEJNO0VBQ0U7QVBpOUJSOztBTzc5Qk07RUFDRTtBUGcrQlI7O0FPOTlCTTtFQUNFO0FQaStCUjs7QU83OUJNO0VBQ0U7QVBnK0JSOztBTzk5Qk07RUFDRTtBUGkrQlI7O0FPcitCTTtFQUNFO0FQdytCUjs7QU90K0JNO0VBQ0U7QVB5K0JSOztBTzcrQk07RUFDRTtBUGcvQlI7O0FPOStCTTtFQUNFO0FQaS9CUjs7QU9yL0JNO0VBQ0U7QVB3L0JSOztBT3QvQk07RUFDRTtBUHkvQlI7O0FPNy9CTTtFQUNFO0FQZ2dDUjs7QU85L0JNO0VBQ0U7QVBpZ0NSOztBT3JnQ007RUFDRTtBUHdnQ1I7O0FPdGdDTTtFQUNFO0FQeWdDUjs7QU83Z0NNO0VBQ0U7QVBnaENSOztBTzlnQ007RUFDRTtBUGloQ1I7O0FPcmhDTTtFQUNFO0FQd2hDUjs7QU90aENNO0VBQ0U7QVB5aENSOztBTzdoQ007RUFDRTtBUGdpQ1I7O0FPOWhDTTtFQUNFO0FQaWlDUjs7QU9yaUNNO0VBQ0U7QVB3aUNSOztBT3RpQ007RUFDRTtBUHlpQ1I7O0FPN2lDTTtFQUNFO0FQZ2pDUjs7QU85aUNNO0VBQ0U7QVBpakNSOztBT3JqQ007RUFDRTtBUHdqQ1I7O0FPdGpDTTtFQUNFO0FQeWpDUjs7QU83akNNO0VBQ0U7QVBna0NSOztBTzlqQ007RUFDRTtBUGlrQ1I7O0FPN2tDTTtFQUNFO0FQZ2xDUjs7QU85a0NNO0VBQ0U7QVBpbENSOztBTzdrQ007RUFDRTtBUGdsQ1I7O0FPOWtDTTtFQUNFO0FQaWxDUjs7QU9ybENNO0VBQ0U7QVB3bENSOztBT3RsQ007RUFDRTtBUHlsQ1I7O0FPN2xDTTtFQUNFO0FQZ21DUjs7QU85bENNO0VBQ0U7QVBpbUNSOztBT3JtQ007RUFDRTtBUHdtQ1I7O0FPdG1DTTtFQUNFO0FQeW1DUjs7QU83bUNNO0VBQ0U7QVBnbkNSOztBTzltQ007RUFDRTtBUGluQ1I7O0FPcm5DTTtFQUNFO0FQd25DUjs7QU90bkNNO0VBQ0U7QVB5bkNSOztBTzduQ007RUFDRTtBUGdvQ1I7O0FPOW5DTTtFQUNFO0FQaW9DUjs7QU9yb0NNO0VBQ0U7QVB3b0NSOztBT3RvQ007RUFDRTtBUHlvQ1I7O0FPN29DTTtFQUNFO0FQZ3BDUjs7QU85b0NNO0VBQ0U7QVBpcENSOztBT3JwQ007RUFDRTtBUHdwQ1I7O0FPdHBDTTtFQUNFO0FQeXBDUjs7QU83cENNO0VBQ0U7QVBncUNSOztBTzlwQ007RUFDRTtBUGlxQ1I7O0FPcnFDTTtFQUNFO0FQd3FDUjs7QU90cUNNO0VBQ0U7QVB5cUNSOztBTzdxQ007RUFDRTtBUGdyQ1I7O0FPOXFDTTtFQUNFO0FQaXJDUjs7QU83ckNNO0VBQ0U7QVBnc0NSOztBTzlyQ007RUFDRTtBUGlzQ1I7O0FPN3JDTTtFQUNFO0FQZ3NDUjs7QU85ckNNO0VBQ0U7QVBpc0NSOztBT3JzQ007RUFDRTtBUHdzQ1I7O0FPdHNDTTtFQUNFO0FQeXNDUjs7QU83c0NNO0VBQ0U7QVBndENSOztBTzlzQ007RUFDRTtBUGl0Q1I7O0FPcnRDTTtFQUNFO0FQd3RDUjs7QU90dENNO0VBQ0U7QVB5dENSOztBTzd0Q007RUFDRTtBUGd1Q1I7O0FPOXRDTTtFQUNFO0FQaXVDUjs7QU9ydUNNO0VBQ0U7QVB3dUNSOztBT3R1Q007RUFDRTtBUHl1Q1I7O0FPN3VDTTtFQUNFO0FQZ3ZDUjs7QU85dUNNO0VBQ0U7QVBpdkNSOztBT3J2Q007RUFDRTtBUHd2Q1I7O0FPdHZDTTtFQUNFO0FQeXZDUjs7QU83dkNNO0VBQ0U7QVBnd0NSOztBTzl2Q007RUFDRTtBUGl3Q1I7O0FPcndDTTtFQUNFO0FQd3dDUjs7QU90d0NNO0VBQ0U7QVB5d0NSOztBTzd3Q007RUFDRTtBUGd4Q1I7O0FPOXdDTTtFQUNFO0FQaXhDUjs7QU9yeENNO0VBQ0U7QVB3eENSOztBT3R4Q007RUFDRTtBUHl4Q1I7O0FPN3hDTTtFQUNFO0FQZ3lDUjs7QU85eENNO0VBQ0U7QVBpeUNSOztBTzd5Q007RUFDRTtBUGd6Q1I7O0FPOXlDTTtFQUNFO0FQaXpDUjs7QU83eUNNO0VBQ0U7QVBnekNSOztBTzl5Q007RUFDRTtBUGl6Q1I7O0FPcnpDTTtFQUNFO0FQd3pDUjs7QU90ekNNO0VBQ0U7QVB5ekNSOztBTzd6Q007RUFDRTtBUGcwQ1I7O0FPOXpDTTtFQUNFO0FQaTBDUjs7QU9yMENNO0VBQ0U7QVB3MENSOztBT3QwQ007RUFDRTtBUHkwQ1I7O0FPNzBDTTtFQUNFO0FQZzFDUjs7QU85MENNO0VBQ0U7QVBpMUNSOztBT3IxQ007RUFDRTtBUHcxQ1I7O0FPdDFDTTtFQUNFO0FQeTFDUjs7QU83MUNNO0VBQ0U7QVBnMkNSOztBTzkxQ007RUFDRTtBUGkyQ1I7O0FPcjJDTTtFQUNFO0FQdzJDUjs7QU90MkNNO0VBQ0U7QVB5MkNSOztBTzcyQ007RUFDRTtBUGczQ1I7O0FPOTJDTTtFQUNFO0FQaTNDUjs7QU9yM0NNO0VBQ0U7QVB3M0NSOztBT3QzQ007RUFDRTtBUHkzQ1I7O0FPNzNDTTtFQUNFO0FQZzRDUjs7QU85M0NNO0VBQ0U7QVBpNENSOztBT3I0Q007RUFDRTtBUHc0Q1I7O0FPdDRDTTtFQUNFO0FQeTRDUjs7QU83NENNO0VBQ0U7QVBnNUNSOztBTzk0Q007RUFDRTtBUGk1Q1I7O0FPNzVDTTtFQUNFO0FQZzZDUjs7QU85NUNNO0VBQ0U7QVBpNkNSOztBTzc1Q007RUFDRTtBUGc2Q1I7O0FPOTVDTTtFQUNFO0FQaTZDUjs7QU9yNkNNO0VBQ0U7QVB3NkNSOztBT3Q2Q007RUFDRTtBUHk2Q1I7O0FPNzZDTTtFQUNFO0FQZzdDUjs7QU85NkNNO0VBQ0U7QVBpN0NSOztBT3I3Q007RUFDRTtBUHc3Q1I7O0FPdDdDTTtFQUNFO0FQeTdDUjs7QU83N0NNO0VBQ0U7QVBnOENSOztBTzk3Q007RUFDRTtBUGk4Q1I7O0FPcjhDTTtFQUNFO0FQdzhDUjs7QU90OENNO0VBQ0U7QVB5OENSOztBTzc4Q007RUFDRTtBUGc5Q1I7O0FPOThDTTtFQUNFO0FQaTlDUjs7QU9yOUNNO0VBQ0U7QVB3OUNSOztBT3Q5Q007RUFDRTtBUHk5Q1I7O0FPNzlDTTtFQUNFO0FQZytDUjs7QU85OUNNO0VBQ0U7QVBpK0NSOztBT3IrQ007RUFDRTtBUHcrQ1I7O0FPdCtDTTtFQUNFO0FQeStDUjs7QU83K0NNO0VBQ0U7QVBnL0NSOztBTzkrQ007RUFDRTtBUGkvQ1I7O0FPci9DTTtFQUNFO0FQdy9DUjs7QU90L0NNO0VBQ0U7QVB5L0NSOztBTzcvQ007RUFDRTtBUGdnRFI7O0FPOS9DTTtFQUNFO0FQaWdEUjs7QU83Z0RNO0VBQ0U7QVBnaERSOztBTzlnRE07RUFDRTtBUGloRFI7O0FPN2dETTtFQUNFO0FQZ2hEUjs7QU85Z0RNO0VBQ0U7QVBpaERSOztBT3JoRE07RUFDRTtBUHdoRFI7O0FPdGhETTtFQUNFO0FQeWhEUjs7QU83aERNO0VBQ0U7QVBnaURSOztBTzloRE07RUFDRTtBUGlpRFI7O0FPcmlETTtFQUNFO0FQd2lEUjs7QU90aURNO0VBQ0U7QVB5aURSOztBTzdpRE07RUFDRTtBUGdqRFI7O0FPOWlETTtFQUNFO0FQaWpEUjs7QU9yakRNO0VBQ0U7QVB3akRSOztBT3RqRE07RUFDRTtBUHlqRFI7O0FPN2pETTtFQUNFO0FQZ2tEUjs7QU85akRNO0VBQ0U7QVBpa0RSOztBT3JrRE07RUFDRTtBUHdrRFI7O0FPdGtETTtFQUNFO0FQeWtEUjs7QU83a0RNO0VBQ0U7QVBnbERSOztBTzlrRE07RUFDRTtBUGlsRFI7O0FPcmxETTtFQUNFO0FQd2xEUjs7QU90bERNO0VBQ0U7QVB5bERSOztBTzdsRE07RUFDRTtBUGdtRFI7O0FPOWxETTtFQUNFO0FQaW1EUjs7QU9ybURNO0VBQ0U7QVB3bURSOztBT3RtRE07RUFDRTtBUHltRFI7O0FPN21ETTtFQUNFO0FQZ25EUjs7QU85bURNO0VBQ0U7QVBpbkRSOztBTzduRE07RUFDRTtBUGdvRFI7O0FPOW5ETTtFQUNFO0FQaW9EUjs7QU83bkRNO0VBQ0U7QVBnb0RSOztBTzluRE07RUFDRTtBUGlvRFI7O0FPcm9ETTtFQUNFO0FQd29EUjs7QU90b0RNO0VBQ0U7QVB5b0RSOztBTzdvRE07RUFDRTtBUGdwRFI7O0FPOW9ETTtFQUNFO0FQaXBEUjs7QU9ycERNO0VBQ0U7QVB3cERSOztBT3RwRE07RUFDRTtBUHlwRFI7O0FPN3BETTtFQUNFO0FQZ3FEUjs7QU85cERNO0VBQ0U7QVBpcURSOztBT3JxRE07RUFDRTtBUHdxRFI7O0FPdHFETTtFQUNFO0FQeXFEUjs7QU83cURNO0VBQ0U7QVBnckRSOztBTzlxRE07RUFDRTtBUGlyRFI7O0FPcnJETTtFQUNFO0FQd3JEUjs7QU90ckRNO0VBQ0U7QVB5ckRSOztBTzdyRE07RUFDRTtBUGdzRFI7O0FPOXJETTtFQUNFO0FQaXNEUjs7QU9yc0RNO0VBQ0U7QVB3c0RSOztBT3RzRE07RUFDRTtBUHlzRFI7O0FPN3NETTtFQUNFO0FQZ3REUjs7QU85c0RNO0VBQ0U7QVBpdERSOztBT3J0RE07RUFDRTtBUHd0RFI7O0FPdHRETTtFQUNFO0FQeXREUjs7QU83dERNO0VBQ0U7QVBndURSOztBTzl0RE07RUFDRTtBUGl1RFI7O0FPN3VETTtFQUNFO0FQZ3ZEUjs7QU85dURNO0VBQ0U7QVBpdkRSOztBTzd1RE07RUFDRTtBUGd2RFI7O0FPOXVETTtFQUNFO0FQaXZEUjs7QU9ydkRNO0VBQ0U7QVB3dkRSOztBT3R2RE07RUFDRTtBUHl2RFI7O0FPN3ZETTtFQUNFO0FQZ3dEUjs7QU85dkRNO0VBQ0U7QVBpd0RSOztBT3J3RE07RUFDRTtBUHd3RFI7O0FPdHdETTtFQUNFO0FQeXdEUjs7QU83d0RNO0VBQ0U7QVBneERSOztBTzl3RE07RUFDRTtBUGl4RFI7O0FPcnhETTtFQUNFO0FQd3hEUjs7QU90eERNO0VBQ0U7QVB5eERSOztBTzd4RE07RUFDRTtBUGd5RFI7O0FPOXhETTtFQUNFO0FQaXlEUjs7QU9yeURNO0VBQ0U7QVB3eURSOztBT3R5RE07RUFDRTtBUHl5RFI7O0FPN3lETTtFQUNFO0FQZ3pEUjs7QU85eURNO0VBQ0U7QVBpekRSOztBT3J6RE07RUFDRTtBUHd6RFI7O0FPdHpETTtFQUNFO0FQeXpEUjs7QU83ekRNO0VBQ0U7QVBnMERSOztBTzl6RE07RUFDRTtBUGkwRFI7O0FPcjBETTtFQUNFO0FQdzBEUjs7QU90MERNO0VBQ0U7QVB5MERSOztBTzcwRE07RUFDRTtBUGcxRFI7O0FPOTBETTtFQUNFO0FQaTFEUjs7QU83MURNO0VBQ0U7QVBnMkRSOztBTzkxRE07RUFDRTtBUGkyRFI7O0FPNzFETTtFQUNFO0FQZzJEUjs7QU85MURNO0VBQ0U7QVBpMkRSOztBT3IyRE07RUFDRTtBUHcyRFI7O0FPdDJETTtFQUNFO0FQeTJEUjs7QU83MkRNO0VBQ0U7QVBnM0RSOztBTzkyRE07RUFDRTtBUGkzRFI7O0FPcjNETTtFQUNFO0FQdzNEUjs7QU90M0RNO0VBQ0U7QVB5M0RSOztBTzczRE07RUFDRTtBUGc0RFI7O0FPOTNETTtFQUNFO0FQaTREUjs7QU9yNERNO0VBQ0U7QVB3NERSOztBT3Q0RE07RUFDRTtBUHk0RFI7O0FPNzRETTtFQUNFO0FQZzVEUjs7QU85NERNO0VBQ0U7QVBpNURSOztBT3I1RE07RUFDRTtBUHc1RFI7O0FPdDVETTtFQUNFO0FQeTVEUjs7QU83NURNO0VBQ0U7QVBnNkRSOztBTzk1RE07RUFDRTtBUGk2RFI7O0FPcjZETTtFQUNFO0FQdzZEUjs7QU90NkRNO0VBQ0U7QVB5NkRSOztBTzc2RE07RUFDRTtBUGc3RFI7O0FPOTZETTtFQUNFO0FQaTdEUjs7QU9yN0RNO0VBQ0U7QVB3N0RSOztBT3Q3RE07RUFDRTtBUHk3RFI7O0FPNzdETTtFQUNFO0FQZzhEUjs7QU85N0RNO0VBQ0U7QVBpOERSOztBTzc4RE07RUFDRTtBUGc5RFI7O0FPOThETTtFQUNFO0FQaTlEUjs7QU83OERNO0VBQ0U7QVBnOURSOztBTzk4RE07RUFDRTtBUGk5RFI7O0FPcjlETTtFQUNFO0FQdzlEUjs7QU90OURNO0VBQ0U7QVB5OURSOztBTzc5RE07RUFDRTtBUGcrRFI7O0FPOTlETTtFQUNFO0FQaStEUjs7QU9yK0RNO0VBQ0U7QVB3K0RSOztBT3QrRE07RUFDRTtBUHkrRFI7O0FPNytETTtFQUNFO0FQZy9EUjs7QU85K0RNO0VBQ0U7QVBpL0RSOztBT3IvRE07RUFDRTtBUHcvRFI7O0FPdC9ETTtFQUNFO0FQeS9EUjs7QU83L0RNO0VBQ0U7QVBnZ0VSOztBTzkvRE07RUFDRTtBUGlnRVI7O0FPcmdFTTtFQUNFO0FQd2dFUjs7QU90Z0VNO0VBQ0U7QVB5Z0VSOztBTzdnRU07RUFDRTtBUGdoRVI7O0FPOWdFTTtFQUNFO0FQaWhFUjs7QU9yaEVNO0VBQ0U7QVB3aEVSOztBT3RoRU07RUFDRTtBUHloRVI7O0FPN2hFTTtFQUNFO0FQZ2lFUjs7QU85aEVNO0VBQ0U7QVBpaUVSOztBT3JpRU07RUFDRTtBUHdpRVI7O0FPdGlFTTtFQUNFO0FQeWlFUjs7QU83aUVNO0VBQ0U7QVBnakVSOztBTzlpRU07RUFDRTtBUGlqRVI7O0FPN2pFTTtFQUNFO0FQZ2tFUjs7QU85akVNO0VBQ0U7QVBpa0VSOztBTzdqRU07RUFDRTtBUGdrRVI7O0FPOWpFTTtFQUNFO0FQaWtFUjs7QU9ya0VNO0VBQ0U7QVB3a0VSOztBT3RrRU07RUFDRTtBUHlrRVI7O0FPN2tFTTtFQUNFO0FQZ2xFUjs7QU85a0VNO0VBQ0U7QVBpbEVSOztBT3JsRU07RUFDRTtBUHdsRVI7O0FPdGxFTTtFQUNFO0FQeWxFUjs7QU83bEVNO0VBQ0U7QVBnbUVSOztBTzlsRU07RUFDRTtBUGltRVI7O0FPcm1FTTtFQUNFO0FQd21FUjs7QU90bUVNO0VBQ0U7QVB5bUVSOztBTzdtRU07RUFDRTtBUGduRVI7O0FPOW1FTTtFQUNFO0FQaW5FUjs7QU9ybkVNO0VBQ0U7QVB3bkVSOztBT3RuRU07RUFDRTtBUHluRVI7O0FPN25FTTtFQUNFO0FQZ29FUjs7QU85bkVNO0VBQ0U7QVBpb0VSOztBT3JvRU07RUFDRTtBUHdvRVI7O0FPdG9FTTtFQUNFO0FQeW9FUjs7QU83b0VNO0VBQ0U7QVBncEVSOztBTzlvRU07RUFDRTtBUGlwRVI7O0FPcnBFTTtFQUNFO0FQd3BFUjs7QU90cEVNO0VBQ0U7QVB5cEVSOztBTzdwRU07RUFDRTtBUGdxRVI7O0FPOXBFTTtFQUNFO0FQaXFFUjs7QU83cUVNO0VBQ0U7QVBnckVSOztBTzlxRU07RUFDRTtBUGlyRVI7O0FPN3FFTTtFQUNFO0FQZ3JFUjs7QU85cUVNO0VBQ0U7QVBpckVSOztBT3JyRU07RUFDRTtBUHdyRVI7O0FPdHJFTTtFQUNFO0FQeXJFUjs7QU83ckVNO0VBQ0U7QVBnc0VSOztBTzlyRU07RUFDRTtBUGlzRVI7O0FPcnNFTTtFQUNFO0FQd3NFUjs7QU90c0VNO0VBQ0U7QVB5c0VSOztBTzdzRU07RUFDRTtBUGd0RVI7O0FPOXNFTTtFQUNFO0FQaXRFUjs7QU9ydEVNO0VBQ0U7QVB3dEVSOztBT3R0RU07RUFDRTtBUHl0RVI7O0FPN3RFTTtFQUNFO0FQZ3VFUjs7QU85dEVNO0VBQ0U7QVBpdUVSOztBT3J1RU07RUFDRTtBUHd1RVI7O0FPdHVFTTtFQUNFO0FQeXVFUjs7QU83dUVNO0VBQ0U7QVBndkVSOztBTzl1RU07RUFDRTtBUGl2RVI7O0FPcnZFTTtFQUNFO0FQd3ZFUjs7QU90dkVNO0VBQ0U7QVB5dkVSOztBTzd2RU07RUFDRTtBUGd3RVI7O0FPOXZFTTtFQUNFO0FQaXdFUjs7QU9yd0VNO0VBQ0U7QVB3d0VSOztBT3R3RU07RUFDRTtBUHl3RVI7O0FPN3dFTTtFQUNFO0FQZ3hFUjs7QU85d0VNO0VBQ0U7QVBpeEVSOztBTzd4RU07RUFDRTtBUGd5RVI7O0FPOXhFTTtFQUNFO0FQaXlFUjs7QU83eEVNO0VBQ0U7QVBneUVSOztBTzl4RU07RUFDRTtBUGl5RVI7O0FPcnlFTTtFQUNFO0FQd3lFUjs7QU90eUVNO0VBQ0U7QVB5eUVSOztBTzd5RU07RUFDRTtBUGd6RVI7O0FPOXlFTTtFQUNFO0FQaXpFUjs7QU9yekVNO0VBQ0U7QVB3ekVSOztBT3R6RU07RUFDRTtBUHl6RVI7O0FPN3pFTTtFQUNFO0FQZzBFUjs7QU85ekVNO0VBQ0U7QVBpMEVSOztBT3IwRU07RUFDRTtBUHcwRVI7O0FPdDBFTTtFQUNFO0FQeTBFUjs7QU83MEVNO0VBQ0U7QVBnMUVSOztBTzkwRU07RUFDRTtBUGkxRVI7O0FPcjFFTTtFQUNFO0FQdzFFUjs7QU90MUVNO0VBQ0U7QVB5MUVSOztBTzcxRU07RUFDRTtBUGcyRVI7O0FPOTFFTTtFQUNFO0FQaTJFUjs7QU9yMkVNO0VBQ0U7QVB3MkVSOztBT3QyRU07RUFDRTtBUHkyRVI7O0FPNzJFTTtFQUNFO0FQZzNFUjs7QU85MkVNO0VBQ0U7QVBpM0VSOztBT3IzRU07RUFDRTtBUHczRVI7O0FPdDNFTTtFQUNFO0FQeTNFUjs7QU83M0VNO0VBQ0U7QVBnNEVSOztBTzkzRU07RUFDRTtBUGk0RVI7O0FPNzRFTTtFQUNFO0FQZzVFUjs7QU85NEVNO0VBQ0U7QVBpNUVSOztBTzc0RU07RUFDRTtBUGc1RVI7O0FPOTRFTTtFQUNFO0FQaTVFUjs7QU9yNUVNO0VBQ0U7QVB3NUVSOztBT3Q1RU07RUFDRTtBUHk1RVI7O0FPNzVFTTtFQUNFO0FQZzZFUjs7QU85NUVNO0VBQ0U7QVBpNkVSOztBT3I2RU07RUFDRTtBUHc2RVI7O0FPdDZFTTtFQUNFO0FQeTZFUjs7QU83NkVNO0VBQ0U7QVBnN0VSOztBTzk2RU07RUFDRTtBUGk3RVI7O0FPcjdFTTtFQUNFO0FQdzdFUjs7QU90N0VNO0VBQ0U7QVB5N0VSOztBTzc3RU07RUFDRTtBUGc4RVI7O0FPOTdFTTtFQUNFO0FQaThFUjs7QU9yOEVNO0VBQ0U7QVB3OEVSOztBT3Q4RU07RUFDRTtBUHk4RVI7O0FPNzhFTTtFQUNFO0FQZzlFUjs7QU85OEVNO0VBQ0U7QVBpOUVSOztBT3I5RU07RUFDRTtBUHc5RVI7O0FPdDlFTTtFQUNFO0FQeTlFUjs7QU83OUVNO0VBQ0U7QVBnK0VSOztBTzk5RU07RUFDRTtBUGkrRVI7O0FPcitFTTtFQUNFO0FQdytFUjs7QU90K0VNO0VBQ0U7QVB5K0VSOztBTzcrRU07RUFDRTtBUGcvRVI7O0FPOStFTTtFQUNFO0FQaS9FUjs7QU83L0VNO0VBQ0U7QVBnZ0ZSOztBTzkvRU07RUFDRTtBUGlnRlI7O0FPNy9FTTtFQUNFO0FQZ2dGUjs7QU85L0VNO0VBQ0U7QVBpZ0ZSOztBT3JnRk07RUFDRTtBUHdnRlI7O0FPdGdGTTtFQUNFO0FQeWdGUjs7QU83Z0ZNO0VBQ0U7QVBnaEZSOztBTzlnRk07RUFDRTtBUGloRlI7O0FPcmhGTTtFQUNFO0FQd2hGUjs7QU90aEZNO0VBQ0U7QVB5aEZSOztBTzdoRk07RUFDRTtBUGdpRlI7O0FPOWhGTTtFQUNFO0FQaWlGUjs7QU9yaUZNO0VBQ0U7QVB3aUZSOztBT3RpRk07RUFDRTtBUHlpRlI7O0FPN2lGTTtFQUNFO0FQZ2pGUjs7QU85aUZNO0VBQ0U7QVBpakZSOztBT3JqRk07RUFDRTtBUHdqRlI7O0FPdGpGTTtFQUNFO0FQeWpGUjs7QU83akZNO0VBQ0U7QVBna0ZSOztBTzlqRk07RUFDRTtBUGlrRlI7O0FPcmtGTTtFQUNFO0FQd2tGUjs7QU90a0ZNO0VBQ0U7QVB5a0ZSOztBTzdrRk07RUFDRTtBUGdsRlI7O0FPOWtGTTtFQUNFO0FQaWxGUjs7QU9ybEZNO0VBQ0U7QVB3bEZSOztBT3RsRk07RUFDRTtBUHlsRlI7O0FPN2xGTTtFQUNFO0FQZ21GUjs7QU85bEZNO0VBQ0U7QVBpbUZSOztBTzdtRk07RUFDRTtBUGduRlI7O0FPOW1GTTtFQUNFO0FQaW5GUjs7QU83bUZNO0VBQ0U7QVBnbkZSOztBTzltRk07RUFDRTtBUGluRlI7O0FPcm5GTTtFQUNFO0FQd25GUjs7QU90bkZNO0VBQ0U7QVB5bkZSOztBTzduRk07RUFDRTtBUGdvRlI7O0FPOW5GTTtFQUNFO0FQaW9GUjs7QU9yb0ZNO0VBQ0U7QVB3b0ZSOztBT3RvRk07RUFDRTtBUHlvRlI7O0FPN29GTTtFQUNFO0FQZ3BGUjs7QU85b0ZNO0VBQ0U7QVBpcEZSOztBT3JwRk07RUFDRTtBUHdwRlI7O0FPdHBGTTtFQUNFO0FQeXBGUjs7QU83cEZNO0VBQ0U7QVBncUZSOztBTzlwRk07RUFDRTtBUGlxRlI7O0FPcnFGTTtFQUNFO0FQd3FGUjs7QU90cUZNO0VBQ0U7QVB5cUZSOztBTzdxRk07RUFDRTtBUGdyRlI7O0FPOXFGTTtFQUNFO0FQaXJGUjs7QU83ckZNO0VBQ0U7QVBnc0ZSOztBTzlyRk07RUFDRTtBUGlzRlI7O0FPN3JGTTtFQUNFO0FQZ3NGUjs7QU85ckZNO0VBQ0U7QVBpc0ZSOztBT3JzRk07RUFDRTtBUHdzRlI7O0FPdHNGTTtFQUNFO0FQeXNGUjs7QU83c0ZNO0VBQ0U7QVBndEZSOztBTzlzRk07RUFDRTtBUGl0RlI7O0FPcnRGTTtFQUNFO0FQd3RGUjs7QU90dEZNO0VBQ0U7QVB5dEZSOztBTzd0Rk07RUFDRTtBUGd1RlI7O0FPOXRGTTtFQUNFO0FQaXVGUjs7QU9ydUZNO0VBQ0U7QVB3dUZSOztBT3R1Rk07RUFDRTtBUHl1RlI7O0FPN3VGTTtFQUNFO0FQZ3ZGUjs7QU85dUZNO0VBQ0U7QVBpdkZSOztBT3J2Rk07RUFDRTtBUHd2RlI7O0FPdHZGTTtFQUNFO0FQeXZGUjs7QU83dkZNO0VBQ0U7QVBnd0ZSOztBTzl2Rk07RUFDRTtBUGl3RlI7O0FPN3dGTTtFQUNFO0FQZ3hGUjs7QU85d0ZNO0VBQ0U7QVBpeEZSOztBTzd3Rk07RUFDRTtBUGd4RlI7O0FPOXdGTTtFQUNFO0FQaXhGUjs7QU9yeEZNO0VBQ0U7QVB3eEZSOztBT3R4Rk07RUFDRTtBUHl4RlI7O0FPN3hGTTtFQUNFO0FQZ3lGUjs7QU85eEZNO0VBQ0U7QVBpeUZSOztBT3J5Rk07RUFDRTtBUHd5RlI7O0FPdHlGTTtFQUNFO0FQeXlGUjs7QU83eUZNO0VBQ0U7QVBnekZSOztBTzl5Rk07RUFDRTtBUGl6RlI7O0FPcnpGTTtFQUNFO0FQd3pGUjs7QU90ekZNO0VBQ0U7QVB5ekZSOztBTzd6Rk07RUFDRTtBUGcwRlI7O0FPOXpGTTtFQUNFO0FQaTBGUjs7QU9yMEZNO0VBQ0U7QVB3MEZSOztBT3QwRk07RUFDRTtBUHkwRlI7O0FPNzBGTTtFQUNFO0FQZzFGUjs7QU85MEZNO0VBQ0U7QVBpMUZSOztBT3owRkU7RUFDRTtBUDQwRko7O0FPMTBGRTtFQUNFO0FQNjBGSjs7QU9qMUZFO0VBQ0U7QVBvMUZKOztBT2wxRkU7RUFDRTtBUHExRko7O0FPejFGRTtFQUNFO0FQNDFGSjs7QU8xMUZFO0VBQ0U7QVA2MUZKOztBUTEzRkE7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBUjAzRkY7O0FRdjNGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUnczRkY7O0FRcjNGQTs7RUFBQTtBQUlBO0VBQ0U7QVJ1M0ZGOztBUXAzRkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FSczNGRjs7QVFuM0ZBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7QVJvM0ZGOztBUWozRkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FSbTNGRjs7QVFoM0ZBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FSaTNGRjs7QVE5MkZBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0FSZzNGRjs7QVE3MkZBOztFQUFBO0FBSUE7O0VBRUU7QVIrMkZGOztBUTUyRkE7OztFQUFBO0FBS0E7OztFQUdFO0VBQ0E7QVI4MkZGOztBUTMyRkE7O0VBQUE7QUFJQTtFQUNFO0FSNjJGRjs7QVExMkZBOzs7RUFBQTtBQUtBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0FSNDJGRjs7QVF6MkZBO0VBQ0U7QVI0MkZGOztBUXoyRkE7RUFDRTtBUjQyRkY7O0FRejJGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUjAyRkY7O0FRdjJGQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FSdzJGRjs7QVFyMkZBOzs7RUFBQTtBQUtBO1FBQ1E7RUFDTjtBUnUyRkY7O0FRcDJGQTs7O0VBQUE7QUFLQTtTQUNTO0VBQ1A7QVJzMkZGOztBUW4yRkE7O0VBQUE7QUFJQTs7OztFQUlFO0FScTJGRjs7QVFsMkZBOztFQUFBO0FBSUE7Ozs7RUFJRTtFQUNBO0FSbzJGRjs7QVFqMkZBOztFQUFBO0FBSUE7Ozs7RUFJRTtBUm0yRkY7O0FRaDJGQTs7RUFBQTtBQUlBO0VBQ0U7QVJrMkZGOztBUS8xRkE7Ozs7O0VBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmkyRkY7O0FROTFGQTs7RUFBQTtBQUlBO0VBQ0U7QVJnMkZGOztBUTcxRkE7O0VBQUE7QUFJQTtFQUNFO0FSKzFGRjs7QVE1MUZBOzs7RUFBQTtBQUtBOztFQUVFO0VBQ0E7QVI4MUZGOztBUTMxRkE7O0VBQUE7QUFJQTs7RUFFRTtBUjYxRkY7O0FRMTFGQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7QVI0MUZGOztBUXoxRkE7O0VBQUE7QUFJQTtFQUNFO0FSMjFGRjs7QVF4MUZBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBUjAxRkY7O0FRdjFGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUncxRkY7O0FRcjFGQTs7RUFBQTtBQUlBO0VBQ0U7QVJ1MUZGOztBUXAxRkE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0U7QVJxMUZGOztBUWwxRkE7O0VBQUE7QUFJQTtFQUNFO0FSbzFGRjs7QVMvcUdBO0VBQ0U7QVRrckdGOztBUy9xR0E7RUFDRTtBVGtyR0Y7O0FTL3FHQTs7Ozs7RUFLRSxnSUNtV1c7QVYrMEZiOztBUy9xR0E7RUFDRSxjQ29EVztFRG5EWDtFQUVBO0FUaXJHRjs7QVM3cUdBO0VBQ0U7RUFDQTtBVGdyR0Y7O0FTNXFHQTtFQUNFO0FUK3FHRjs7QVMzcUdBO0VBQ0U7QVQ4cUdGOztBUzNxR0E7QUFDQTtFQUNFO0FUOHFHRjs7QVN6cUdBO0VBQ0U7QVQ0cUdGOztBU3pxR0E7QUFDQTtFQUNFO0FUNHFHRjs7QVN2cUdBO0FBQ0E7RUFDRTtBVDBxR0Y7O0FTcnFHQTtBQUNBO0VBQ0U7QVR3cUdGOztBU25xR0E7QUFDQTtFQUNFO0FUc3FHRjs7QVNqcUdBO0VBQ0U7QVRvcUdGO0FTbnFHRTtFQUNFO0FUcXFHSjs7QVNocUdBO0VBQ0U7RUFDQTtFQUNBLHdDQ2RjO0FWaXJHaEI7O0FTL3BHQTtFQUNFO0VBQ0E7RUFDQTtBVGtxR0Y7O0FTOXBHQTtFQUNFO0FUaXFHRjtBU2hxR0U7RUFDRTtFQUNBO0FUa3FHSjtBUy9wR0U7RUFDRTtBVGlxR0o7QVM5cEdFO0VBQ0U7QVRncUdKO0FTOXBHRTtFQUNFO0FUZ3FHSjtBUzlwR0U7RUFDRTtBVGdxR0o7QVM5cEdFO0VBQ0U7QVRncUdKOztBUzNwR0E7O0VBRUU7RUFDQTtBVDhwR0Y7O0FTeHBHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQycEdKO0FTenBHSTtFQUNFLCtCQzFGYztFRDJGZDtFQUNBO0VBQ0E7RUFDQTtBVDJwR047QVN4cEdJO0VBQ0UsbURDdEd1QjtBVmd3RzdCO0FTdnBHSTtFQUNFLHdDQ25HdUI7QVY0dkc3QjtBU3RwR0k7RUFFRSxzQ0N0SFU7QVY2d0doQjtBU3BwR0k7RUFDRTtFQUNBLGlDQy9HZ0I7QVZxd0d0QjtBU25wR0k7RUFDRTtBVHFwR047QVNocEdFO0VBQ0U7RUFDQTtBVGtwR0o7O0FTOW9HQTtFQUNFO0lBQ0U7RVRpcEdGO0VTL29HRTs7SUFFRTtFVGlwR0o7RVM5b0dFO0lBQ0U7SUFDQTtJQUNBO0VUZ3BHSjtBQUNGO0FTM29HQTtFQUNFO0VBQ0E7RUFDQSwwQ0NoSjZCO0FWNnhHL0I7QVMzb0dFOzs7O0VBSUU7RUFDQTtFQUNBO0FUNm9HSjtBUzFvR0U7RUFDRTtFQUNBLDBDQzdKMkI7RUQ4SjNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDRvR0o7QVN6b0dFO0VBQ0U7QVQyb0dKO0FTeG9HRTtFQUNFLHdDQy9LeUI7QVZ5ekc3Qjs7QVNyb0dBO0VBQ0U7RUFDQTtFQUNBO0FUd29HRjtBU3RvR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVR3b0dKO0FTdG9HSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVR3b0dOOztBU2xvR0E7RUFDRTtBVHFvR0Y7O0FTbG9HQTtFQUNFO0FUcW9HRjs7QVNsb0dBOztzQkFBQTtBQUlBO0VBQ0U7QVRvb0dGOztBU2pvR0E7RUFDRTtFQUNBO0FUb29HRjs7QVNob0dBOztzQkFBQTtBQUlFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVMvbkdFO0VBREY7SUFFSTtFVG1vR0Y7QUFDRjs7QVM3bkdFO0VBREY7SUFFSTtFVGlvR0Y7QUFDRjs7QVM3bkdBO0VBQ0U7RUFDQSx3Q0MzVDJCO0VENFQzQixzQ0MxVWM7QVYwOEdoQjtBUzluR0U7RUFDRSx3Q0MvVHlCO0FWKzdHN0I7QVM3bkdFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDQ0YwQjtFREcxQiwyQ0N4VmlCO0FWdTlHckI7O0FTM25HQTtFQUNFO0VBQ0E7QVQ4bkdGOztBUzFuR0E7RUFDRTtBVDZuR0Y7O0FTMW5HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUNm5HRjtBUzFuR0k7RUFDRTtBVDRuR047QVMxbkdJO0VBQ0UseURDbEVnQjtBVjhyR3RCO0FTeG5HRTtFQUNFO0FUMG5HSjtBU3huR0k7RUFDRSxvQ0M1VnVCO0FWczlHN0I7QVN0bkdFO0VBQ0UsK0JDcFhnQjtBVjQrR3BCO0FTcG5HSTtFQUNFO0FUc25HTjs7QVNqbkdBO0VBQ0U7QVRvbkdGOztBU2puR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUb25HRjs7QVNobkdBO0VBRUU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBMkRBO0VUd2pHRjtFU2puR0U7SUFDRTtFVG1uR0o7RVNobkdFOztJQUVFO0lBQ0E7RVRrbkdKO0VTL21HRTtJQUNFO0VUaW5HSjtFUzltR0U7SUFDRTtJQUNBO0VUZ25HSjtFUzltR0k7SUFDRTtJQUNBO0VUZ25HTjtFUzltR007SUFDRTtFVGduR1I7RVMzbUdFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFVDZtR0o7RVMzbUdJO0lBQ0U7SUFDQTtFVDZtR047RVN6bUdFO0lBQ0U7SUFDQTtFVDJtR0o7RVN4bUdFO0lBQ0U7SUFDQTtJQUNBO0VUMG1HSjtFU3ZtR0U7SUFDRTtJQUNBO0VUeW1HSjtFU3JtR0U7SUFDRTtJQUNBO0VUdW1HSjtBQUNGO0FTbG1HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUb21HRjtBU2xtR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUb21HSjs7QVNobUdBOzttQkFBQTtBQUlBO0VBQ0U7QVRrbUdGOztBUy9sR0E7RUFDRTtBVGttR0Y7O0FTaG1HQTtFQUNFO0FUbW1HRjs7QVNqbUdBO0VBQ0U7QVRvbUdGOztBU2htR0E7RUFDRTtBVG1tR0Y7O0FTam1HQTtFQUNFO0FUb21HRjs7QVNobUdBOztFQUNFO0FUb21HRjs7QVNsbUdBO0VBQ0U7QVRxbUdGOztBU25tR0E7RUFDRTtFQUNBO0VBQ0E7QVRzbUdGOztBU3BtR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVHVtR0Y7O0FTcm1HQTtFQUNFO0FUd21HRjs7QVNybUdBOzswQkFBQTtBQWNJO0VBQ0U7QVQ2bEdOOztBU3hsR007RUFDRTtBVDJsR1I7O0FTNWxHTTtFQUNFO0FUK2xHUjs7QVNobUdNO0VBQ0U7QVRtbUdSOztBU3BtR007RUFDRTtBVHVtR1I7O0FTam1HTztFQUNFO0VBQ0E7QVRvbUdUOztBUzlsR007RUFDRTtFQUNBO0FUaW1HUjs7QVN4bkdJO0VBQ0U7QVQybkdOOztBU3RuR007RUFDRTtBVHluR1I7O0FTMW5HTTtFQUNFO0FUNm5HUjs7QVM5bkdNO0VBQ0U7QVRpb0dSOztBU2xvR007RUFDRTtBVHFvR1I7O0FTL25HTztFQUNFO0VBQ0E7QVRrb0dUOztBUzVuR007RUFDRTtFQUNBO0FUK25HUjs7QVN0cEdJO0VBQ0U7QVR5cEdOOztBU3BwR007RUFDRTtBVHVwR1I7O0FTeHBHTTtFQUNFO0FUMnBHUjs7QVM1cEdNO0VBQ0U7QVQrcEdSOztBU2hxR007RUFDRTtBVG1xR1I7O0FTN3BHTztFQUNFO0VBQ0E7QVRncUdUOztBUzFwR007RUFDRTtFQUNBO0FUNnBHUjs7QVNwckdJO0VBQ0U7QVR1ckdOOztBU2xyR007RUFDRTtBVHFyR1I7O0FTdHJHTTtFQUNFO0FUeXJHUjs7QVMxckdNO0VBQ0U7QVQ2ckdSOztBUzlyR007RUFDRTtBVGlzR1I7O0FTM3JHTztFQUNFO0VBQ0E7QVQ4ckdUOztBU3hyR007RUFDRTtFQUNBO0FUMnJHUjs7QVNsdEdJO0VBQ0U7QVRxdEdOOztBU2h0R007RUFDRTtBVG10R1I7O0FTcHRHTTtFQUNFO0FUdXRHUjs7QVN4dEdNO0VBQ0U7QVQydEdSOztBUzV0R007RUFDRTtBVCt0R1I7O0FTenRHTztFQUNFO0VBQ0E7QVQ0dEdUOztBU3R0R007RUFDRTtFQUNBO0FUeXRHUjs7QVNodkdJO0VBQ0U7QVRtdkdOOztBUzl1R007RUFDRTtBVGl2R1I7O0FTbHZHTTtFQUNFO0FUcXZHUjs7QVN0dkdNO0VBQ0U7QVR5dkdSOztBUzF2R007RUFDRTtBVDZ2R1I7O0FTdnZHTztFQUNFO0VBQ0E7QVQwdkdUOztBU3B2R007RUFDRTtFQUNBO0FUdXZHUjs7QVM5d0dJO0VBQ0U7QVRpeEdOOztBUzV3R007RUFDRTtBVCt3R1I7O0FTaHhHTTtFQUNFO0FUbXhHUjs7QVNweEdNO0VBQ0U7QVR1eEdSOztBU3h4R007RUFDRTtBVDJ4R1I7O0FTcnhHTztFQUNFO0VBQ0E7QVR3eEdUOztBU2x4R007RUFDRTtFQUNBO0FUcXhHUjs7QVM1eUdJO0VBQ0U7QVQreUdOOztBUzF5R007RUFDRTtBVDZ5R1I7O0FTOXlHTTtFQUNFO0FUaXpHUjs7QVNsekdNO0VBQ0U7QVRxekdSOztBU3R6R007RUFDRTtBVHl6R1I7O0FTbnpHTztFQUNFO0VBQ0E7QVRzekdUOztBU2h6R007RUFDRTtFQUNBO0FUbXpHUjs7QVMxMEdJO0VBQ0U7QVQ2MEdOOztBU3gwR007RUFDRTtBVDIwR1I7O0FTNTBHTTtFQUNFO0FUKzBHUjs7QVNoMUdNO0VBQ0U7QVRtMUdSOztBU3AxR007RUFDRTtBVHUxR1I7O0FTajFHTztFQUNFO0VBQ0E7QVRvMUdUOztBUzkwR007RUFDRTtFQUNBO0FUaTFHUjs7QVN4MkdJO0VBQ0U7QVQyMkdOOztBU3QyR007RUFDRTtBVHkyR1I7O0FTMTJHTTtFQUNFO0FUNjJHUjs7QVM5MkdNO0VBQ0U7QVRpM0dSOztBU2wzR007RUFDRTtBVHEzR1I7O0FTLzJHTztFQUNFO0VBQ0E7QVRrM0dUOztBUzUyR007RUFDRTtFQUNBO0FUKzJHUjs7QVN0NEdJO0VBQ0U7QVR5NEdOOztBU3A0R007RUFDRTtBVHU0R1I7O0FTeDRHTTtFQUNFO0FUMjRHUjs7QVM1NEdNO0VBQ0U7QVQrNEdSOztBU2g1R007RUFDRTtBVG01R1I7O0FTNzRHTztFQUNFO0VBQ0E7QVRnNUdUOztBUzE0R007RUFDRTtFQUNBO0FUNjRHUjs7QVNwNkdJO0VBQ0U7QVR1NkdOOztBU2w2R007RUFDRTtBVHE2R1I7O0FTdDZHTTtFQUNFO0FUeTZHUjs7QVMxNkdNO0VBQ0U7QVQ2NkdSOztBUzk2R007RUFDRTtBVGk3R1I7O0FTMzZHTztFQUNFO0VBQ0E7QVQ4NkdUOztBU3g2R007RUFDRTtFQUNBO0FUMjZHUjs7QVNsOEdJO0VBQ0U7QVRxOEdOOztBU2g4R007RUFDRTtBVG04R1I7O0FTcDhHTTtFQUNFO0FUdThHUjs7QVN4OEdNO0VBQ0U7QVQyOEdSOztBUzU4R007RUFDRTtBVCs4R1I7O0FTejhHTztFQUNFO0VBQ0E7QVQ0OEdUOztBU3Q4R007RUFDRTtFQUNBO0FUeThHUjs7QVNoK0dJO0VBQ0U7QVRtK0dOOztBUzk5R007RUFDRTtBVGkrR1I7O0FTbCtHTTtFQUNFO0FUcStHUjs7QVN0K0dNO0VBQ0U7QVR5K0dSOztBUzErR007RUFDRTtBVDYrR1I7O0FTditHTztFQUNFO0VBQ0E7QVQwK0dUOztBU3ArR007RUFDRTtFQUNBO0FUdStHUjs7QVM5L0dJO0VBQ0U7QVRpZ0hOOztBUzUvR007RUFDRTtBVCsvR1I7O0FTaGdITTtFQUNFO0FUbWdIUjs7QVNwZ0hNO0VBQ0U7QVR1Z0hSOztBU3hnSE07RUFDRTtBVDJnSFI7O0FTcmdITztFQUNFO0VBQ0E7QVR3Z0hUOztBU2xnSE07RUFDRTtFQUNBO0FUcWdIUjs7QVM1aEhJO0VBQ0U7QVQraEhOOztBUzFoSE07RUFDRTtBVDZoSFI7O0FTOWhITTtFQUNFO0FUaWlIUjs7QVNsaUhNO0VBQ0U7QVRxaUhSOztBU3RpSE07RUFDRTtBVHlpSFI7O0FTbmlITztFQUNFO0VBQ0E7QVRzaUhUOztBU2hpSE07RUFDRTtFQUNBO0FUbWlIUjs7QVdqcElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQkRnWnlCO0VDL1l6QjtFQUNBO0FYb3BJRjtBV2xwSUU7RUFDRSw2QkRxWWtCO0VDcFlsQixtQkR5WXFCO0VDeFlyQjtFQUNBO0VBQ0E7QVhvcElKO0FXanBJSTtFQUNFO0VBQ0E7RUFDQTtBWG1wSU47QVdocElNOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYa3BJUjtBVy9vSU07RUFDRTtFQUNBO0VBQ0EsV0RrWDhCO0VDalg5QiwyQ0RnWDRCO0VDL1c1QjtBWGlwSVI7QVc3b0lNO0VBQ0U7QVgrb0lSO0FXNW9JTTtFQUNFO0FYOG9JUjtBVzNvSU07RUFDRTtFQUNBO0VBQ0E7QVg2b0lSO0FXdm9JSTtFQUNFO0FYeW9JTjtBV3RvSUk7RUFDRSxzQ0R4QlU7RUN5QlYsd0NEWHVCO0FWbXBJN0I7QVd0b0lNO0VBQ0Usd0NEZHFCO0FWc3BJN0I7QVdub0lFO0VBQ0U7RUFDQTtFQUNBLDJCRHBDWTtBVnlxSWhCO0FXbG9JTTtFQUNFLG9DRFZxQjtBVjhvSTdCO0FXOW5JSTtFQUNFLDZCRHVUZ0I7RUN0VGhCO0VBQ0E7QVhnb0lOO0FXN25JSTtFQUNFO0FYK25JTjtBVzVuSUk7RUFDRTtBWDhuSU47O0FXdm5JQTtFQUNFO0VBQ0EsMkJEbEVjO0FWNHJJaEI7O0FXdm5JQTtFQUNFO0VBQ0E7QVgwbklGOztBWTF1SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUJGMEVhO0VFekViLFlGeUVhO0VFeEViLCtCRnlFWTtFRXhFWjtFQUNBO0FaNnVJRjtBWTN1SUU7RUFDRTtFQUNBO0VBQ0Esd0NGd0N5QjtFRXZDekIsc0NGeUJZO0VFeEJaO0FaNnVJSjtBWTN1SUU7RUFDRTtBWjZ1SUo7QVkxdUlFO0VBQ0U7QVo0dUlKOztBWXh1SUE7RUFDRSx3Q0ZxRG1CO0FWc3JJckI7O0FZdnVJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGlCRjJDYTtFRTFDYixZRjBDYTtFRXpDYjtBWjB1SUY7O0FZdHVJQTtFQUNFO0FaeXVJRjs7QVl0dUlBO0VBQ0U7QVp5dUlGOztBWXR1SUE7RUFDRSwrQkY2Qlk7QVY0c0lkOztBWXR1SUE7RUFDRTtBWnl1SUY7O0FZdHVJQTtFQUNFO0VBQ0E7RUFDQTtBWnl1SUY7O0FheHlJQTtBQUNBOztFQUVFO0VBQ0E7QWIyeUlGOztBYzV5SUE7RUFDRTtFQUNBO0VBQ0E7QWQreUlGOztBYzd5SUE7RUFDRTtJQUNFO0VkZ3pJRjtBQUNGO0FjOXlJQTtFQUNFO0lBQ0U7RWRneklGO0FBQ0Y7QWM3eUlBO0VBQ0U7QWQreUlGOztBY3p4SUE7RUFFRTtFQUNBO0FkMnhJRjtBY3R4SUU7RUFBTztBZHl4SVQ7QWN4eElFO0VBQU87QWQyeElUO0FjMXhJRTtFQUFPO0FkNnhJVDtBYzV4SUU7RUFBTztBZCt4SVQ7QWM5eElFO0VBQU87QWRpeUlUO0FjaHlJRTtFQUFPO0FkbXlJVDtBY2x5SUU7RUFBTztBZHF5SVQ7QWNweUlFO0VBQU87QWR1eUlUO0FjdHlJRTtFQUFPO0FkeXlJVDtBY3h5SUU7RUFBTztBZDJ5SVQ7QWMxeUlFO0VBQU87QWQ2eUlUO0FjNXlJRTtFQUFPO0FkK3lJVDtBYzd5SUU7RUFBYTtBZGd6SWY7QWMveUlFO0VBQWE7QWRreklmO0FjanpJRTtFQUFhO0Fkb3pJZjtBY256SUU7RUFBYTtBZHN6SWY7QWNyeklFO0VBQWE7QWR3eklmO0FjdnpJRTtFQUFhO0FkMHpJZjtBY3p6SUU7RUFBYTtBZDR6SWY7QWMzeklFO0VBQWE7QWQ4eklmO0FjN3pJRTtFQUFhO0FkZzBJZjtBYy96SUU7RUFBYztBZGswSWhCO0FjajBJRTtFQUFjO0FkbzBJaEI7QWNqMElFO0VBQ0U7SUFBTztFZG8wSVQ7RWNuMElFO0lBQU87RWRzMElUO0VjcjBJRTtJQUFPO0VkdzBJVDtFY3YwSUU7SUFBTztFZDAwSVQ7RWN6MElFO0lBQU87RWQ0MElUO0VjMzBJRTtJQUFPO0VkODBJVDtFYzcwSUU7SUFBTztFZGcxSVQ7RWMvMElFO0lBQU87RWRrMUlUO0VjajFJRTtJQUFPO0VkbzFJVDtFY24xSUU7SUFBTztFZHMxSVQ7RWNyMUlFO0lBQU87RWR3MUlUO0VjdjFJRTtJQUFPO0VkMDFJVDtFY3gxSUU7SUFBYTtFZDIxSWY7RWMxMUlFO0lBQWE7RWQ2MUlmO0VjNTFJRTtJQUFhO0VkKzFJZjtFYzkxSUU7SUFBYTtFZGkySWY7RWNoMklFO0lBQWE7RWRtMklmO0VjbDJJRTtJQUFhO0VkcTJJZjtFY3AySUU7SUFBYTtFZHUySWY7RWN0MklFO0lBQWE7RWR5MklmO0VjeDJJRTtJQUFhO0VkMjJJZjtFYzEySUU7SUFBYztFZDYySWhCO0VjNTJJRTtJQUFjO0VkKzJJaEI7QUFDRjtBYzUySUU7RUFDRTtJQUFPO0VkKzJJVDtFYzkySUU7SUFBTztFZGkzSVQ7RWNoM0lFO0lBQU87RWRtM0lUO0VjbDNJRTtJQUFPO0VkcTNJVDtFY3AzSUU7SUFBTztFZHUzSVQ7RWN0M0lFO0lBQU87RWR5M0lUO0VjeDNJRTtJQUFPO0VkMjNJVDtFYzEzSUU7SUFBTztFZDYzSVQ7RWM1M0lFO0lBQU87RWQrM0lUO0VjOTNJRTtJQUFPO0VkaTRJVDtFY2g0SUU7SUFBTztFZG00SVQ7RWNsNElFO0lBQU87RWRxNElUO0VjbjRJRTtJQUFjO0VkczRJaEI7RWNyNElFO0lBQWM7RWR3NEloQjtFY3Y0SUU7SUFBYztFZDA0SWhCO0VjejRJRTtJQUFjO0VkNDRJaEI7RWMzNElFO0lBQWM7RWQ4NEloQjtFYzc0SUU7SUFBYztFZGc1SWhCO0VjLzRJRTtJQUFjO0VkazVJaEI7RWNqNUlFO0lBQWM7RWRvNUloQjtFY241SUU7SUFBYztFZHM1SWhCO0VjcjVJRTtJQUFjO0VkdzVJaEI7RWN2NUlFO0lBQWM7RWQwNUloQjtBQUNGO0FjdjVJRTtFQUNFO0lBQVE7RWQwNUlWO0VjejVJRTtJQUFRO0VkNDVJVjtFYzM1SUU7SUFBUTtFZDg1SVY7RWM3NUlFO0lBQVE7RWRnNklWO0VjLzVJRTtJQUFRO0VkazZJVjtFY2o2SUU7SUFBUTtFZG82SVY7RWNuNklFO0lBQVE7RWRzNklWO0VjcjZJRTtJQUFRO0VkdzZJVjtFY3Y2SUU7SUFBUTtFZDA2SVY7RWN6NklFO0lBQVE7RWQ0NklWO0VjMzZJRTtJQUFRO0VkODZJVjtFYzc2SUU7SUFBUTtFZGc3SVY7RWM5NklFO0lBQWM7RWRpN0loQjtFY2g3SUU7SUFBYztFZG03SWhCO0VjbDdJRTtJQUFjO0VkcTdJaEI7RWNwN0lFO0lBQWM7RWR1N0loQjtFY3Q3SUU7SUFBYztFZHk3SWhCO0VjeDdJRTtJQUFjO0VkMjdJaEI7RWMxN0lFO0lBQWM7RWQ2N0loQjtFYzU3SUU7SUFBYztFZCs3SWhCO0VjOTdJRTtJQUFjO0VkaThJaEI7RWNoOElFO0lBQWU7RWRtOElqQjtFY2w4SUU7SUFBZTtFZHE4SWpCO0FBQ0Y7O0FlbG1KQTtFQWVFLHdDTHlDMkI7RUt2QzNCLGtETCtDMEI7RUs3QzFCO0VBQ0EsWUxtUnFCO0VLbFJyQixpQkxrUnFCO0FWbTBJdkI7QWV6bUpFO0VBQ0U7QWYybUpKO0Flem1KSTtFQUNFLGdCTGtTaUI7RUtqU2pCO0FmMm1KTjtBZXhtSkk7RUFDRTtFQUNBO0FmMG1KTjtBZTlsSkU7RUFDRSx3Q0xnQ3lCO0FWZ2tKN0I7QWU3bEpFOzs7O0VBSUU7RUFDQTtFQUNBLFlMc1FtQjtFS3JRbkIsaUJMcVFtQjtBVjAxSXZCO0FlNWxKRTtFQUNFO0VBQ0E7QWY4bEpKO0FlM2xKRTtFQUNFO0lBQ0U7RWY2bEpKO0FBQ0Y7QWV6bEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWUxrUG1CO0VLalBuQjtBZjJsSko7QWV6bEpJO0VBQ0UsWUw4T2lCO0VLN09qQixpQkw2T2lCO0FWODJJdkI7QWV0bEpFO0VBQ0U7RUFDQSx3Q0xUeUI7RUtVekI7RUFDQSxpQkwwT3FCO0VLek9yQjtBZndsSko7QWV0bEpJO0VBQ0U7RUFDQTtBZndsSk47QWVybEpJO0VBWkY7SUFhSTtJQUNBO0Vmd2xKSjtFZXRsSkk7SUFDRTtJQUNBO0Vmd2xKTjtFZXJsSkk7SUFDRTtFZnVsSk47RWVybEpJO0lBQ0U7SUFDQTtFZnVsSk47QUFDRjtBZXBsSkk7RUFDRTtFQUNBO0Fmc2xKTjtBZW5sSkk7Ozs7RUFJRTtFQUNBO0FmcWxKTjtBZS9rSkU7RUFDRTtFQUNBO0VBQ0E7QWZpbEpKO0FlNWtKRTtFQUNFO0VBQ0E7QWY4a0pKO0FlNWtKSTtFQUNFO0VBQ0E7RUFDQTtBZjhrSk47QWU1a0pNO0VBQ0U7RUFDQSxlTHlLVztFS3hLWCx3Q0x6RXFCO0VLMEVyQjtFQUNBO0VBQ0E7QWY4a0pSO0FlNWtKUTtFQUNFLHlETDFGeUI7QVZ3cUpuQztBZTNrSlE7RUFDRSx5REwvRnlCO0FWNHFKbkM7QWUxa0pRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWY0a0pWO0FlMWtKVTtFQUVFO0VBQ0E7QWYya0paO0FlcmtKSTtFQUNFO0FmdWtKTjtBZWxrSkU7RUFDRTtBZm9rSko7QWVqa0pFO0VBQ0U7RUFDQTtBZm1rSko7QWVqa0pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZm1rSk47QWVqa0pNO0VBRUU7RUFDQTtBZmtrSlI7QWU5akpJO0VBQ0U7RUFDQTtBZmdrSk47QWU5akpNO0VBQ0UsMENMckl1QjtFS3NJdkI7QWZna0pSO0FlN2pKTTtFQUNFLHdDTDNJcUI7QVYwc0o3Qjs7QWV4akpBO0VBQ0U7RUFDQSxZTDJGcUI7RUsxRnJCO0FmMmpKRjtBZXpqSkU7RUFDRTtFQUNBO0FmMmpKSjs7QWV2akpBO0VBQ0U7SUFDRSxnQkw4RVk7RVY0K0lkO0VleGpKQTtJQUNFLFlMMkVZO0lLMUVaLGlCTDBFWTtFVmcvSWQ7RWV4akpBO0lBQ0UsWUx1RVk7RVZtL0lkO0FBQ0Y7QWdCdHhKQTtFQUNFO0FoQnd4SkY7O0FnQnJ4SkE7RUFlRSxnSU4wVlc7RU16Vlg7RUFDQSw2Qk55Vlc7QVZpN0liO0FnQnh4SkU7RUFIRjtJQUlJO0VoQjJ4SkY7QUFDRjtBZ0J6eEpFO0VBUEY7SUFRSTtFaEI0eEpGO0FBQ0Y7QWdCMXhKRTtFQVhGO0lBWUk7RWhCNnhKRjtBQUNGOztBZ0J0eEpBO0VBQ0M7RUFDQTtBaEJ5eEpEOztBZ0JyeEpBO0VBQXFDO0FoQnl4SnJDOztBZ0J4eEpBO0VBQUssaUJOaVZTO0VNalZnQjtFQUFtQjtBaEI4eEpqRDs7QWdCN3hKQTtFQUFLLGtCTmlWUztFTWpWZ0I7RUFBbUI7QWhCbXlKakQ7O0FnQmx5SkE7RUFBSyxrQk5pVlM7RU1qVmdCO0VBQW1CO0FoQnd5SmpEOztBZ0J2eUpBO0VBQUssa0JOaVZTO0VNalZnQjtFQUFtQjtBaEI2eUpqRDs7QWdCNXlKQTtFQUFLLGtCTmlWUztFTWpWZ0I7RUFBbUI7QWhCa3pKakQ7O0FnQmp6SkE7RUFBSyxrQk5pVlM7RU1qVmdCO0VBQW1CO0FoQnV6SmpEOztBZ0JwekpBO0VBQUs7QWhCd3pKTDs7QWdCdnpKQTtFQUFTO0FoQjJ6SlQ7O0FnQjF6SkE7RUFBUTtBaEI4ekpSOztBZ0I3ekpBO0VBQVM7QWhCaTBKVDs7QWdCaDBKQTtFQUFRO0FoQm8wSlI7O0FnQi96Skk7RUFISjtJQUlNO0VoQm0wSko7QUFDRjtBZ0JyMEpJO0VBSEo7SUFJTTtFaEJ3MEpKO0FBQ0Y7QWdCMTBKSTtFQUhKO0lBSU07RWhCNjBKSjtBQUNGO0FnQi8wSkk7RUFISjtJQUlNO0VoQmsxSko7QUFDRjtBZ0JwMUpJO0VBSEo7SUFJTTtFaEJ1MUpKO0FBQ0Y7QWdCejFKSTtFQUhKO0lBSU07RWhCNDFKSjtBQUNGO0FnQjkxSkk7RUFISjtJQUlNO0VoQmkySko7QUFDRjtBZ0JuMkpJO0VBSEo7SUFJTTtFaEJzMkpKO0FBQ0Y7QWdCeDJKSTtFQUhKO0lBSU07RWhCMjJKSjtBQUNGO0FnQjcySkk7RUFISjtJQUlNO0VoQmczSko7QUFDRjtBZ0JsM0pJO0VBSEo7SUFJTTtFaEJxM0pKO0FBQ0Y7QWdCdjNKSTtFQUhKO0lBSU07RWhCMDNKSjtBQUNGO0FnQjUzSkk7RUFISjtJQUlNO0VoQiszSko7QUFDRjtBZ0JqNEpJO0VBSEo7SUFJTTtFaEJvNEpKO0FBQ0Y7QWdCdDRKSTtFQUhKO0lBSU07RWhCeTRKSjtBQUNGO0FnQjM0Skk7RUFISjtJQUlNO0VoQjg0Sko7QUFDRjtBZ0JoNUpJO0VBSEo7SUFJTTtFaEJtNUpKO0FBQ0Y7QWdCcjVKSTtFQUhKO0lBSU07RWhCdzVKSjtBQUNGO0FnQjE1Skk7RUFISjtJQUlNO0VoQjY1Sko7QUFDRjtBZ0IvNUpJO0VBSEo7SUFJTTtFaEJrNkpKO0FBQ0Y7QWdCcDZKSTtFQUhKO0lBSU07RWhCdTZKSjtBQUNGO0FnQmw2SkU7RUFWRjtJQVdJO0VoQnE2SkY7QUFDRjs7QWlCaCtKQTtFQVVFO0FqQjA5SkY7QWlCbitKRTtFQUNFO0VBQ0E7QWpCcStKSjtBaUJsK0pFO0VBQ0U7QWpCbytKSjs7QWtCMStKQTtFQUNFO0VBQ0EsYVJ1SWE7RVF0SWI7RUFDQTtFQUVBLDhDUm9JYztBVncySmhCOztBa0J6K0pBO0VBQ0U7RUFDQTtFQUVBLDhDUjZIYztFUTVIZDtFQUNBO0FsQjIrSkY7QWtCeCtKRTtFQUNFO0VBQ0E7QWxCMCtKSjtBa0J6K0pJO0VBQ0U7QWxCMitKTjtBa0J0K0pFO0VBQ0U7QWxCdytKSjtBa0J0K0pJO0VBQ0U7RUFDQTtBbEJ3K0pOO0FrQnQrSkk7RUFDRTtBbEJ3K0pOO0FrQnQrSkk7RUFDRTtFQUNBO0FsQncrSk47QWtCdCtKSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsQncrSk47QWtCcCtKRTtFQUNFO0FsQnMrSko7QWtCbitKRTtFQUNFO0FsQnErSko7QWtCbCtKRTtFQUNFO0FsQm8rSko7QWtCaCtKRTtFQWFFO0FsQnM5Sko7QWtCaitKTTtFQUNFO0VBQ0E7RUFDQTtBbEJtK0pSO0FrQmorSlE7RUFDRTtBbEJtK0pWO0FrQjU5Skk7RUFDRTtBbEI4OUpOO0FrQjc5Sk07RUFDRTtFQUNBO0VBQ0E7QWxCKzlKUjtBa0IzOUpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxCNjlKTjtBa0IzOUpNO0VBQ0U7QWxCNjlKUjtBa0J0OUpJO0VBQ0U7QWxCdzlKTjtBa0JyOUpJO0VBQ0U7RUFDQTtBbEJ1OUpOO0FrQmg5SkU7RUFDRTtBbEJrOUpKO0FrQi84Skk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQmk5Sk47QWtCOThKSTtFQUNFLG1DUlNVO0VRUlY7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhUkdTO0FWNjhKZjtBa0I1OEpFO0VBQ0UsYVJGVztFUUdYO0FsQjg4Sko7QWtCNThKSTtFQUNFO0FsQjg4Sk47QWtCNThKSTtFQUNFO0VBQ0E7RUFDQTtBbEI4OEpOO0FrQjU4Sk07RUFDRTtBbEI4OEpSO0FrQno4SkU7RUFLRTtFQUNBO0VBQ0E7QWxCdThKSjtBa0I3OEpJO0VBQ0U7QWxCKzhKTjtBa0J4OEpJO0VBQ0U7RUFDQTtBbEIwOEpOO0FrQnY4Skk7RUFDRSwyQlJuSVU7RVFvSVY7QWxCeThKTjtBa0J2OEpNO0VBQ0UsbURSaElxQjtBVnlrSzdCO0FrQnA4SkU7RUFDRSxhUjVDVztFUTZDWDtFQUNBLDhDUjdDWTtFUThDWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEJzOEpKO0FrQnA4Skk7RUFDRTtFQUNBO0FsQnM4Sk47O0FtQjFvS0E7RUFDRTtFQUNBO0VBQ0E7QW5CNm9LRjtBbUIzb0tFO0VBTEY7SUFNSTtJQUNBO0VuQjhvS0Y7QUFDRjtBbUI3b0tFO0VBVEY7SUFVSTtJQUNBO0lBQ0E7RW5CZ3BLRjtBQUNGO0FtQi9vS0U7RUFkRjtJQWVJO0lBQ0E7SUFDQTtFbkJrcEtGO0FBQ0Y7O0FtQi9vS0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCVGtVYTtFU2pVYjtFQUNBLGlEVGlVWTtFU2hVWjtFQUNBO0VBQ0E7RUFDQSxnQ1Q4VGlCO0VTN1RqQjtFQUNBO0VBQ0E7RUFDQTtBbkJpcEtGO0FtQi9vS0U7RUFDRSxjVHdUaUI7RVN2VGpCO0VBQ0E7RUFDQTtBbkJpcEtKO0FtQjlvS0U7RUFDRTtBbkJncEtKO0FtQjdvS0U7RUFoQ0Y7SUFpQ0k7SUFDQTtFbkJncEtGO0FBQ0Y7O0FvQnhzS0E7RUFDRTtFQUNBO0VBMENBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQ1ZzQmM7RVVyQmQ7RUFDQTtBcEJrcUtGO0FvQmp0S0U7RUFDRTtBcEJtdEtKO0FvQmp0S0k7RUFDRSwwQ1ZpRHlCO0FWa3FLL0I7QW9CaHRLSTs7O0VBR0UsNENWNEMyQjtBVnNxS2pDO0FvQi9zS0k7RUFDRSxvQ1ZzRHVCO0FWMnBLN0I7QW9COXNLSTs7RUFFRTtBcEJndEtOO0FvQjdzS0k7OztFQUdFLHdDVjJCdUI7QVZvcks3QjtBb0I1c0tJO0VBQ0UsbURWdUJ1QjtBVnVySzdCO0FvQjFzS0U7RUFDRTtBcEI0c0tKO0FvQjNzS0k7RUFDRTtBcEI2c0tOO0FvQmhzS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmtzS0o7QW9CaHNLSTtFQXFCRSwrQlYvQmM7RVVnQ2Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEI4cUtOO0FvQjFzS007RUFDRTtBcEI0c0tSO0FvQnpzS007RUFHRSwyQlY3QlE7QVZzdUtoQjtBb0J0c0tNO0VBQ0UsbURWMUJxQjtBVmt1SzdCO0FvQnJzS007RUFFRSxtRFY5QnFCO0VVK0JyQjtBcEJzc0tSO0FvQnhyS0k7RUFNRSxpQ1YvQ2dCO0VVZ0RoQjtFQUNBO0FwQnFyS047QW9CM3JLTTtFQUNFO0FwQjZyS1I7QW9CcHJLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHNDVnJFWTtFVXNFWjtBcEJzcktKOztBb0JqcktBO0VBQ0U7SUFDRTtFcEJvcktGO0VvQmxyS0U7SUFDRTtFcEJvcktKO0VvQmxyS0k7SUFDRTtFcEJvcktOO0FBQ0Y7QXFCbHpLQTtFQUNFO0VBQ0E7RUFFQSxxRFhxV2lCO0VXcFdqQiw2Q1hxV21CO0VXblduQjtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0FyQjh5S0Y7O0FxQjN5S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscURYcVVpQjtFV3BVakI7RUFDQTtFQUNBO0FyQjh5S0Y7O0FzQnIxS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFlaOEZjO0VZM0ZkLFladUZjO0VZdEZkLGtCWjRGYztFWXpGZDtFQUNBO0VBRUEsd0Nad0MyQjtFWXZDM0IsZVppRmlCO0VZaEZqQjtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBdEIrMEtGOztBc0IzMEtBO0VBQ0U7QXRCODBLRjs7QXNCNTBLQTtFQUNFO0F0QiswS0Y7O0FzQjcwS0E7RUFDRTtBdEJnMUtGOztBc0I5MEtBO0VBQ0U7RUFDQTtBdEJpMUtGOztBc0IvMEtBO0VBQ0U7QXRCazFLRjs7QXNCaDFLQTtFQUNFO0F0Qm0xS0Y7O0FzQjkwS0E7Ozs7Ozs7Ozs7Ozs7OztFQWVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRCaTFLRjtBc0JoMUtFOzs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0F0QmcyS0o7O0FzQjMxS0E7RUFDRTtBdEI4MUtGOztBc0IzMUtBO0VBQ0U7RUFDQTtBdEI4MUtGOztBc0IzMUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI4MUtGO0FzQjcxS0U7RUFFRTtFQUNBLG9DWnNCaUM7QVZ3MEtyQztBc0I1MUtFO0VBQ0Usb0Nab0JpQztBVjAwS3JDO0FzQjUxS0U7RUFFRTtFQUNBO0VBQ0E7QXRCNjFLSjs7QXNCejFLQTtFQUNFO0VBQ0EsMkJaMUVjO0VZMkVkO0F0QjQxS0Y7O0FzQjkwS0U7RUFDRSx5RFp4RitCO0FWeTZLbkM7QXNCNzBLRTtFQUNFLHlEWjVGK0I7QVYyNktuQzs7QXNCcnpLQTtFQXdERSwwQ1poSzZCO0VZa0s3QixXWnpGcUI7RVkwRnJCLFlaMUZxQjtFWTZGckIsd0NacEtnQjtFWXFLaEIsbUJaN0Z1QjtFWThGdkI7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QXRCMnZLRjtBc0JyMEtFO0VBQ0Usb0RaeEdpQztBVis2S3JDO0FzQm4wS0U7RUFDRSxvRFo1R2lDO0FWaTdLckM7QXNCajBLRTtFQUNFO0F0Qm0wS0o7QXNCaDBLRTtFQUlFLFdadkV5QjtFWXdFekIsWVp4RXlCO0VZeUV6QjtBdEIrektKO0FzQnAwS0k7RUFDRTtBdEJzMEtOO0FzQjN6S0U7RUFJRSxXWjdFeUI7RVk4RXpCLFlaOUV5QjtBVnc0SzdCO0FzQjl6S0k7RUFDRTtBdEJnMEtOO0FzQnZ6S0U7RUFLRTtFQUNBO0VBQ0E7QXRCcXpLSjtBc0IzektJO0VBQ0U7RUFDQTtBdEI2ektOO0FzQjF4S0U7RUFDRSwwQ1p2TDJCO0VZd0wzQixpQlpySTBCO0VZdUkxQjtFQUNBO0VBQ0E7QXRCMnhLSjs7QXNCdnhLQTtFQUNFLFlaNUpjO0FWczdLaEI7O0FzQnZ4S0E7RUEwRkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QmlzS0Y7QXNCOXhLSTtFQUNFO0VBQ0E7RUFDQTtBdEJneUtOO0FzQjN4S0U7RUFFRTtBdEI0eEtKO0FzQjN4S0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QjZ4S047QXNCNXhLTTtFQUNFO0VBQ0E7QXRCOHhLUjtBc0IxeEtFO0VBQ0U7QXRCNHhLSjtBc0IzeEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCNnhLTjtBc0I1eEtNO0VBQ0U7QXRCOHhLUjtBc0IxeEtFO0VBQ0U7QXRCNHhLSjtBc0IzeEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCNnhLTjtBc0I1eEtNO0VBQ0U7QXRCOHhLUjtBc0IxeEtFO0VBTUU7RUFDQSxZWjFNeUI7QVZpK0s3QjtBc0I1eEtNO0VBQ0U7QXRCOHhLUjtBc0J6eEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCMnhLTjtBc0IxeEtNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI0eEtSO0FzQjN4S1E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBDWm5ScUI7RVlvUnJCLGlCWi9ObUI7RVlnT25CO0F0QjZ4S1Y7QXNCM3hLVTtFQUNFO0F0QjZ4S1o7QXNCanhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Qm14S0o7QXNCbHhLSTtFQUNFO0F0Qm94S047QXNCbHhLSTtFQUNFO0F0Qm94S047QXNCanhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV1ovT21CO0VZZ1BuQixZWmhQbUI7RVlpUG5CLHdDWnhUYztFWXlUZCxtQlpqUHFCO0VZa1ByQjtBdEJteEtKOztBc0I1d0tBO0VBRUUsWVpqUm9CO0VZbVJwQixlWnJSdUI7RVlzUnZCO0F0QjZ3S0Y7QXNCNXdLRTtFQUNFLGlCWnZSMEI7QVZxaUw5Qjs7QXNCendLQTtFQUVFLFladlJvQjtFWXdScEIsaUJaeFJvQjtFWXlScEIsZVozUnVCO0FWc2lMekI7QXNCMXdLRTtFQUNFLGlCWjVSMEI7QVZ3aUw5Qjs7QXNCdndLQTtFQUNFO0F0QjB3S0Y7O0FzQnZ3S0E7RUFDRTtBdEIwd0tGOztBdUJwcUxBO0VBQ0U7RUFDQTtFQU9BLHNDYjhEYztFYTdEZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkJpcUxGO0F1QmhyTEU7RUFDRTtBdkJrckxKO0F1QmpxTEU7RUFzQ0U7RUFDQSw2QmJvVFM7RWFuVFQ7RUFDQSxnQmIySG1CO0VhMUhuQjtFQUNBO0VBQ0E7QXZCOG5MSjtBdUJ6cUxJO0VBQ0Usb0NiZ0R1QjtBVjJuTDdCO0F1QnhxTEk7RUFDRTtBdkIwcUxOO0F1QnZxTEk7RUFDRTtFQUNBO0F2QnlxTE47QXVCdHFMSTtFQUNFO0VBQ0EsMkJiSVU7RWFIVjtFQUNBO0VBQ0E7QXZCd3FMTjtBdUJycUxJO0VBQ0U7RUFDQTtFQUNBO0F2QnVxTE47QXVCbnFMSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCcXFMTjs7QXVCdHBMRTtFQUNFLG9DYkN5QjtBVndwTDdCOztBdUJwcExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZCdXBMRjs7QXVCcHBMQTtFQUNFO0F2QnVwTEY7O0F3QjV1TEE7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBEZHdadUI7RWN2WnZCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F4Qnd1TEY7QXdCMXZMRTtFQUNFO0F4QjR2TEo7QXdCenVMRTtFQXJCRjtJQXNCSTtFeEI0dUxGO0FBQ0Y7QXdCMXVMRTtFQUNFO0F4QjR1TEo7QXdCenVMRTtFQUNFO0VBQ0E7QXhCMnVMSjtBd0J4dUxFO0VBQ0U7QXhCMHVMSjtBd0J2dUxFO0VBQ0U7RUFDQSwwRGQyWHFCO0VjMVhyQjtFQUNBO0VBQ0E7RUFDQTtBeEJ5dUxKO0F3QnZ1TEk7RUFDRTtBeEJ5dUxOOztBd0JwdUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJ1dUxGOztBd0JudUxBO0VBQ0U7RUFDQTtBeEJzdUxGO0F3QnB1TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QnN1TEo7QXdCbnVMRTtFQUNFO0VBQ0E7RUFDQTtBeEJxdUxKOztBd0JodUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCbXVMRjs7QXlCajBMQTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBekJtMExGOztBeUIvekxBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0NmaURjO0FWNndMaEI7QXlCeDBMRTtFQUNFO0F6QjAwTEo7QXlCL3pMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCaTBMSjs7QXlCN3pMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6QmcwTEY7O0F5Qjl6TEE7RUFDRTtBekJpMExGOztBeUI3ekxBO0VBQ0Usb0NmNEIyQjtBVm95TDdCOztBeUI3ekxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNDZmlCYztBVit5TGhCOztBeUIzekxBO0VBQ0U7RUFDQTtBekI4ekxGO0F5QjV6TEU7RUFDRTtFQUVBO0VBQ0E7QXpCNnpMSjtBeUIxekxFO0VBQ0U7RUFDQTtBekI0ekxKOztBMEJwNExBO0VBQ0U7RUFDQTtFQUNBO0VBRUEsbURoQnlQYztFZ0J2UGQ7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0EsK0JoQmtDa0I7RWdCaENsQjtFQUVBO0VBQ0E7RUFDQTtBMUJnNExGO0EwQjkzTEU7RUFDRTtFQUNBLHNDaEJhWTtFZ0JaWix3Q2hCMEJ5QjtBVnMyTDdCOztBMEI1M0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFCKzNMRjs7QTBCNTNMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCKzNMRjs7QTBCNTNMQTtFQUNFO0ExQiszTEY7O0EwQjMzTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQjgzTEY7O0EwQjMzTEE7RUFDRTtBMUI4M0xGOztBMEJ6M0xBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsaUJoQjJIYTtFZ0J6SGI7RUFHQTtFQUNBO0ExQnczTEY7QTBCdDNMRTtFQUNFO0VBQ0E7QTFCdzNMSjtBMEJyM0xFO0VBQ0U7QTFCdTNMSjtBMEJwM0xFO0VBQ0U7RUFDQTtFQUNBLDZCaEJnR1U7RWdCL0ZWO0VBQ0EsZWhCbUdjO0VnQjlGZDtFQUVBO0VBQ0E7RUFDQTtFQUNBO0ExQmkzTEo7QTBCOTJMSTtFQUNFO0VBQ0E7QTFCZzNMTjtBMEIzMkxFO0VBQ0U7RUFDQTtBMUI2MkxKOztBMEJ4MkxBO0VBQ0U7RUFDQTtFQUNBO0ExQjIyTEY7O0EwQngyTEE7RUFDRTtFQUNBO0VBQ0E7QTFCMjJMRjs7QTBCejJMQTtFQUNFO0VBQ0E7QTFCNDJMRjs7QTJCei9MQTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCcy9MRjtBMkIvL0xJO0VBQ0U7QTNCaWdNTjtBMkJ2L0xFO0VBQ0U7QTNCeS9MSjs7QTJCci9MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCdy9MRjs7QTJCci9MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0J3L0xGOztBNEJoaU1BO0VBQ0UsMERsQnFPYTtBVjh6TGY7O0E0QmhpTUE7RUFDRTtFQUNBLHlEbEJzQ2lDO0FWNi9MbkM7O0E0QmhpTUE7RUFDRSxpQmxCaU1nQjtFa0JoTWhCLCtCbEJzTG1CO0FWNjJMckI7O0E2Qi9pTUE7K0VBQUE7QUFHQTtBQUNBO0VBQ0UsK0JuQjZNdUI7QVZvMkx6Qjs7QTZCOWlNQTtBQUNBOzs7Ozs7Ozs7Ozs7OztFQWNFO0VBQ0EsNkJuQjJLWTtFbUIxS1o7RUFDQSxlbkJRaUM7RW1CUGpDO0E3QmlqTUY7O0E2QjlpTUE7QUFjQTs7Ozs7Ozs7O0NBQUE7QUFXQTtFQUNFO0VBQ0E7QTdCbWlNRjtBNkIvaE1FO0VBQ0U7RUFFQTtFQUNBO0VBRUEsc0NuQklZO0VtQkZaO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCOGhNSjtBNkI1aE1JO0VBQ0U7RUFDQTtBN0I4aE1OO0E2QjNoTUk7RUFDRSxpRG5CcUlxQjtFbUJwSXJCLHdEbkJtSTRCO0VtQmxJNUIsNERuQmlJOEI7QVY0NUxwQztBNkJ6aE1JO0VBQ0UsMkJuQjlDVTtBVnlrTWhCO0E2QnpoTUk7RUFLRTtFQUNBO0E3QnVoTU47QTZCcGhNSTtFQUNFLGlEbkJrSHFCO0FWbzZMM0I7QTZCbGhNRTtFQUNFO0E3Qm9oTUo7QTZCamhNRTtFQUNFLCtCbkJxRmlCO0VtQnBGakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwwRUFDRTtBN0JraE1OO0E2QjFnTUU7RUFDRSwrQm5CbUVpQjtFbUJsRWpCO0VBQ0E7RUFDQTtBN0I0Z01KO0E2QnpnTUU7RUFDRSwrQm5CNERpQjtFbUIzRGpCO0VBQ0E7RUFDQTtFQUNBO0E3QjJnTUo7QTZCeGdNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0IwZ01KO0E2QnZnTUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0J5Z01KO0E2QnRnTUU7RUFDRTtBN0J3Z01KO0E2QnRnTUU7RUFDRTtBN0J3Z01KO0E2QnRnTUU7RUFDRTtBN0J3Z01KO0E2QmpnTUk7RUFDRTtFQUVBO0VBRUE7RUFDQTtBN0JpZ01OO0E2Qi8vTE07RUFDRTtFQUNBO0VBQ0E7QTdCaWdNUjtBNkI3L0xNO0VBQ0UsMkJuQmpKUTtBVmdwTWhCO0E2QjcvTE07RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QjYvTFI7QTZCMS9MTTtFQUNFLGlEbkJjbUI7RW1CYm5CLHdEbkJZMEI7QVZnL0xsQztBNkJwL0xJO0VBQ0U7QTdCcy9MTjtBNkJwL0xJO0VBQ0U7QTdCcy9MTjtBNkJwL0xJO0VBQ0U7QTdCcy9MTjtBNkJwL0xJO0VBQ0U7QTdCcy9MTjtBNkJwL0xJO0VBQ0U7QTdCcy9MTjtBNkJwL0xJO0VBQ0U7QTdCcy9MTjs7QTZCai9MQTtBQUVFO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QmsvTEo7QTZCLytMRTtFQUNFO0VBQ0E7RUFDQTtBN0JpL0xKOztBNkI5K0xBO0VBQ0U7QTdCaS9MRjtBNkJoL0xFO0VBRkY7SUFHSSxrQm5CdURZO0VWNDdMZDtBQUNGOztBNkJoL0xBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQXVCQTtBQUVBO0VBQ0U7RUFDQSxZbkJ6RmE7RW1CMEZiO0E3QmkvTEY7QTZCLytMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQm5CbEdXO0VtQm1HWDtBN0JpL0xKOztBNkI1K0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtBN0I2K0xGOztBNkIxK0xBO0FBR0k7RUFBYSw2Qm5CclFDO0FWaXZNbEI7QTZCMytMSTtFQUNFO0VBQ0E7RUFDQTtBN0I2K0xOOztBOEIxeU1BOytFQUFBO0FBSUE7O0VBRUU7RUFDQTtFQUNBO0E5QjJ5TUY7O0E4Qnh5TUE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjJ5TUY7O0E4Qnh5TUE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjJ5TUY7O0E4Qnh5TUE7QUFDQTs7Ozs7O0VBTUU7QTlCMnlNRjs7QThCeHlNQTs7RUFFRTtBOUIyeU1GOztBOEJ4eU1BO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTtBQUNBO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTs7O0VBR0Usc0NwQjRKYTtBVitvTWY7O0E4Qnh5TUE7O0VBRUUsc0NwQjNCYztBVnMwTWhCOztBOEJ4eU1BO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTtBQUNBO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTtBQUNBO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTtBQUNBO0VBQ0U7QTlCMnlNRjs7QThCeHlNQTtFQUNFO0VBQ0EsNENwQmdIcUI7QVYyck12Qjs7QThCeHlNQTtBQUNBOztFQUVFO0VBQ0Esd0NwQnlHcUI7QVZrc012Qjs7QThCeHlNQTtFQUNFLGlDcEJxR3FCO0FWc3NNdkI7O0E4Qnh5TUE7RUFDRSx3Q3BCaUdxQjtBVjBzTXZCOztBOEJ4eU1BO0VBQ0UsNENwQjZGcUI7RW9CNUZyQix3Q3BCNkYyQjtBVjhzTTdCOztBK0I1NU1BOytFQUFBO0FBR0E7QUFDQTs7RUFFRTtFQUNBO0VBQ0E7QS9CODVNRjs7QStCMTVNQTtFQWFFO0EvQmk1TUY7QStCNTVNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CODVNSjtBK0IxNU1FO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0IyNU1KO0ErQng1TUU7RUFDRTtFQUNBO0EvQjA1TUo7QStCdjVNRTtFQUNFO0VBQ0EsNENyQjZKbUI7QVY0dk12QjtBK0JyNU1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvQ3JCZ0J5QjtBVnU0TTdCOztBK0JsNU1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNENyQnVKVztFcUJ0SlgsNkNyQnNKVztFcUJySlg7RUFDQTtFQUNBO0EvQnE1TUo7QStCbDVNRTtFQUNFO0VBQ0E7QS9CbzVNSjs7QStCaDVNQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNENyQmlJVztFcUJoSVg7RUFDQTtFQUNBO0VBQ0E7QS9CazVNSjtBK0I5NE1FO0VBQ0U7RUFDQTtBL0JnNU1KOztBK0J6NE1FO0VBQ0U7QS9CNDRNSjtBK0J6NE1FOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0IyNE1KO0ErQnY0TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0J5NE1KO0ErQnQ0TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CdzRNSjtBK0JuNE1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CcTRNTjtBK0JsNE1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQ3JCeEhVO0VxQnlIVjtBL0JvNE1OO0ErQi8zTUU7RUFDRTtFQUNBLHNDckJpRGdCO0VxQmhEaEIsb0NyQmxHeUI7QVZtK003QjtBK0I5M01FO0VBQ0U7RUFDQSxzQ3JCdElZO0VxQnVJWixrQ3JCdklZO0FWdWdOaEI7QStCNTNNRTtFQUNFO0VBQ0E7QS9CODNNSjtBK0IzM01FO0VBQ0U7RUFDQSw0Q3JCa0J5QjtBVjIyTTdCO0ErQjEzTUU7RUFDRTtBL0I0M01KO0ErQnozTUU7RUFDRSw0Q3JCVXlCO0VxQlR6Qix3Q3JCU3lCO0FWazNNN0I7O0FnQ2hrTkE7K0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDa2tORjs7QWdDL2pOQTs7RUFFRTtFQUNBO0FoQ2trTkY7O0FnQy9qTkE7RUFDRTtBaENra05GOztBZ0Mvak5BO0VBQ0U7RUFDQTtFQUNBO0FoQ2trTkY7QWdDOWpORTtFQUNFO0VBQ0E7QWhDZ2tOSjtBZ0M1ak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhDOGpOTjtBZ0N0ak5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBLG1CdEIyTGM7RXNCMUxkO0VBQ0E7RUFDQTtFQUNBO0FoQ29qTkY7QWdDampORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBaENpak5KO0FnQzdpTkU7RUFFRTtFQUNBO0FoQzhpTko7O0FnQ3ZpTkE7OztFQUdJO0FoQzBpTko7O0FnQ3ZpTkE7RUFDRSxtRHRCcEQyQjtBVjhsTjdCOztBZ0N0aU5BOztFQUVFLG1EdEJ6RDJCO0FWa21ON0I7O0FnQ3RpTkE7RUFDRSxvQ3RCdkMyQjtBVmdsTjdCOztBZ0N0aU5BOztFQUVFLG9DdEIzQzJCO0FWb2xON0I7O0FnQ3JpTkE7RUFDRTtFQUNBO0FoQ3dpTkY7O0FpQ2xxTkE7K0VBQUE7QUFHQTtFQUNFO0VBQ0EsNkJ2QnlPbUI7QVYyN01yQjs7QWlDanFOQTtFQUNFO0VBQ0Esc0N2QjZEYztFdUI1RGQ7RUFDQSxZdkIrTmU7RXVCOU5mLHdDdkJ3TmM7RXVCdk5kLGtCdkI4TmM7RXVCN05kLFl2QmtMYTtBVmsvTWY7O0FpQzVwTkE7RUFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBQUE7RUFxQ0E7RUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQUFBO0VBa0NBOzs7Ozs7R0FBQTtBakNzcE5GO0FpQ2hxTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QnZCZ0ppQjtBVmtoTnJCO0FpQ3JwTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDdXBOSjs7QWlDbHBOQTtFQUNFLGlDdkJzRnFCO0FWK2pOdkI7O0FpQ2pwTkU7RUFDRSxpQ3ZCaUZtQjtBVm1rTnZCO0FpQ2xwTkU7RUFDRSxnQ3ZCOEVtQjtBVnNrTnZCOztBaUNocE5BO0VBQ0UsaUN2QnlFcUI7RXVCeEVyQjtFQUNBO0FqQ21wTkY7O0FpQ2hwTkE7RUFDRSxpQ3ZCbUdzQjtBVmdqTnhCOztBaUNocE5BOzs7RUFHRSxpQ3ZCNkZzQjtFdUI1RnRCO0FqQ21wTkY7O0FpQy9vTkU7RUFDRSxvQ3ZCN0V5QjtBVit0TjdCOztBaUM1b05JO0VBQ0Usb0N2QnJGdUI7QVZvdU43QjtBaUM1b05JO0VBQ0Usb0N2QnhGdUI7QVZzdU43Qjs7QWlDem9OQTs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUFtQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakN5b05KOztBaUNwb05BO0VBQ0U7QWpDdW9ORjtBaUNyb05FO0VBQ0UsNkJ2QmxKYztBVnl4TmxCO0FpQ3BvTkU7RUFDRSwrQnZCckpnQjtBVjJ4TnBCO0FpQ25vTkU7RUFDRTtBakNxb05KOztBa0NuMU5BOytFQUFBO0FBR0E7RUFFRTtFQUNBO0VBQ0E7QWxDbzFORjtBa0NqMU5FO0VBQ0U7QWxDbTFOSjtBa0NoMU5FO0VBQWtCO0FsQ20xTnBCO0FrQ2oxTkU7RUFDRSxZeEJnTFc7RXdCL0tYLGlCeEIrS1c7QVZvcU5mO0FrQ2gxTkU7RUFDRTtBbENrMU5KO0FrQy8wTkU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMjBOSjtBa0MzMU5JO0VBQ0U7QWxDNjFOTjs7QW1DejNOQTsrRUFBQTtBQUdBO0VBQ0U7QW5DMjNORjs7QW1DeDNOQTs7RUFHRTtBbkMwM05GOztBbUN2M05BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DMDNORjtBbUN4M05FO0VBQ0U7QW5DMDNOSjs7QW1DdDNOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0N6Qk9jO0V5Qk5kO0VBRUE7RUFDQTtBbkN3M05GO0FtQ3QzTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSwyQnpCSFk7RXlCSVo7RUFDQTtBbkN3M05KO0FtQ3IzTkU7RUFDRTtBbkN1M05KO0FtQ3IzTkk7RUFDRSx3Q3pCRXVCO0V5QkR2QjtFQUNBO0VBQ0E7QW5DdTNOTjs7QW1DajJOQTtFQUNFO0FuQ28yTkY7O0FtQ2oyTkE7RUFuQkUsV3pCaUthO0V5Qi9KYjtBbkN1M05GOztBbUNsMk5BO0VBakJFO0VBQ0EsWXpCd0phO0V5QnZKYixXekJ3Slk7RXlCdkpaO0VBQ0EsZ0N6QmhDYztFeUJpQ2Q7RUFjQTtFQUNBLHNDekJoRGM7RXlCaURkO0VBQ0E7QW5DMDJORjs7QW1DdDJOQTtFQUNFO0FuQ3kyTkY7O0FtQ3IyTkE7RUFFRTtBbkN1Mk5GOztBbUNwMk5BO0VBMUNFLFd6QmlLYTtFeUIvSmI7QW5DaTVORjs7QW1DcjJOQTtFQUNFO0FuQ3cyTkY7O0FtQ3IyTkE7RUE1Q0U7RUFDQSxZekJ3SmE7RXlCdkpiLFd6QndKWTtFeUJ2Slo7RUFDQSxnQ3pCaENjO0V5QmlDZDtFQXlDQTtBbkM2Mk5GOztBbUN6Mk5BO0VBQ0U7RUFDQTtBbkM0Mk5GOztBbUN6Mk5BO0VBQ0U7QW5DNDJORjs7QW1DeDJOQTtFQUNFLFd6QjhGYTtFeUIzRmI7RUFHQTtFQUNBO0VBRUE7RUFDQTtBbkNzMk5GOztBbUNuMk5BOztFQUVFLGdDekJ4R2M7QVY4OE5oQjs7QW1DbjJOQTs7RUFFRSxxQ3pCMkVrQjtBVjJ4TnBCOztBbUNuMk5BO0VBcEZFO0VBQ0EsWXpCd0phO0V5QnZKYixXekJ3Slk7RXlCdkpaO0VBQ0EsZ0N6QmhDYztFeUJpQ2Q7QW5DMjdORjs7QW1DeDJOQTtFQUNFO0FuQzIyTkY7O0FvQzFnT0E7O2VBQUE7QUFJRTtFQUNFO0FwQzRnT0o7QW9DemdPRTtFQUNFO0FwQzJnT0o7QW9DeGdPRTtFQUNFO0VBQ0E7RUFDQSwrQjFCc0NnQjtFMEJyQ2hCO0VBQ0E7RUFDQTtFQUNBO0FwQzBnT0o7QW9DeGdPSTtFQUNFLDZCMUI4Qlk7RTBCN0JaO0FwQzBnT047QW9DeGdPSTtFQUNFLDJCMUJnQlU7RTBCZlY7RUFDQTtFQUNBO0FwQzBnT047O0FxQ3ZpT0E7QUFDQTtFQUNFO0VBQ0EsWTNCK1NjO0UyQjlTZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwwRDNCMlNpQjtFMkIxU2pCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQWdCQTtBckMyaE9GO0FxQ3RpT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckN3aU9KO0FxQ3JpT0U7RUFDRTtBckN1aU9KO0FxQ25pT0U7RUFDRSxvQzNCeUZpQztBVjQ4TnJDO0FxQ25pT0U7RUFDRSxvQzNCdUZpQztBVjg4TnJDO0FxQ2xpT0U7RUFDRSwrQzNCd0JnQztFMkJ2QmhDLGtEM0JzQndCO0FWOGdPNUI7QXFDamlPRTtFQUF5QjtBckNvaU8zQjtBcUNsaU9FO0VBQ0U7RUFDQTtFQUNBO0FyQ29pT0o7QXFDbGlPRTtFQUNFO0VBR0E7RUFDQTtFQUlBOzs7OztHQUFBO0VBT0E7RUFDQSxZM0JvUGtCO0UyQm5QbEIsZTNCNk9nQjtFMkI1T2hCO0VBQ0E7RUFDQTtFQUNBO0VBVUE7QXJDcWhPSjtBcUM3aE9JO0VBQ0UsNkIzQnVPZTtBVnd6TnJCO0FxQzVoT0k7RUFDRTtBckM4aE9OO0FxQzFoT0k7RUFFRTtFQUNBO0VBQ0EsK0IzQjZOZTtFMkI1TmY7QXJDMmhPTjtBcUN2aE9FO0VBQ0U7QXJDeWhPSjtBcUN0aE9FO0VBQ0U7RUFDQTtFQUNBLCtCM0JrTnNCO0UyQmpOdEIsZTNCNk1nQjtFMkI1TWhCO0VBQ0EsaUIzQmlOa0I7QVZ1ME50QjtBcUNwaE9FO0VBQ0U7RUFDQTtFQUNBO0FyQ3NoT0o7QXFDcGhPSTtFQUtFO0VBQ0E7QXJDa2hPTjtBcUN2aE9NO0VBQ0U7QXJDeWhPUjtBcUNsaE9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDb2hPTjtBcUNqaE9JO0VBQ0U7QXJDbWhPTjtBcUNoaE9JO0VBQ0U7RUFDQTtBckNraE9OO0FxQy9nT0k7O0VBRUUsZTNCb0tjO0UyQm5LZDtBckNpaE9OO0FxQzlnT0k7RUFDRTtFQUNBO0FyQ2doT047QXFDN2dPSTtFQUNFO0VBQ0E7QXJDK2dPTjs7QXFDemdPQTtFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDd2dPRjtBcUMvZ09FO0VBQ0U7QXJDaWhPSjs7QXFDdmdPQTtFQU1FO0VBQ0E7RUFDQTtBckNxZ09GO0FxQzNnT0U7RUFDRTtFQUNBO0FyQzZnT0o7O0FxQ3JnT0E7RUFFSTtJQUNFO0VyQ3VnT0o7RXFDcmdPSTtJQUNFO0VyQ3VnT047RXFDcGdPRTtJQUNFO0VyQ3NnT0o7RXFDcGdPRTtJQUNFO0VyQ3NnT0o7QUFDRjtBcUNsZ09BO0VBQ0U7QXJDb2dPRjs7QXFDamdPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNvZ09GOztBcUM5L05FOztFQUNFO0VBQ0E7QXJDa2dPSjtBcUNoZ09FOztFQUNFO0FyQ21nT0o7QXFDamdPRTs7RUFDRTtBckNvZ09KOztBc0N6dU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7QXRDeXVPRjtBc0N2dU9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQzVCd0JZO0U0QnZCWjtBdEN5dU9KO0FzQ3R1T0U7RUFDRSxzQzVCbUJZO0FWcXRPaEI7QXNDdHVPSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QXRDdXVPTjtBc0NudU9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F0Q291T047O0FzQy90T0E7RUFDRTtJQUNFO0lBQ0E7RXRDa3VPRjtFc0NodU9BO0lBQ0U7SUFDQTtFdENrdU9GO0VzQ2h1T0E7SUFDRTtJQUNBO0V0Q2t1T0Y7QUFDRjtBc0MvdE9BO0VBQ0U7SUFDRTtJQUNBO0V0Q2l1T0Y7RXNDL3RPQTtJQUNFO0lBQ0E7RXRDaXVPRjtFc0MvdE9BO0lBQ0U7SUFDQTtFdENpdU9GO0FBQ0Y7QXNDNXRPQTs7Ozs7Ozs7RUFBQTtBQVVBO0FBQ0E7QUFDQTtBQUVBOzs7Ozs7Ozs7Ozs7RUFBQTtBQWVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDMHRPRjtBc0N4dE9FO0VBQ0U7RUFDQTtBdEMwdE9KO0FzQ3Z0T0U7RUFDRTtFQUNBO0F0Q3l0T0o7QXNDdHRPRTtFQUNFO0VBQ0E7RUFDQTtBdEN3dE9KOztBc0NwdE9BO0VBQ0U7SUFBSztFdEN3dE9MO0FBQ0Y7QXNDdHRPQTtFQUNFO0lBQUs7RXRDeXRPTDtBQUNGO0FzQ3Z0T0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtDNUI1R2M7QVZxME9oQjs7QXNDdHRPQTs7RUFFRTtBdEN5dE9GOztBc0N0dE9BOztFQUVFO0F0Q3l0T0Y7O0FzQ3R0T0E7O0VBRUU7QXRDeXRPRjs7QXNDdHRPQTs7RUFFRTtBdEN5dE9GOztBc0N0dE9BOzs7Ozs7Ozs7Ozs7RUFBQTtBQWFBO0VBQ0U7RUFDQTtFQUNBO0F0Q3l0T0Y7O0FzQ3R0T0E7RUFDRTtFQUNBO0VBQ0E7QXRDeXRPRjs7QXNDdHRPQTtFQUNFO0VBQ0E7RUFDQTtBdEN5dE9GOztBc0N0dE9BO0VBQ0U7RUFDQTtFQUNBO0F0Q3l0T0Y7O0FzQ3R0T0E7Ozs7O0VBS0U7RUFDQTtFQUNBO0VBQ0E7QXRDeXRPRjs7QXNDdHRPQTtFQUNFO0lBQVE7RXRDMHRPUixFc0MxdE84QztFQUM5QztJQUFRO0V0QzR0T1IsRXNDNXRPOEM7RUFDOUM7SUFBUTtFdEM4dE9SLEVzQzl0TzhDO0VBQzlDO0lBQVE7RXRDZ3VPUixFc0NodU84QztFQUM5QztJQUFRO0V0Q2t1T1IsRXNDbHVPOEM7RUFDOUM7SUFBUTtFdENvdU9SLEVzQ3B1TzhDO0VBQzlDO0lBQVE7RXRDc3VPUixFc0N0dU84QztFQUM5QztJQUFRO0V0Q3d1T1IsRXNDeHVPOEM7QXRDeXVPaEQ7QXNDdHVPQTtFQUNFO0lBQVE7RXRDeXVPUixFc0N6dU9zQztFQUN0QztJQUFRO0V0QzJ1T1IsRXNDM3VPc0M7RUFDdEM7SUFBUTtFdEM2dU9SLEVzQzd1T3NDO0VBQ3RDO0lBQVE7RXRDK3VPUixFc0MvdU9zQztFQUN0QztJQUFRO0V0Q2l2T1IsRXNDanZPc0M7RUFDdEM7SUFBUTtFdENtdk9SLEVzQ252T3NDO0VBQ3RDO0lBQVE7RXRDcXZPUixFc0Nydk9zQztFQUN0QztJQUFRO0V0Q3V2T1IsRXNDdnZPc0M7QXRDd3ZPeEM7QXNDcnZPQTtFQUNFO0lBQU87RXRDd3ZPUDtFc0N2dk9BO0lBQU07RXRDMHZPTjtFc0N6dk9BO0lBQU07RXRDNHZPTjtFc0Mzdk9BO0lBQU07RXRDOHZPTjtFc0M3dk9BO0lBQU07RXRDZ3dPTjtFc0Mvdk9BO0lBQU87RXRDa3dPUDtBQUNGO0FzQ2h3T0E7RUFDRTtJQUFPO0V0Q213T1A7RXNDbHdPQTtJQUFNO0V0Q3F3T047RXNDcHdPQTtJQUFNO0V0Q3V3T047RXNDdHdPQTtJQUFNO0V0Q3l3T047RXNDeHdPQTtJQUFNO0V0QzJ3T047RXNDMXdPQTtJQUFPO0V0QzZ3T1A7QUFDRjtBc0Mzd09BO0VBQ0U7SUFBTztFdEM4d09QO0VzQzd3T0E7SUFBTTtFdENneE9OO0VzQy93T0E7SUFBTTtFdENreE9OO0VzQ2p4T0E7SUFBTTtFdENveE9OO0VzQ254T0E7SUFBTTtFdENzeE9OO0FBQ0Y7QXNDcHhPQTtFQUNFO0lBQU87RXRDdXhPUDtFc0N0eE9BO0lBQU07RXRDeXhPTjtFc0N4eE9BO0lBQU07RXRDMnhPTjtFc0MxeE9BO0lBQU07RXRDNnhPTjtFc0M1eE9BO0lBQU07RXRDK3hPTjtBQUNGO0FzQzd4T0E7RUFDRTtJQUFPO0V0Q2d5T1A7RXNDL3hPQTtJQUFNO0V0Q2t5T047RXNDanlPQTtJQUFNO0V0Q295T047RXNDbnlPQTtJQUFNO0V0Q3N5T047RXNDcnlPQTtJQUFNO0V0Q3d5T047QUFDRjtBc0N0eU9BO0VBQ0U7SUFBTztFdEN5eU9QO0VzQ3h5T0E7SUFBTTtFdEMyeU9OO0VzQzF5T0E7SUFBTTtFdEM2eU9OO0VzQzV5T0E7SUFBTTtFdEMreU9OO0VzQzl5T0E7SUFBTTtFdENpek9OO0FBQ0Y7QXNDL3lPQTtFQUNFO0lBQU87RXRDa3pPUDtFc0Nqek9BO0lBQU07RXRDb3pPTjtFc0Nuek9BO0lBQU07RXRDc3pPTjtFc0Nyek9BO0lBQU07RXRDd3pPTjtFc0N2ek9BO0lBQU87RXRDMHpPUDtBQUNGO0FzQ3h6T0E7RUFDRTtJQUFPO0V0QzJ6T1A7RXNDMXpPQTtJQUFNO0V0QzZ6T047RXNDNXpPQTtJQUFNO0V0Qyt6T047RXNDOXpPQTtJQUFNO0V0Q2kwT047RXNDaDBPQTtJQUFPO0V0Q20wT1A7QUFDRjtBc0NqME9BOzs7RUFBQTtBQUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRDbTBPRjs7QXNDaDBPQTtFQUNFO0VBQ0E7QXRDbTBPRjs7QXNDaDBPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENtME9GO0FzQ2owT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENtME9KO0FzQ2gwT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdENrME9KO0FzQ2gwT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdENrME9KOztBc0M1ek9BO0VBQ0U7RUFDQTtFQUNBO0F0Qyt6T0Y7O0FzQzV6T0E7RUFDRTtFQUNBO0VBQ0E7QXRDK3pPRjs7QXNDNXpPQTtFQUNFO0lBQU87RXRDZzBPUDtFc0Mvek9BO0lBQU07RXRDazBPTjtFc0NqME9BO0lBQUs7RXRDbzBPTDtBQUNGO0FzQ2wwT0E7RUFDRTtJQUFPO0V0Q3EwT1A7RXNDcDBPQTtJQUFNO0V0Q3UwT047RXNDdDBPQTtJQUFLO0V0Q3kwT0w7QUFDRjtBc0N2ME9BO0VBQ0U7SUFBTztFdEMwME9QO0VzQ3owT0E7SUFBTTtFdEM0ME9OO0VzQzMwT0E7SUFBSztFdEM4ME9MO0FBQ0Y7QXNDNTBPQTtFQUNFO0lBQU87RXRDKzBPUDtFc0M5ME9BO0lBQU07RXRDaTFPTjtFc0NoMU9BO0lBQUs7RXRDbTFPTDtBQUNGO0FzQ2oxT0E7RUFDRTtFQUNBO0VBQ0E7QXRDbTFPRjs7QXNDaDFPQTtFQUNFO0lBQU87RXRDbzFPUDtFc0NuMU9BO0lBQUs7RXRDczFPTDtBQUNGO0FzQ3AxT0E7RUFDRTtJQUFPO0V0Q3UxT1A7RXNDdDFPQTtJQUFLO0V0Q3kxT0w7QUFDRjtBdUMzdlBBO0VBQ0U7RUFDQTtFQUNBO0F2QzZ2UEY7QXVDMXZQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QzR2UEo7QXVDMXZQSTtFQUNFO0VBQ0E7RUFDQTtBdkM0dlBOO0F1Q3p2UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkMydlBOO0F1Q3p2UE07RUFDRSxpRDdCMkhtQjtBVmdvUDNCO0F1Q3p2UFE7RUFDRSx3RDdCeUh3QjtBVmtvUGxDO0F1Q3B2UEU7RUFDRSxzQzdCZ0NZO0U2Qi9CWjtFQUNBO0VBQ0E7RUFDQTtBdkNzdlBKO0F1Q3B2UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNzdlBOO0F1Q3B2UE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkNzdlBSO0F1Q252UE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDcXZQUjtBdUNudlBRO0VBQ0U7QXZDcXZQVjtBdUNqdlBNO0VBQ0U7QXZDbXZQUjtBdUM5dVBFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNndlBKO0F1Qzl1UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Q2d2UE47QXVDN3VQSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkM3QnVObUI7RTZCck5uQjtFQUNBO0VBQ0E7RUFNQTtFQUNBO0F2Q3l1UE47QXVDOXVQTTtFQUNFLHNDN0J2RVE7QVZ1elBoQjs7QXdDajJQQTtFQXFDRTtFQUNBO0VBQ0E7RUFDQSxhOUIyR2dCO0U4QjFHaEI7RUFDQTtFQUNBO0F4Q2cwUEY7QXdDMTJQRTtFQUNFO0VBQ0E7QXhDNDJQSjtBd0MxMlBJO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEN3MlBOO0F3Q2gzUE07RUFDRTtBeENrM1BSO0F3Q3gyUEk7RUFDRTtFQUNBO0VBQ0EsaUI5QitIWTtFOEI5SFo7RUFDQTtFQUNBO0F4QzAyUE47QXdDeDJQTTtFQUNFO0VBQ0E7RUFDQTtBeEMwMlBSO0F3Q3YyUE07RUFDRTtBeEN5MlBSO0F3QzUxUEU7RUFDRTtFQUNBLFk5QnFHbUI7RThCcEduQixhOUJvR21CO0U4Qm5HbkI7RUFDQTtFQUNBO0F4QzgxUEo7QXdDNTFQSTtFQUNFO0F4QzgxUE47QXdDMTFQRTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDMjFQSjtBd0N6MVBJO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUQ5QnVFcUI7RThCckVyQjtFQUNBO0F4Q3MxUE47QXdDbjJQTTtFQUNFLHdEOUJpRjBCO0FWb3hQbEM7QXdDcDFQRTs7RUFFRTtBeENzMVBKOztBeUNoN1BBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Q203UEY7O0F5Q2g3UEE7RUFDRTtFQUNBO0F6Q203UEY7QXlDajdQRTtFQUNFO0VBQ0E7RUFDQSxzR0FDRTtBekNrN1BOO0F5Qzk2UEU7RUFDRTtBekNnN1BKO0F5Qzk2UEU7RUFDRTtFQUNBO0VBQ0EsMERBQ0U7QXpDKzZQTjs7QXlDejZQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHdDL0J1QmdCO0UrQnRCaEIsMEMvQm9CNkI7RStCbkI3QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDNDZQRjs7QXlDeDZQQTtFQUNFO0VBQ0E7QXpDMjZQRjs7QXlDeDZQQTtFQXdCRTtFQUNBO0VBQ0E7QXpDbzVQRjtBeUM3NlBFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0MvQlFZO0FWczZQaEI7QXlDNTZQRTtFQUNFO0VBQ0E7QXpDODZQSjtBeUM1NlBFO0VBQ0U7RUFDQSx1REFDRTtFQUdGO0F6QzI2UEo7O0F5Q242UEE7RUFNRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F6Q2c2UEY7QXlDMTZQRTtFQUVFO0F6QzI2UEo7O0F5Q2g2UEE7RUFDRTtJQUNFO0lBQ0E7RXpDbTZQRjtBQUNGO0EwQ3hnUUE7RUFpQkU7RUFDQTtBMUMwL1BGO0EwQzNnUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUM2Z1FKOztBMEN0Z1FBO0VBQ0U7SUFDRTtJQUNBO0UxQ3lnUUY7RTBDdmdRQTtJQUNFO0lBQ0E7RTFDeWdRRjtFMEN2Z1FBO0lBQ0U7SUFDQTtFMUN5Z1FGO0FBQ0Y7QTJDMWlRQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0EzQzRpUUY7O0EyQ3ppUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxzQ2pDNERjO0FWZy9QaEI7O0EyQ3ppUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0M0aVFGO0EyQzFpUUU7RUFDRTtBM0M0aVFKO0EyQ3hpUUk7RUFLRTtFQUNBO0VBQ0E7QTNDc2lRTjtBMkM1aVFNO0VBQ0U7QTNDOGlRUjtBMkN0aVFJO0VBQ0U7QTNDd2lRTjtBMkNwaVFFO0VBQ0U7QTNDc2lRSjtBMkNuaVFFO0VBQ0U7QTNDcWlRSjtBMkNsaVFFOztFQUVFO0VBQ0E7QTNDb2lRSjtBMkNqaVFFOztFQUVFLDhCakNrRWdCO0FWaStQcEI7O0EyQy9oUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0NraVFGOztBMkM5aFFBO0FBQ0E7RUFDRTtFQUNBLHNDakM3QmM7RWlDOEJkLHdDakNoQjJCO0VpQ2lCM0I7RUFDQTtBM0NpaVFGO0EyQy9oUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx3Q2pDeEJ5QjtBVnlqUTdCO0EyQzloUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0NnaVFKOztBMkMzaFFBO0FBQ0E7RUFDRTtBM0M4aFFGOztBMkMzaFFBO0VBQ0U7RUFDQTtFQUNBO0EzQzhoUUY7QTJDNWhRRTtFQUNFO0EzQzhoUUo7QTJDM2hRRTtFQUNFO0VBQ0E7QTNDNmhRSjtBMkMxaFFFO0VBQ0U7QTNDNGhRSjtBMkN6aFFFO0VBQ0U7RUFDQSwrQmpDaEVnQjtBVjJsUXBCO0EyQ3hoUUU7RUFDRSw2QmpDckVjO0VpQ3NGZDtFQUNBO0EzQzBnUUo7QTJDMWhRSTtFQUNFLDJCakNsRlU7QVY4bVFoQjtBMkN6aFFJO0VBQ0Usc0NqQ3RGVTtFaUN1RlYsd0NqQ3pFdUI7QVZvbVE3QjtBMkN4aFFJO0VBRUUsaUNqQ2hGZ0I7RWlDaUZoQjtBM0N5aFFOOztBMkNqaFFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQ29oUUY7QTJDbGhRRTtFQUNFLG1EakMxR3lCO0FWOG5RN0I7QTJDamhRRTtFQUNFLG1EakM3R3lCO0FWZ29RN0I7O0EyQzlnUUE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNDaWhRRjs7QTJDOWdRQTs7OztFQUlFLDJCakN2SWM7RWlDd0lkO0EzQ2loUUY7O0EyQzlnUUE7RUFDRSx5QmpDbEhZO0FWbW9RZDs7QTJDN2dRQTtBQUNBO0VBQ0U7SUFDRTtFM0NnaFFGO0UyQzdnUUE7SUFDRTtFM0MrZ1FGO0UyQzVnUUE7SUFDRTtFM0M4Z1FGO0UyQzNnUUE7OztJQUdFO0UzQzZnUUY7RTJDMWdRQTtJQUNFO0UzQzRnUUY7QUFDRjtBNEM1dFFBO0FBQ0E7RUFDRTtFQUNBO0E1Qzh0UUY7O0E0QzN0UUE7RUFDRTtFQUNBO0VBQ0E7QTVDOHRRRjs7QTRDM3RRQTtFQUNFLHdDbEMyQzJCO0FWbXJRN0I7O0E0QzF0UUE7QUFDQTtFQUNFO0VBQ0E7RUFDQSxzQ2xDcUJjO0VrQ3BCZDtFQUNBO0E1QzZ0UUY7O0E0QzF0UUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSwwQ2xDMkI2QjtFa0MxQjdCO0VBQ0E7RUFDQTtBNUM2dFFGO0E0QzN0UUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QzZ0UUo7O0E0Q3p0UUE7OztFQUdFO0E1QzR0UUY7O0E0Q3p0UUE7RUFDRTtFQUNBO0VBQ0E7QTVDNHRRRjs7QTRDenRRQTtFQUNFO0VBQ0E7QTVDNHRRRjs7QTRDenRRQTtFQUNFO0E1QzR0UUY7O0E0Q3p0UUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QzR0UUY7O0E0Q3h0UUE7QUFDQTtFQUNFO0VBQ0Esc0NsQ05jO0FWaXVRaEI7O0E0Q3h0UUE7RUFDRSxtRGxDK0YwQjtFa0M5RjFCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUMydFFGOztBNEN4dFFBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDMnRRRjs7QTRDeHRRQTtFQUNFO0E1QzJ0UUY7O0E0Q3h0UUE7RUFDRTtFQUNBLDZCbENtRXVCO0VrQ2xFdkI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDMnRRRjs7QTRDeHRRQTs7RUFFRSxtRGxDdkUyQjtBVmt5UTdCOztBNEN4dFFBO0VBQ0U7QTVDMnRRRjs7QTRDeHRRQTtFQVNFO0E1Q210UUY7QTRDM3RRRTtFQUNFO0E1QzZ0UUo7QTRDMXRRRTtFQUNFO0E1QzR0UUo7O0E0Q3R0UUE7RUFDRTtBNUN5dFFGO0E0Q3Z0UUU7RUFDRSw0QmxDckdZO0VrQ3NHWjtFQUNBO0E1Q3l0UUo7O0E0Q3J0UUE7RUFDRTtBNUN3dFFGOztBNENydFFBO0VBQ0U7RUFDQSwwQmxDakhjO0FWeTBRaEI7O0E0Q3J0UUE7RUFDRTtFQUNBLDBCbEN0SGM7QVY4MFFoQjs7QTRDcHRRQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVDdXRRRjs7QTRDcHRRQTtFQUNFLHlCbEN6R1k7QVZnMFFkOztBNENwdFFBO0VBQ0UsMkJsQ3ZJYztBVjgxUWhCOztBNENwdFFBOztFQUVFO0E1Q3V0UUY7O0E0Q3B0UUE7QUFDQTtFQUNFO0lBQ0U7RTVDdXRRRjtFNENwdFFBO0lBQ0U7RTVDc3RRRjtFNENudFFBO0lBQ0U7RTVDcXRRRjtFNENsdFFBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUNvdFFGO0FBQ0Y7QTZDajZRQTtFQUNJO0E3Q202UUo7QTZDbDZRSTtFQUNJO0VBQ0E7QTdDbzZRUjtBNkNuNlFRO0VBQ0k7RUFDQTtFQUNBO0E3Q3E2UVo7QTZDajZRSTtFQUNJO0VBQ0E7QTdDbTZRUjtBNkNsNlFRO0VBQ0k7QTdDbzZRWjtBNkNoNlFJO0VBQ0k7RUFDQTtBN0NrNlFSO0E2Qy81UUk7RUFDSTtFQUNBO0E3Q2k2UVI7QTZDaDZRUTtFQUNJO0E3Q2s2UVo7QTZDMTVRQTtFQUNJO0E3QzQ1UUo7QTZDMzVRSTtFQUNJO0VBQ0E7QTdDNjVRUjs7QTZDejVRQTtFQUNJO0VBQ0E7RUFDQTtBN0M0NVFKOztBOEM1OFFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUMrOFFKO0E4Qzk4UUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q2c5UVI7QThDNzhRSTtFQUNJO0VBQ0E7QTlDKzhRUjtBOEM5OFFRO0VBQ0k7QTlDZzlRWjtBOEM1OFFJO0VBQ0k7QTlDODhRUjtBOEM1OFFJO0VBQ0k7RUFDQTtFQUNBO0E5Qzg4UVI7O0ErQzUrUUk7RUFDSTtFQUNBO0EvQysrUVI7QStDOStRUTtFQUNJO0VBQ0E7RUFDQTtBL0NnL1FaO0ErQzcrUUk7RUFDSTtFQUNBO0EvQysrUVI7QStDOStRUTtFQUNJO0EvQ2cvUVo7QStDNStRSTtFQUNJO0VBQ0E7QS9DOCtRUjtBK0M3K1FRO0VBQ0k7QS9DKytRWjtBK0MzK1FJO0VBQ0k7RUFDQTtBL0M2K1FSOztBZ0R6Z1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhENGdSSjtBZ0QxZ1JJO0VBQ0k7RUFDQTtBaEQ0Z1JSO0FnRHpnUkk7RUFVSTtBaERrZ1JSO0FnRDFnUlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDRnUlo7QWdEdmdSWTtFQUNJO0FoRHlnUmhCO0FnRHhnUmdCO0VBQ0k7QWhEMGdScEI7QWdEemdSb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDJnUnhCO0FnRHhnUmdCO0VBQ0k7QWhEMGdScEI7QWdEdmdSWTtFQUNJO0FoRHlnUmhCO0FnRHhnUmdCO0VBQ0k7QWhEMGdScEI7QWdEemdSb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDJnUnhCO0FnRHJnUlk7RUFDSTtFQUNBO0FoRHVnUmhCO0FnRHJnUlk7RUFDSTtBaER1Z1JoQjtBZ0RuZ1JJO0VBQ0k7QWhEcWdSUjtBZ0RuZ1JZO0VBQ0k7QWhEcWdSaEI7QWdEbmdSWTtFQUNJO0FoRHFnUmhCO0FnRGxnUlE7RUFDSTtBaERvZ1JaO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRGhnUkk7RUFDSTtBaERrZ1JSO0FnRC8vUUk7RUFDSTtFQUNBO0VBQ0E7QWhEaWdSUjtBZ0RoZ1JRO0VBQ0k7QWhEa2dSWjtBZ0RoZ1JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEa2dSWjtBZ0RoZ1JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEa2dSWjtBZ0RoZ1JRO0VBQ0k7RUFDQTtBaERrZ1JaO0FnRGhnUlE7RUFDSTtBaERrZ1JaOztBaUR2b1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRDBvUko7QWlEem9SSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQyb1JSO0FpRDFvUlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpENG9SWjtBaUQxb1JRO0VBQ0k7QWpENG9SWjtBaUR6b1JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWpEMm9SUjtBaUR6b1JJO0VBQ0k7RUFDQTtBakQyb1JSO0FpRHhvUkk7RUFDSTtFQUNBO0FqRDBvUlI7O0FBL3FSQTtFQUNJO0FBa3JSSjs7QUEvcVJBO0VBQ0k7RUFDQTtFQUNBO0FBa3JSSjtBQWhyUkE7RUFDSTtFQUNBO0VBQ0Esa0VBQ0k7QUFpclJSO0FBMXFSQTtFQUNJO0FBNHFSSjs7QUF6cVJBO0VBQ0k7QUE0cVJKOztBQXpxUkE7RUFDSTtBQTRxUko7O0FBMXFSQTtFQUNJO0VBQ0E7QUE2cVJKO0FBM3FSSTtFQUNJO0FBNnFSUjs7QUF6cVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTRxUko7O0FBenFSQTtFQUNJO0FBNHFSSjtBQTFxUkk7RUFDSTtBQTRxUlI7O0FBeHFSQTtFQUNJO0FBMnFSSjs7QUF4cVJBO0VBQ0k7QUEycVJKOztBQXhxUkE7RUFDSTtBQTJxUko7O0FBeHFSQTtFQUNJO0FBMnFSSjs7QUF4cVJBOzs7O0VBSUk7RUFDQTtBQTJxUko7O0FBeHFSQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBMnFSSjs7QUF4cVJBOzs7RUFHSTtBQTJxUko7O0FBdHFSQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBeXFSSjtBQXhxUkk7RUFDSTtBQTBxUlI7O0FBdHFSQTtFQUNJO0FBeXFSSjs7QUF0cVJBO0VBQ0k7QUF5cVJKO0FBdnFSSTtFQUNJO0FBeXFSUjs7QUFycVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNFQUNJO0VBR0o7RUFDQTtFQUNBO0FBcXFSSjs7QUFscVJBO0VBRUk7SUFFSTtFQW1xUk47RUFocVJFO0lBQ0k7RUFrcVJOO0VBL3BSRTtJQUNJO0VBaXFSTjtFQTlwUkU7SUFDSTtFQWdxUk47RUE3cFJFO0lBQ0k7RUErcFJOO0FBQ0Y7QUE1cFJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQThwUkY7O0FBNXBSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBK3BSRjs7QUE3cFJBO0VBQ0U7SUFBSztFQWlxUkw7RUFocVJBO0lBQU87RUFtcVJQO0FBQ0Y7QUFqcVJBO0VBQ0k7QUFtcVJKOztBQWhxUkE7RUFDSTtFQUNBO0FBbXFSSjtBQWxxUkk7RUFDSTtBQW9xUlI7O0FBaHFSQTtFQUNJO0VBQ0E7QUFtcVJKO0FBbHFSSTtFQUNJO0FBb3FSUjs7QUFocVJBO0VBQ0k7QUFtcVJKOztBQWhxUkE7RUFDSTtBQW1xUko7O0FBL3BSQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBa3FSSjtBQWhxUkk7O0VBQ0k7QUFtcVJSO0FBaHFSSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQW1xUlI7QUFqcVJROztFQUNJO0VBQ0E7QUFvcVJaO0FBaHFSSTs7RUFDSTtBQW1xUlI7QUFocVJJOzs7O0VBRUk7RUFDQTtBQW9xUlI7O0FBaHFSQTtFQUNJO0VBQ0E7QUFtcVJKOztBQS9wUkk7RUFDSTtBQWtxUlI7QUEvcFJJOztFQUVJO0FBaXFSUjs7QUE3cFJBO0VBQ0k7RUFDQTtBQWdxUko7O0FBM3BSSTs7RUFFSTtBQThwUlI7O0FBMXBSQTtFQUNJO0FBNnBSSjs7QUF6cFJJO0VBQ0k7QUE0cFJSO0FBMXBSUTtFQUNJO0FBNHBSWjs7QUF2cFJBO0VBQ0k7RUFDQTtBQTBwUko7O0FBdnBSQTs7OztFQUlJO0VBQ0E7RUFDQTtBQTBwUko7O0FBdnBSQTtFQUNJO0FBMHBSSjtBQXhwUkk7RUFDSTtBQTBwUlI7QUF2cFJJO0VBQ0k7QUF5cFJSO0FBdHBSSTtFQUNJO0FBd3BSUjtBQXJwUkk7RUFDSTtBQXVwUlI7QUFwcFJJO0VBQ0k7QUFzcFJSO0FBbnBSSTtFQUNJO0FBcXBSUjtBQWxwUkk7RUFDSTtBQW9wUlI7QUFqcFJJO0VBQ0k7QUFtcFJSO0FBaHBSSTtFQUNJO0FBa3BSUjs7QUE5b1JBO0VBQ0k7QUFpcFJKOztBQTlvUkE7RUFDSTtBQWlwUko7O0FBOW9SQTtFQUNJO0FBaXBSSjs7QUE5b1JBO0VBQ0k7QUFpcFJKOztBQTlvUkE7RUFDSTtBQWlwUko7O0FBOW9SQTtFQUNJO0VBQ0E7QUFpcFJKOztBQTlvUkE7RUFDSTtFQUNBO0FBaXBSSjs7QUE5b1JBO0VBQ0k7RUFDQTtBQWlwUko7O0FBOW9SQTtFQUNJO0FBaXBSSjs7QUE5b1JBO0VBQ0k7QUFpcFJKOztBQTlvUkE7RUFDSTtBQWlwUko7O0FBOW9SQTtFQUNJO0FBaXBSSjs7QUE5b1JBO0VBQ0k7QUFpcFJKOztBQTlvUkE7RUFDSTtBQWlwUko7O0FBOW9SQTtFQUNJO0FBaXBSSjs7QUE5b1JBO0VBQ0k7QUFpcFJKOztBQTdvUkE7RUFDSTtFQUNBO0FBZ3BSSjtBQTlvUkk7RUFDSTtBQWdwUlI7QUE3b1JJO0VBQ0k7QUErb1JSOztBQTNvUkE7RUFDSTtBQThvUko7O0FBM29SQTtFQUNJO0FBOG9SSjs7QUEzb1JBO0VBQ0k7QUE4b1JKOztBQTVvUkE7RUFDSTtBQStvUko7O0FBNW9SQTtFQUNJO0FBK29SSjs7QUE1b1JBO0VBQ0k7QUErb1JKOztBQTVvUkE7RUFDSTtBQStvUko7O0FBNW9SQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBK29SSjs7QUE1b1JBO0VBQ0k7QUErb1JKO0FBN29SSTtFQUNJO0FBK29SUjtBQTVvUkk7RUFDSTtBQThvUlI7O0FBMW9SQTtFQUNJO0FBNm9SSjs7QUExb1JBO0VBQ0k7QUE2b1JKOztBQTFvUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2b1JKOztBQTFvUkE7RUFDSTtFQUNBO0FBNm9SSjs7QUExb1JBO0VBQ0k7QUE2b1JKOztBQTFvUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2b1JKO0FBM29SSTtFQUNJO0VBQ0E7QUE2b1JSO0FBM29SSTtFQUNJO0VBQ0E7QUE2b1JSO0FBM29SSTtFQUNJO0FBNm9SUjtBQTNvUkk7RUFDSTtBQTZvUlI7O0FBem9SQTtFQUNJO0VBQ0E7QUE0b1JKOztBQXpvUkE7RUFDSTtBQTRvUko7O0FBeG9SSTtFQUNJO0VBQ0E7QUEyb1JSO0FBeG9SSTtFQU5KO0lBT1E7RUEyb1JOO0FBQ0Y7O0FBeG9SQTtFQUNJO0FBMm9SSjs7QUF4b1JBO0VBQ0k7QUEyb1JKO0FBem9SSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMm9SUjtBQTFvUlE7RUFDSTtBQTRvUlo7QUF4b1JJO0VBQ0k7QUEwb1JSOztBQXRvUkE7RUFDSTtBQXlvUko7O0FBdG9SQTtFQUNJO0FBeW9SSjs7QUF0b1JBO0VBQ0k7QUF5b1JKOztBQXRvUkE7RUFDSTtBQXlvUko7O0FBdG9SQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXlvUko7QUF2b1JJOztFQUNJO0FBMG9SUjs7QUF0b1JBO0VBQ0k7QUF5b1JKOztBQXZvUkE7RUFDSTtBQTBvUko7O0FBdm9SQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMG9SSjtBQXhvUkk7RUFDSTtFQUNBO0VBQ0E7QUEwb1JSO0FBdm9SSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeW9SUjtBQXZvUlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXlvUlo7QUF0b1JRO0VBQ0k7QUF3b1JaOztBQW5vUkE7RUFDSTtBQXNvUko7O0FBbG9SSTtFQUNJO0FBcW9SUjtBQWxvUkk7RUFDSTtBQW9vUlI7O0FBL25SSTtFQUNJO0FBa29SUjs7QUE5blJBO0VBQ0k7RUFDQTtBQWlvUko7O0FBOW5SQTtFQUNJO0VBQ0E7QUFpb1JKO0FBL25SSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpb1JSO0FBOW5SSTtFQUNJO0FBZ29SUjtBQTduUkk7RUFDSTtBQStuUlI7QUE1blJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBOG5SUjtBQTVuUlE7RUFDSTtBQThuUlo7O0FBem5SQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBNG5SSjs7QUF4blJJO0VBQ0k7RUFDQTtFQUNBO0FBMm5SUjs7QUF2blJBO0VBQ0k7QUEwblJKOztBQXZuUkE7RUFDSTtBQTBuUko7O0FBdm5SQTtFQUNJO0FBMG5SSjs7QUF4blJBO0VBQ0k7QUEyblJKOztBQXhuUkE7RUFDSTtBQTJuUko7O0FBdm5SSTtFQUNJO0VBQ0E7RUFDQTtFQWNBO0FBNm1SUjtBQXpuUlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTJuUlo7QUF6blJZO0VBQ0k7RUFDQTtBQTJuUmhCOztBQW5uUkE7RUFDSTtFQUNBO0VBQ0E7QUFzblJKOztBQW5uUkE7RUFDSTtBQXNuUko7O0FBbm5SQTtFQUNJO0FBc25SSjs7QUFublJBO0VBQ0k7RUFDQTtBQXNuUko7O0FBbm5SQTtFQUNJO0FBc25SSjtBQXBuUkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXNuUlI7QUFublJJO0VBQ0k7RUFDQTtBQXFuUlI7O0FBL21SSTs7RUFFSTtFQUNBLGlEVS9tQm1CO0VWZ25CbkIsd0RVam5CMEI7RVZrbkIxQiw0RFVubkI0QjtBVnF1U3BDOztBQTltUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBaW5SSjs7QUE3bVJJO0VBQ0k7QUFnblJSO0FBM21SUTtFQUNJO0FBNm1SWjs7QUF4bVJBO0VBQ0k7QUEybVJKOztBQXhtUkE7RUFDSTtBQTJtUko7O0FBeG1SQTtFQUNJO0FBMm1SSjs7QUF0bVJJOzs7RUFHSTtBQXltUlI7O0FBbm1SSTs7RUFFSTtBQXNtUlI7O0FBbG1SQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBcW1SSjtBQW5tUkk7RUFDSTtFQUNBO0VBQ0E7QUFxbVJSOztBQWptUkE7RUFDSTtFQUNBO0FBb21SSjs7QUFqbVJBO0VBQ0k7QUFvbVJKOztBQWptUkE7RUFDSTtFQUNBO0FBb21SSjs7QUFqbVJBO0VBQ0k7SUFDSTtJQUNBO0VBb21STjtFQWptUkU7SUFDSTtFQW1tUk47RUFobVJFO0lBQ0k7RUFrbVJOO0VBL2xSRTtJQUNJO0lBQ0E7SUFDQTtFQWltUk47RUE5bFJFO0lBQ0k7RUFnbVJOO0FBQ0Y7QUE3bFJBO0VBQ0k7QUErbFJKOztBQTVsUkE7RUFDSTtJQUNJO0VBK2xSTjtFQTFsUkU7SUFDSTtFQTRsUk47RUF2bFJFO0lBQ0k7RUF5bFJOO0FBQ0Y7QUFwbFJBO0VBQ0k7QUFzbFJKOztBQW5sUkE7RUFDSTtFQUNBO0FBc2xSSjs7QUFsbFJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFxbFJSOztBQS9rUlE7RUFDSTtBQWtsUlo7O0FBN2tSQTtFQUNJO0lBQ0k7SUFDQTtFQWdsUk47RUE3a1JFO0lBQ0k7SUFDQTtFQStrUk47QUFDRjtBQTVrUkE7RUFDSTtBQThrUko7O0FBM2tSQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE4a1JKOztBQTNrUkE7RUFDSTtFQUNBO0FBOGtSSjtBQTVrUkk7RUFDSTtFQUNBO0FBOGtSUjtBQTVrUlE7RUFDSTtBQThrUlo7O0FBemtSQTtFQUNJO0FBNGtSSjtBQTFrUkk7RUFDSTtBQTRrUlI7O0FBdmtSSTtFQUNJO0VBQ0E7QUEwa1JSO0FBeGtSUTtFQUNJO0FBMGtSWjs7QUFya1JBO0VBQ0k7QUF3a1JKOztBQXBrUkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXVrUlI7QUFya1JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF1a1JaO0FBbmtSSTtFQUNJO0FBcWtSUjs7QUFqa1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9rUko7QUFsa1JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9rUlI7QUFoa1JRO0VBQ0k7QUFra1JaO0FBOWpSWTtFQUNJO0VBQ0E7QUFna1JoQjtBQTlqUmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFna1JwQjs7QUF6alJBO0VBQ0k7QUE0alJKOztBQTFqUkE7RUFDSTtBQTZqUko7O0FBMWpSQTtFQUNJO0FBNmpSSjs7QUF6alJJO0VBQ0k7QUE0alJSOztBQXhqUkE7RUFDSTtBQTJqUko7O0FBeGpSQTtFQUNJO0VBQ0E7RUFDQTtBQTJqUko7O0FBeGpSQTtFQUNJO0VBQ0E7QUEyalJKOztBQXhqUkE7RUFDSTtFQUNGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEyalJGOztBQXhqUkE7RUFDSTtBQTJqUko7O0FBeGpSQTtFQUNJO0VBQ0E7QUEyalJKOztBQXhqUkE7RUFDSTtFQUNBO0FBMmpSSjs7QUF4alJBO0VBQ0k7QUEyalJKO0FBMWpSSTtFQUNJO0FBNGpSUjs7QUF4alJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEyalJKO0FBempSSTtFQUNJO0VBQ0E7RUFDQTtBQTJqUlI7QUF6alJRO0VBQ0k7QUEyalJaO0FBdmpSSTtFQUNJO0VBQ0E7RUFDQTtBQXlqUlI7QUF0alJJO0VBQ0k7RUFDQTtFQUNBO0FBd2pSUjtBQXJqUkk7RUFDSTtFQUNBO0VBQ0E7QUF1alJSO0FBcmpSUTtFQUNJO0FBdWpSWjtBQW5qUkk7RUFDSTtBQXFqUlI7QUFsalJJO0VBQ0k7RUFDQTtBQW9qUlI7QUFqalJJO0VBQ0k7QUFtalJSOztBQS9pUkE7RUFDSTtJQUFPO0VBbWpSVDtFQWxqUkU7SUFBTztFQXFqUlQ7RUFwalJFO0lBQU87RUF1alJUO0FBQ0Y7QUFyalJBO0VBQ0k7QUF1alJKO0FBdGpSSTtFQUNJO0FBd2pSUjs7QUFwalJBO0VBQ0k7QUF1alJKOztBQXJqUkE7RUFDSTtBQXdqUko7O0FBdGpSQTtFQUNJO0FBeWpSSjs7QUF2alJBO0VBQ0k7QUEwalJKOztBQXhqUkE7RUFDSTtBQTJqUko7O0FBempSQTtFQUNJO0FBNGpSSjs7QUF6alJBO0VBQ0k7QUE0alJKOztBQXpqUkE7RUFDSTtBQTRqUko7O0FBempSQTtFQUNJO0FBNGpSSjs7QUExalJBO0VBQ0k7QUE2alJKOztBQTNqUkE7RUFDSTtBQThqUko7O0FBM2pSQTtFQUNJO0FBOGpSSjs7QUE1alJBO0VBQ0k7QUEralJKOztBQTdqUkE7RUFDSTtBQWdrUko7O0FBOWpSQTtFQUNJO0FBaWtSSjs7QUEvalJBO0VBQ0k7QUFra1JKOztBQS9qUkE7RUFDSTtBQWtrUko7O0FBL2pSQTtFQUNJO0VBQ0E7RUFDQTtBQWtrUko7O0FBOWpSSTtFQUNJO0FBaWtSUjtBQTdqUlE7RUFDSTtBQStqUlo7O0FBempSSTtFQUNJO0VBQ0E7RUFDQTtBQTRqUlI7QUEzalJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUE2alJaO0FBeGpSWTtFQUNJO0FBMGpSaEI7QUF0alJJO0VBQ0k7QUF3alJSOztBQXBqUkE7RUFDSTtBQXVqUko7QUF0alJJO0VBQ0k7QUF3alJSOztBQXBqUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXVqUko7O0FBcGpSQTtFQUNJO0VBQ0E7RUFDQTtBQXVqUko7O0FBcGpSQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBdWpSSjs7QUFwalJBO0VBQ0U7QUF1alJGOztBQXBqUkE7RUFDSTtBQXVqUko7QUF0alJJO0VBQ0k7RUFDQTtFQUNBO0FBd2pSUjtBQXJqUlE7RUFDSTtBQXVqUlo7QUFwalJJO0VBQ0k7QUFzalJSO0FBcGpSSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzalJSO0FBcGpSSTtFQUNJO0VBQ0E7QUFzalJSO0FBcGpSSTtFQUNJO0VBQ0E7QUFzalJSO0FBcGpSSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBc2pSUjs7QUFoalJJO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNDO0FBbWpSUjs7QUE5aVJJO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNDO0FBaWpSUjs7QUE1aVJJO0VBQ0k7QUEraVJSO0FBOWlSUTtFQUNJO0FBZ2pSWjtBQTdpUkk7RUFDSTtBQStpUlI7QUE5aVJRO0VBQ0k7QUFnalJaOztBQTNpUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBOGlSSjtBQTVpUkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZpUlI7QUEzaVJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FBNGlSUjtBQTNpUlE7RUFDSTtFQUNBO0FBNmlSWjtBQTFpUkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTRpUlI7QUExaVJJO0VBQ0k7RUFDQTtBQTRpUlI7QUExaVJJO0VBQ0k7RUFDQTtBQTRpUlI7O0FBeGlSQTtFQUNJO0FBMmlSSjtBQTFpUkk7RUFDSTtBQTRpUlI7QUEzaVJRO0VBRUk7QUE0aVJaOztBQXZpUkE7RUFDSTtFQUNBO0FBMGlSSjs7QUF2aVJBO0VBQ0k7RUFDQTtFQUNBO0FBMGlSSjs7QUF2aVJBO0VBQ0k7QUEwaVJKOztBQXZpUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMGlSSjtBQXhpUkk7RUFDSTtFQUNBO0FBMGlSUjtBQXZpUkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXlpUlI7O0FBcmlSQTtFQUNJO0VBQ0E7QUF3aVJKOztBQXJpUkE7RUFDSTtFQUNBO0FBd2lSSjs7QUFyaVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF3aVJKO0FBdmlSSTtFQUNJO0FBeWlSUjs7QUFwaVJJO0VBQ0k7RUFDQTtFQUNBO0FBdWlSUjs7QUFsaVJJO0VBQ0k7QUFxaVJSO0FBbmlSSTtFQUNJO0FBcWlSUjtBQW5pUkk7RUFDSTtFQUNBO0FBcWlSUjs7QUFoaVJJO0VBQ0k7QUFtaVJSOztBQS9oUkE7RUFDSTtFQUNBO0FBa2lSSjtBQWppUkk7RUFDSTtBQW1pUlI7O0FBL2hSQTtFQUlJO0FBK2hSSjtBQWxpUkk7RUFDSTtBQW9pUlI7QUFqaVJJO0VBQ0k7QUFtaVJSOztBQS9oUkE7RUFDSTtBQWtpUko7O0FBL2hSQTtFQUNJO0FBa2lSSjs7QUEvaFJBO0VBQ0k7QUFraVJKOztBQWhpUkE7RUFDSTtFQUNBO0FBbWlSSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9kaWFsb2cuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FqYXgtY2FyZC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvZW1wbGVhZG9zLWJ1bGstYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXVzZW5jaWFzLWNhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jYWxlbmRhci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY2FsZW5kYXItdmlldy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvaW5kaWNhZG9yZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2NhbGVuZGFyaW8tYWN0aXZpZGFkZXMtZW1wbGVhZG8uc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2ZwX3N2Zy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29sb3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2RhdGVwaWNrZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2RhdGV0aW1lLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9kdWFsLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9lZGl0b3ItZm9tdWxhcmlvcy1ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9lZGl0b3ItZm9ybXVsYXJpb3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2VkaXRvci1mb3JtdWxhcmlvcy1maWVsZC1jb25maWd1cmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2VkaXRvci1mb3JtdWxhcmlvcy1maWVsZC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvZWRpdG9yLWZvcm11bGFyaW9zLXNpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2VtcGxlYWRvLWRldGFsbGUtY2hlY2Fkb3Jlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdWJpY2FjaW9uZXMtZW1wbGVhZG8tcGxhbnRhLWNvbnRyb2xsZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2VvLWNvbnRyb2xsZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2ZjbS1jb250cm9sbGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9maWxlLXR5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2hvcmFyaW8tdHlwZS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvaW50ZXJhY3RpdmUtYWdlbmRhcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGltZWxpbmUtY29udHJvbGxlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvanNvbmVkaXRvci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tYXBhX3ViaWNhY2lvbmVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tYXF1aWxhLW5vbWluYS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbW9uZXktY2VsbC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbW9uaXRvci12aWdpbGFuY2lhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tdWx0aS1lbnRpdHktZm9ybS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbXVsdGl2aWV3LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9yZXBvcnRlLWJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbmF2ZWdhZG9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9vcmdhbmlncmFtYS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvcHJvY2Vzcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2FwYm8tbXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3NlYXJjaGFibGUtc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zaG9ydGN1dC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2lkZWJhci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGV4dC10cnVuY2F0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RpbWUtY29udHJvbGxlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdG9wYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy91bmlkYWQtY2FyZC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdmlzaXRhLWNwLWZvcm11bGFyaW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3Zpc2l0YW50ZS1jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy90b2tlbnMubW9kdWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvY29sb3JzLm1vZHVsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL3R5cG9ncmFwaHkubW9kdWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvdGhlbWUubGlnaHQubW9kdWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvdGhlbWUuZGFyay5tb2R1bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdGhlbWVfdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2NvbG9yLWNsYXNzZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2dsb2JhbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY29sbGVjdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19iYWRnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9faWNvbnMtbWF0ZXJpYWwtZGVzaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdG9hc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY29sbGFwc2libGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY2hpcHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fbWF0ZXJpYWxib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9faW5wdXQtZmllbGRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3JhZGlvLWJ1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fY2hlY2tib3hlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19zd2l0Y2hlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fZmlsZS1pbnB1dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19yYW5nZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190YWJsZV9vZl9jb250ZW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19zaWRlbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3ByZWxvYWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdGFwVGFyZ2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3B1bHNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2RhdGVwaWNrZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdGltZXBpY2tlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdmlzaXRhLXJlc3VtZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3Zpc2l0YW50ZS1yZXN1bWVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy91bmlkYWQtcmVzdW1lbi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGltZWxpbmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2N1bXBsZWFub3MtaXRlbS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi5tb2RhbC5kaWFsb2cge1xuICAgIG1pbi1oZWlnaHQ6IDIzNnB4O1xuICAgICY6bm90KC5tb2RhbC1iaWcpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLm1vZGFsLWJpZ3tcbiAgICAgICAgaW1nLmNvbnRlbnQtaW1hZ2V7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MnB4O1xuICAgIH1cbiAgICBcbiAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMThweCAyNHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogbGFyZ2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICB9XG5cbiAgICAmLmVycm9yIHsgXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWJlZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZjQ0MzM2O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZjZGQyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYud2FybmluZyB7IFxuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY4ZTE7XG4gICAgICAgICAgICBjb2xvcjogI2ZmYzEwNztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZWNiMztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmluZm8geyBcbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlYWY2O1xuICAgICAgICAgICAgY29sb3I6ICMzZjUxYjU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNjNWNhZTk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zdWNjZXNzIHsgXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZjJmMSA7XG4gICAgICAgICAgICBjb2xvcjogIzAwOTY4OCA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNiMmRmZGIgO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5hamF4LWNhcmQge1xuICAgIC53aGl0ZS1zcGFjZSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgfVxuICAgIC5hamF4LWNhcmQtZXJyb3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0cmFuc2l0aW9uOiAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAuZXJybm8sIC5lcnIge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5lcnJubyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmY1NTAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbn0iLCIuZW1wbGVhZG9zLWJ1bGstYWN0aW9ucy1lbGVtZW50IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA0NSU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbik7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtIDAgMCAwLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4zcztcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIHJpZ2h0OiAtNzBweDtcbiAgICB9XHRcblxuICAgICY6aG92ZXIge1xuICAgICAgICB3aWR0aDogODVweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWNvbnRhaW5lcik7XG4gICAgfVxufSIsIi5kZXNjYW5zby1ldmVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTWF0ZXJpYWxTeW1ib2xzU2hhcnBcIiAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG4gICAgJi5QZXJtaXNvIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwidGFza19hbHRcIjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuVmFjYWNpb25lcyB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcImtheWFraW5nXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLkluY2FwYWNpZGFkIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwibWVkaWNhbF9zZXJ2aWNlc1wiO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuSnVzdGlmaWNhY2nDs24ge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJkZXNjcmlwdGlvblwiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZjLWV2ZW50LXRpdGxlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgfVxufSIsIi5jYWxlbmRhci1jb250YWluZXIge1xuICAgIC5jYWxlbmRhciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMC41ZnIgcmVwZWF0KDUsIDFmcik7XG4gICAgICAgIHJvdy1nYXA6IDVweDtcbiAgICAgICAgY29sdW1uLWdhcDogNXB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgLnNsb3Qge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlYWFhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5oZWFkZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2FhYWVlZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhZWVlYWE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhYWVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgcGFkZGluZzogMTBweCA1cHggIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC5pbnB1dC1maWVsZDpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5jYWxlbmRhci12aWV3IHtcbiAgICBwYWRkaW5nOiAwIDI0cHggOHB4IDI0cHg7IFxuICAgIC5jYWxlbmRhci1jb250ZW50IHtcbiAgICAgICAgbWluLWhlaWdodDogNjV2aDtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KTtcbiAgICB9XG4gICAgLml0aW5lcmFyaW8tY2FyZCB7XG4gICAgICAgIC5mYy1ldmVudC1tYWluIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAtLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZ3JhbWFkYSB7XG4gICAgICAgIGNvbG9yOiAjZmZjYTI4O1xuICAgIH1cbiAgICAuYWJpZXJ0YSB7XG4gICAgICAgIGNvbG9yOiAjMjZhNjlhO1xuICAgIH1cbiAgICAuY2VycmFkYSB7XG4gICAgICAgIGNvbG9yOiAjZWY1MzUwO1xuICAgIH1cbiAgICBcblxuICAgIC50aW1lIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjVhYTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB9XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufSIsIkBwcm9wZXJ0eSAtLXBvcmNlbnRhamUge1xuICAgIHN5bnRheDogXCI8cGVyY2VudGFnZT5cIjtcbiAgICBpbmhlcml0czogZmFsc2U7XG4gICAgaW5pdGlhbC12YWx1ZTogMCU7XG59XG4uZXN0YWRpc3RpY2FzLWFzaXN0ZW5jaWEge1xuICAgIC5pbmRpY2Fkb3Ige1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMC41cmVtIDA7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICAtLXBvcmNlbnRhamU6IDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBjb25pYy1ncmFkaWVudCh2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSkgdmFyKC0tcG9yY2VudGFqZSksIHZhcigtLWJhY2tncm91bmQtY29sb3ItY2FyZCkgMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAtLXBvcmNlbnRhamUgZWFzZS1pbi1vdXQgMC41cztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAuZGlzcGxheSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50b3RhbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn0iLCIuY2FsZW5kYXJpby1hY3RpdmlkYWRlcy1lbXBsZWFkbyB7XG4gICAgLmZjLWRheWdyaWQtZGF5LXRvcCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLmRheS1jZWxsLWljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb250YWluZXItY29sb3IpO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ZC5mYy1kYXkge1xuICAgICAgICAmOm5vdCg6aGFzKC5kYXktY2VsbC1pY29uKSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgICAgfVxuICAgICAgICAmOm5vdCguZGF5LXNlbGVjdGVkKTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZjLWRheS10b2RheSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUwYjIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZGF5LXNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IzZTVmYyAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmRldGFsbGUtZGlhIHtcbiAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuICAgIC5kYXRhIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cblxuICAgIC5hY3Rpb24ge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgfVxufSIsInN2ZyBnLmZpbmdlciB7XG4gICAgJi5zZWxlY3RlZC5hY3RpdmUuaGFzLWZpbmdlcnByaW50IHBhdGgge1xuICAgICAgICBmaWxsOiAjZmZjZGQyICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCBwYXRoIHtcbiAgICAgICAgZmlsbDogI2IyZGZkYjtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSBwYXRoIHtcbiAgICAgICAgZmlsbDogI2IzZTVmYztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuYWN0aXZlLnNlbGVjdGVkIHBhdGgge1xuICAgICAgICBmaWxsOiAjZmZjZGQyO1xuICAgIH1cblxuICAgICYuYWN0aXZlLnNlbGVjdGVkOmhvdmVyIHBhdGgge1xuICAgICAgICBmaWxsOiAjY2Y5ZWEzICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoLnNlbGVjdGVkKTpub3QoLmFjdGl2ZSkgcGF0aCB7XG4gICAgICAgIGZpbGw6ICNlZWVlZWU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLnNlbGVjdGVkOmhvdmVyIHBhdGgge1xuICAgICAgICBmaWxsOiAjOGNiNmIyICFpbXBvcnRhbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59IiwiW2RhdGEtY29udHJvbGxlcj0nY29sb3InXSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn0iLCIuZGF0ZXBpY2tlci1jb250YWluZXIge1xuICAgIC5kYXRlcGlja2VyLWNvbnRyb2xzIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICB9XG59IiwiLmRhdGV0aW1lLXJhbmdlIHtcbiAgICBcbn1cbi5kYXRldGltZS1yYW5nZS1kcm9wZG93biB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mbGV4IHtcbiAgICAgICAgLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQG1peGluIHNwbGl0LXJ1bGVzKCRzZWxlY3Rvcikge1xuICAgIEBlYWNoICRjb21wbGV4IGluIHNlbGVjdG9yLXBhcnNlKCRzZWxlY3Rvcikge1xuICAgICAgICAjeyRjb21wbGV4fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5yYW5nZV9jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgLmJ1YmJsZSwgI2luaSwgI2ZpbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZXJzX2NvbnRyb2wge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPXJhbmdlXSB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgXG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgc3BsaXQtcnVsZXMoXCJpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10aHVtYiwgaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXRodW1iXCIpIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIC50cmFjayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktY29sb3ItaG92ZXItc29saWQpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgIH1cblxuICAgIC50aWNrcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgXG4gICAgICAgIC50aWNrIHtcbiAgICAgICAgICAgIC0tdGljay12YWx1ZTogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktY29sb3ItaG92ZXItc29saWQpO1xuICAgICAgICAgICAgJi5taWQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZGF5LWJlZ2luIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmNTM1MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idWJibGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IHZhcigtLWJ1YmJsZS1wb3NpdGlvbik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgdG9wOiAtNXB4O1xuICAgIH1cbn1cbiAgXG4iLCIuZWRpdG9yLWZvbXVsYXJpb3MtZ3JpZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAmOm5vdCguZW1wdHkpIHtcbiAgICAgICAgaGVpZ2h0OiBtYXgtY29udGVudDtcbiAgICB9XG4gICAgJi5lbXB0eTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnQXJyYXN0cmEgdW4gY2FtcG8gcGFyYSBlbXBlemFyIGEgZWRpdGFyJztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwNzc7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxufSIsIi5lZGl0b3ItZm9ybXVsYXJpb3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLmVkaXRvci1mb3JtdWxhcmlvcy1zdGF0dXMge1xuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICB9XG59IiwiLmVkaXRvci1mb3JtdWxhcmlvcy1maWVsZC1jb25maWd1cmUge1xuICAgIG1pbi1oZWlnaHQ6IDU2cHg7XG4gICAgLmVmZmMtZHJvcGRvd24ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAuaW5wdXQtZmllbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5vcHRpb25zIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjdyZW07XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmVkaXRvci1mb3JtdWxhcmlvcy1maWVsZCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDAuMnM7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAuaWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuICAgIC5ncmFiIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgfVxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMjgpLCAwIDZweCAycHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMjQpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIH1cbiAgICA6YWN0aXZlIHtcbiAgICAgICAgY3Vyc29yOiBncmFiYmluZztcbiAgICB9XG59IiwiLmVkaXRvci1mb3JtdWxhcmlvcy1zaWRlYmFyIHtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xufSIsIi5jaGVjYWRvci1jb250YWluZXIge1xuICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICB3aWR0aDogMTUlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgJi5lbXBsZWFkby1pbi1pdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlM2YyZmQgO1xuICAgIH1cblxuICAgICY6bm90KC5lbXBsZWFkby1pbi1pdCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIH1cblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiO1xuICAgIH1cblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1mYy1ib3JkZXItY29sb3IpO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBwYWRkaW5nOiA1cHggMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIucmVzdWx0YWRvcyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDFyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5lbXBsZWFkby1wbGFudGEge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAmLmluLXViaWNhY2lvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhlNmM5OyAvKiBMaWdodCBncmVlbiAqL1xuICAgICAgICB9XG4gICAgICAgIC5zbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTZweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubm9kZSB7XG4gICAgLS1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3IpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBjb2xvcjogI2VlZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJi5ub24tZW1wbGVhZG8ge1xuICAgICAgICAuaGMge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGQtYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmVtcGxlYWRvIHtcbiAgICAgICAgLnBwIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgNnB4IHZhcigtLWNvbG9yKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuZGF0YSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgIC5ub21icmUge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uZW8tY29udHJvbGxlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA2NXB4KTtcbiAgICAuZmlsdGVycy1jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpbmsge1xuICAgICAgICBzdHJva2U6ICM0NDQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmRpYWdyYW0ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnRvYXN0Lm5vdGlmaWNhdGlvbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgLm5vdGlmLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC41cmVtIDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vdGlmLWJvZHkge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufSIsIi5maWxlLXR5cGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgaGVpZ2h0OiA1NnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAubWVzc2FnZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmljb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1maWxlXSB7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICAmLmhpZ2hsaWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICBjb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgfVxuICAgICYuZHJvcHBlZCB7XG4gICAgICAgIC5pY29uLCAubWVzc2FnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50aHVtYm5haWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICAuY2xlYXIge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IE1hdGVyaWFsU3ltYm9sc1NoYXJwO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmhvcmFyaW8tdHlwZSB7XG4gICAgLmhvcmFyaW8tdHlwZS1ib2R5IHtcbiAgICAgICAgLmhvcmFyaW8tdHlwZS1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAudGwge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sYWJvcmFsIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIiRwYW5lbFc6IDQ1MHB4O1xuLmludGVyYWN0aXZlLWFnZW5kYXMtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gNjRweCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmZjLXRvb2xiYXItdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICB0b3A6IDEzcHg7XG4gICAgICAgIHotaW5kZXg6IDE1O1xuXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBsZWZ0OiBtaW4oJHBhbmVsVyAtIDU2cHgsIDEwMHZ3IC0gNTZweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgLnNlYXJjaC1iYXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA1NnB4O1xuICAgIH1cbiAgICAucGFuZWwge1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICB3aWR0aDogbWluKCRwYW5lbFcsIDEwMCUpO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9maWxlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIGRpdltkYXRhLXByb3BlcnR5PVwibm9tYnJlQ29tcGxldG9cIl0ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYWxlbmRhci1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuXG4gICAgICAgICAgICAuZmMtaGVhZGVyLXRvb2xiYXIgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtdG9vbGJhci10aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtaGlnaGxpZ2h0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZGVzdGluYXRpb25zLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1hcC1jb250YWluZXIge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuZGV0YWxsZS11YmljYWNpb24tY29udGFpbmVyIHsgXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAudGl0bGV7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAudWJpY2FjaW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICBnYXA6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAwIDEwcHg7XG4gICAgICAgICAgICBzcGFuOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdlb2xvZy1wb3B1cCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTk7XG4gICAgICAgIGJvdHRvbTogMnJlbTtcbiAgICAgICAgcmlnaHQ6IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICM0NDQ0NDRlZTtcbiAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuXG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgJi5oaWRkZW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aW1lbGluZS1jb250cm9sbGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6ICRwYW5lbFc7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICRwYW5lbFcgLSAxNXB4KTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgbWFyZ2luOiA1cHg7XG4gICAgfVxufSIsIiR0aW1lbGluZVRvb2xiYXJIZWlnaHQ6IDI1cHg7XG4udGltZWxpbmUtY29udHJvbGxlciB7XG4gICAgLy8gcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcblxuICAgIC50aW1lbGluZS10aWNrcy1jb250YWluZXIge1xuICAgICAgICAtLXBpeGVscy1wZXItc2Vjb25kOiAxMHB4O1xuICAgICAgICAtLXBpeGVscy1wZXItbWludXRlOiA2MDBweDtcbiAgICAgICAgLS1waXhlbHMtcGVyLWhvdXI6IDM2MDAwcHg7XG4gICAgICAgIC0tdGltZS10aWtzLXdpZHRoOiAycHg7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IFxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGJsdWUgdmFyKC0tdGltZS10aWtzLXdpZHRoKSxcbiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCB2YXIoLS10aW1lLXRpa3Mtd2lkdGgpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGdyZWVuIHZhcigtLXRpbWUtdGlrcy13aWR0aCksXG4gICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgdmFyKC0tdGltZS10aWtzLXdpZHRoKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICB0byByaWdodCxcbiAgICAgICAgICAgICAgICByZWQgdmFyKC0tdGltZS10aWtzLXdpZHRoKSxcbiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCB2YXIoLS10aW1lLXRpa3Mtd2lkdGgpXG4gICAgICAgICAgICApLCBcbiAgICAgICAgO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IFxuICAgICAgICAgICAgdmFyKC0tcGl4ZWxzLXBlci1ob3VyKSAxMDAlLCBcbiAgICAgICAgICAgIHZhcigtLXBpeGVscy1wZXItbWludXRlKSAxMDAlLFxuICAgICAgICAgICAgdmFyKC0tcGl4ZWxzLXBlci1zZWNvbmQpIDEwMCUsIFxuICAgICAgICA7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBcbiAgICAgICAgICAgIHJlcGVhdC14LCBcbiAgICAgICAgICAgIHJlcGVhdC14LFxuICAgICAgICAgICAgcmVwZWF0LXhcbiAgICAgICAgO1xuICAgIH1cblxuICAgIC50aW1lbGluZS10b29sYmFyIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnRpbWVsaW5lLXRvb2xiYXItbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDZwdDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCAjNDQ0IHNvbGlkO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgMnB4O1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIG1heC13aWR0aDogODBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAudGltZWxpbmUtZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC50aW1lbGluZS1ldmVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gICAgICAgICYudGltZWxpbmUtZXZlbnQtcG9pbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGltZWxpbmUtY29udHJvbHMtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgIGhlaWdodDogJHRpbWVsaW5lVG9vbGJhckhlaWdodDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuZ29ydy0xIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC56b29tIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICBib3JkZXI6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4udGltZWxpbmUtdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgY29sb3I6ICNlZWU7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHotaW5kZXg6IDEwMDA7IFxufVxuXG4iLCIuanNvbi1lZGl0b3ItY29udGFpbmVyIHtcbiAgICAuaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuanNvbi1lZGl0b3Ige1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgLmpzb24tZWRpdG9yIHtcbiAgICAgICAgICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubWFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAuYnVzY2Fkb3Ige1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAyNTBtcztcbiAgICAgICAgJi5mb2N1c2VkIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnN1ZmZpeCB7XG4gICAgICAgICAgICB0b3A6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZGVzdGlub3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA0NXB4KTtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICAuZGVzdGlubyB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggI2FhYSBzb2xpZDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5tYXAtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICAuc3dpdGNoLWxheWVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAuc3dpdGNoLWFjdGlvbi1tb2RlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJj5pbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDQwJTtcbiAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxufSIsIi5tdWMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDY0cHgpO1xuXG4gICAgLm11Yy1sYXRlcmFsLXBhbmVsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNDQ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm11Yy1tYXBhIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmN1cnJlbnQtbG9jYXRpb24tYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDRyZW07XG4gICAgICAgIHJpZ2h0OiAycmVtO1xuICAgIH1cbn0iLCIubWFxdWlsYS1ub21pbmEtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gNjRweCkgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgc2Nyb2xsLXBhZGRpbmctdG9wOiAyMDBweDtcblxuICAuaGVhZGVyIHtcbiAgICB3cml0aW5nLW1vZGU6IHNpZGV3YXlzLWxyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5qZXhjZWwgdGhlYWQge1xuICAgIHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2VlZTtcbiAgICAgIGJvcmRlci1sZWZ0OiAjYWFhIHNvbGlkIDFweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAjYWFhIHNvbGlkIDFweCAhaW1wb3J0YW50O1xuICAgICAgJi5hcnJvdy1kb3duIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAn4pa8JztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmFycm93LXVwIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAn4payJztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAuamV4Y2VsIHRib2R5IHtcbiAgICB0ZC5yZWFkb25seSB7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAmLC5qZXhjZWxfcm93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRTlGMSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmpleGNlbF9yb3cuc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDZDOUUwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAucGVyY2VwY2lvbmVzIHsgXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGYyZjEgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5kZWR1Y2Npb25lcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmViZWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC50b3RhbC1wZXJjZXBjaW9uZXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODBjYmM0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAudG90YWwtZGVkdWNjaW9uZXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWY5YTlhICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC50b3RhbC1wZXJjZXBjaW9uZXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZGZkYiAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvdGFsLWRlZHVjY2lvbmVzIHsgXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjZGQyICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ubWFxdWlsYS1ub21pbmEtc2VhcmNoLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAzNTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDc4cHg7XG4gIGxlZnQ6IDI1MHB4O1xuICB6LWluZGV4OiAxMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA0MDQwO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGNvbG9yOiAjZWVlICFpbXBvcnRhbnQ7XG4gIH1cbn0iLCIubW9uZXktY2VsbCB7XG4gICAgdGV4dC1hbGlnbjogZW5kO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyQnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufSIsIi5tb25pdG9yLXZpZ2lsYW5jaWEge1xuICAgIC5sZWZ0LXBhbmVsLCAucmlnaHQtcGFuZWwsIC5kYXRhPi5yb3csIC5sb2cge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5kYXRhIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMDRweCk7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBnYXA6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRlbnRybywgLmZ1ZXJhIHtcbiAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgfVxuICAgIC5kZW50cm8sIC5mdWVyYSwgLmxvZyB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgfVxuICAgIC5jb2w+LmNhcmQge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gMTQwcHgpO1xuICAgIH1cbiAgICAuZGVudHJvIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICNkZGQgc29saWQ7XG4gICAgfVxuICAgIC5sb2cge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4ICNkZGQgc29saWQ7XG4gICAgfVxufSIsIi5tdWx0aS1lbnRpdHktZm9ybSB7XG4gICAgbWluLWhlaWdodDogNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgLm5vLWRhdGEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAwIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAwIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5sYWJlbCB7XG4gICAgICAgIHRvcDogLThweDtcbiAgICAgICAgbGVmdDogMTZweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gICAgLmxpbmVzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgLmxpbmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAxcmVtIDEuNXJlbTtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZWxldGUtbGluZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTM1JSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyMnIGF0dHIoZGF0YS1saW5lLW51bWJlcik7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zNSUpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dC5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEodmFyKC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2UpLCAwLjcwKTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2UpLCAwLjMwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAwMDAsIDAuMDMpO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hZGQtbGluZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG4gICAgfVxuICAgIC5zZWFyY2gge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDRyZW07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgIH1cbiAgICAuYWxlcnQge1xuICAgICAgICBhbmltYXRpb246IHNoYWtlIDAuN3MgY3ViaWMtYmV6aWVyKDAuMzYsIDAuMDcsIDAuMTksIDAuOTcpIGJvdGg7XG4gICAgfVxufVxuLnNlYXJjaE1vZGFsIHtcbiAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnNlYXJjaC1jbGVhciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIC5saW5lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2VlZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2VlZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG4gICAgMTAlLCA5MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xcHgsIDAsIDApO1xuICAgIH1cblxuICAgIDIwJSwgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgycHgsIDAsIDApO1xuICAgIH1cblxuICAgIDMwJSwgNTAlLCA3MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC00cHgsIDAsIDApO1xuICAgIH1cblxuICAgIDQwJSwgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg0cHgsIDAsIDApO1xuICAgIH1cbn0iLCIubXVsdGl2aWV3IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbXVsdGl2aWV3LXRpdGxlLXZhbHVlKTtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW46IDFyZW0gMnJlbSAwIDJyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuY2FyZC1hY3Rpb24ge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICY+ICo6bm90KGJ1dHRvbikge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgfVxuICAgICAgICAuaW5wdXQtZmllbGQge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI211bHRpdmlldy1wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zdWZmaXg6aGFzKCsgLmZpbHRlcklucHV0OnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHRib2R5IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgICB0ciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICB9XG5cbiAgICB0ZC5oaWdobGlnaHRlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lcik7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICB9XG5cbiAgICB0ZC5wcmV2LWhpZ2hsaWdodGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWRhcmspO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnkpO1xuICAgIH1cblxuICAgIHRoLnNvcnRhYmxlIHtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwic29ydF9ieV9hbHBoYVwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbFN5bWJvbHNTaGFycCc7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG4gICAgICAgICYuYXNjOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcImFycm93X2Ryb3BfZG93blwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbFN5bWJvbHNTaGFycCc7XG4gICAgICAgIH1cbiAgICAgICAgJi5kZXNjOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcImFycm93X2Ryb3BfdXBcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWxTeW1ib2xzU2hhcnAnO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ncmlkLXZpZXcge1xuICAgICAgICBncmlkLWF1dG8tcm93czogMWZyO1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHggOHB4IDI0cHg7XG4gICAgfVxuICAgIC5jYXJkLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiA1cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1N3B4KTtcbiAgICB9XG4gICAgLmNhcmQtZmlsdGVycyB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5tdWx0aXNlbGVjdC1jaGVja2JveCB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1vbi1zdXJmYWNlKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJjaGVja1wiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbFN5bWJvbHNTaGFycCc7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgfVxuICAgICAgICAmLmNoZWNrZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSA6OmJlZm9yZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXVsdGl2aWV3LWZvY3VzLXN0YXRzIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICAgIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeSk7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICYuaGlkZGVuIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBkaXYge1xuICAgICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgIH1cblxuICAgIHNwYW4udGFiIHtcbiAgICAgICAgXG4gICAgfVxufSIsIi5yZXBvcnRlLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC0tc2lkZS1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaWRlLWNvbG9yKTtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGUtY29sb3IpO1xuICAgICAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmRmZGY7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGZvbnQtc2l6ZTogbGFyZ2VyO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICBsZWZ0OiA1cmVtO1xuICAgIH1cbn1cbiIsIi5uYXZlZ2Fkb3Ige1xuICAgIC5wYWdlIHtcbiAgICAgICAgJi5mYWRlSW4ge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gNTAwbXMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gICAgICAgIH1cbiAgICAgICAgJi5mYWRlT3V0IHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZU91dCA1MDBtcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLm5vLWFuaW1hdGlvbnMge1xuICAgICAgICAucGFnZSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn0iLCIub3JnYW5pZ3JhbWEtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA2NHB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2FyZDpoYXMoW2RhdGEtb3JnYW5pZ3JhbWEtdGFyZ2V0PVwiZmlsdHJvc1wiXSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygxMDAlIC0gNXJlbSkpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5wcm9jZXNzLXBhcmVudCB7XG4gICAgbWFyZ2luOiAwIDJyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAucHJvY2Vzcy1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAucHJvZ3Jlc3Mge1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuaW5kaWNhdG9yIHtcbiAgICAgICAgICAgIC0tbGVmdDogNjAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogdmFyKC0tbGVmdCk7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS12YXJpYW50KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJi5jb21wbGV0ZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLWNhcmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvY2Vzcy10YXJnZXRzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnByb2Nlc3MtdGFyZ2V0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgJi5lbnRlci1sZWZ0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBlbnRlckxlZnRBbmltYXRpb24gMjUwbXMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gICAgICAgIH1cbiAgICAgICAgJi5lbnRlci1yaWdodCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZW50ZXJSaWdodEFuaW1hdGlvbiAyNTBtcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgICAgICAmLmV4aXQtbGVmdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZXhpdExlZnRBbmltYXRpb24gMjUwbXMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gICAgICAgIH1cbiAgICAgICAgJi5leGl0LXJpZ2h0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBleGl0UmlnaHRBbmltYXRpb24gMjUwbXMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZW50ZXJMZWZ0QW5pbWF0aW9uIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZXhpdExlZnRBbmltYXRpb24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGVudGVyUmlnaHRBbmltYXRpb24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGV4aXRSaWdodEFuaW1hdGlvbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxufSIsIi5zYXBiMS1tdWx0aXZpZXcge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwIDFyZW07XG59XG4uc2hvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktaXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgc2VsZWN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIH1cbn0iLCIuc2VhcmNoYWJsZS1zZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuZmFrZS1zZWxlY3Qge1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAuY2FycmV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogYXV0byAwO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBmaWxsOiB2YXIoLS1mb250LWNvbG9yLW1haW4pO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG59XG4uc2VhcmNoYWJsZS1zZWxlY3QtZHJvcGRvd24ge1xuICAgIC5zZWFyY2gge1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDE2cHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5zZWxlY3RlZDpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mb2N1cy1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLCAmLmZvY3VzZWQsICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXItY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1czo6YWZ0ZXIsICYuZm9jdXNlZDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59IiwiI3Nob3J0Y3V0LXRyaWdnZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDM1cHg7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIC5idG4ge1xuICAgICAgICBwYWRkaW5nOiAwIDNweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgIH1cbn1cblxuI3Nob3J0Y3V0LW1vZGFsIHtcbiAgICAuaW5wdXQtZmllbGQgaW5wdXQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnNob3J0Y3V0LWNhcmQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgLmRhdGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAudGl0dWxvIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIyMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiAjZWVlO1xuICAgICAgICAgICAgLnRpdHVsbyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1wZXJzb25hdGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZWVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgICAgICAudGl0dWxvIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCAjYWFhIHNvbGlkO1xuICAgICAgICB9XG4gICAgfVxufSIsIjpyb290IHtcbiAgICAtLXNpZGViYXItY29sbGFwc2VkLXdpZHRoOiA2MHB4O1xuICAgIC0tc2lkZWJhci1leHBhbmRlZC13aWR0aDogMjAwcHg7XG4gICAgLS1zaWRlYmFyLWJhY2tncm91bmQtY29sb3I6ICMyMjIyMzM7XG4gICAgLS1zaWRlYmFyLXRleHQtY29sb3I6ICNlZWU7XG4gICAgLS1zaWRlYmFyLWhvdmVyLXRleHQtY29sb3I6ICNCMkI4RjA7XG59XG4uc2lkZWJhciB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogdmFyKC0tc2lkZWJhci1leHBhbmRlZC13aWR0aCk7XG4gICAgaGVpZ2h0OiAxMDBzdmg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGNvbG9yOiB2YXIoLS1zaWRlYmFyLXRleHQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGViYXItYmFja2dyb3VuZC1jb2xvcik7XG4gICAgJi5jb2xsYXBzZWQge1xuICAgICAgICB3aWR0aDogdmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpO1xuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIH1cbiAgICAgICAgbGkubGluayBhIC50ZXh0IHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29sbGFwc2libGUtaGVhZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXNpZ2xhcyk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNpZGViYXItdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29sbGFwc2libGUtYm9keSB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbGxhcHNpYmxle1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAuY29sbGFwc2libGUtaGVhZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbGxhcHNpYmxlLWJvZHkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6IHdoaXRlLCAkYWxwaGE6IDAuMDMpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGViYXItdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgICAgICAgICB0b3A6IC04cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jbG9zZWQge1xuICAgICAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBsaS5oZWFkZXIge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNpZGViYXItdGV4dC1jb2xvcilcbiAgICAgICAgfVxuICAgIH1cbiAgICBsaS5saW5rIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci10ZXh0LWNvbG9yKTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1ob3Zlci10ZXh0LWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpLmxpbmsuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzM0NDtcbiAgICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVx0XG59XG5cbiNzaWRlYmFyLXRvZ2dsZSB7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxubWFpbiB7XG4gICAgdHJhbnNpdGlvbjogMjUwbXMgZWFzZS1pbi1vdXQgYWxsO1xufVxubWFpbi5zaWRlYmFyLWNvbGxhcHNlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNpZGViYXItY29sbGFwc2VkLXdpZHRoKTtcbn1cbm1haW4uc2lkZWJhci1leHBhbmRlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNpZGViYXItZXhwYW5kZWQtd2lkdGgpO1xufVxubWFpbi5zaWRlYmFyLWNsb3NlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59IiwiLnRleHQtdHJ1bmNhdG9yIHtcbiAgICAtLW1heC13aWR0aDogMTUwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjdXJzb3I6IGhlbHA7XG59IiwiLnRpbWUtY29udHJvbGxlciB7XG4gICAgLnRvZ2dsZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufSIsIjpyb290IHtcbiAgICAtLXRvcGJhci1iYWNrZ3JvdW5kLWNvbG9yOiAjMzYzNjUyO1xufVxuLnRvcGJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdG9wYmFyLWJhY2tncm91bmQtY29sb3IpO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgY29sb3I6ICNhYWFhYWE7XG4gICAgfVxuICAgIC5icmVhZGNydW1icyB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMCAwO1xuICAgIH1cbn0iLCIudW5pZGFkLWNhcmQge1xuICAgIC5jYXJkLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubW9kZWxvLCAudGlwbyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtKTtcbiAgICAgICAgfSAgIFxuICAgIH1cbiAgICAubGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbik7XG4gICAgfVxufSIsIi52aXNpdGEtY3AtZm9ybXVsYXJpbyB7XG4gICAgI25pbmd1blZpc2l0YW50ZSwgI25pbmd1bmFVbmlkYWQge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICNub1BlcnNvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAjYnVzY2FyLXZpc2l0YW50ZSwgI2J1c2Nhci11bmlkYWQge1xuICAgICAgICBtaW4td2lkdGg6IDcwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1heC1jb250ZW50O1xuICAgICAgICB9XG4gICAgICAgIC5tZXNzYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgfVxuICAgICAgICAubW9kYWwtc2VhcmNoIHtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZWxldGUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgI3JlZ2lzdHJhci12aXNpdGFudGUge1xuICAgICAgICBcbiAgICB9XG59IiwiJGltZ1NpemU6IDEyMHB4O1xuLnZpc2l0YW50ZS1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAkaW1nU2l6ZSArIDIwcHg7XG4gICAgei1pbmRleDogMjtcbiAgICAuaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogJGltZ1NpemU7XG4gICAgICAgIGhlaWdodDogJGltZ1NpemU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGltZ1NpemUgKiAwLjY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAkaW1nU2l6ZS8yKTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgJjpub3QoLmRvYy1pbmRpY2F0b3Ipe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwIDhweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlcGFyYXRvciB7XG4gICAgICAgIGJvcmRlci10b3A6ICNkZGQgMXB4IHNvbGlkO1xuICAgIH1cbiAgICAmLndpZ2dsZSB7XG4gICAgICAgIGFuaW1hdGlvbjogd2lnZ2xlIDcwMG1zO1xuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAyO1xuICAgIH1cbiAgICAuZG9jLWluZGljYXRvciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDhweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgd2lnZ2xlIHtcbiAgICAxMCUsIDkwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTFweCwgMCwgMCk7IH1cbiAgICAyMCUsIDgwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTsgfVxuICAgIDMwJSwgNTAlLCA3MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC00cHgsIDAsIDApOyB9XG4gICAgNDAlLCA2MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDRweCwgMCwgMCk7IH1cbn0iLCJAaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL21hdGVyaWFsaXplLnNjc3NcIjtcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvZmxhZy1pY29ucy9jc3MvZmxhZy1pY29ucy5jc3NcIjtcbkBpbXBvcnQgXCJ2aXNpdGEtcmVzdW1lbi5zY3NzXCI7XG5AaW1wb3J0IFwidmlzaXRhbnRlLXJlc3VtZW4uc2Nzc1wiO1xuQGltcG9ydCBcInVuaWRhZC1yZXN1bWVuLnNjc3NcIjtcbkBpbXBvcnQgXCJ0aW1lbGluZS5zY3NzXCI7XG5AaW1wb3J0IFwiY3VtcGxlYW5vcy1pdGVtLnNjc3NcIjtcblxuLmxvZ2luLWxvZ28ge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1hdGVyaWFsU3ltYm9sc1NoYXJwXCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvTWF0ZXJpYWxTeW1ib2xzU2hhcnAud29mZlwiKSBmb3JtYXQoJ3dvZmYnKTtcbn1cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1hdGVyaWFsU3ltYm9sc0ZpbGxlZFwiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvTWF0ZXJpYWxTeW1ib2xzU2hhcnAud29mZlwiKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczpcbiAgICAgICAgJ0ZJTEwnIDEsXG4gICAgICAgICd3Z2h0JyA0MDAsXG4gICAgICAgICdHUkFEJyAwLFxuICAgICAgICAnb3BzeicgMjRcbiAgICA7XG59XG5cbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xufVxuXG4udGV4dC1vbi1wcmltYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4pO1xufVxuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yLWRhcmspO1xuICAgIH1cbn1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsU3ltYm9sc1NoYXJwJyAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpcmVjdGlvbjogbHRyO1xufVxuXG4ucm93IHtcbiAgICBnYXA6IDFyZW07XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi5tb2R1bGUge1xuICAgIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jYXJkLmhvcml6b250YWwucmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4uc3VyZmFjZSB7XG4gICAgLS1tZC1lbGV2YXRpb24tbGV2ZWw6IDM7XG59XG5cbmlucHV0OnJlcXVpcmVkK2xhYmVsOjpiZWZvcmUsXG5pbnB1dDpyZXF1aXJlZCtzcGFuOjpiZWZvcmUsXG50ZXh0YXJlYTpyZXF1aXJlZCtsYWJlbDo6YmVmb3JlLFxuLmlucHV0LWZpZWxkLnJlcXVpcmVkIGxhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiKiBcIjtcbiAgICBjb2xvcjogI2ZmNDQwMDtcbn1cblxuLmlucHV0LWZpZWxkLm91dGxpbmVkIGlucHV0OmZvY3VzOm5vdChbcmVhZG9ubHldKSArIGxhYmVsLCAuaW5wdXQtZmllbGQub3V0bGluZWQgaW5wdXQ6bm90KFtwbGFjZWhvbGRlcj1cIiBcIl0pICsgbGFiZWwsIC5pbnB1dC1maWVsZC5vdXRsaW5lZCBpbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSArIGxhYmVsLCAuaW5wdXQtZmllbGQub3V0bGluZWQgdGV4dGFyZWE6Zm9jdXM6bm90KFtyZWFkb25seV0pICsgbGFiZWwsIC5pbnB1dC1maWVsZC5vdXRsaW5lZCB0ZXh0YXJlYTpub3QoW3BsYWNlaG9sZGVyPVwiIFwiXSkgKyBsYWJlbCwgLmlucHV0LWZpZWxkLm91dGxpbmVkIHRleHRhcmVhOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgbGFiZWwge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuaW5wdXQ6ZGlzYWJsZWQrbGFiZWwsXG50ZXh0YXJlYTpkaXNhYmxlZCtsYWJlbCxcbnNlbGVjdDpkaXNhYmxlZCtsYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNyAhaW1wb3J0YW50O1xufVxuXG5cblxuLmNhcmQtYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICBidXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIH1cbn1cblxuYS5za2lwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZnVsbEgge1xuICAgIGhlaWdodDogMTAwc3ZoO1xuXG4gICAgLnJvdyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmxvYWRlciB7XG4gICAgbWFyZ2luOiA1cHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIC0tYzogbGluZWFyLWdyYWRpZW50KHZhcigtLXByaW1hcnktY29sb3IpIDAgMCk7XG4gICAgLS1tOiByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSwgdmFyKC0tcHJpbWFyeS1jb2xvcikgOTIlLCAjMDAwMCk7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgICAgdmFyKC0tYyksIHZhcigtLW0pLFxuICAgICAgICB2YXIoLS1jKSwgdmFyKC0tbSksXG4gICAgICAgIHZhcigtLWMpLCB2YXIoLS1tKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDhweCAxMnB4LCA4cHggOHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYW5pbWF0aW9uOiBsMTMgMXMgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGwxMyB7XG5cbiAgICAwJSxcbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAwIDEwMCUsIDUwJSAwLCA1MCUgMTAwJSwgMTAwJSAwLCAxMDAlIDEwMCVcbiAgICB9XG5cbiAgICAyMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGNhbGMoNTAlIC0gNnB4KSwgMCBjYWxjKDUwJSArIDRweCksIDUwJSAwLCA1MCUgMTAwJSwgMTAwJSAwLCAxMDAlIDEwMCVcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGNhbGMoNTAlIC0gNnB4KSwgMCBjYWxjKDUwJSArIDRweCksIDUwJSBjYWxjKDUwJSAtIDZweCksIDUwJSBjYWxjKDUwJSArIDRweCksIDEwMCUgMCwgMTAwJSAxMDAlXG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAwIDEwMCUsIDUwJSBjYWxjKDUwJSAtIDZweCksIDUwJSBjYWxjKDUwJSArIDRweCksIDEwMCUgY2FsYyg1MCUgLSA2cHgpLCAxMDAlIGNhbGMoNTAlICsgNHB4KVxuICAgIH1cblxuICAgIDgwJSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMCAxMDAlLCA1MCUgMCwgNTAlIDEwMCUsIDEwMCUgY2FsYyg1MCUgLSA2cHgpLCAxMDAlIGNhbGMoNTAlICsgNHB4KVxuICAgIH1cbn1cblxuLmxvYWRlci1jaXJjbGUge1xuICB3aWR0aDogMjVweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMjU1LCA2MSwgMCwgMC4yKSAzMyUsICNmZjNkMDAgMTAwJSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGFuaW1hdGlvbjogcm90YXRpb24gMXMgbGluZWFyIGluZmluaXRlO1xufVxuLmxvYWRlci1jaXJjbGU6OmFmdGVyIHtcbiAgY29udGVudDogJyc7ICBcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjMDA5Njg4O1xufVxuQGtleWZyYW1lcyByb3RhdGlvbiB7XG4gIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKX1cbn0gXG5cbi5idG4udGlnaHQge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLmJ0bi1zbWFsbC50aWdodCB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG59XG5cbi5idG4tbWVkLnRpZ2h0IHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgIH1cbn1cblxuLnByZWxvYWQgKiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uY2FyZC1jb250ZW50IHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5cbi51c2VyTWluaUNhcmQsXG4uZW1wbGVhZG9NaW5pQ2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICB9XG5cbiAgICAuZGF0YSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogNzAlO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnVzZXJuYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmxhc3QtaXAsXG4gICAgLmxhc3QtYWNjZXNzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgICAgICBmb250LXNpemU6IHNtYWxsO1xuICAgIH1cbn1cblxuLmJ0bi50ZXh0LmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICAgIGNvbG9yOiAjZWVlO1xufVxuXG50YWJsZSB7XG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiA4cHggNXB4O1xuICAgIH1cblxuICAgIHRoOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIHZhcigtLXNlcGFyYXRvci1jb2xvcikgMXB4O1xuICAgIH1cbn1cblxuaW1nLm1heC1oIHtcbiAgICAtLW1heC1oZWlnaHQ6IDUxMnB4O1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLW1heC1oZWlnaHQpO1xufVxuXG50YWJsZS50aGluIHtcblxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDVweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxudGFibGUuc29mdCB0aCB7XG4gICAgY29sb3I6ICMzMzM7XG59XG5cbnRhYmxlLmhkYXRhIHtcbiAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVscGVyLXRleHQge1xuICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICBjb2xvcjogdmFyKC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDYwKTtcbn1cblxuLmlucHV0LWZpZWxkLm91dGxpbmVkIGlucHV0OmRpc2FibGVkLFxuLmlucHV0LWZpZWxkLm91dGxpbmVkIGlucHV0W3JlYWRvbmx5PVwicmVhZG9ubHlcIl0sXG4uaW5wdXQtZmllbGQub3V0bGluZWQgdGV4dGFyZWE6ZGlzYWJsZWQsXG4uaW5wdXQtZmllbGQub3V0bGluZWQgdGV4dGFyZWFbcmVhZG9ubHk9XCJyZWFkb25seVwiXSB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2UpLCAwLjcwKTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2UpLCAwLjMwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAwMDAsIDAuMDMpO1xufVxuXG4uZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICYuZmxleC1yb3cge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgICYuZmxleC1jb2wge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICYuanVzdGlmeS1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktc3BhY2UtYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktc3BhY2UtYXJvdW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuXG4gICAgJi5qdXN0aWZ5LWVuZCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJi5pdGVtcy1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICYud3JhcCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmLmdhcC01LXB4IHtcbiAgICAgICAgZ2FwOiA1cHg7XG4gICAgfVxufVxuXG4uZmxleC5mb3JjZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uaG9yaXpvbnRhbC1yZW0tMSB7XG4gICAgd2lkdGg6IDFyZW07XG59XG5cbi5ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMTtcbn1cblxuLnVzZXItaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4ubS1oLTEtcmVtIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5tLWgtNS1weCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLm0tdi0xLXJlbSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ubS1iLTEtcmVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uaC0xMDAtcCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udy0xMDAtcCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9maWxlVHJpZ2dlciB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluKSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1zaXplLXhzIHtcbiAgICBmb250LXNpemU6IDAuNnJlbTtcbn1cblxuLmZvbnQtc2l6ZS1zIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLmZvbnQtc2l6ZS1sIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbn1cblxuLmZvbnQtc2l6ZS14bCB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cblxuI3Byb2ZpbGUge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAqIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAubG9nb3V0LWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLm1hcmdpbi1sZWZ0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWJvdHRvbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tbGVmdC01LXB4IHtcbiAgICBtYXJnaW4tbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG59XG4ubm8tbWFyZ2luIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn0gICBcblxuLmJ0bi5jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYnRuLmFsbC13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5zdWZmaXguZGVsZXRlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jYXJkLXRpdGxlLWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5jYXJkLWFjdGlvbiB7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gICAgYTpub3QoLnBhZGRpbmcpIHtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEucGFkZGluZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ucGFkZGluZy0xcmVtIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLTFyZW0tMDVyZW0ge1xuICAgIHBhZGRpbmc6IDFyZW0gMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5maXhlZC1hY3Rpb24tYnRuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDI1cHg7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgei1pbmRleDogOTk3O1xufVxuXG4uYnRuLmVsZXZhdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4uYnRuLmVsZXZhdGVkLndoaXRlIHtcbiAgICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xufVxuXG4uY2FyZC10aXRsZS1sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1jYXJkKTtcbiAgICBwYWRkaW5nOiAycHggMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAmOm5vdCgucmlnaHQpIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDEuNXJlbTtcbiAgICB9XG4gICAgJi5yaWdodCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgfVxuICAgICYud2lkZSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICB9XG4gICAgJi5hbmdsZSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7IFxuICAgIH1cbn1cblxuLmNhcmQ6aGFzKC5jYXJkLXRpdGxlLWxhYmVsKSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5wLXYtNSB7XG4gICAgcGFkZGluZzogNXB4IDA7XG59XG5cbi5icmVhZGNydW1iIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogXCJNYXRlcmlhbFN5bWJvbHNTaGFycFwiO1xuICAgICAgICBjb2xvcjogI2FhYTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICBmb250LXNpemU6IHNtYWxsO1xuICAgIH1cbn1cblxuLm92ZXJmbG93LWF1dG8ge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4ubW9kYWwtY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5tb2RhbC10aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICYuaW5mbyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcygubW9kYWwtdGl0bGUpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuMnJlbTtcbiAgICB9XG59XG5cbi5tb2RhbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1vZGFsOmhhcygubW9kYWwtdGl0bGUpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYmlnIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmZ1bGwtZWxlbWVudC1sb2FkaW5nLXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZnVsbC1zY3JlZW4tbG9hZGluZyxcbi5mdWxsLWVsZW1lbnQtbG9hZGluZyB7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDBhYTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5tZXNzYWdlIHtcbiAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgfVxufVxuXG4uZnVsbC1lbGVtZW50LWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5mdWxsLXNjcmVlbi1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5mdWxsLXNjcmVlbi1iYWRnZS1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgYm90dG9tOiAzcmVtO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3ItY2FyZCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDAgMCAzMHB4O1xuICAgIG1pbi13aWR0aDogMTRyZW07XG4gICAgbWluLWhlaWdodDogNXJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDc1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgJi5oaWRlIHtcbiAgICAgICAgcmlnaHQ6IC0xNHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5wcm9ncmVzcy1jb250YWluZXIge1xuICAgICAgICAtLXByb2dyZXNzOiAwZGVnIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbmljLWdyYWRpZW50KHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KSB2YXIoLS1wcm9ncmVzcyksIHZhcigtLWJhY2tncm91bmQtY29sb3ItY2FyZCkgMGRlZyk7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgIC5xdWFudCB7XG4gICAgICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGViYXItYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogI2VlZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lc3NhZ2Uge1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW1wbGVhZG8tcHAge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTFweCk7XG59XG5cbi5pbnB1dC1maWVsZCB7XG4gICAgLmNhcmV0IHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5saXR0bGUtbWFyZ2luIHtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICB9XG59XG5cbi5pbnB1dC1maWVsZCB7XG4gICAgdGV4dGFyZWEubWF0ZXJpYWxpemUtdGV4dGFyZWEge1xuICAgICAgICBwYWRkaW5nOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5zcGFuLmhsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWFhO1xuICAgIGNvbG9yOiAjMzMzO1xufVxuXG4uaXRpbmVyYXJpby1jb2xsZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuaXRpbmVyYXJpby1jYXJkOm5vdCg6b25seS1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAna2V5Ym9hcmRfZG91YmxlX2Fycm93X3JpZ2h0JztcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbFN5bWJvbHNTaGFycCcgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IHgtbGFyZ2U7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgIH1cblxuICAgIC5pdGluZXJhcmlvLWNhcmQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICB9XG5cbiAgICAuaXRpbmVyYXJpby1jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLml0aW5lcmFyaW8tY2FyZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJvcmRlcjogc29saWQgdmFyKC0tc2VwYXJhdG9yLWNvbG9yKSAxcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aXRsZS10eXBlIHtcbiAgICBjb2xvcjogIzc3NztcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1zZXBhcmF0b3ItY29sb3IpIDFweDtcbiAgICBtYXJnaW4tdG9wOiAwLjRyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xufVxuXG4uaW5wdXQtZmllbGQge1xuICAgIGlucHV0W3R5cGU9J2NvbG9yJ10ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLm5vd3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZpeGVkLWFjdGlvbi1idG4ge1xuICAgIGJvdHRvbTogNjRweDtcbn1cblxuLmJ0bi5vdXRsaW5lZCB7XG4gICAgbWFyZ2luOiAwIDVweDtcbn1cbi5idG4ubWFyZ2luLWh7XG4gICAgbWFyZ2luOiAwIDVweCAhaW1wb3J0YW50O1xufVxuXG5hLmlubGluZSB7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG59XG5cbi5ldGlxdWV0YXNDaGlwcyB7XG4gICAgLmNoaXAge1xuICAgICAgICAtLWJnQ29sb3I6ICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnQ29sb3IpO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICAgLmRlbGV0ZSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJnQ29sb3IpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuLmNhcmQtYWN0aW9uLnVwcGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc2VwYXJhdG9yLWNvbG9yKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLmNhcmQtY29udGVudC5ib3R0b20ge1xuICAgIHBhZGRpbmc6IDFyZW0gMjRweDtcbn1cblxuLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLmlubGluZS1pY29uIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xufVxuXG4uZXJyb3ItcGFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG5cbiAgICAuZXJyb3ItaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5lcnJvci1jb2RlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgIH1cbn1cblxuLmlucHV0LWZpZWxkLnZpc3VhbC1kaXNhYmxlZCB7XG5cbiAgICBpbnB1dCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBjb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGV4dGZpZWxkX2Rpc2FibGVkX291dGxpbmVjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb250YWluZXJjb2xvcjtcbiAgICB9XG59XG5cbi5lbmxhY2UtZmllbGQge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2VwYXJhdG9yLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZmM3O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDFyZW0gMDtcbn1cblxuLnBhZ2luYXRpb24ge1xuICAgIGxpIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggIWltcG9ydGFudDtcblxuICAgIH1cblxuICAgIGxpLmFjdGl2ZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi51bmRlcmxpbmVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxucC5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRhYmxlLnRyYW5zcGFyZW50IHtcblxuICAgIHRoLFxuICAgIHRkLFxuICAgIHRyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbnRhYmxlLmhhcmQge1xuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0O1xuICAgIH1cbn1cblxudGQubW9uZXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBlbmQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJCc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNXB4O1xuICAgIH1cbn1cblxudGQuc3RyZXRjaCB7XG4gICAgd2lkdGg6IDElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tYXJnaW4tcmlnaHQtcmVtLTEge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uOiB3aWdnbGUgMC43cyBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAyO1xufVxuXG5Aa2V5ZnJhbWVzIHdpZ2dsZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMWRlZyk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTFkZWcpO1xuICAgIH1cblxuICAgIDgwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDFkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxufVxuXG4uYm91bmNlLXNoYWRvdyB7XG4gICAgYW5pbWF0aW9uOiBib3VuY2VTaGFkb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlU2hhZG93IHtcbiAgICAwJSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksXG4gICAgICAgIDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiksXG4gICAgICAgIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDI0cHggMzhweCAzcHggcmdiYSgwLCAwLCAwLCAwLjE0KSxcbiAgICAgICAgMCA5cHggNDZweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyKSxcbiAgICAgICAgMCAxMXB4IDE1cHggLTdweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgfVxuICAgIFxuICAgIDEwMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLFxuICAgICAgICAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAgICAgICAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgfVxufVxuXG50ci5zbW9vdGhJbiB7XG4gICAgYW5pbWF0aW9uOiB0clNtb290aEluIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbnRyLmVycm9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3IpO1xuICAgIGNvbG9yOiAjZWVlO1xufVxuXG4uaW5wdXQtZmllbGQueC1zbWFsbCB7XG4gICAgaW5wdXQge1xuICAgICAgICBoZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDZyZW07XG4gICAgfVxufVxuXG4uaW5wdXQtZmllbGQuc21hbGwge1xuICAgIC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGhlaWdodDogMjdweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRyU21vb3RoSW4ge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLnRyYW5zaXRpb24tYWxsIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnBvLWhlYWRlciB7XG4gICAgcGFkZGluZzogMjRweCAyNHB4IDAgMjRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubW9kYWw6aGFzKC5wby1oZWFkZXIpIHtcbiAgICBoZWlnaHQ6IDkwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA3MCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDIxNnB4ICsgMXJlbSk7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgcC5sYXJnZSB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxudGFibGUuc3RyZXRjaCB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgfVxufVxuXG4uZHJvcGRvd24tY29udGVudCB7XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm92ZXJmbG93LWhpZGRlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmVtcGxlYWRvLXJlc3VtZW4ge1xuICAgIC5jYXJkLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAzcHggdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbn1cblxuLmVtcGxlYWRvLXJlc3VtZW4ge1xuICAgIC0tc3RhdHVzLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZy10b3A6IDcycHg7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcblxuICAgIC5wcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEyOHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXN0YXR1cy1jb2xvcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIH1cblxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpcmVjY2lvbiB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcblxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU1Y2MnO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsU3ltYm9sc1NoYXJwJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZC1jb250ZW50Lm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5jYXJkLWNvbnRlbnQubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uaW5wdXQtZmllbGQgdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDFyZW0gMTZweCAhaW1wb3J0YW50O1xufVxuXG4uZmxleCB7XG4gICAgLmNhcmQtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uY29sbGVjdGlvbi1pdGVtLnRoaW4ge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4udGFicy1mbG9hdGluZyB7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjI1cztcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLnRhYnMgLmluZGljYXRvciB7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4IDNweCAwIDA7XG59XG5cbi5iYWRnZS1pbmRpY2F0b3Ige1xuICAgIHdpZHRoOiAyM3B4O1xuICBoZWlnaHQ6IDIzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5pbWcuY3VtcGxlYW5vcyB7XG4gICAgd2lkdGg6IDEyMHB4O1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ubm8tbGFiZWwgKyBzcGFuOm5vdCgubGV2ZXIpICB7XG4gICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLW1hdGVyaWFsLWljb25zIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbn1cblxudHIuaW5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgdGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBvcGFjaXR5OiAwLjYwO1xuICAgIH1cbn1cblxuLmhlYWQtY291bnQtY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luOiAxcmVtIDFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3IpO1xuICAgIGNvbG9yOiAjZGRkO1xuICAgIHRleHQtc2hhZG93OiAjMzMzIDBweCAwcHggMnB4O1xuXG4gICAgJi5yZXN1bWVuLWNhcmR7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgXG4gICAgICAgIC5jYXJkLXRpdGxlLWxhYmVse1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGNvdW50IHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgdGV4dC1zaGFkb3c6ICNkZGQgMHB4IDBweCAycHg7XG4gICAgfVxuICAgIFxuICAgIC5ub21icmUge1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIH1cbiAgICBcbiAgICAmLmF1dG8taG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgIGFuaW1hdGlvbjogaGMtaG92ZXIgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgc3Bhbi5jZW50ZXItdGV4dHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoYy1ob3ZlciB7XG4gICAgMCUgICB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICA1MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLmhjLWJyZWFkY3J1bWIge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIC5icmVhZGNydW1iOmxhc3QtY2hpbGQge1xuICAgICAgICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICAgIH1cbn1cblxuLmFzaXN0ZW5jaWEtb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWY3YmU7XG59XG4uYXNpc3RlbmNpYS13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOWM0O1xufVxuLmFzaXN0ZW5jaWEtZXJyb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmNjYmM7XG59XG4uYXNpc3RlbmNpYS1zcGVjaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiYWE7XG59XG4uYXNpc3RlbmNpYS1yb3NlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhiYmQwO1xufVxuLmFzaXN0ZW5jaWEtbmV1dHJhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbn1cblxuYnV0dG9uW2Rpc2FibGVkXS50b29sdGlwcGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogaW5pdGlhbCAhaW1wb3J0YW50O1xufVxuXG4udGFiVGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmxvdy1wcmlvcml0eSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbn1cbi5tZWRpdW0tcHJpb3JpdHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY5YzQ7XG59XG4uaGlnaC1wcmlvcml0eSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2NiYztcbn1cblxuLm90LXBvci1yZXZpc2FyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xufVxuLm90LXBvci1hdXRvcml6YXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY5YzQ7XG59XG4ub3QtYXV0b3JpemFkYXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWY3YmU7XG59XG4ub3QtcmVjaGF6YWRhcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2NiYztcbn1cbi5vdC1wYWdhZGFzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiO1xufVxuXG4uc2FtZS1kYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWY3YmU7XG59XG5cbi50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubW9kYWwge1xuICAgIC5tb2RhbC13YXJuaW5nIHtcbiAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICB9XG4gICAgXG4gICAgJjpoYXMoLm1vZGFsLXdhcm5pbmcgKyAubW9kYWwtY29udGVudCkge1xuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmR7XG4gICAgLmNhcmQtcGFuZWwucGxhY2EtZW5nb21hZG97XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgc3BhbntcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCA0cHggcmdiYSgwLCAwLCAwLCAwLjY1KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2FyZC1jb250ZW50e1xuICAgICAgICAucGxhY2EtZW5jYWJlemFkb3tcbiAgICAgICAgICAgIGgye1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS4zcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250ZW5pZG8tcmVwb3J0ZXtcbiAgICAgICAgbWluLWhlaWdodDogMjJ2aDtcbiAgICB9XG59XG5cbi5jYXJkLnBsYWNhLWNvbnRlbmlkb3tcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcbiAgICB9XG59XG5cbi5vYnNlcnZhY2lvbmVzLXJlcG9ydGV7XG4gICAgYmFja2dyb3VuZDogI0YyRjJGMjtcbiAgICBib3JkZXItbGVmdDogMC4zcmVtIHNvbGlkICMyQTQ3NTk7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jb250ZW5lcm9kci1vYnNlcnZhY2lvbmVze1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gICAgaGVpZ2h0OiA5MCU7XG59XG5cbi5zaW4tcmVwb3J0ZXtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi50cmFwZWNpby1pbnZlcnNvIHtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCAxMDAlIDAlLCA5MCUgMTAwJSwgMTAlIDEwMCUpO1xufVxuXG4uY29udGVuaWRvLXJlcG9ydGV7XG4gICAgb3ZlcmZsb3c6ICBhdXRvO1xuICAgIGZpZ3VyZXtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWF4LWhlaWdodDogMTNyZW07XG4gICAgfVxuICAgIGZpZ2NhcHRpb257XG4gICAgICAgIGRpdntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ldmlkZW5jaWEtY29udGFpbmVye1xuICAgICAgICBtaW4td2lkdGg6IDI1cmVtO1xuICAgIH1cbiAgICAuaW1nLWV2aWRlbmNpYS1jb250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xuICAgIH1cbiAgICBwe1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB9XG4gICAgaW1ne1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgIH1cbiAgICAuZGVzY3JpcHRpb24taW1hZ2V7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzRjNmI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxufVxuXG5cbi5zdGF0dXMtZmxvdGlsbGEuYWN0aXZle1xuICAgICY6OmJlZm9yZXtcbiAgICAgICBjb250ZW50OiAnJztcbiAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgIGJvcmRlci1yYWRpdXM6IDcuNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTUsIDIxOSwgOTcpO1xuICAgIH1cbn1cblxuLnN0YXR1cy1mbG90aWxsYS5pbmFjdGl2ZXtcbiAgICAmOjpiZWZvcmV7XG4gICAgICAgY29udGVudDogJyc7XG4gICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICBib3JkZXItcmFkaXVzOiA3LjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxOSwgMzIsIDE1KTtcbiAgICB9XG59XG5cbml7XG4gICAgJi5vbntcbiAgICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCByZ2JhKDUxLCAyMTQsIDYyLCAwLjcpO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKDIxMywgMTMsIDEzLCAwLjcpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYub2Zme1xuICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoMjEzLCAxMywgMTMsIDAuNyk7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAyMHB4IHJnYmEoNTEsIDIxNCwgNjIsIDAuNyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbWFsbC1jYXJkLWNvbnRhaW5lcntcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgLmRhdGEtY29udGFpbmVye1xuICAgICAgICAvLyB3aWR0aDogODAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDBweCAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA0cHggIzg3ODc4NztcbiAgICB9XG4gICAgLmltZy1jb250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vIGxlZnQ6IDIwcHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgIzZlNmViMCAycHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLWxhYmVse1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y3ZmM0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgIH1cbiAgICBwe1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxuICAgICY6bm90KC5yZXNwb25zYWJsZS1tb2R1bG8pOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuLmZpbGUtZmxvdGlsbGF7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgaGVpZ2h0OiAxM3JlbTtcbiAgICAgICAgZGl2e1xuICAgICAgICAgICAgLy8gaGVpZ2h0OiA4NSU7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhaW5lci1yZXN1bWVuLWNhcmRze1xuICAgIGdhcDogM3JlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFkZC1idG4taW5wdXR7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICByaWdodDogMTBweDtcbn1cblxudGFibGUuY2VudGVyZWQgdGgge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmJpZy1udW1iZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAubnVtYmVyIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDN2dywgM3JlbSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRhYmxlLWRhc2hib2FyZC1mbGVldCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5zcGFuLmxhYmVsLWRhc2hib2FyZCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4uY29udGFpbmVyLW5vLWZpbGVze1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAyNXZoO1xuICAgIHB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbn1cblxuLnNwYWNlLWZvcm1ze1xuICAgIC5tb2RhbC1jb250ZW50e1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEuM3JlbTtcbiAgICB9XG59XG5cbiNkb2N1bWVudG9zLXVuaWRhZHtcbiAgICAuZG9jdW1lbnRvcy1jb250YWluZXJ7XG4gICAgICAgIGhlaWdodDogNTV2aDtcbiAgICB9XG4gICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgbWF4LWhlaWdodDogNTV2aDtcbiAgICB9XG4gICAgLmNhcmQtYWN0aW9ue1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxufVxuXG4jcGVyaW9kb3N7XG4gICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uYnRuLWZsb2F0aW5nLmJ0bi1sYXJnZSB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5yZWdsYW1lbnRvLWNvbnRhaW5lcntcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbiAgICB9XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYXtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cbn1cblxuLm1hcGEtZmxvdGlsbGFze1xuICAgIGhlaWdodDogMzB2dztcbn1cblxuLmNhcmQtYWN0aW9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMTJweCAxMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wLTEwLXB4IHtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4ucHYtMTAtcHgge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn0iLCI6cm9vdCB7XG4gIC0tbWQtc291cmNlOiAjMDA2NDk1O1xuICAvKiBwcmltYXJ5ICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTA6ICMwMDAwMDA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTEwOiAjMDAxZTMwO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkyMDogIzAwMzQ1MDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5MjU6ICMwMDNmNjA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTMwOiAjMDA0YjcxO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkzNTogIzAwNTc4MztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5NDA6ICMwMDY0OTU7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTUwOiAjMGY3ZWI4O1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk2MDogIzNkOThkNDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5NzA6ICM1ZGIzZjA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTgwOiAjOGZjZGZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk5MDogI2NiZTZmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5OTU6ICNlNmYyZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTk4OiAjZjdmOWZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk5OTogI2ZjZmNmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5MTAwOiAjZmZmZmZmO1xuICAvKiBzZWNvbmRhcnkgKi9cbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTEwOiAjMGQxZDI5O1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTIwOiAjMjIzMjNmO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTI1OiAjMmQzZDRiO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTMwOiAjMzk0ODU2O1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTM1OiAjNDQ1NDYyO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTQwOiAjNTA2MDZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTUwOiAjNjk3OTg4O1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTYwOiAjODI5M2EyO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTcwOiAjOWRhZGJkO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTgwOiAjYjhjOGQ5O1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTkwOiAjZDRlNGY2O1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTk1OiAjZTZmMmZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTk4OiAjZjdmOWZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTk5OiAjZmNmY2ZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTEwMDogI2ZmZmZmZjtcbiAgLyogdGVydGlhcnkgKi9cbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTA6ICMwMDAwMDA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnkxMDogIzIxMTYzNDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTIwOiAjMzYyYjRhO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5MjU6ICM0MjM2NTY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnkzMDogIzRkNDE2MjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTM1OiAjNTk0YzZlO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5NDA6ICM2NjU4N2I7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk1MDogIzdmNzE5NTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTYwOiAjOTk4YWIwO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5NzA6ICNiNGE0Y2I7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk4MDogI2QwYmZlNztcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTkwOiAjZWNkY2ZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5OTU6ICNmN2VkZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk5ODogI2ZlZjdmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTk5OiAjZmZmYmZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5MTAwOiAjZmZmZmZmO1xuICAvKiBuZXV0cmFsICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDA6ICMwMDAwMDA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDEwOiAjMWExYzFlO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwyMDogIzJlMzEzMztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsMjU6ICMzYTNjM2U7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDMwOiAjNDU0NzQ5O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwzNTogIzUxNTI1NTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsNDA6ICM1ZDVlNjE7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDUwOiAjNzY3NzdhO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw2MDogIzhmOTE5NDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsNzA6ICNhYWFiYWU7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDgwOiAjYzZjNmM5O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw5MDogI2UyZTJlNTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsOTU6ICNmMGYwZjM7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDk4OiAjZjlmOWZjO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw5OTogI2ZjZmNmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsMTAwOiAjZmZmZmZmO1xuICAvKiBuZXV0cmFsLXZhcmlhbnQgKi9cbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDEwOiAjMTYxYzIyO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDIwOiAjMmIzMTM3O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDI1OiAjMzYzYzQyO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDMwOiAjNDE0NzRkO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDM1OiAjNGQ1MzU5O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDQwOiAjNTk1ZjY1O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDUwOiAjNzI3ODdlO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDYwOiAjOGI5MTk4O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDcwOiAjYTZhY2IzO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDgwOiAjYzFjN2NlO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDkwOiAjZGVlM2VhO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDk1OiAjZWNmMWY5O1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDk4OiAjZjdmOWZmO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDk5OiAjZmNmY2ZmO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwtdmFyaWFudDEwMDogI2ZmZmZmZjtcbiAgLyogZXJyb3IgKi9cbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjA6ICMwMDAwMDA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3IxMDogIzQxMDAwMjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjIwOiAjNjkwMDA1O1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yMjU6ICM3ZTAwMDc7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3IzMDogIzkzMDAwYTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjM1OiAjYTgwNzEwO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yNDA6ICNiYTFhMWE7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I1MDogI2RlMzczMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjYwOiAjZmY1NDQ5O1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yNzA6ICNmZjg5N2Q7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I4MDogI2ZmYjRhYjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjkwOiAjZmZkYWQ2O1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yOTU6ICNmZmVkZWE7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I5ODogI2ZmZjhmNztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjk5OiAjZmZmYmZmO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yMTAwOiAjZmZmZmZmO1xuICAvKiBsaWdodCAqL1xuICAtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWxpZ2h0OiAjMDA2NDk1O1xuICAtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWxpZ2h0OiAjZmZmZmZmO1xuICAtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lci1saWdodDogI2NiZTZmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXItbGlnaHQ6ICMwMDFlMzA7XG4gIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1saWdodDogIzUwNjA2ZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWxpZ2h0OiAjZmZmZmZmO1xuICAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyLWxpZ2h0OiAjZDRlNGY2O1xuICAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyLWxpZ2h0OiAjMGQxZDI5O1xuICAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1saWdodDogIzY2NTg3YjtcbiAgLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktbGlnaHQ6ICNmZmZmZmY7XG4gIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lci1saWdodDogI2VjZGNmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyLWxpZ2h0OiAjMjExNjM0O1xuICAtLW1kLXN5cy1jb2xvci1lcnJvci1saWdodDogI2JhMWExYTtcbiAgLS1tZC1zeXMtY29sb3ItZXJyb3ItY29udGFpbmVyLWxpZ2h0OiAjZmZkYWQ2O1xuICAtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1saWdodDogI2ZmZmZmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItY29udGFpbmVyLWxpZ2h0OiAjNDEwMDAyO1xuICAtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kLWxpZ2h0OiAjZmNmY2ZmO1xuICAtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kLWxpZ2h0OiAjMWExYzFlO1xuICAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLWxpZ2h0OiAjZmNmY2ZmO1xuICAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLWxpZ2h0OiAjMWExYzFlO1xuICAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQtbGlnaHQ6ICNkZWUzZWE7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UtdmFyaWFudC1saWdodDogIzQxNDc0ZDtcbiAgLS1tZC1zeXMtY29sb3Itb3V0bGluZS1saWdodDogIzcyNzg3ZTtcbiAgLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1vbi1zdXJmYWNlLWxpZ2h0OiAjZjBmMGYzO1xuICAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXN1cmZhY2UtbGlnaHQ6ICMyZTMxMzM7XG4gIC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeS1saWdodDogIzhmY2RmZjtcbiAgLS1tZC1zeXMtY29sb3Itc2hhZG93LWxpZ2h0OiAjMDAwMDAwO1xuICAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXRpbnQtbGlnaHQ6ICMwMDY0OTU7XG4gIC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudC1saWdodDogI2MxYzdjZTtcbiAgLS1tZC1zeXMtY29sb3Itc2NyaW0tbGlnaHQ6ICMwMDAwMDA7XG4gIC8qIGRhcmsgKi9cbiAgLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1kYXJrOiAjOGZjZGZmO1xuICAtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWRhcms6ICMwMDM0NTA7XG4gIC0tbWQtc3lzLWNvbG9yLXByaW1hcnktY29udGFpbmVyLWRhcms6ICMwMDRiNzE7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyLWRhcms6ICNjYmU2ZmY7XG4gIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1kYXJrOiAjYjhjOGQ5O1xuICAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktZGFyazogIzIyMzIzZjtcbiAgLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWNvbnRhaW5lci1kYXJrOiAjMzk0ODU2O1xuICAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyLWRhcms6ICNkNGU0ZjY7XG4gIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWRhcms6ICNkMGJmZTc7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWRhcms6ICMzNjJiNGE7XG4gIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lci1kYXJrOiAjNGQ0MTYyO1xuICAtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1jb250YWluZXItZGFyazogI2VjZGNmZjtcbiAgLS1tZC1zeXMtY29sb3ItZXJyb3ItZGFyazogI2ZmYjRhYjtcbiAgLS1tZC1zeXMtY29sb3ItZXJyb3ItY29udGFpbmVyLWRhcms6ICM5MzAwMGE7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWRhcms6ICM2OTAwMDU7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lci1kYXJrOiAjZmZkYWQ2O1xuICAtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kLWRhcms6ICMxYTFjMWU7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLWJhY2tncm91bmQtZGFyazogI2UyZTJlNTtcbiAgLS1tZC1zeXMtY29sb3Itc3VyZmFjZS1kYXJrOiAjMWExYzFlO1xuICAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLWRhcms6ICNlMmUyZTU7XG4gIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdmFyaWFudC1kYXJrOiAjNDE0NzRkO1xuICAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQtZGFyazogI2MxYzdjZTtcbiAgLS1tZC1zeXMtY29sb3Itb3V0bGluZS1kYXJrOiAjOGI5MTk4O1xuICAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2UtZGFyazogIzFhMWMxZTtcbiAgLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlLWRhcms6ICNlMmUyZTU7XG4gIC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeS1kYXJrOiAjMDA2NDk1O1xuICAtLW1kLXN5cy1jb2xvci1zaGFkb3ctZGFyazogIzAwMDAwMDtcbiAgLS1tZC1zeXMtY29sb3Itc3VyZmFjZS10aW50LWRhcms6ICM4ZmNkZmY7XG4gIC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudC1kYXJrOiAjNDE0NzRkO1xuICAtLW1kLXN5cy1jb2xvci1zY3JpbS1kYXJrOiAjMDAwMDAwO1xuICAvKiBkaXNwbGF5IC0gbGFyZ2UgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1mb250LXNpemU6IDU3cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLWxpbmUtaGVpZ2h0OiA2NHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1sZXR0ZXItc3BhY2luZzogLTAuMjVweDtcbiAgLyogZGlzcGxheSAtIG1lZGl1bSAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1mb250LXdlaWdodDogNDAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1mb250LXNpemU6IDQ1cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1saW5lLWhlaWdodDogNTJweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWxldHRlci1zcGFjaW5nOiAwcHg7XG4gIC8qIGRpc3BsYXkgLSBzbWFsbCAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LXdlaWdodDogNDAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWZvbnQtc2l6ZTogMzZweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWxldHRlci1zcGFjaW5nOiAwcHg7XG4gIC8qIGhlYWRsaW5lIC0gbGFyZ2UgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtZm9udC1zaXplOiAzMnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtbGluZS1oZWlnaHQ6IDQwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiBoZWFkbGluZSAtIG1lZGl1bSAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1mb250LXdlaWdodDogNDAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC1zaXplOiAyOHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWxpbmUtaGVpZ2h0OiAzNnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWxldHRlci1zcGFjaW5nOiAwcHg7XG4gIC8qIGhlYWRsaW5lIC0gc21hbGwgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtZm9udC1zaXplOiAyNHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtbGluZS1oZWlnaHQ6IDMycHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiBib2R5IC0gbGFyZ2UgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1mb250LXNpemU6IDE2cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLWxpbmUtaGVpZ2h0OiAyNHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1sZXR0ZXItc3BhY2luZzogMC41MHB4O1xuICAvKiBib2R5IC0gbWVkaXVtICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWZvbnQtc2l6ZTogMTRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWxpbmUtaGVpZ2h0OiAyMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tbGV0dGVyLXNwYWNpbmc6IDAuMjVweDtcbiAgLyogYm9keSAtIHNtYWxsICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC1zaXplOiAxMnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1saW5lLWhlaWdodDogMTZweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmc6IDAuNDBweDtcbiAgLyogbGFiZWwgLSBsYXJnZSAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtZm9udC1mYW1pbHktc3R5bGU6IE1lZGl1bTtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtd2VpZ2h0OiA1MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtc2l6ZTogMTRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWxpbmUtaGVpZ2h0OiAyMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IDAuMTBweDtcbiAgLyogbGFiZWwgLSBtZWRpdW0gKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGU6IE1lZGl1bTtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1mb250LXdlaWdodDogNTAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC1zaXplOiAxMnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWxpbmUtaGVpZ2h0OiAxNnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWxldHRlci1zcGFjaW5nOiAwLjUwcHg7XG4gIC8qIGxhYmVsIC0gc21hbGwgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlOiBNZWRpdW07XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LXdlaWdodDogNTAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LXNpemU6IDExcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1saW5lLWhlaWdodDogMTZweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWxldHRlci1zcGFjaW5nOiAwLjUwcHg7XG4gIC8qIHRpdGxlIC0gbGFyZ2UgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtZm9udC1zaXplOiAyMnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtbGluZS1oZWlnaHQ6IDI4cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiB0aXRsZSAtIG1lZGl1bSAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LWZhbWlseS1zdHlsZTogTWVkaXVtO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWZvbnQtd2VpZ2h0OiA1MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LXNpemU6IDE2cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tbGluZS1oZWlnaHQ6IDI0cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tbGV0dGVyLXNwYWNpbmc6IDAuMTVweDtcbiAgLyogdGl0bGUgLSBzbWFsbCAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtZm9udC1mYW1pbHktc3R5bGU6IE1lZGl1bTtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtd2VpZ2h0OiA1MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtc2l6ZTogMTRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWxpbmUtaGVpZ2h0OiAyMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtbGV0dGVyLXNwYWNpbmc6IDAuMTBweDtcbn1cbiIsIi5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xufVxuLnByaW1hcnktdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG59XG4ub24tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5KTtcbn1cbi5vbi1wcmltYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnkpO1xufVxuLnByaW1hcnktY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnktY29udGFpbmVyKTtcbn1cbi5wcmltYXJ5LWNvbnRhaW5lci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lcik7XG59XG4ub24tcHJpbWFyeS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXIpO1xufVxuLm9uLXByaW1hcnktY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyKTtcbn1cbi5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5KTtcbn1cbi5zZWNvbmRhcnktdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5KTtcbn1cbi5vbi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5KTtcbn1cbi5vbi1zZWNvbmRhcnktdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5KTtcbn1cbi5zZWNvbmRhcnktY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXIpO1xufVxuLnNlY29uZGFyeS1jb250YWluZXItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWNvbnRhaW5lcik7XG59XG4ub24tc2Vjb25kYXJ5LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyKTtcbn1cbi5vbi1zZWNvbmRhcnktY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1jb250YWluZXIpO1xufVxuLnRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5KTtcbn1cbi50ZXJ0aWFyeS10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeSk7XG59XG4ub24tdGVydGlhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnkpO1xufVxuLm9uLXRlcnRpYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5KTtcbn1cbi50ZXJ0aWFyeS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyKTtcbn1cbi50ZXJ0aWFyeS1jb250YWluZXItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyKTtcbn1cbi5vbi10ZXJ0aWFyeS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyKTtcbn1cbi5vbi10ZXJ0aWFyeS1jb250YWluZXItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyKTtcbn1cbi5lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1lcnJvcik7XG59XG4uZXJyb3ItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3IpO1xufVxuLm9uLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yKTtcbn1cbi5vbi1lcnJvci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1lcnJvcik7XG59XG4uZXJyb3ItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lcik7XG59XG4uZXJyb3ItY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lcik7XG59XG4ub24tZXJyb3ItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lcik7XG59XG4ub24tZXJyb3ItY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lcik7XG59XG4uYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbi5iYWNrZ3JvdW5kLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQpO1xufVxuLm9uLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tYmFja2dyb3VuZCk7XG59XG4ub24tYmFja2dyb3VuZC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kKTtcbn1cbi5zdXJmYWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UpO1xufVxuLnN1cmZhY2UtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZSk7XG59XG4ub24tc3VyZmFjZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlKTtcbn1cbi5vbi1zdXJmYWNlLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UpO1xufVxuLnN1cmZhY2UtdmFyaWFudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQpO1xufVxuLnN1cmZhY2UtdmFyaWFudC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQpO1xufVxuLm9uLXN1cmZhY2UtdmFyaWFudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQpO1xufVxuLm9uLXN1cmZhY2UtdmFyaWFudC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQpO1xufVxuLm91dGxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZSk7XG59XG4ub3V0bGluZS10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vdXRsaW5lKTtcbn1cbi5pbnZlcnNlLW9uLXN1cmZhY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1vbi1zdXJmYWNlKTtcbn1cbi5pbnZlcnNlLW9uLXN1cmZhY2UtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1vbi1zdXJmYWNlKTtcbn1cbi5pbnZlcnNlLXN1cmZhY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlKTtcbn1cbi5pbnZlcnNlLXN1cmZhY2UtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlKTtcbn1cbi5pbnZlcnNlLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5KTtcbn1cbi5pbnZlcnNlLXByaW1hcnktdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5KTtcbn1cbi5zaGFkb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2hhZG93KTtcbn1cbi5zaGFkb3ctdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2hhZG93KTtcbn1cbi5zdXJmYWNlLXRpbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS10aW50KTtcbn1cbi5zdXJmYWNlLXRpbnQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS10aW50KTtcbn1cbi5vdXRsaW5lLXZhcmlhbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50KTtcbn1cbi5vdXRsaW5lLXZhcmlhbnQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50KTtcbn1cbi5zY3JpbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zY3JpbSk7XG59XG4uc2NyaW0tdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2NyaW0pO1xufVxuIiwiLmRpc3BsYXktbGFyZ2V7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5kaXNwbGF5LW1lZGl1bXtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLXRleHQtZGVjb3JhdGlvbik7XG59XG4uZGlzcGxheS1zbWFsbHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC10ZXh0LWRlY29yYXRpb24pO1xufVxuLmhlYWRsaW5lLWxhcmdle1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5oZWFkbGluZS1tZWRpdW17XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLXRleHQtZGVjb3JhdGlvbik7XG59XG4uaGVhZGxpbmUtc21hbGx7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC10ZXh0LWRlY29yYXRpb24pO1xufVxuLmJvZHktbGFyZ2V7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5ib2R5LW1lZGl1bXtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLXRleHQtZGVjb3JhdGlvbik7XG59XG4uYm9keS1zbWFsbHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC10ZXh0LWRlY29yYXRpb24pO1xufVxuLmxhYmVsLWxhcmdle1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5sYWJlbC1tZWRpdW17XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLXRleHQtZGVjb3JhdGlvbik7XG59XG4ubGFiZWwtc21hbGx7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC10ZXh0LWRlY29yYXRpb24pO1xufVxuLnRpdGxlLWxhcmdle1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi50aXRsZS1tZWRpdW17XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLXRleHQtZGVjb3JhdGlvbik7XG59XG4udGl0bGUtc21hbGx7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC10ZXh0LWRlY29yYXRpb24pO1xufVxuIiwiOnJvb3Qge1xuIC0tbWQtc3lzLWNvbG9yLXByaW1hcnk6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnk6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItdGVydGlhcnk6IHZhcigtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnk6IHZhcigtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1jb250YWluZXItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLWVycm9yOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3ItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItY29udGFpbmVyLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vdXRsaW5lOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZDogdmFyKC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWJhY2tncm91bmQ6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZTogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdmFyaWFudDogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdmFyaWFudC1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXN1cmZhY2UtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZTogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zaGFkb3c6IHZhcigtLW1kLXN5cy1jb2xvci1zaGFkb3ctbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludDogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludC1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50OiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zY3JpbTogdmFyKC0tbWQtc3lzLWNvbG9yLXNjcmltLWxpZ2h0KTtcbn1cbiIsIjpyb290W3RoZW1lPSdkYXJrJ10ge1xuIC0tbWQtc3lzLWNvbG9yLXByaW1hcnk6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnk6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXByaW1hcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1jb250YWluZXItZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWNvbnRhaW5lci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnk6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnk6IHZhcigtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1jb250YWluZXItZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLWVycm9yOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3ItZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tZXJyb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXItZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW91dGxpbmU6IHZhcigtLW1kLXN5cy1jb2xvci1vdXRsaW5lLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWJhY2tncm91bmQ6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdmFyaWFudDogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdmFyaWFudC1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQtZGFyayk7XG4gLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZTogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXByaW1hcnk6IHZhcigtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXByaW1hcnktZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itc2hhZG93OiB2YXIoLS1tZC1zeXMtY29sb3Itc2hhZG93LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludDogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludC1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vdXRsaW5lLXZhcmlhbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1vdXRsaW5lLXZhcmlhbnQtZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itc2NyaW06IHZhcigtLW1kLXN5cy1jb2xvci1zY3JpbS1kYXJrKTtcbn1cbiIsIjpyb290LCA6aG9zdCB7XG4gICAgLS1zdXJmYWNlLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZSk7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZCk7XG5cbiAgICAtLWZvbnQtY29sb3ItbWFpbjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWJhY2tncm91bmQpO1xuICAgIC0tZm9udC1jb2xvci1tZWRpdW06IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQpO1xuICAgIC0tZm9udC1jb2xvci1kaXNhYmxlZDogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UpO1xuXG4gICAgLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnkpO1xuICAgIC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRhcmstbWFpbjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktZGFyayk7XG4gICAgLS1mb250LW9uLXByaW1hcnktY29sb3ItZGFyay1tZWRpdW06IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQtZGFyayk7XG4gICAgLS1mb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtOiAgdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UtdmFyaWFudCk7XG4gICAgLS1mb250LW9uLXByaW1hcnktY29sb3ItZGlzYWJsZWQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zOCk7XG4gICAgLS1mb250LW9uLXNlY29uZGFyeS1jb2xvci1tYWluOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5KTtcblxuICAgIC0taG92ZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgLS1mb2N1cy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAtLWZvY3VzLWNvbG9yLXNvbGlkOiAjRTBFMEUwO1xuXG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC00ZHA6IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yLWxldmVsLTE2ZHAtc29saWQ6IHZhcigtLXN1cmZhY2UtY29sb3IpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1zbGlnaHQtZW1waGFzaXM6IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yLWNhcmQ6IHZhcigtLXN1cmZhY2UtY29sb3IpO1xuXG4gICAgLS10b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICMzMTMwMzM7XG4gICAgLS10b29sdGlwLWZvbnQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Nyk7XG5cbiAgICAtLXNlcGFyYXRvci1jb2xvcjogI0RERERERDsgLyogYm9yZGVycyBiZXR3ZWVuIGNvbXBvbmVudHMgKi9cblxuICAgIC0tZXJyb3ItY29sb3I6ICNGNDQzMzY7XG5cbiAgICAtLXNsaWRlci10cmFjay1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNoYWRvdy1saWdodCk7XG4gICAgLS1zd2l0Y2gtdGh1bWItb2ZmLWNvbG9yOiB2YXIoLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5MTAwKTtcblxuICAgIC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDUpO1xuICAgIC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogdmFyKC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTEwMCk7XG5cbiAgICAtLXByaW1hcnktY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgICAtLXByaW1hcnktY29sb3ItZGFyazogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnktZGFyayk7ICAgIFxuICAgIC0tcHJpbWFyeS1jb2xvci1yYWlzZWQtaG92ZXItc29saWQ6IHZhcigtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk3MCk7XG4gICAgLS1wcmltYXJ5LWNvbG9yLXJhaXNlZC1mb2N1cy1zb2xpZDogdmFyKC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTgwKTtcbiAgICAtLXByaW1hcnktY29sb3ItZm9udC1tZWRpdW0tY29sb3I6IHJnYmEodmFyKC0tcHJpbWFyeS1jb2xvci1udW1lcmljKSwgMC43KTtcbiAgICAtLXByaW1hcnktY29sb3ItZm9udC1kaXNhYmxlZC1jb2xvcjogcmdiYSh2YXIoLS1wcmltYXJ5LWNvbG9yLW51bWVyaWMpLCAwLjQpO1xuICAgIC0tcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWU6IHJnYmEodmFyKC0tcHJpbWFyeS1jb2xvci1udW1lcmljKSwgMC4wNik7XG4gICAgLS1wcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZTogcmdiYSh2YXIoLS1wcmltYXJ5LWNvbG9yLW51bWVyaWMpLCAwLjE4KTtcblxuICAgIC0tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAtLXNlY29uZGFyeS1jb2xvci1ob3Zlci1zb2xpZDogdmFyKC0tbWQtcmVmLXBhbGV0dGUtc2Vjb25kYXJ5NzApO1xuICAgIC0tc2Vjb25kYXJ5LWNvbG9yLWZvY3VzLXNvbGlkOiAgdmFyKC0tbWQtcmVmLXBhbGV0dGUtc2Vjb25kYXJ5ODApO1xuICAgIC0tc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXIpO1xuICAgIC0tZm9udC1vbi1zZWNvbmRhcnktY29udGFpbmVyLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lcik7XG5cbiAgICAtLW1kX3N5c19jb2xvcl9vbi1zdXJmYWNlOiAyOCwgMjcsIDMxO1xufVxuXG4vL2ltcG9ydGFudDogd2hlbiBhbGwgdmFyaWFibGVzIGFyZSBhc3NpZ25lZCB0aGlzIGNvdWxkIGJlIHJlbW92ZWQgYXMgd2lsbCBiZSBubyBkaWZmZXJlbmNlXG46cm9vdFt0aGVtZT0nZGFyayddIHtcbiAgICAtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1kaXNhYmxlZDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcblxuICAgIC0taG92ZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG4gICAgLS1mb2N1cy1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAtLWZvY3VzLWNvbG9yLXNvbGlkOiAjNDI0MjQyO1xuXG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC00ZHA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOSk7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yLXNsaWdodC1lbXBoYXNpczogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcblxuICAgIC0tc2VwYXJhdG9yLWNvbG9yOiAjNDI0MjQyOyAvKiBib3JkZXJzIGJldHdlZW4gY29tcG9uZW50cyAqL1xuXG4gICAgLS1lcnJvci1jb2xvcjogI0NGNjY3OTtcblxuICAgIC0tc3dpdGNoLXRodW1iLW9mZi1jb2xvcjogI2JhYmFiYTtcblxuICAgIC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2U6IDIzMCwgMjI1LCAyMjk7XG59XG5cblxuIiwiLy8gQ29sb3IgQ2xhc3Nlc1xuXG5AZWFjaCAkY29sb3JfbmFtZSwgJGNvbG9yIGluICRjb2xvcnMge1xuICBAZWFjaCAkY29sb3JfdHlwZSwgJGNvbG9yX3ZhbHVlIGluICRjb2xvciB7XG4gICAgQGlmICRjb2xvcl90eXBlID09IFwiYmFzZVwiIHtcbiAgICAgIC4jeyRjb2xvcl9uYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLiN7JGNvbG9yX25hbWV9LXRleHQge1xuICAgICAgICBjb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2xvcl9uYW1lICE9IFwic2hhZGVzXCIge1xuICAgICAgLiN7JGNvbG9yX25hbWV9LiN7JGNvbG9yX3R5cGV9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuI3skY29sb3JfbmFtZX0tdGV4dC50ZXh0LSN7JGNvbG9yX3R5cGV9IHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaGFkZSBjbGFzc2VzXG5AZWFjaCAkY29sb3IsICRjb2xvcl92YWx1ZSBpbiAkc2hhZGVzIHtcbiAgLiN7JGNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLiN7JGNvbG9yfS10ZXh0IHtcbiAgICBjb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrO1xufVxuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8vIEdldHMgcmlkIG9mIHRhcCBhY3RpdmUgc3RhdGVcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy8gUG9zaXRpb25pbmdcbi52YWxpZ24td3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIGNsYXNzaWMgY2xlYXJmaXhcbi5jbGVhcmZpeCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vLyBaLWxldmVsc1xuLnotZGVwdGgtMCB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogMmRwIGVsZXZhdGlvbiBtb2RpZmllZCovXG4uei1kZXB0aC0xIHtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSxcbiAgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjEyKSxcbiAgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uei1kZXB0aC0xLWhhbGYge1xuICBib3gtc2hhZG93OiAwIDNweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA3cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDNweCAxcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIDZkcCBlbGV2YXRpb24gbW9kaWZpZWQqL1xuLnotZGVwdGgtMiB7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksXG4gIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi8qIDEyZHAgZWxldmF0aW9uIG1vZGlmaWVkKi9cbi56LWRlcHRoLTMge1xuICBib3gtc2hhZG93OiAwIDhweCAxN3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLFxuICAwIDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAwIDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIDE2ZHAgZWxldmF0aW9uICovXG4uei1kZXB0aC00IHtcbiAgYm94LXNoYWRvdzogMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksXG4gIDAgNnB4IDMwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMiksXG4gIDAgOHB4IDEwcHggLTdweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIDI0ZHAgZWxldmF0aW9uICovXG4uei1kZXB0aC01IHtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksXG4gIDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMiksXG4gIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uaG92ZXJhYmxlIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzO1xuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgfVxufVxuXG4vLyBEaXZpZGVyc1xuLmRpdmlkZXIge1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRpdmlkZXItY29sb3I7XG59XG5cbi8vICBCbG9ja3F1b3RlXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xufVxuXG4vLyBJY29uIFN0eWxlc1xuaSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAmLmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgIC8vIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgLy8gbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbiAgJi50aW55IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgJi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gICYubWVkaXVtIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbiAgJi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiA2cmVtO1xuICB9XG59XG5cbi8vIEltYWdlc1xuaW1nLnJlc3BvbnNpdmUtaW1nLFxudmlkZW8ucmVzcG9uc2l2ZS12aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBQYWdpbmF0aW9uXG4ucGFnaW5hdGlvbiB7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSBhIHtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCBhIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gIH1cblxuXG4gIGxpLnBhZ2VzIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBsaS5wcmV2LFxuICAgIGxpLm5leHQge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG5cbiAgICBsaS5wYWdlcyB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG59XG5cbi8vIEJyZWFkY3J1bWJzXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tZWRpdW07XG5cbiAgaSxcbiAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICBpLm1hdGVyaWFsLWljb25zLCBpLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQsXG4gIGkubWF0ZXJpYWwtc3ltYm9scy1yb3VuZGVkLCBpLm1hdGVyaWFsLXN5bWJvbHMtc2hhcnAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxFNUNDJztcbiAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tZWRpdW07XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBTeW1ib2xzIE91dGxpbmVkJywgJ01hdGVyaWFsIFN5bWJvbHMgUm91bmRlZCcsICdNYXRlcmlhbCBTeW1ib2xzIFNoYXJwJywgJ01hdGVyaWFsIEljb25zJztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbWFyZ2luOiAwIDEwcHggMCA4cHg7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbjtcbiAgfVxufVxuXG4vLyBQYXJhbGxheFxuLnBhcmFsbGF4LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiA1MDBweDtcblxuICAucGFyYWxsYXgge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQdXNocGluXG4ucGluLXRvcCwgLnBpbi1ib3R0b20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5waW5uZWQge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuICBUcmFuc2l0aW9uIENsYXNzZXNcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbnVsLnN0YWdnZXJlZC1saXN0IGxpIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmZhZGUtaW4ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqXG4gIE1lZGlhIFF1ZXJ5IENsYXNzZXNcbioqKioqKioqKioqKioqKioqKioqKiovXG4uaGlkZS1vbi1zbWFsbC1vbmx5LCAuaGlkZS1vbi1zbWFsbC1hbmQtZG93biB7XG4gIEBtZWRpYSAjeyRzbWFsbC1hbmQtZG93bn0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1tZWQtYW5kLWRvd24ge1xuICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLW9uLW1lZC1hbmQtdXAge1xuICBAbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1tZWQtb25seSB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi11cCkgYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLW9uLWxhcmdlLW9ubHkge1xuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLW9uLWV4dHJhLWxhcmdlLW9ubHkge1xuICBAbWVkaWEgI3skZXh0cmEtbGFyZ2UtYW5kLXVwfSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LW9uLWV4dHJhLWxhcmdlIHtcbiAgQG1lZGlhICN7JGV4dHJhLWxhcmdlLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctb24tbGFyZ2Uge1xuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1vbi1tZWRpdW0ge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tdXApIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctb24tc21hbGwge1xuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LW9uLW1lZGl1bS1hbmQtdXAge1xuICBAbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctb24tbWVkaXVtLWFuZC1kb3duIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBDZW50ZXIgdGV4dCBvbiBtb2JpbGVcbi5jZW50ZXItb24tc21hbGwtb25seSB7XG4gIEBtZWRpYSAjeyRzbWFsbC1hbmQtZG93bn0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vLyBGb290ZXJcbi5wYWdlLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBjb2xvcjogJGZvb3Rlci1mb250LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJnLWNvbG9yO1xuXG4gIGEge1xuICAgIGNvbG9yOiAkZm9vdGVyLWZvbnQtY29sb3I7XG4gIH1cblxuICAuZm9vdGVyLWNvcHlyaWdodCxcbiAgLmZvb3Rlci1jb3B5cmlnaHQgYSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgY29sb3I6ICRmb290ZXItY29weXJpZ2h0LWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1jb3B5cmlnaHQtYmctY29sb3I7XG4gIH1cbn1cblxuLnBhZ2UtZm9vdGVyIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vIFRhYmxlc1xudGFibGUsIHRoLCB0ZCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuXG4gICYuc3RyaXBlZCB7XG4gICAgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gICAgdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLmhpZ2hsaWdodCA+IHRib2R5ID4gdHIge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWU7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1tZWRpdW07XG4gIH1cblxuICAmLmNlbnRlcmVkIHtcbiAgICB0aGVhZCB0ciB0aCwgdGJvZHkgdHIgdGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG50ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xufVxuXG50ZCwgdGgge1xuICBwYWRkaW5nOiAxNXB4IDVweDtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBUYWJsZVxuQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuXG4gIHRhYmxlLnJlc3BvbnNpdmUtdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgdGQ6ZW1wdHk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYTAnO1xuICAgIH1cblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuXG4gICAgICAgIHRoOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwwMGEwXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgIHRyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtaW4taGVpZ2h0OiAxLjI1ZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgLyogc29ydCBvdXQgYm9yZGVycyAqL1xuICAgIHRoZWFkIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgVmlkZW9zXG4udmlkZW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLCBvYmplY3QsIGVtYmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqXG4gIFV0aWxpdHkgQ2xhc3Nlc1xuKioqKioqKioqKioqKioqKioqKi9cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vLyBUZXh0IEFsaWduXG4ubGVmdC1hbGlnbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ucmlnaHQtYWxpZ24ge1xuICB0ZXh0LWFsaWduOiByaWdodFxufVxuLmNlbnRlciwgLmNlbnRlci1hbGlnbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gVE9ETzogUmVtb3ZlIHRoaXNcbi5sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbi5yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4vLyBObyBUZXh0IFNlbGVjdFxuLm5vLXNlbGVjdCB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5jZW50ZXItYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi50cnVuY2F0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbi5uby1wYWRkaW5nIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgVXRpbGl0eSBTcGFjaW5nIENsYXNzZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4kc3BhY2luZy1zaG9ydGN1dHM6IChcIm1hcmdpblwiOiBcIm1cIiwgXCJwYWRkaW5nXCI6IFwicFwiKSAhZGVmYXVsdDtcbiRzcGFjaW5nLWRpcmVjdGlvbnM6IChcInRvcFwiOiBcInRcIiwgXCJyaWdodFwiOiBcInJcIiwgXCJib3R0b21cIjogXCJiXCIsIFwibGVmdFwiOiBcImxcIikgIWRlZmF1bHQ7XG4kc3BhY2luZy1ob3Jpem9udGFsOiBcInhcIiAhZGVmYXVsdDtcbiRzcGFjaW5nLXZlcnRpY2FsOiBcInlcIiAhZGVmYXVsdDtcbiRzcGFjaW5nLXZhbHVlczogKFwiMFwiOiAwLCBcIjFcIjogMC4yNXJlbSwgXCIyXCI6IDAuNXJlbSwgXCIzXCI6IDAuNzVyZW0sIFwiNFwiOiAxcmVtLCBcIjVcIjogMS41cmVtLCBcIjZcIjogM3JlbSwgXCJhdXRvXCI6IGF1dG8pICFkZWZhdWx0OyBcblxuQGVhY2ggJHByb3BlcnR5LCAkc2hvcnRjdXQgaW4gJHNwYWNpbmctc2hvcnRjdXRze1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRzcGFjaW5nLXZhbHVlc3tcbiAgICAvLyBBbGwgZGlyZWN0aW9uIHNwYWNpbmdcblxuICAgIC4jeyRzaG9ydGN1dH0tI3skbmFtZX17XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vICh0LCBiLCByLCBsKSBzcGFjaW5nXG4gICAgQGVhY2ggJGRpcmVjdGlvbiwgJHN1ZmZpeCBpbiAkc3BhY2luZy1kaXJlY3Rpb25ze1xuICAgICAgLiN7JHNob3J0Y3V0fSN7JHN1ZmZpeH0tI3skbmFtZX17XG4gICAgICAgICN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259OiAkdmFsdWUgIWltcG9ydGFudCBcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB4IHNwYWNpbmdcbiAgICBAaWYgJHNwYWNpbmctaG9yaXpvbnRhbCAhPSBudWxse1xuICAgICAgIC4jeyRzaG9ydGN1dH0jeyRzcGFjaW5nLWhvcml6b250YWx9LSN7JG5hbWV9e1xuICAgICAgICAgI3skcHJvcGVydHl9LWxlZnQ6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgI3skcHJvcGVydHl9LXJpZ2h0OiAkdmFsdWUgIWltcG9ydGFudDtcbiAgICAgICB9XG4gICAgfVxuXG4gICAgLy8geSBzcGFjaW5nXG4gICAgQGlmICRzcGFjaW5nLXZlcnRpY2FsICE9IG51bGx7XG4gICAgICAuI3skc2hvcnRjdXR9I3skc3BhY2luZy12ZXJ0aWNhbH0tI3skbmFtZX17XG4gICAgICAgICN7JHByb3BlcnR5fS10b3A6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAjeyRwcm9wZXJ0eX0tYm90dG9tOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuICAgICAgXG4gIH1cbn0gIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1hdGVyaWFsaXplIHZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vXG4vLyBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgMS4gQ29sb3JzXG4vLyAgMi4gQmFkZ2VzXG4vLyAgMy4gQnV0dG9uc1xuLy8gIDQuIENhcmRzXG4vLyAgNS4gQ2Fyb3VzZWxcbi8vICA2LiBDb2xsYXBzaWJsZVxuLy8gIDcuIERhdGUgKyBUaW1lIFBpY2tlclxuLy8gIDguIERyb3Bkb3duXG4vLyAgOS4gRm9ybXNcbi8vICAxMC4gQ2hpcHNcbi8vICAxMS4gR2xvYmFsXG4vLyAgMTIuIEdyaWRcbi8vICAxMy4gTmF2aWdhdGlvbiBCYXJcbi8vICAxNC4gU2lkZSBOYXZpZ2F0aW9uXG4vLyAgMTUuIFBob3RvIFNsaWRlclxuLy8gIDE2LiBTcGlubmVycyB8IExvYWRlcnNcbi8vICAxNy4gVGFic1xuLy8gIDE4LiBUYWJsZXNcbi8vICAxOS4gVG9hc3RzXG4vLyAgMjAuIFRvb2x0aXBzXG4vLyAgMjEuIFR5cG9ncmFwaHlcbi8vICAyMi4gRm9vdGVyXG4vLyAgMjMuIEZsb3cgVGV4dFxuLy8gIDI0LiBDb2xsZWN0aW9uc1xuLy8gIDI1LiBQcm9ncmVzcyBCYXJcblxuXG4vLyBUeXBlU2NhbGVcbiRtZF9zeXNfdHlwZXNjYWxlX2JvZHktbGFyZ2Vfc2l6ZTogMTZweDtcblxuXG4vLyAxLiBDb2xvcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuJHByaW1hcnktY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZGFyazogdmFyKC0tcHJpbWFyeS1jb2xvci1kYXJrKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLXdoZW4taG92ZXJlZC1zb2xpZDogdmFyKC0tcHJpbWFyeS1jb2xvci1yYWlzZWQtaG92ZXItc29saWQpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3Itd2hlbi1mb2N1c2VkLXNvbGlkOiB2YXIoLS1wcmltYXJ5LWNvbG9yLXJhaXNlZC1mb2N1cy1zb2xpZCkgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1mb250LWVtcGhhc2l6ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1mb250LW1lZGl1bS1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvci1mb250LW1lZGl1bS1jb2xvcikgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1mb250LWRpc2FibGVkLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yLWZvbnQtZGlzYWJsZWQtY29sb3IpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItaG92ZXItb3BhcXVlOiB2YXIoLS1wcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZSkgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1mb2N1cy1vcGFxdWU6IHZhcigtLXByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlKSAhZGVmYXVsdDtcblxuJGZvbnQtY29sb3ItbWFpbjogdmFyKC0tZm9udC1jb2xvci1tYWluKSAhZGVmYXVsdDtcbiRmb250LWNvbG9yLW1lZGl1bTogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuJGZvbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWZvbnQtY29sb3ItZGlzYWJsZWQpICFkZWZhdWx0O1xuXG4kZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW46IHZhcigtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluKSAhZGVmYXVsdDtcbiRmb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtKSAhZGVmYXVsdDtcbiRmb250LW9uLXByaW1hcnktY29sb3ItZGlzYWJsZWQ6IHZhcigtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG4kZm9udC1vbi1zZWNvbmRhcnktY29sb3ItbWFpbjogdmFyKC0tZm9udC1vbi1zZWNvbmRhcnktY29sb3ItbWFpbikgIWRlZmF1bHQ7XG5cbiRzZWNvbmRhcnktY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yLXdoZW4taG92ZXJlZC1zb2xpZDogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yLWhvdmVyLXNvbGlkKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3Itd2hlbi1mb2N1c2VkLXNvbGlkOiB2YXIoLS1zZWNvbmRhcnktY29sb3ItZm9jdXMtc29saWQpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb250YWluZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb250YWluZXItY29sb3IpICFkZWZhdWx0O1xuJGZvbnQtb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjogdmFyKC0tZm9udC1vbi1zZWNvbmRhcnktY29udGFpbmVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHN1Y2Nlc3MtY29sb3I6IGNvbG9yKFwiZ3JlZW5cIiwgXCJiYXNlXCIpICFkZWZhdWx0O1xuJGVycm9yLWNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcikgIWRlZmF1bHQ7XG4kbGluay1jb2xvcjogY29sb3IoXCJsaWdodC1ibHVlXCIsIFwiZGFya2VuLTFcIikgIWRlZmF1bHQ7XG5cbiRzdXJmYWNlLWNvbG9yOiB2YXIoLS1zdXJmYWNlLWNvbG9yKSAhZGVmYXVsdDtcbiRzdXJmYWNlLWhvdmVyLWNvbG9yLW9wYXF1ZTogdmFyKC0taG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlOiB2YXIoLS1mb2N1cy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkaXZpZGVyLWNvbG9yOiB2YXIoLS1zZXBhcmF0b3ItY29sb3IpO1xuXG4vLyAyLiBCYWRnZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRiYWRnZS1iZy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYmFkZ2UtaGVpZ2h0OiAyMnB4ICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3ItYWN0aXZlOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3ItbmV3OiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG5cbi8vIDMuIEJ1dHRvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIFJhaXNlZCBidXR0b25zXG4kYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tcmFpc2VkLWJhY2tncm91bmQtaG92ZXI6ICRwcmltYXJ5LWNvbG9yLXdoZW4taG92ZXJlZC1zb2xpZCAhZGVmYXVsdDtcbiRidXR0b24tcmFpc2VkLWJhY2tncm91bmQtZm9jdXM6ICRwcmltYXJ5LWNvbG9yLXdoZW4tZm9jdXNlZC1zb2xpZCAhZGVmYXVsdDtcbiRidXR0b24tcmFpc2VkLWNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG5cbi8vIFNoYXJlZCBzdHlsZXNcbiRidXR0b24tYm9yZGVyOiBub25lICFkZWZhdWx0O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWZvY3VzOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWZvY3VzICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kYnV0dG9uLWljb24tZm9udC1zaXplOiAxOHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1oZWlnaHQ6IDQwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAgMTZweCAhZGVmYXVsdDtcbiRidXR0b24tcmFkaXVzOiA0cHggIWRlZmF1bHQ7XG5cbi8vIERpc2FibGVkIHN0eWxlc1xuJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKSAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGlzYWJsZWQpICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBidXR0b25zXG4kYnV0dG9uLWxhcmdlLWZvbnQtc2l6ZTogMThweCAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtaWNvbi1mb250LXNpemU6IDEuNnJlbSAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtaGVpZ2h0OiAkYnV0dG9uLWhlaWdodCAqIDEuNSAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTogNTZweCAhZGVmYXVsdDtcblxuLy8gU21hbGwgYnV0dG9uc1xuJGJ1dHRvbi1zbWFsbC1mb250LXNpemU6IDEzcHggIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLWljb24tZm9udC1zaXplOiAxLjJyZW0gIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLWhlaWdodDogJGJ1dHRvbi1oZWlnaHQgKiAuNzUgIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLXBhZGRpbmc6IDAgOHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1mbG9hdGluZy1zbWFsbC1zaXplOiAkYnV0dG9uLWhlaWdodCAqIC43NSAhZGVmYXVsdDtcblxuLy8gRmxhdCBidXR0b25zXG4kYnV0dG9uLWZsYXQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKSAhZGVmYXVsdDtcbiRidXR0b24tZmxhdC1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsYXQtZm9jdXMtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9jdXMtY29sb3IpICFkZWZhdWx0O1xuJGJ1dHRvbi1mbGF0LWRpc2FibGVkLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRpc2FibGVkKSAhZGVmYXVsdDtcblxuLy8gRmxvYXRpbmcgYnV0dG9uc1xuJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kLWhvdmVyOiAkc2Vjb25kYXJ5LWNvbG9yLXdoZW4taG92ZXJlZC1zb2xpZCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZC1mb2N1czogJHNlY29uZGFyeS1jb2xvci13aGVuLWZvY3VzZWQtc29saWQgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLWNvbG9yOiAkZm9udC1vbi1zZWNvbmRhcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctcmFkaXVzOiAxNnB4ICFkZWZhdWx0O1xuXG5cbi8vIDQuIENhcmRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY2FyZC1wYWRkaW5nOiAyNHB4ICFkZWZhdWx0O1xuJGNhcmQtYmctY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3ItY2FyZCkgIWRlZmF1bHQ7XG4kY2FyZC1saW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyA1LiBDYXJvdXNlbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNhcm91c2VsLWhlaWdodDogNDAwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaXRlbS1oZWlnaHQ6ICRjYXJvdXNlbC1oZWlnaHQgKiAwLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaXRlbS13aWR0aDogJGNhcm91c2VsLWl0ZW0taGVpZ2h0ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3ItY29sb3IpICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1jb2xvci1hY3RpdmU6IHZhcigtLWNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtY29sb3IpICFkZWZhdWx0O1xuXG4vLyA2LiBDb2xsYXBzaWJsZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNvbGxhcHNpYmxlLWhlaWdodDogM3JlbSAhZGVmYXVsdDtcbiRjb2xsYXBzaWJsZS1saW5lLWhlaWdodDogJGNvbGxhcHNpYmxlLWhlaWdodCAhZGVmYXVsdDtcbiRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I6ICRkaXZpZGVyLWNvbG9yICFkZWZhdWx0O1xuJGNvbGxhcHNpYmxlLWJnLWNvbG9yOiAkc3VyZmFjZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyA3LiBEYXRlICsgVGltZSBQaWNrZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRkYXRlcGlja2VyLWRpc3BsYXktZm9udC1zaXplOiAyLjhyZW07XG4kZGF0ZXBpY2tlci1jYWxlbmRhci1oZWFkZXItY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiRkYXRlcGlja2VyLXllYXI6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWRheS1mb2N1czogJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItZGF5LWhvdmVyOiAkcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWUgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1kYXktZm9udC1jb2xvcjogJGZvbnQtY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWRheS1mb250LWNvbG9yLWRpc2FibGVkOiAkZm9udC1jb2xvci1kaXNhYmxlZCAhZGVmYXVsdDtcblxuJHRpbWVwaWNrZXItY2xvY2stYmc6ICRzdXJmYWNlLWNvbG9yICFkZWZhdWx0O1xuJHRpbWVwaWNrZXItY2xvY2stY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kdGltZXBpY2tlci1jbG9jay1wbGF0ZS1iZzogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC00ZHApICFkZWZhdWx0O1xuXG5cbi8vIDguIERyb3Bkb3duXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZHJvcGRvd24tYmctY29sb3I6ICRzdXJmYWNlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9jdXMtYmctY29sb3I6ICRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1oZWlnaHQ6IDUwcHggIWRlZmF1bHQ7XG5cblxuLy8gOS4gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIFRleHQgSW5wdXRzICsgVGV4dGFyZWFcbiRpbnB1dC1oZWlnaHQ6IDNyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kaW5wdXQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyOiAycHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1jb2xvcjogJGVycm9yLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LXN1Y2Nlc3MtY29sb3I6ICRzdWNjZXNzLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kaW5wdXQtbWFyZ2luLWJvdHRvbTogOHB4O1xuJGlucHV0LW1hcmdpbjogMCAwICRpbnB1dC1tYXJnaW4tYm90dG9tIDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZzogMCAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRpc2FibGVkKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWludmFsaWQtYm9yZGVyOiAycHggc29saWQgJGlucHV0LWVycm9yLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWljb24tc2l6ZTogMnJlbTtcbiRwbGFjZWhvbGRlci10ZXh0LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG5cbiR0ZXh0ZmllbGRfZGlzYWJsZWRfY29udGFpbmVyY29sb3I6IHJnYmEodmFyKC0tbWRfc3lzX2NvbG9yX29uLXN1cmZhY2UpLCAwLjA0KTtcbiR0ZXh0ZmllbGRfZGlzYWJsZWRfb3V0bGluZWNvbG9yOiByZ2JhKHZhcigtLW1kX3N5c19jb2xvcl9vbi1zdXJmYWNlKSwgMC4xMik7XG4kdGV4dGZpZWxkX2Rpc2FibGVkX2NvbG9yOiByZ2JhKHZhcigtLW1kX3N5c19jb2xvcl9vbi1zdXJmYWNlKSwgMC4zOCk7XG5cbi8vIFJhZGlvIEJ1dHRvbnNcbiRyYWRpby1maWxsLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRyYWRpby1mb2N1cy1jb2xvcjogJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlICFkZWZhdWx0O1xuJHJhZGlvLWVtcHR5LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kcmFkaW8tYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWZpbGwtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFJhbmdlXG4kcmFuZ2UtaGVpZ2h0OiAxNHB4ICFkZWZhdWx0O1xuJHJhbmdlLXdpZHRoOiAxNHB4ICFkZWZhdWx0O1xuJHRyYWNrLWhlaWdodDogM3B4ICFkZWZhdWx0O1xuJHJhbmdlLXRyYWNrLWNvbG9yOiB2YXIoLS1zbGlkZXItdHJhY2stY29sb3IpICFkZWZhdWx0O1xuXG4vLyBTZWxlY3RcbiRzZWxlY3QtYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2VwYXJhdG9yLWNvbG9yKSAhZGVmYXVsdDtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHN1cmZhY2UtY29sb3IgIWRlZmF1bHQ7XG4kc2VsZWN0LWZvY3VzOiAxcHggc29saWQgJHByaW1hcnktY29sb3Itd2hlbi1mb2N1c2VkLXNvbGlkICFkZWZhdWx0O1xuJHNlbGVjdC1vcHRpb24taG92ZXI6ICRzdXJmYWNlLWhvdmVyLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRzZWxlY3Qtb3B0aW9uLWZvY3VzOiAkc3VyZmFjZS1mb2N1cy1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kc2VsZWN0LW9wdGlvbi1zZWxlY3RlZDogJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlICFkZWZhdWx0O1xuJHNlbGVjdC1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG4kc2VsZWN0LXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJHNlbGVjdC1kaXNhYmxlZC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG4kc2VsZWN0LWlucHV0LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuXG4vLyBTd2l0Y2hlc1xuJHN3aXRjaC10aHVtYi1jaGVja2VkLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2gtdGh1bWItdW5jaGVja2VkLWNvbG9yOiB2YXIoLS1zd2l0Y2gtdGh1bWItb2ZmLWNvbG9yKTtcbiRzd2l0Y2gtcmVhY3Rpb24tY2hlY2tlZC1mb2N1cy1jb2xvcjogJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlICFkZWZhdWx0O1xuJHN3aXRjaC1yZWFjdGlvbi11bmNoZWNrZWQtZm9jdXMtY29sb3I6ICRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRzd2l0Y2gtcmVhY3Rpb24tY2hlY2tlZC1ob3Zlci1jb2xvcjogJHByaW1hcnktY29sb3ItaG92ZXItb3BhcXVlICFkZWZhdWx0O1xuJHN3aXRjaC1yZWFjdGlvbi11bmNoZWNrZWQtaG92ZXItY29sb3I6ICRzdXJmYWNlLWhvdmVyLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRzd2l0Y2gtdHJhY2stY2hlY2tlZC1iZzogcmdiYSh2YXIoLS1wcmltYXJ5LWNvbG9yLW51bWVyaWMpLCAwLjMyKSAhZGVmYXVsdDtcbiRzd2l0Y2gtdHJhY2stdW5jaGVja2VkLWJnOiB2YXIoLS1zbGlkZXItdHJhY2stY29sb3IpICFkZWZhdWx0O1xuJHN3aXRjaC1yYWRpdXM6IDE1cHggIWRlZmF1bHQ7XG5cbi8vIDEwLiBDaGlwc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNoaXAtYmctY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3ItbGV2ZWwtNGRwKSAhZGVmYXVsdDtcbiRjaGlwLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjaGlwLWZvbnQtY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bSAhZGVmYXVsdDtcbiRjaGlwLXNlbGVjdGVkLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjaGlwLXNlbGVjdGVkLWZvbnQtY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRjaGlwLW1hcmdpbjogNXB4ICFkZWZhdWx0O1xuXG5cbi8vIDExLiBHbG9iYWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIE1lZGlhIFF1ZXJ5IFJhbmdlc1xuJHNtYWxsLXNjcmVlbi11cDogNjAxcHggIWRlZmF1bHQ7XG4kbWVkaXVtLXNjcmVlbi11cDogOTkzcHggIWRlZmF1bHQ7XG4kbGFyZ2Utc2NyZWVuLXVwOiAxMjAxcHggIWRlZmF1bHQ7XG4kc21hbGwtc2NyZWVuOiA2MDAuOTlweCAhZGVmYXVsdDtcbiRtZWRpdW0tc2NyZWVuOiA5OTIuOTlweCAhZGVmYXVsdDtcbiRsYXJnZS1zY3JlZW46IDEyMDAuOTlweCAhZGVmYXVsdDtcblxuJG1lZGl1bS1hbmQtdXA6IFwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAjeyRzbWFsbC1zY3JlZW4tdXB9KVwiICFkZWZhdWx0O1xuJGxhcmdlLWFuZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JG1lZGl1bS1zY3JlZW4tdXB9KVwiICFkZWZhdWx0O1xuJGV4dHJhLWxhcmdlLWFuZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JGxhcmdlLXNjcmVlbi11cH0pXCIgIWRlZmF1bHQ7XG4kc21hbGwtYW5kLWRvd246IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAjeyRzbWFsbC1zY3JlZW59KVwiICFkZWZhdWx0O1xuJG1lZGl1bS1hbmQtZG93bjogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICN7JG1lZGl1bS1zY3JlZW59KVwiICFkZWZhdWx0O1xuJG1lZGl1bS1vbmx5OiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogI3skc21hbGwtc2NyZWVuLXVwfSkgYW5kIChtYXgtd2lkdGggOiAjeyRtZWRpdW0tc2NyZWVufSlcIiAhZGVmYXVsdDtcblxuXG4vLyAxMi4gR3JpZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG51bS1jb2xzOiAxMiAhZGVmYXVsdDtcbiRndXR0ZXItd2lkdGg6IDEuNXJlbSAhZGVmYXVsdDtcbiRlbGVtZW50LXRvcC1tYXJnaW46IG1hdGguZGl2KCRndXR0ZXItd2lkdGgsIDMpICFkZWZhdWx0O1xuJGVsZW1lbnQtYm90dG9tLW1hcmdpbjogbWF0aC5kaXYoJGd1dHRlci13aWR0aCoyLCAzKSAhZGVmYXVsdDtcblxuXG4vLyAxMy4gTmF2aWdhdGlvbiBCYXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRuYXZiYXItaGVpZ2h0OiA2NHB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5lLWhlaWdodDogJG5hdmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kbmF2YmFyLWhlaWdodC1tb2JpbGU6IDU2cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmUtaGVpZ2h0LW1vYmlsZTogJG5hdmJhci1oZWlnaHQtbW9iaWxlICFkZWZhdWx0O1xuJG5hdmJhci1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLWZvbnQtY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRuYXZiYXItYmctY29sb3ItZm9jdXM6ICRwcmltYXJ5LWNvbG9yLXdoZW4tZm9jdXNlZC1zb2xpZCAhZGVmYXVsdDtcbiRuYXZiYXItYmctY29sb3ItaG92ZXI6ICRwcmltYXJ5LWNvbG9yLXdoZW4taG92ZXJlZC1zb2xpZCAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAyLjFyZW0gIWRlZmF1bHQ7XG5cbi8vIDE0LiBTaWRlIE5hdmlnYXRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRzaWRlbmF2LXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcbiRzaWRlbmF2LWZvbnQtc2l6ZTogMTRweCAhZGVmYXVsdDtcbiRzaWRlbmF2LWZvbnQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kc2lkZW5hdi1iZy1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC0xNmRwLXNvbGlkKSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKSAhZGVmYXVsdDtcbiRzaWRlbmF2LXN1YmhlYWRlci1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuJHNpZGVuYXYtcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbiRzaWRlbmF2LWl0ZW0taGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJHNpZGVuYXYtbGluZS1oZWlnaHQ6ICRzaWRlbmF2LWl0ZW0taGVpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIDE1LiBQaG90byBTbGlkZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRzbGlkZXItYmctY29sb3I6ICRzdXJmYWNlLWNvbG9yICFkZWZhdWx0O1xuJHNsaWRlci1pbmRpY2F0b3ItY29sb3I6IHZhcigtLXNsaWRlci10cmFjay1jb2xvcikgIWRlZmF1bHQ7XG4kc2xpZGVyLWluZGljYXRvci1jb2xvci1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHNsaWRlci1mdWxsc2NyZWVuLWluZGljYXRvci1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1jb2xvciAhZGVmYXVsdDtcbiRzbGlkZXItZnVsbHNjcmVlbi1pbmRpY2F0b3ItY29sb3ItYWN0aXZlOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWNvbG9yLWFjdGl2ZSAhZGVmYXVsdDtcblxuXG4vLyAxNi4gU3Bpbm5lcnMgfCBMb2FkZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc3Bpbm5lci1kZWZhdWx0LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyAxNy4gVGFic1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRhYnMtdGV4dC1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWZvbnQtZW1waGFzaXplLWNvbG9yICFkZWZhdWx0O1xuJHRhYnMtdGV4dC1pbmFjdGl2ZS1jb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtICFkZWZhdWx0O1xuJHRhYnMtdGV4dC1kaXNhYmxlZC1jb2xvcjogJGZvbnQtY29sb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG4kdGFicy11bmRlcmxpbmUtY29sb3I6ICR0YWJzLXRleHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHRhYnMtYmctY29sb3I6ICRzdXJmYWNlLWNvbG9yICFkZWZhdWx0O1xuXG4vLyAxOC4gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAkZGl2aWRlci1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLXNsaWdodC1lbXBoYXNpcykgIWRlZmF1bHQ7XG5cblxuLy8gMTkuIFRvYXN0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRvYXN0LWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogdmFyKC0tdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC10ZXh0LWNvbG9yOiB2YXIoLS10b29sdGlwLWZvbnQtY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWFjdGlvbi1jb2xvcjogI2VlZmY0MTtcblxuXG4vLyAyMC4gVG9vbHRpcHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0b29sdGlwLWJnLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlKSAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2UpICFkZWZhdWx0O1xuXG5cbi8vIDIxLiBUeXBvZ3JhcGh5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9udC1zdGFjazogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kdGV4dC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tYWluKSAhZGVmYXVsdDtcbi8vIEhlYWRlciBTdHlsZXNcbiRoMS1mb250c2l6ZTogNC4ycmVtICFkZWZhdWx0O1xuJGgyLWZvbnRzaXplOiAzLjU2cmVtICFkZWZhdWx0O1xuJGgzLWZvbnRzaXplOiAyLjkycmVtICFkZWZhdWx0O1xuJGg0LWZvbnRzaXplOiAyLjI4cmVtICFkZWZhdWx0O1xuJGg1LWZvbnRzaXplOiAxLjY0cmVtICFkZWZhdWx0O1xuJGg2LWZvbnRzaXplOiAxLjE1cmVtICFkZWZhdWx0O1xuXG5cbi8vIDIyLiBGb290ZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRmb290ZXItZm9udC1jb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluICFkZWZhdWx0O1xuJGZvb3Rlci1iZy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kZm9vdGVyLWNvcHlyaWdodC1mb250LWNvbG9yOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItZGFyay1tZWRpdW0pICFkZWZhdWx0O1xuJGZvb3Rlci1jb3B5cmlnaHQtYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG5cblxuLy8gMjMuIEZsb3cgVGV4dFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHJhbmdlOiAkbGFyZ2Utc2NyZWVuIC0gJHNtYWxsLXNjcmVlbiAhZGVmYXVsdDtcbiRpbnRlcnZhbHM6IDIwICFkZWZhdWx0O1xuJGludGVydmFsLXNpemU6IG1hdGguZGl2KCRyYW5nZSwgJGludGVydmFscykgIWRlZmF1bHQ7XG5cblxuLy8gMjQuIENvbGxlY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29sbGVjdGlvbi1ib3JkZXItY29sb3I6ICRkaXZpZGVyLWNvbG9yICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tYmctY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tYWN0aXZlLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1jb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24taG92ZXItYmctY29sb3I6ICRzdXJmYWNlLWhvdmVyLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tbGluZS1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWJvcmRlci1yYWRpdXM6IDJweCAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWF2YXRhci1jaXJjbGUtYmctY29sb3I6IHZhcigtLXNsaWRlci10cmFjay1jb2xvcikgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1hdmF0YXItY2lyY2xlLWljb24tY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG5cblxuLy8gMjUuIFByb2dyZXNzIEJhclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHByb2dyZXNzLWJhci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYWNrLWNvbG9yOiByZ2JhKHZhcigtLXByaW1hcnktY29sb3ItbnVtZXJpYyksIDQwJSkgIWRlZmF1bHQ7XG5cbi8vIDI2LiBNb2RhbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRtb2RhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLWxldmVsLTE2ZHAtc29saWQpICFkZWZhdWx0O1xuIiwiLy8gQ29sbGVjdGlvbnNcbi5jb2xsZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbGxlY3Rpb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkY29sbGVjdGlvbi1ib3JkZXItcmFkaXVzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmNvbGxlY3Rpb24taXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxlY3Rpb24tYmctY29sb3I7XG4gICAgbGluZS1oZWlnaHQ6ICRjb2xsZWN0aW9uLWxpbmUtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsZWN0aW9uLWJvcmRlci1jb2xvcjtcblxuICAgIC8vIEF2YXRhciBDb2xsZWN0aW9uXG4gICAgJi5hdmF0YXIge1xuICAgICAgbWluLWhlaWdodDogODRweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNzJweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLy8gRG9uJ3Qgc3R5bGUgY2lyY2xlcyBpbnNpZGUgcHJlbG9hZGVyIGNsYXNzZXMuXG4gICAgICAmOm5vdCguY2lyY2xlLWNsaXBwZXIpID4gLmNpcmNsZSxcbiAgICAgIDpub3QoLmNpcmNsZS1jbGlwcGVyKSA+IC5jaXJjbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgaS5jaXJjbGUge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgICAgICBjb2xvcjogJGNvbGxlY3Rpb24tYXZhdGFyLWNpcmNsZS1pY29uLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1hdmF0YXItY2lyY2xlLWJnLWNvbG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAuc2Vjb25kYXJ5LWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICB9XG5cbiAgICB9XG5cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWFjdGl2ZS1iZy1jb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sbGVjdGlvbi1hY3RpdmUtY29sb3I7XG5cbiAgICAgIC5zZWNvbmRhcnktY29udGVudCB7XG4gICAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYS5jb2xsZWN0aW9uLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgY29sb3I6ICRjb2xsZWN0aW9uLWxpbmstY29sb3I7XG5cbiAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxlY3Rpb24taG92ZXItYmctY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53aXRoLWhlYWRlciB7XG4gICAgLmNvbGxlY3Rpb24taGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWJnLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsZWN0aW9uLWJvcmRlci1jb2xvcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB9XG5cbiAgICAuY29sbGVjdGlvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB9XG5cbiAgICAuY29sbGVjdGlvbi1pdGVtLmF2YXRhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcycHg7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gTWFkZSBsZXNzIHNwZWNpZmljIHRvIGFsbG93IGVhc2llciBvdmVycmlkaW5nXG4uc2Vjb25kYXJ5LWNvbnRlbnQge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLmNvbGxhcHNpYmxlIC5jb2xsZWN0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7XG59IiwiLy8gQmFkZ2VzXG5zcGFuLmJhZGdlIHtcbiAgbWluLXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgaGVpZ2h0OiAkYmFkZ2UtaGVpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICBmbG9hdDogcmlnaHQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJi5uZXcge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvci1uZXc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuICAmLm5ldzphZnRlciB7XG4gICAgY29udGVudDogXCIgbmV3XCI7XG4gIH1cblxuICAmW2RhdGEtYmFkZ2UtY2FwdGlvbl06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIiBhdHRyKGRhdGEtYmFkZ2UtY2FwdGlvbik7XG4gIH1cbn1cblxuLmFjdGl2ZSBzcGFuLmJhZGdlIHtcbiAgY29sb3I6ICRiYWRnZS1jb2xvci1hY3RpdmU7XG59XG5cbi8vIFNwZWNpYWwgY2FzZXNcbm5hdiB1bCBhIHNwYW4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgaGVpZ2h0OiAkYmFkZ2UtaGVpZ2h0O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xufVxuXG4vLyBMaW5lIGhlaWdodCBjZW50ZXJpbmdcbi5jb2xsZWN0aW9uLWl0ZW0gc3Bhbi5iYWRnZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoI3skY29sbGVjdGlvbi1saW5lLWhlaWdodCAqIDAuNX0gLSAjeyRiYWRnZS1oZWlnaHQgKiAwLjV9KTtcbn1cblxuLmNvbGxhcHNpYmxlIHNwYW4uYmFkZ2Uge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNvbGxhcHNpYmxlIC5hY3RpdmUgc3Bhbi5iYWRnZTpub3QoLm5ldykge1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xufVxuXG4uc2lkZW5hdiBzcGFuLmJhZGdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygjeyRzaWRlbmF2LWxpbmUtaGVpZ2h0ICogMC41fSAtICN7JGJhZGdlLWhlaWdodCAqIDAuNX0pO1xufVxuXG50YWJsZSBzcGFuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvKiBUaGlzIGlzIG5lZWRlZCBmb3Igc29tZSBtb2JpbGUgcGhvbmVzIHRvIGRpc3BsYXkgdGhlIEdvb2dsZSBJY29uIGZvbnQgcHJvcGVybHkgKi9cbi5tYXRlcmlhbC1pY29ucywgLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQsXG4ubWF0ZXJpYWwtc3ltYm9scy1yb3VuZGVkLCAubWF0ZXJpYWwtc3ltYm9scy1zaGFycCB7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBDb250YWluZXJcbi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIHdpZHRoOiA5MCU7XG59XG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogODUlO1xuICB9XG59XG5AbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbn1cblxuLnNlY3Rpb24ge1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi8vIE1peGlucyB0byBlbGltaW5hdGUgY29kZSByZXBldGl0aW9uXG5AbWl4aW4gcmVzZXQtb2Zmc2V0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG5AbWl4aW4gZ3JpZC1jbGFzc2VzKCRzaXplLCAkaSwgJHBlcmMpIHtcbiAgJi5vZmZzZXQtI3skc2l6ZX0jeyRpfSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwZXJjO1xuICB9XG4gICYucHVsbC0jeyRzaXplfSN7JGl9IHtcbiAgICByaWdodDogJHBlcmM7XG4gIH1cbiAgJi5wdXNoLSN7JHNpemV9I3skaX0ge1xuICAgIGxlZnQ6ICRwZXJjO1xuICB9XG59XG5cbi5yb3cge1xuICAvLy0tZ3JpZC1nYXA6IDFyZW07XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpOyAvL3JlcGVhdCgxMiwgY2FsYyg4LjMzJSAtIHZhcigtLWdyaWQtZ2FwKSArICh2YXIoLS1ncmlkLWdhcCkgLyAxMikpKTtcbiAgLy9nYXA6IHZhcigtLWdyaWQtZ2FwKTtcblxuICAvLy0tLSBTXG5cbiAgLnMxICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxOyB9XG4gIC5zMiAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMjsgfVxuICAuczMgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDM7IH1cbiAgLnM0ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA0OyB9XG4gIC5zNSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNTsgfVxuICAuczYgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDY7IH1cbiAgLnM3ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA3OyB9XG4gIC5zOCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gODsgfVxuICAuczkgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDk7IH1cbiAgLnMxMCB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMDsgfVxuICAuczExIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDExOyB9XG4gIC5zMTIgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTI7IH1cblxuICAub2Zmc2V0LXMxIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAzOyB9XG4gIC5vZmZzZXQtczIgeyBncmlkLWNvbHVtbi1zdGFydDogIDI7IH1cbiAgLm9mZnNldC1zMyB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNDsgfVxuICAub2Zmc2V0LXM0IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA1OyB9XG4gIC5vZmZzZXQtczUgeyBncmlkLWNvbHVtbi1zdGFydDogIDY7IH1cbiAgLm9mZnNldC1zNiB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNzsgfVxuICAub2Zmc2V0LXM3IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA4OyB9XG4gIC5vZmZzZXQtczggeyBncmlkLWNvbHVtbi1zdGFydDogIDk7IH1cbiAgLm9mZnNldC1zOSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMDsgfVxuICAub2Zmc2V0LXMxMCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMTsgfVxuICAub2Zmc2V0LXMxMSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMjsgfVxuXG4gIC8vLS0tIE1cbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgICAubTEgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDE7IH1cbiAgICAubTIgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDI7IH1cbiAgICAubTMgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDM7IH1cbiAgICAubTQgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDQ7IH1cbiAgICAubTUgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDU7IH1cbiAgICAubTYgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDY7IH1cbiAgICAubTcgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDc7IH1cbiAgICAubTggIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDg7IH1cbiAgICAubTkgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDk7IH1cbiAgICAubTEwIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDEwOyB9XG4gICAgLm0xMSB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMTsgfVxuICAgIC5tMTIgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTI7IH1cbiAgXG4gICAgLm9mZnNldC1tMSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgMjsgfVxuICAgIC5vZmZzZXQtbTIgeyBncmlkLWNvbHVtbi1zdGFydDogIDM7IH1cbiAgICAub2Zmc2V0LW0zIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA0OyB9XG4gICAgLm9mZnNldC1tNCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNTsgfVxuICAgIC5vZmZzZXQtbTUgeyBncmlkLWNvbHVtbi1zdGFydDogIDY7IH1cbiAgICAub2Zmc2V0LW02IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA3OyB9XG4gICAgLm9mZnNldC1tNyB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgODsgfVxuICAgIC5vZmZzZXQtbTggeyBncmlkLWNvbHVtbi1zdGFydDogIDk7IH1cbiAgICAub2Zmc2V0LW05IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEwOyB9XG4gICAgLm9mZnNldC1tMTAgeyBncmlkLWNvbHVtbi1zdGFydDogMTE7IH1cbiAgICAub2Zmc2V0LW0xMSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMjsgfVxuICB9XG5cbiAgLy8tLS0gTFxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgLmwxICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxOyB9XG4gICAgLmwyICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAyOyB9XG4gICAgLmwzICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAzOyB9XG4gICAgLmw0ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA0OyB9XG4gICAgLmw1ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA1OyB9XG4gICAgLmw2ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA2OyB9XG4gICAgLmw3ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA3OyB9XG4gICAgLmw4ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA4OyB9XG4gICAgLmw5ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA5OyB9XG4gICAgLmwxMCB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMDsgfVxuICAgIC5sMTEgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTE7IH1cbiAgICAubDEyIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDEyOyB9XG4gIFxuICAgIC5vZmZzZXQtbDEgIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAyOyB9XG4gICAgLm9mZnNldC1sMiAgeyBncmlkLWNvbHVtbi1zdGFydDogIDM7IH1cbiAgICAub2Zmc2V0LWwzICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNDsgfVxuICAgIC5vZmZzZXQtbDQgIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA1OyB9XG4gICAgLm9mZnNldC1sNSAgeyBncmlkLWNvbHVtbi1zdGFydDogIDY7IH1cbiAgICAub2Zmc2V0LWw2ICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNzsgfVxuICAgIC5vZmZzZXQtbDcgIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA4OyB9XG4gICAgLm9mZnNldC1sOCAgeyBncmlkLWNvbHVtbi1zdGFydDogIDk7IH1cbiAgICAub2Zmc2V0LWw5ICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMDsgfVxuICAgIC5vZmZzZXQtbDEwIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDExOyB9XG4gICAgLm9mZnNldC1sMTEgeyBncmlkLWNvbHVtbi1zdGFydDogMTI7IH1cbiAgfVxuXG4gIC8vLS0tIFhMXG4gIEBtZWRpYSAjeyRleHRyYS1sYXJnZS1hbmQtdXB9IHtcbiAgICAueGwxICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxOyB9XG4gICAgLnhsMiAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMjsgfVxuICAgIC54bDMgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDM7IH1cbiAgICAueGw0ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA0OyB9XG4gICAgLnhsNSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNTsgfVxuICAgIC54bDYgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDY7IH1cbiAgICAueGw3ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA3OyB9XG4gICAgLnhsOCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gODsgfVxuICAgIC54bDkgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDk7IH1cbiAgICAueGwxMCB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMDsgfVxuICAgIC54bDExIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDExOyB9XG4gICAgLnhsMTIgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTI7IH1cbiAgXG4gICAgLm9mZnNldC14bDEgeyBncmlkLWNvbHVtbi1zdGFydDogIDI7IH1cbiAgICAub2Zmc2V0LXhsMiB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgMzsgfVxuICAgIC5vZmZzZXQteGwzIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA0OyB9XG4gICAgLm9mZnNldC14bDQgeyBncmlkLWNvbHVtbi1zdGFydDogIDU7IH1cbiAgICAub2Zmc2V0LXhsNSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNjsgfVxuICAgIC5vZmZzZXQteGw2IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA3OyB9XG4gICAgLm9mZnNldC14bDcgeyBncmlkLWNvbHVtbi1zdGFydDogIDg7IH1cbiAgICAub2Zmc2V0LXhsOCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgOTsgfVxuICAgIC5vZmZzZXQteGw5IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEwOyB9XG4gICAgLm9mZnNldC14bDEwIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDExOyB9XG4gICAgLm9mZnNldC14bDExIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEyOyB9XG4gIH1cblxufVxuIiwibmF2IHtcbiAgJi5uYXYtZXh0ZW5kZWQge1xuICAgIGhlaWdodDogYXV0bztcblxuICAgIC5uYXYtd3JhcHBlciB7XG4gICAgICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm5hdi1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gIGxpbmUtaGVpZ2h0OiAkbmF2YmFyLWxpbmUtaGVpZ2h0LW1vYmlsZTtcblxuICBhIHtcbiAgICBjb2xvcjogJG5hdmJhci1mb250LWNvbG9yO1xuICB9XG5cbiAgaSxcbiAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICBpLm1hdGVyaWFsLWljb25zLCBpLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQsXG4gIGkubWF0ZXJpYWwtc3ltYm9scy1yb3VuZGVkLCBpLm1hdGVyaWFsLXN5bWJvbHMtc2hhcnAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU7XG4gIH1cblxuICAubmF2LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgYS5zaWRlbmF2LXRyaWdnZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBDb2xsYXBzZSBidXR0b25cbiAgLnNpZGVuYXYtdHJpZ2dlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgbWFyZ2luOiAwIDE4cHg7XG5cbiAgICBpIHtcbiAgICAgIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICAgICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQtbW9iaWxlO1xuICAgIH1cbiAgfVxuXG4gIC8vIExvZ29cbiAgLmJyYW5kLWxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb2xvcjogJG5hdmJhci1mb250LWNvbG9yO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRuYXZiYXItYnJhbmQtZm9udC1zaXplO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLmNlbnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgICAmLmxlZnQsICYucmlnaHQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYubGVmdCB7XG4gICAgICAgIGxlZnQ6IDAuNXJlbTtcbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICByaWdodDogMC41cmVtO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYucmlnaHQge1xuICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaSxcbiAgICBbY2xhc3NePVwibWRpLVwiXSwgW2NsYXNzKj1cIm1kaS1cIl0sXG4gICAgaS5tYXRlcmlhbC1pY29ucywgaS5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLFxuICAgIGkubWF0ZXJpYWwtc3ltYm9scy1yb3VuZGVkLCBpLm1hdGVyaWFsLXN5bWJvbHMtc2hhcnAge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG5cblxuICAvLyBUaXRsZVxuICAubmF2LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIHBhZGRpbmc6IDI4cHggMDtcbiAgfVxuXG5cbiAgLy8gTmF2YmFyIExpbmtzXG4gIHVsOm5vdCguZHJvcGRvd24tY29udGVudCkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmID4gbGkge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYgPiBhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgICAgIGZvbnQtc2l6ZTogJG5hdmJhci1mb250LXNpemU7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1iZy1jb2xvci1mb2N1cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXI6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWJnLWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5idG4sICYuYnRuLWxhcmdlLCAmLmJ0bi1mbGF0LCAmLmJ0bi1mbG9hdGluZyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgJiA+IC5tYXRlcmlhbC1pY29ucywgJiA+IC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLFxuICAgICAgICAgICYgPiAubWF0ZXJpYWwtc3ltYm9scy1yb3VuZGVkLCAmID4gLm1hdGVyaWFsLXN5bWJvbHMtc2hhcnAge1xuICAgICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC8vIE5hdmJhciBTZWFyY2ggRm9ybVxuICBmb3JtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuaW5wdXQtZmllbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBpbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICBjb2xvcjogIzg4ODsgLy8kbmF2YmFyLWZvbnQtY29sb3I7XG5cbiAgICAgICY6Zm9jdXMsICZbdHlwZT10ZXh0XTp2YWxpZCwgJlt0eXBlPXBhc3N3b3JkXTp2YWxpZCxcbiAgICAgICZbdHlwZT1lbWFpbF06dmFsaWQsICZbdHlwZT11cmxdOnZhbGlkLCAmW3R5cGU9ZGF0ZV06dmFsaWQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSBpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRml4ZWQgTmF2YmFyXG4ubmF2YmFyLWZpeGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgei1pbmRleDogOTk3O1xuXG4gIG5hdiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gIG5hdi5uYXYtZXh0ZW5kZWQgLm5hdi13cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgfVxuICBuYXYsIG5hdiAubmF2LXdyYXBwZXIgaSwgbmF2IGEuc2lkZW5hdi10cmlnZ2VyLCBuYXYgYS5zaWRlbmF2LXRyaWdnZXIgaSB7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodDtcbiAgfVxuICAubmF2YmFyLWZpeGVkIHtcbiAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuICB9XG59XG4iLCJcbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaHRtbHtcbiAgLy8gbGluZS1oZWlnaHQ6IDEuNTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiAxNC41cHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cblxuICBmb250LWZhbWlseTogJGZvbnQtc3RhY2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi8vIEhlYWRlciBTdHlsZXNcbmgxIGEsIGgyIGEsIGgzIGEsIGg0IGEsIGg1IGEsIGg2IGEgeyBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuaDEgeyBmb250LXNpemU6ICRoMS1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGgxLWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGgxLWZvbnRzaXplLCAyLjUpIDA7fVxuaDIgeyBmb250LXNpemU6ICRoMi1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGgyLWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGgyLWZvbnRzaXplLCAyLjUpIDA7fVxuaDMgeyBmb250LXNpemU6ICRoMy1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGgzLWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGgzLWZvbnRzaXplLCAyLjUpIDA7fVxuaDQgeyBmb250LXNpemU6ICRoNC1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGg0LWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGg0LWZvbnRzaXplLCAyLjUpIDA7fVxuaDUgeyBmb250LXNpemU6ICRoNS1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGg1LWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGg1LWZvbnRzaXplLCAyLjUpIDA7fVxuaDYgeyBmb250LXNpemU6ICRoNi1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogbWF0aC5kaXYoJGg2LWZvbnRzaXplLCAxLjUpIDAgbWF0aC5kaXYoJGg2LWZvbnRzaXplLCAyLjUpIDA7fVxuXG4vLyBUZXh0IFN0eWxlc1xuZW0geyBmb250LXN0eWxlOiBpdGFsaWM7IH1cbnN0cm9uZyB7IGZvbnQtd2VpZ2h0OiA1MDA7IH1cbnNtYWxsIHsgZm9udC1zaXplOiA3NSU7IH1cbi5saWdodCB7IGZvbnQtd2VpZ2h0OiAzMDA7IH1cbi50aGluIHsgZm9udC13ZWlnaHQ6IDIwMDsgfVxuXG4uZmxvdy10ZXh0e1xuICAkaTogMDtcbiAgQHdoaWxlICRpIDw9ICRpbnRlcnZhbHMge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDM2MCArICgkaSAqICRpbnRlcnZhbC1zaXplKSkge1xuICAgICAgZm9udC1zaXplOiAxLjJyZW0gKiAoMSArICguMDIgKiAkaSkpO1xuICAgIH1cbiAgICAkaTogJGkgKyAxO1xuICB9XG5cbiAgLy8gSGFuZGxlIGJlbG93IDM2MHB4IHNjcmVlblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbiIsIi8vIFNjYWxlIHRyYW5zaXRpb25cbi5zY2FsZS10cmFuc2l0aW9uIHtcbiAgJi5zY2FsZS1vdXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5zY2FsZS1pbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAuNTMsIDAuMDEsIDAuMzYsIDEuNjMpICFpbXBvcnRhbnQ7XG59IiwiXG5cbi5jYXJkLXBhbmVsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzO1xuICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmctY29sb3I7XG59XG5cbi5jYXJkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvL21hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmctY29sb3I7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjI1cztcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuXG4gIC5jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAmLmFjdGl2YXRvciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FyZCBTaXplc1xuICAmLnNtYWxsLCAmLm1lZGl1bSwgJi5sYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgbWF4LWhlaWdodDogNjAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmNhcmQtaW1hZ2UgKyAuY2FyZC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IDQwJTtcbiAgICB9XG4gICAgLmNhcmQtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmNhcmQtYWN0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgJi5tZWRpdW0ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cblxuICAmLmxhcmdlIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBDYXJkc1xuICAmLmhvcml6b250YWwge1xuICAgICYuc21hbGwsICYubWVkaXVtLCAmLmxhcmdlIHtcbiAgICAgIC5jYXJkLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuY2FyZC1pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAwIDAgMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLXN0YWNrZWQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0aWNreSBBY3Rpb24gU2VjdGlvblxuICAmLnN0aWNreS1hY3Rpb24ge1xuICAgIC5jYXJkLWFjdGlvbiB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5jYXJkLXJldmVhbCB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gICAgfVxuICB9XG5cblxuXG5cbiAgLmNhcmQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEltYWdlIGJhY2tncm91bmQgZm9yIGNvbnRlbnRcbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1iZy1jb2xvcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgLmNhcmQtdGl0bGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYXJkLWFjdGlvbiB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICAgIH1cblxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGl2aWRlci1jb2xvcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcblxuICAgIGEge1xuICAgICAgcGFkZGluZzogMTZweCAkY2FyZC1wYWRkaW5nO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIGE6bm90KC5idG4pOm5vdCguYnRuLWxhcmdlKTpub3QoLmJ0bi1mbG9hdGluZykge1xuICAgICAgY29sb3I6ICRjYXJkLWxpbmstY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FyZC1yZXZlYWwge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiI3RvYXN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDA7XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMCU7XG4gIH1cbiAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgbGVmdDogNSU7XG4gICAgYm90dG9tOiA3JTtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgdG9wOiAxMCU7XG4gICAgcmlnaHQ6IDclO1xuICAgIG1heC13aWR0aDogODYlO1xuICB9XG59XG5cbi50b2FzdCB7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0b3A6IDM1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAkdG9hc3QtaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgcGFkZGluZzogMTBweCAyNXB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAkdG9hc3QtdGV4dC1jb2xvcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgLnRvYXN0LWFjdGlvbiB7XG4gICAgY29sb3I6ICR0b2FzdC1hY3Rpb24tY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB9XG5cbiAgJi5yb3VuZGVke1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIH1cblxuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4iLCIudGFicyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICYudGFicy10cmFuc3BhcmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAudGFiIGEge1xuICAgICAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtO1xuICAgIH1cblxuICAgIC50YWIuZGlzYWJsZWQgYSxcbiAgICAudGFiLmRpc2FibGVkIGE6aG92ZXIsXG4gICAgLnRhYi5kaXNhYmxlZCBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC50YWIgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWU7XG4gICAgfVxuXG4gICAgLnRhYiBhLmFjdGl2ZSxcbiAgICAudGFiIGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLnRhYiBhOmhvdmVyLFxuICAgIC50YWIgYS5hY3RpdmUsXG4gICAgLnRhYiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgfVxuXG4gICAgLmluZGljYXRvciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgfVxuICB9XG5cbiAgJi50YWJzLWZpeGVkLXdpZHRoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC50YWIge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgfVxuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy1iZy1jb2xvcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLnRhYiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcblxuICAgIGEge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkdGFicy10ZXh0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyxcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuXG4gICAgICBjb2xvcjogJHRhYnMtdGV4dC1pbmFjdGl2ZS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjhzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjI4cyBlYXNlO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQgYSxcbiAgICAmLmRpc2FibGVkIGE6aG92ZXIge1xuICAgICAgJjpub3QoOmZvY3VzKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICBjb2xvcjogJHRhYnMtdGV4dC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5pbmRpY2F0b3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYnMtdW5kZXJsaW5lLWNvbG9yO1xuICAgIHdpbGwtY2hhbmdlOiBsZWZ0LCByaWdodDtcbiAgfVxufVxuXG4vLyBGaXhlZCBTaWRlbmF2IGhpZGUgb24gc21hbGxlclxuQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAudGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC50YWIge1xuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1hdGVyaWFsLXRvb2x0aXAge1xuICBwYWRkaW5nOiAwIDhweDsgIFxuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgY29sb3I6ICR0b29sdGlwLWZvbnQtY29sb3I7XG4gIFxuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LXdlaWdodCk7XG5cbiAgbWluLWhlaWdodDogMjRweDtcbiAgb3BhY2l0eTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMjAwMDtcbn1cblxuLmJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgei1pbmRleDogLTE7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4iLCIuYnRuLCAuYnRuLWZsb2F0aW5nLCAuYnRuLWxhcmdlLCAuYnRuLXNtYWxsLCAuYnRuLWZsYXQge1xuICAtLWZvbnQtc2l6ZS1pY29uOiAxNnB4O1xuICAtLXBhZGRpbmc6IDI0cHg7XG4gIC0tcGFkZGluZy1pY29uOiAxNnB4O1xuICAtLWdhcC1pY29uOiA4cHg7XG4gIFxuICBoZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICBcbiAgLy8gbGluZS1oZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1czsgIFxuICBcbiAgLy8gcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmcpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nKTtcbiAgXG4gIGNvbG9yOiAkYnV0dG9uLXJhaXNlZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIFxuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEdldHMgcmlkIG9mIHRhcCBhY3RpdmUgc3RhdGVcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3V0bGluZTogMDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDtcbn1cblxuLy8gSWNvblxuLmJ0bi5pY29uLWxlZnQsIC5idG4uaWNvbi1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5idG4uaWNvbi1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctaWNvbikgKyB2YXIoLS1mb250LXNpemUtaWNvbikgKyB2YXIoLS1nYXAtaWNvbikpO1xufVxuLmJ0bi5pY29uLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLWljb24pICsgdmFyKC0tZm9udC1zaXplLWljb24pICsgdmFyKC0tZ2FwLWljb24pKTsgXG59XG4uYnRuLmljb24tbGVmdCBpLCAuYnRuLmljb24tcmlnaHQgaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaWNvbik7XG59XG4uYnRuLmljb24tbGVmdCBpIHtcbiAgbGVmdDogdmFyKC0tcGFkZGluZy1pY29uKTtcbn1cbi5idG4uaWNvbi1yaWdodCBpIHtcbiAgcmlnaHQ6IHZhcigtLXBhZGRpbmctaWNvbik7XG59XG5cblxuLy8gRGlzYWJsZWQgc2hhcmVkIHN0eWxlXG4uYnRuLmRpc2FibGVkLFxuLmJ0bi1mbG9hdGluZy5kaXNhYmxlZCxcbi5idG4tbGFyZ2UuZGlzYWJsZWQsXG4uYnRuLXNtYWxsLmRpc2FibGVkLFxuLmJ0bi1mbGF0LmRpc2FibGVkLFxuLmJ0bjpkaXNhYmxlZCxcbi5idG4tZmxvYXRpbmc6ZGlzYWJsZWQsXG4uYnRuLWxhcmdlOmRpc2FibGVkLFxuLmJ0bi1zbWFsbDpkaXNhYmxlZCxcbi5idG4tZmxhdDpkaXNhYmxlZCxcbi5idG5bZGlzYWJsZWRdLFxuLmJ0bi1mbG9hdGluZ1tkaXNhYmxlZF0sXG4uYnRuLWxhcmdlW2Rpc2FibGVkXSxcbi5idG4tc21hbGxbZGlzYWJsZWRdLFxuLmJ0bi1mbGF0W2Rpc2FibGVkXSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICRidXR0b24tZGlzYWJsZWQtY29sb3IgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLS0tIEZpbGxlZCBCdXR0b25cbi5idG4uZmlsbGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xufVxuLy8tLS0gRmlsbGVkIFRvbmFsXG4uYnRuLnRvbmFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXIpO1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1jb250YWluZXIpO1xufVxuLy8tLS0gVGV4dC1CdXR0b24gKEZsYXQpXG4uYnRuLnRleHQsIC5idG4tZmxhdCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzO1xuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZmxhdC1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZmxhdC1mb2N1cy1iYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICYuYnRuLnRleHRbZGlzYWJsZWRdLCAmLmJ0bi1mbGF0W2Rpc2FibGVkXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJ1dHRvbi1mbGF0LWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG4vLy0tLSBPdXRsaW5lZC1CdXR0b25cbi5idG4ub3V0bGluZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRidXR0b24tcmFpc2VkLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRidXR0b24tcmFpc2VkLWJhY2tncm91bmQ7XG59XG4vLy0tLSBFbGV2YXRlZFxuLmJ0bi5lbGV2YXRlZCB7XG4gIEBleHRlbmQgLnRvbmFsO1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG59XG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT0gU3RhdGVzIChIb3ZlciwgRm9jdXNlZCwgLi4uKVxuXG4uYnRuIHtcbiAgQGV4dGVuZCAuZmlsbGVkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcmFpc2VkLWJhY2tncm91bmQtaG92ZXI7XG4gICAgQGV4dGVuZCAuei1kZXB0aC0xLWhhbGY7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9ICBcbn1cblxuXG5cbi8vLS0tLS0tLS0tLVxuLy8gLmJ0bi1mbG9hdGluZyB7XG4vLyAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4vLyAgIHdpZHRoOiB1bnNldDtcbi8vICAgZGlzcGxheTogZ3JpZDtcbi8vICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbi8vICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICAgcGFkZGluZzogMTZweCAhaW1wb3J0YW50O1xuLy8gICBwYWRkaW5nLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7IC8qIG9ubHkgd2l0aCBpY29uICovXG4vLyAgIGdhcDogOHB4O1xuLy8gfVxuLy8gLmJ0bi1mbG9hdGluZy5idG4tbGFyZ2Uge1xuLy8gICB3aWR0aDogdW5zZXQ7XG4vLyB9XG4vLyAuYnRuLWxhcmdlIHtcbi8vICAgZm9udC1zaXplOiAxNHB4O1xuLy8gfVxuLy8tLS0tLVxuLy8gRmxvYXRpbmcgYnV0dG9uXG4uYnRuLWZsb2F0aW5nIHtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQtaG92ZXI7XG4gICAgQGV4dGVuZCAuei1kZXB0aC0xLWhhbGY7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQtZm9jdXM7XG4gICAgQGV4dGVuZCAuei1kZXB0aC0xLWhhbGY7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gICYuYnRuLWxhcmdlIHtcbiAgICAmLmhhbGZ3YXktZmFiIHtcbiAgICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZSAqIDAuNTtcbiAgICB9XG4gICAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIGZvbnQtc2l6ZTogXG4gICAgLy8gaSB7XG4gICAgLy8gICAvLyBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1sYXJnZS1zaXplO1xuICAgIC8vIH1cbiAgfVxuXG4gICYuYnRuLXNtYWxsIHtcbiAgICAmLmhhbGZ3YXktZmFiIHtcbiAgICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZSAqIDAuNTtcbiAgICB9XG4gICAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZTtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZTtcbiAgICAvLyBpIHtcbiAgICAvLyAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemU7XG4gICAgLy8gfVxuICB9XG5cbiAgJi5oYWxmd2F5LWZhYiB7XG4gICAgJi5sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMjRweDtcbiAgICB9XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyNHB4O1xuICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctc2l6ZSAqIDAuNTtcbiAgfVxuXG4gIC8vIEZJWEVTXG4gIC8vIHdpZHRoOiB1bnNldDsgIFxuICAvLyBwYWRkaW5nOiAxNnB4ICFpbXBvcnRhbnQ7XG4gIC8vIHBhZGRpbmctcmlnaHQ6IDI0cHggIWltcG9ydGFudDsgLyogb25seSB3aXRoIGljb24gKi9cbiAgLy8gZ2FwOiA4cHg7XG5cbiAgY29sb3I6ICRidXR0b24tZmxvYXRpbmctY29sb3I7XG4gIFxuICB3aWR0aDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgLy8gbGluZS1oZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tZmxvYXRpbmctcmFkaXVzO1xuICBwYWRkaW5nOiAwO1xuXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgaSB7XG4gICAgY29sb3I6ICRidXR0b24tZmxvYXRpbmctY29sb3I7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplO1xuICAgIC8vIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLy8gYnV0dG9uIGZpeFxuYnV0dG9uLmJ0bi1mbG9hdGluZyB7XG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG59XG4vLyBGaXhlZCBBY3Rpb24gQnV0dG9uXG4uZml4ZWQtYWN0aW9uLWJ0biB7XG4gICYuYWN0aXZlIHtcbiAgICB1bCB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyAgICBcbiAgICB9XG4gIH1cblxuICAvLyBEaXJlY3Rpb25zXG4gICYuZGlyZWN0aW9uLWxlZnQsXG4gICYuZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuICAgIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcmlnaHQ6IDY0cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAvKndpZHRoIDEwMCUgb25seSBnb2VzIHRvIHdpZHRoIG9mIGJ1dHRvbiBjb250YWluZXIgKi9cbiAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDcuNXB4IDE1cHggMCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmRpcmVjdGlvbi1yaWdodCB7XG4gICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICBsZWZ0OiA2NHB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogNy41cHggMCAwIDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZGlyZWN0aW9uLWJvdHRvbSB7XG4gICAgcGFkZGluZzogMCAwIDE1cHggMDtcbiAgICB1bCB7XG4gICAgICB0b3A6IDY0cHg7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYudG9vbGJhciB7XG4gICAgJi5hY3RpdmUge1xuICAgICAgJj5hIGkge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1sYXJnZS1zaXplO1xuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgbGkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBjb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1jb2xvcjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1sYXJnZS1zaXplO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyM3B4O1xuICBib3R0b206IDIzcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB6LWluZGV4OiA5OTc7XG4gIHVsIHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA2NHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gICAgYS5idG4tZmxvYXRpbmcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbiAgLmZhYi1iYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tZmxvYXRpbmctcmFkaXVzO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuLy8tLS0gSGVscGVyIGNsYXNzZXMgKGZvciBhbGwpXG5cbi8vIExhcmdlIGJ1dHRvblxuLmJ0bi1sYXJnZSB7XG4gIEBleHRlbmQgLmJ0bjtcbiAgaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWhlaWdodDtcbiAgLy8gbGluZS1oZWlnaHQ6ICRidXR0b24tbGFyZ2UtaGVpZ2h0O1xuICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtZm9udC1zaXplO1xuICBwYWRkaW5nOiAwIDI4cHg7XG4gIGkge1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1sYXJnZS1pY29uLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG4vLyBTbWFsbCBidXR0b25cbi5idG4tc21hbGwge1xuICBAZXh0ZW5kIC5idG47XG4gIGhlaWdodDogJGJ1dHRvbi1zbWFsbC1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLXNtYWxsLWhlaWdodDtcbiAgZm9udC1zaXplOiAkYnV0dG9uLXNtYWxsLWZvbnQtc2l6ZTtcbiAgaSB7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLXNtYWxsLWljb24tZm9udC1zaXplO1xuICB9XG59XG5cbi8vIEJsb2NrIGJ1dHRvblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYnRuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiA5OTk5OXB4O1xufSIsIi5kcm9wZG93bi1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnLWNvbG9yO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMTAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5OyAvLyBUT0RPOiBDaGVjayBpZiB0aGlzIGRvZXNuJ3QgYnJlYWsgb3RoZXIgdGhpbmdzXG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcblxuXG4gIGxpIHtcbiAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24taG92ZXItYmctY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZGl2aWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgfVxuXG4gICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgcGFkZGluZzogKCgkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAyMikgKiAwLjUpIDE2cHg7XG4gICAgfVxuXG4gICAgJiA+IHNwYW4gPiBsYWJlbCB7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBhbGlnbm1lbnQgb3ZlcnJpZGVcbiAgICAmID4gYSA+IGkge1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMCAyNHB4IDAgMDtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgIH1cblxuXG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbmJvZHkua2V5Ym9hcmQtZm9jdXNlZCB7XG4gIC5kcm9wZG93bi1jb250ZW50IGxpOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZm9jdXMtYmctY29sb3I7XG4gIH1cbn1cblxuLy8gSW5wdXQgZmllbGQgc3BlY2lmaWNpdHkgYnVnZml4XG4uaW5wdXQtZmllbGQuY29sIC5kcm9wZG93bi1jb250ZW50IFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLXRyaWdnZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4iLCIubW9kYWwge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgQGV4dGVuZCAuei1kZXB0aC01O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtaGVpZ2h0OiA3MCU7XG4gIHdpZHRoOiA1NSU7XG4gIG1hcmdpbjogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcblxuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHdpbGwtY2hhbmdlOiB0b3AsIG9wYWNpdHk7XG5cbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cblxuICBoMSxoMixoMyxoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tncm91bmQtY29sb3I7XG4gICAgcGFkZGluZzogNHB4IDZweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAuYnRuLCAuYnRuLWZsYXQge1xuICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTtcbiAgdG9wOiAtMjUlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEyNSU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLy8gTW9kYWwgd2l0aCBmaXhlZCBhY3Rpb24gZm9vdGVyXG4ubW9kYWwubW9kYWwtZml4ZWQtZm9vdGVyIHtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiA3MCU7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDU2cHgpO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGl2aWRlci1jb2xvcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIE1vZGFsIEJvdHRvbSBTaGVldCBTdHlsZVxuLm1vZGFsLmJvdHRvbS1zaGVldCB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogNDUlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB3aWxsLWNoYW5nZTogYm90dG9tLCBvcGFjaXR5O1xufVxuIiwiLmNvbGxhcHNpYmxlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG59XG5cbi5jb2xsYXBzaWJsZS1oZWFkZXIge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwXG4gIH1cblxuICBkaXNwbGF5OiBmbGV4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGFwc2libGUtYmctY29sb3I7XG5cbiAgaSB7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLWhlYWRlcjo6YWZ0ZXIge1xuICBjb250ZW50OiAn4pa+JztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYWN0aXZlIC5jb2xsYXBzaWJsZS1oZWFkZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCLilrRcIjtcbn1cblxuXG4ua2V5Ym9hcmQtZm9jdXNlZCAuY29sbGFwc2libGUtaGVhZGVyOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlO1xufVxuXG4uY29sbGFwc2libGUtYm9keSB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xsYXBzaWJsZS1iZy1jb2xvcjtcbn1cblxuLy8gUG9wb3V0IENvbGxhcHNpYmxlXG5cbi5jb2xsYXBzaWJsZS5wb3BvdXQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgPiBsaSB7XG4gICAgYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KSwgMCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgLy8gdHJhbnNmb3JtOiBzY2FsZVgoLjkyKTtcbiAgICBtYXJnaW46IDAgMjRweDtcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4gLjM1cyBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAwLjQ1MCwgMC45NDApO1xuICB9XG5cbiAgPiBsaS5hY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDExcHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpLCAwIDRweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBtYXJnaW46IDE2cHggMDtcbiAgICAvLyB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuIiwiLmNoaXAge1xuICAtLWZvbnQtc2l6ZTogMTRweDtcbiAgLS1mb250LXNpemUtaWNvbjogMThweDtcbiAgLS1wYWRkaW5nOiA4cHg7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNoaXAtYmctY29sb3I7XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGdhcDogOHB4O1xuXG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAzMnB4O1xuXG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZyk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmcpO1xuICBcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogNTAwOyAgXG4gIGNvbG9yOiAkY2hpcC1mb250LWNvbG9yO1xuICBcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNoaXAtc2VsZWN0ZWQtY29sb3I7XG4gICAgY29sb3I6ICRjaGlwLXNlbGVjdGVkLWZvbnQtY29sb3I7XG4gIH1cbn1cblxuLmNoaXAub3V0bGluZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZSk7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4uY2hpcCA+IGltZyB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG5cbi5jaGlwID4gLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaWNvbik7XG4gIEBleHRlbmQgLm9uLXN1cmZhY2UtdmFyaWFudC10ZXh0O1xufVxuXG4uY2hpcCAuY2xvc2Uge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGhlaWdodDogMjRweDtcbiAgd2lkdGg6IDI0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoaXAgLmNsb3NlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODg7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNoaXBzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA0cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY2hpcC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbjogJGlucHV0LW1hcmdpbjtcblxuICBwYWRkaW5nOiA0cHg7XG4gIC8vIG1pbi1oZWlnaHQ6IDQ1cHg7XG5cbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcztcblxuICAmLmZvY3VzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNoaXAtc2VsZWN0ZWQtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwICRjaGlwLXNlbGVjdGVkLWNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICB9XG5cbiAgaW5wdXQ6bm90KFt0eXBlXSk6bm90KC5icm93c2VyLWRlZmF1bHQpLmlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG5cbiAgICAvLyBoZWlnaHQ6IDMycHg7XG4gICAgLy8gaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIC8vIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcblxuICAgIG91dGxpbmU6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEyMHB4O1xuXG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0b2NvbXBsZXRlXG4gIC5hdXRvY29tcGxldGUtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIEZvcm0gcHJlZml4XG4ucHJlZml4IH4gLmNoaXBzIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIHdpZHRoOiA5MiU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbn1cbi8vIEZvcm0gc3VmZml4XG4uc3VmZml4IH4gLmNoaXBzIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtO1xuICB3aWR0aDogOTIlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG59XG4uY2hpcHM6ZW1wdHkgfiBsYWJlbCAge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDAlKTtcbn1cbiIsIi5tYXRlcmlhbGJveGVkIHtcbiAgJjpob3ZlciB7XG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgb3BhY2l0eTogLjg7XG4gICAgfVxuICB9XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogem9vbS1pbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJi5hY3RpdmUge1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gIH1cbn1cblxuI21hdGVyaWFsYm94LW92ZXJsYXkge1xuICBwb3NpdGlvbjpmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZCk7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ubWF0ZXJpYWxib3gtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbik7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAlIDE1JTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB6LWluZGV4OiAxMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn0iLCIvLyBSZW1vdmUgRm9jdXMgQm94ZXNcbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6ICRzZWxlY3QtZm9jdXM7XG59XG5cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZC1mb2N1cztcbn1cblxubGFiZWwge1xuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xufVxuXG5AaW1wb3J0ICdpbnB1dC1maWVsZHMnO1xuQGltcG9ydCAncmFkaW8tYnV0dG9ucyc7XG5AaW1wb3J0ICdjaGVja2JveGVzJztcbkBpbXBvcnQgJ3N3aXRjaGVzJztcbkBpbXBvcnQgJ3NlbGVjdCc7XG5AaW1wb3J0ICdmaWxlLWlucHV0JztcbkBpbXBvcnQgJ3JhbmdlJztcbiIsIi8qIFRleHQgSW5wdXRzICsgVGV4dGFyZWFcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFN0eWxlIFBsYWNlaG9sZGVycyAqL1xuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAkcGxhY2Vob2xkZXItdGV4dC1jb2xvcjtcbn1cblxuLyogVGV4dCBpbnB1dHMgKi9cbmlucHV0Om5vdChbdHlwZV0pOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9dGV4dF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1lbWFpbF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT11cmxdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9dGltZV06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1kYXRlXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPWRhdGV0aW1lXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPW1vbnRoXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPXRlbF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1udW1iZXJdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9c2VhcmNoXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG50ZXh0YXJlYS5tYXRlcmlhbGl6ZS10ZXh0YXJlYSB7IFxuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB3aWR0aDogMTAwJTsgIFxuICBmb250LXNpemU6ICRtZF9zeXNfdHlwZXNjYWxlX2JvZHktbGFyZ2Vfc2l6ZTsgLy8kaW5wdXQtZm9udC1zaXplOyAvLyA9PiAxNiBkcFxuICBoZWlnaHQ6IDU2cHg7IC8vIDU2ZHAgJGlucHV0LWhlaWdodDtcbn1cblxuLyogVmFsaWRhdGlvbiBTYXNzIFBsYWNlaG9sZGVycyAqL1xuJXZhbGlkLWlucHV0LXN0eWxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgJGlucHV0LXN1Y2Nlc3MtY29sb3I7XG59XG4laW52YWxpZC1pbnB1dC1zdHlsZSB7XG4gIGJvcmRlci1ib3R0b206ICRpbnB1dC1pbnZhbGlkLWJvcmRlcjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cbiVoaWRkZW4tdGV4dCB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLypcbiVjdXN0b20tc3VjY2Vzcy1tZXNzYWdlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXN1Y2Nlc3MpO1xuICBjb2xvcjogJGlucHV0LXN1Y2Nlc3MtY29sb3I7XG59XG4lY3VzdG9tLWVycm9yLW1lc3NhZ2Uge1xuICBjb250ZW50OiBhdHRyKGRhdGEtZXJyb3IpO1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuKi9cblxuLmlucHV0LWZpZWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjbGVhcjogYm90aDtcbiBcbiAgLy8gRGVmYXVsdFxuXG4gIGlucHV0LCB0ZXh0YXJlYSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTM3NzcxOS9wYWRkaW5nLXdpdGhpbi1pbnB1dHMtYnJlYWtzLXdpZHRoLTEwMCovXG5cbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VyZmFjZS1jb2xvcjtcblxuICAgIGJvcmRlcjogbm9uZTsgLy8gcmVzZXRcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7IC8vIG1kLnN5cy5zaGFwZS5jb3JuZXIuZXh0cmEtc21hbGwudG9wXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgIFxuICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweCArIDFweDsgLy8gYWRkIGJvcmRlci13aWR0aFxuICAgIH1cblxuICAgICY6ZGlzYWJsZWQsICZbcmVhZG9ubHk9XCJyZWFkb25seVwiXSB7XG4gICAgICBjb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9vdXRsaW5lY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dGZpZWxkX2Rpc2FibGVkX2NvbnRhaW5lcmNvbG9yO1xuICAgIH1cblxuICAgIC8vIExhYmVsXG4gICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkgKyBsYWJlbCB7XG4gICAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIH1cbiAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSArIGxhYmVsLFxuICAgICY6bm90KFtwbGFjZWhvbGRlcj0nICddKSArIGxhYmVsLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBsYWJlbCB7XG4gICAgICAvL2ZvbnQtc2l6ZTogMTJweDsgLy8gbWQuc3lzLnR5cGVzY2FsZS5ib2R5LXNtYWxsLnNpemVcbiAgICAgIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0NzE3NDkyL2Nzcy10cmFuc2l0aW9uLWZvbnQtc2l6ZS1hdm9pZC1qaXR0ZXJpbmctd2lnZ2xpbmdcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoY2FsYygxMiAvIDE2KSk7XG4gICAgICB0b3A6IDhweDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkICsgbGFiZWwsICZbcmVhZG9ubHk9XCJyZWFkb25seVwiXSArIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkdGV4dGZpZWxkX2Rpc2FibGVkX2NvbG9yO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAmID4gbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTZweDtcbiAgICB0b3A6IDE2cHg7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zaXRpb246XG4gICAgICBsZWZ0IDAuMnMgZWFzZS1vdXQsXG4gICAgICB0b3AgMC4ycyBlYXNlLW91dCxcbiAgICAgIHRyYW5zZm9ybSAwLjJzIGVhc2Utb3V0XG4gICAgO1xuICB9XG5cbiAgLy8gU3ViLUluZm9zXG5cbiAgLnN1cHBvcnRpbmctdGV4dCB7XG4gICAgY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICAuY2hhcmFjdGVyLWNvdW50ZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxuXG4gIC5wcmVmaXgge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxMnB4O1xuICAgIHRvcDogMTZweDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gIC5zdWZmaXgge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTJweDtcbiAgICB0b3A6IDE2cHg7ICAgIFxuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLnByZWZpeCB+IGlucHV0LCAucHJlZml4IH4gdGV4dGFyZWEge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygxMnB4ICsgMjRweCArIDE2cHgpO1xuICB9XG4gIC5zdWZmaXggfiBpbnB1dCwgLnN1ZmZpeCB+IHRleHRhcmVhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEycHggKyAyNHB4ICsgMTZweCk7XG4gIH1cbiAgLnByZWZpeCB+IGxhYmVsIHtcbiAgICBsZWZ0OiBjYWxjKDEycHggKyAyNHB4ICsgMTZweCk7XG4gIH1cblxuICAvLyBPdXRsaW5lZFxuXG4gICYub3V0bGluZWQge1xuXG4gICAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgLy8gbWQuc3lzLnNoYXBlLmNvcm5lci5leHRyYS1zbWFsbFxuXG4gICAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyAvLyBzdWJ0cmFjdCBib3JkZXItd2lkdGhcblxuICAgICAgfVxuICAgICAgLy8gTGFiZWxcbiAgICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pICsgbGFiZWwge1xuICAgICAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgICAgfVxuICAgICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkgKyBsYWJlbCxcbiAgICAgICY6bm90KFtwbGFjZWhvbGRlcj0nICddKSArIGxhYmVsLFxuICAgICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSArIGxhYmVsIHtcbiAgICAgICAgdG9wOiAtOHB4O1xuICAgICAgICBsZWZ0OiAxNnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTRweDtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkLCAmW3JlYWRvbmx5PVwicmVhZG9ubHlcIl0ge1xuICAgICAgICBjb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGV4dGZpZWxkX2Rpc2FibGVkX291dGxpbmVjb2xvcjtcbiAgICAgIH1cbiAgICAgIFxuICAgIH1cbiAgfVxuXG4gIC8vIEVycm9yXG4gICYuZXJyb3Ige1xuICAgIGlucHV0LCB0ZXh0YXJlYSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICB9XG4gICAgaW5wdXQ6Zm9jdXM6bm90KFtyZWFkb25seV0pLCB0ZXh0YXJlYTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcik7XG4gICAgfVxuICAgIGlucHV0OmZvY3VzOm5vdChbcmVhZG9ubHldKSArIGxhYmVsLCB0ZXh0YXJlYTpmb2N1czpub3QoW3JlYWRvbmx5XSkgKyBsYWJlbCB7XG4gICAgICBjb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBjb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgIH1cbiAgICAuc3VwcG9ydGluZy10ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcik7XG4gICAgfVxuICAgIC5zdWZmaXgge1xuICAgICAgY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuLyogU2VhcmNoIEZpZWxkICovXG4uc2VhcmNoYmFyIHsgIFxuICAucHJlZml4IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy9sZWZ0OiAxMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICB0b3A6IDA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cblxuICAmID4gaW5wdXQge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIH1cbn1cbi5zZWFyY2hiYXIuaGFzLXNpZGViYXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2lkZW5hdi13aWR0aDtcbiAgfVxufVxuXG4vKlxuLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICAubmF2LXdyYXBwZXIgJiB7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgJjpmb2N1czpub3QoLmJyb3dzZXItZGVmYXVsdCkge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICYgKyAubGFiZWwtaWNvbiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbiovXG5cbi8qIFRleHRhcmVhICovXG4vLyBEZWZhdWx0IHRleHRhcmVhXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICYubWF0ZXJpYWxpemUtdGV4dGFyZWEge1xuICAgIHBhZGRpbmctdG9wOiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDRweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuOyAvKiBwcmV2ZW50cyBzY3JvbGwgYmFyIGZsYXNoICovXG4gICAgcmVzaXplOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG4vLyBGb3IgdGV4dGFyZWEgYXV0b3Jlc2l6ZVxuLmhpZGRlbmRpdiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7IC8qIGZ1dHVyZSB2ZXJzaW9uIG9mIGRlcHJlY2F0ZWQgJ3dvcmQtd3JhcCcgKi9cbiAgcGFkZGluZy10b3A6IDEuMnJlbTsgLyogcHJldmVudHMgdGV4dCBqdW1wIG9uIEVudGVyIGtleXByZXNzICovXG5cbiAgLy8gUmVkdWNlcyByZXBhaW50c1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qIEF1dG9jb21wbGV0ZSBJdGVtcyAqL1xuLmF1dG9jb21wbGV0ZS1jb250ZW50IHtcbiAgbGkge1xuICAgIC5oaWdobGlnaHQgeyBjb2xvcjogJGZvbnQtY29sb3ItbWFpbjsgfVxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgICAgd2lkdGg6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgICAgbWFyZ2luOiA1cHggMTVweDtcbiAgICB9XG4gIH1cbn0iLCIvKiBSYWRpbyBCdXR0b25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBSZW1vdmUgZGVmYXVsdCBSYWRpbyBCdXR0b25zXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0cmFuc2l0aW9uOiAuMjhzIGVhc2U7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdICsgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiA0cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zaXRpb246IC4yOHMgZWFzZTtcbn1cblxuLyogVW5jaGVja2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmFmdGVyLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBzcGFuOmFmdGVyLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIHNwYW46YWZ0ZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZW1wdHktY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG4vKiBDaGVja2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIGJvcmRlcjogJHJhZGlvLWJvcmRlcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi8qIFJhZGlvIFdpdGggZ2FwICovXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XG59XG5cbi8qIEZvY3VzZWQgc3R5bGVzICovXG5bdHlwZT1cInJhZGlvXCJdLnRhYmJlZDpmb2N1cyArIHNwYW46YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkcHJpbWFyeS1jb2xvci1mb2N1cy1vcGFxdWU7XG59XG5cbi8qIERpc2FibGVkIFJhZGlvIFdpdGggZ2FwICovXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG4vKiBEaXNhYmxlZCBzdHlsZSAqL1xuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCArIHNwYW4ge1xuICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbn1cbiIsIi8qIENoZWNrYm94ZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFJlbW92ZSBkZWZhdWx0IGNoZWNrYm94ICovXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vLyBDaGVja2JveCBTdHlsZXNcblt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAvLyBUZXh0IExhYmVsIFN0eWxlXG4gICsgc3Bhbjpub3QoLmxldmVyKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvKiBjaGVja2JveCBhc3BlY3QgKi9cbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSxcbiAgJjpub3QoLmZpbGxlZC1pbikgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHotaW5kZXg6IDA7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgdHJhbnNpdGlvbjogLjJzO1xuICB9XG5cbiAgJjpub3QoLmZpbGxlZC1pbikgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gICY6bm90KDpjaGVja2VkKTpkaXNhYmxlZCArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gRm9jdXNlZCBzdHlsZXNcbiAgJi50YWJiZWQ6Zm9jdXMgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkc3VyZmFjZS1mb2N1cy1jb2xvci1vcGFxdWU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlO1xuICB9XG59XG5cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIHRvcDogLTRweDtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6ICRyYWRpby1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHJhZGlvLWJvcmRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQgKyBzcGFuOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cbn1cblxuLyogSW5kZXRlcm1pbmF0ZSBjaGVja2JveCAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgdG9wOiAtMTFweDtcbiAgICBsZWZ0OiAtMTJweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6ICRyYWRpby1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGluZGV0ZXJtaW5hdGVcbiAgJjpkaXNhYmxlZCArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gRmlsbGVkIGluIFN0eWxlXG5bdHlwZT1cImNoZWNrYm94XCJdLmZpbGxlZC1pbiB7XG4gIC8vIEdlbmVyYWxcbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gIH1cblxuICArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlLFxuICArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8qIC4xcyBkZWxheSBpcyBmb3IgY2hlY2sgYW5pbWF0aW9uICovXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIC4yNXMsIGJhY2tncm91bmQtY29sb3IgLjI1cywgd2lkdGggLjIwcyAuMXMsIGhlaWdodCAuMjBzIC4xcywgdG9wIC4yMHMgLjFzLCBsZWZ0IC4yMHMgLjFzO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAvLyBVbmNoZWNrZWQgc3R5bGVcbiAgJjpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiA2cHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICB9XG5cbiAgJjpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICB0b3A6IDBweDtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLy8gQ2hlY2tlZCBzdHlsZVxuICAmOmNoZWNrZWQge1xuICAgICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogMTNweDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgICB9XG5cbiAgICArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBGb2N1c2VkIHN0eWxlc1xuICAmLnRhYmJlZDpmb2N1cyArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItY29sb3I6ICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VyZmFjZS1mb2N1cy1jb2xvci1vcGFxdWU7XG4gIH1cblxuICAmLnRhYmJlZDpjaGVja2VkOmZvY3VzICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdHlsZVxuICAmOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbiAgfVxufVxuIiwiLyogU3dpdGNoXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3dpdGNoIHtcbiAgLS10cmFjay1oZWlnaHQ6IDMycHg7XG4gIC0tdHJhY2std2lkdGg6IDUycHg7XG4gIC0tYm9yZGVyLXdpZHRoOiAycHg7XG4gIC0tc2l6ZS1vZmY6IDE2cHg7XG4gIC0tc2l6ZS1vbjogMjRweDtcbiAgLS1pY29uLXNpemU6IDE2cHg7XG4gIC0tZ2FwLW9uOiBjYWxjKCgodmFyKC0tdHJhY2staGVpZ2h0KSAtIHZhcigtLXNpemUtb24pKSAvIDIpIC0gdmFyKC0tYm9yZGVyLXdpZHRoKSk7XG4gIC0tZ2FwLW9mZjogY2FsYygoKHZhcigtLXRyYWNrLWhlaWdodCkgLSB2YXIoLS1zaXplLW9mZikpIC8gMikgLSB2YXIoLS1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnN3aXRjaCxcbi5zd2l0Y2ggKiB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc3dpdGNoIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc3dpdGNoIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICAvLyBDSEVDS0VEXG4gIC8vIFRyYWNrXG4gICY6Y2hlY2tlZCArIC5sZXZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICB9XG4gIC8vIERvdFxuICAmOmNoZWNrZWQgKyAubGV2ZXIge1xuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tZ2FwLW9uKTtcbiAgICAgIGxlZnQ6IGNhbGModmFyKC0tdHJhY2std2lkdGgpIC0gdmFyKC0tc2l6ZS1vbikgLSB2YXIoLS1nYXAtb24pIC0gMiAqIHZhcigtLWJvcmRlci13aWR0aCkpO1xuICAgICAgd2lkdGg6IHZhcigtLXNpemUtb24pO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zaXplLW9uKTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBAZXh0ZW5kIC5zdXJmYWNlO1xuICAgIH1cbiAgfVxufVxuXG4uc3dpdGNoIGxhYmVsIC5sZXZlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogdmFyKC0tdHJhY2std2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLXRyYWNrLWhlaWdodCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vdXRsaW5lKTtcblxuICAvL2JhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtdHJhY2stdW5jaGVja2VkLWJnO1xuICBAZXh0ZW5kIC5zdXJmYWNlLXZhcmlhbnQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAxNnB4O1xuXG4gIC8vIERPVFxuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS1zaXplLW9mZik7XG4gICAgaGVpZ2h0OiB2YXIoLS1zaXplLW9mZik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgbGVmdDogdmFyKC0tZ2FwLW9mZik7XG4gICAgdG9wOiB2YXIoLS1nYXAtb2ZmKTtcblxuICAgIHRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kIC4zcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgdHJhbnNmb3JtIC4xcyBlYXNlO1xuICB9XG5cbiAgLy8gTk9UIENIRUNLRUQgW0RPVF1cbiAgJjphZnRlciB7XG4gICAgQGV4dGVuZCAub3V0bGluZTsgXG4gICAgaGVpZ2h0OiB2YXIoLS1zaXplLW9mZik7XG4gICAgd2lkdGg6IHZhcigtLXNpemUtb2ZmKTtcblxuICAgIC8vQGV4dGVuZCAuc3VyZmFjZS12YXJpYW50O1xuICAgIC8vYm94LXNoYWRvdzogMHB4IDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAycHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjphY3RpdmU6YmVmb3JlLFxuaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCkudGFiYmVkOmZvY3VzIH4gLmxldmVyOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjpob3Zlcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDIuNCk7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtcmVhY3Rpb24tY2hlY2tlZC1ob3Zlci1jb2xvcjtcbn1cblxuLy8gU3dpdGNoIGFjdGl2ZSBzdHlsZVxuaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjphY3RpdmU6OmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkudGFiYmVkOmZvY3VzIH4gLmxldmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLXJlYWN0aW9uLWNoZWNrZWQtZm9jdXMtY29sb3I7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6ZGlzYWJsZWQpIH4gLmxldmVyOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLXJlYWN0aW9uLXVuY2hlY2tlZC1ob3Zlci1jb2xvcjtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6YWN0aXZlOmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6ZGlzYWJsZWQpLnRhYmJlZDpmb2N1cyB+IC5sZXZlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1yZWFjdGlvbi11bmNoZWNrZWQtZm9jdXMtY29sb3I7XG59XG5cbi8vIERpc2FibGVkIFN0eWxlc1xuLnN3aXRjaCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0gKyAubGV2ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuIiwiLyogU2VsZWN0IEZpZWxkXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5zZWxlY3QuYnJvd3Nlci1kZWZhdWx0IHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICRzZWxlY3QtaW5wdXQtY29sb3I7XG59XG5cbnNlbGVjdCB7XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRzZWxlY3QtcGFkZGluZztcbiAgYm9yZGVyOiAkc2VsZWN0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbn1cblxuLy8gLnNlbGVjdC1sYWJlbCB7XG4vLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vIH1cblxuXG4uc2VsZWN0LXdyYXBwZXIge1xuICAvKlxuICAmLnZhbGlkIC5oZWxwZXItdGV4dFtkYXRhLXN1Y2Nlc3NdLFxuICAmLmludmFsaWQgfiAuaGVscGVyLXRleHRbZGF0YS1lcnJvcl0ge1xuICAgIEBleHRlbmQgJWhpZGRlbi10ZXh0O1xuICB9XG5cbiAgJi52YWxpZCB7XG4gICAgJiA+IGlucHV0LnNlbGVjdC1kcm9wZG93biB7XG4gICAgICBAZXh0ZW5kICV2YWxpZC1pbnB1dC1zdHlsZTtcbiAgICB9XG4gICAgJiB+IC5oZWxwZXItdGV4dDphZnRlciB7XG4gICAgICAvL0BleHRlbmQgJWN1c3RvbS1zdWNjZXNzLW1lc3NhZ2U7XG4gICAgfVxuICB9XG5cbiAgJi5pbnZhbGlkIHtcbiAgICAmID4gaW5wdXQuc2VsZWN0LWRyb3Bkb3duLFxuICAgICYgPiBpbnB1dC5zZWxlY3QtZHJvcGRvd246Zm9jdXMge1xuICAgICAgQGV4dGVuZCAlaW52YWxpZC1pbnB1dC1zdHlsZTtcbiAgICB9XG4gICAgJiB+IC5oZWxwZXItdGV4dDphZnRlciB7XG4gICAgICAvL0BleHRlbmQgJWN1c3RvbS1lcnJvci1tZXNzYWdlO1xuICAgIH1cbiAgfVxuXG4gICYudmFsaWQgKyBsYWJlbCxcbiAgJi5pbnZhbGlkICsgbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gICYgKyBsYWJlbDphZnRlciB7XG4gICAgLy9AZXh0ZW5kICVpbnB1dC1hZnRlci1zdHlsZTtcbiAgfVxuICAqL1xuXG5cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLypcbiAgaW5wdXQuc2VsZWN0LWRyb3Bkb3duIHsgICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIH1cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAkaW5wdXQtYm9yZGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBtYXJnaW46ICRpbnB1dC1tYXJnaW47XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRzZWxlY3QtaW5wdXQtY29sb3I7XG4gIH1cbiAgKi9cblxuICAuY2FyZXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0byAwO1xuICAgIHotaW5kZXg6IDA7XG4gICAgZmlsbDogJHNlbGVjdC1pbnB1dC1jb2xvcjtcbiAgfVxuXG4gIC8qXG4gICYgKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTI2cHg7XG4gICAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICB9XG4gICovXG5cbiAgLy8gSGlkZSBzZWxlY3Qgd2l0aCBvdmVyZmxvdyBoaWRkZW4gaW5zdGVhZCBvZiB1c2luZyBkaXNwbGF5IG5vbmVcbiAgLy8gKHRoaXMgcHJldmVudHMgZm9ybSB2YWxpZGF0aW9uIGVycm9ycyB3aXRoIGhpZGRlbiBmb3JtIGVsZW1lbnRzKVxuICAuaGlkZS1zZWxlY3Qge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3R5bGVzXG5zZWxlY3Q6ZGlzYWJsZWQge1xuICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG4uc2VsZWN0LXdyYXBwZXIuZGlzYWJsZWQge1xuICArIGxhYmVsIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG4gIC5jYXJldCB7XG4gICAgZmlsbDogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi5zZWxlY3Qtd3JhcHBlciBpbnB1dC5zZWxlY3QtZHJvcGRvd246ZGlzYWJsZWQge1xuICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc2VsZWN0LXdyYXBwZXIgaSB7XG4gIGNvbG9yOiAkc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xufVxuXG4uc2VsZWN0LWRyb3Bkb3duIGxpLmRpc2FibGVkLFxuLnNlbGVjdC1kcm9wZG93biBsaS5kaXNhYmxlZCA+IHNwYW4sXG4uc2VsZWN0LWRyb3Bkb3duIGxpLm9wdGdyb3VwIHtcbiAgY29sb3I6ICRzZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5ib2R5LmtleWJvYXJkLWZvY3VzZWQge1xuICAuc2VsZWN0LWRyb3Bkb3duLmRyb3Bkb3duLWNvbnRlbnQgbGk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3Qtb3B0aW9uLWZvY3VzO1xuICB9XG59XG5cbi5zZWxlY3QtZHJvcGRvd24uZHJvcGRvd24tY29udGVudCB7XG4gIGxpIHtcbiAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3Qtb3B0aW9uLWhvdmVyO1xuICAgIH1cblxuICAgICYuc2VsZWN0ZWQ6bm90KC5kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1vcHRpb24tc2VsZWN0ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8qXG4vLyBQcmVmaXggSWNvbnNcbi5wcmVmaXggfiAuc2VsZWN0LXdyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgd2lkdGg6IDkyJTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xufVxuLnByZWZpeCB+IGxhYmVsIHsgbWFyZ2luLWxlZnQ6IDNyZW07IH1cbi8vIFN1ZmZpeCBJY29uc1xuLnN1ZmZpeCB+IC5zZWxlY3Qtd3JhcHBlciB7XG4gIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgd2lkdGg6IDkyJTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xufVxuLnN1ZmZpeCB+IGxhYmVsIHsgbWFyZ2luLXJpZ2h0OiAzcmVtOyB9XG4qL1xuXG4vLyBJY29uc1xuLnNlbGVjdC1kcm9wZG93biBsaSB7XG4gIGltZyB7XG4gICAgaGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICB3aWR0aDogJGRyb3Bkb3duLWl0ZW0taGVpZ2h0IC0gMTA7XG4gICAgbWFyZ2luOiA1cHggMTVweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLy8gT3B0Z3JvdXAgc3R5bGVzXG4uc2VsZWN0LWRyb3Bkb3duIGxpLm9wdGdyb3VwIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkcm9wZG93bi1ob3Zlci1iZy1jb2xvcjtcblxuICAmLnNlbGVjdGVkID4gc3BhbiB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1haW47XG4gIH1cblxuICAmID4gc3BhbiB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgfVxuXG4gICYgfiBsaS5vcHRncm91cC1vcHRpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgfVxufVxuIiwiLyogRmlsZSBJbnB1dFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmZpbGUtZmllbGQge1xuICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW4tY29udGVudCBhdXRvO1xuICBnYXA6IDEwcHg7XG4gIFxuXG4gIC5maWxlLXBhdGgtd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIGlucHV0LmZpbGUtcGF0aCB7IHdpZHRoOiAxMDAlOyB9XG5cbiAgLmJ0biB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgc3BhbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1maWxlXSB7XG4gICAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHdlYmtpdCBidXR0b25cbiAgICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIFxuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgICAgXG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICB9XG59XG4iLCIvKiBSYW5nZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnJhbmdlLWZpZWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXSxcbmlucHV0W3R5cGU9cmFuZ2VdICsgLnRodW1iIHtcbiAgQGV4dGVuZCAubm8tc2VsZWN0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxNXB4IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPXJhbmdlXSArIC50aHVtYiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJhZGlvLWZpbGwtY29sb3I7XG4gIG1hcmdpbi1sZWZ0OiA3cHg7XG5cbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblxuICAudmFsdWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHJhZGlvLWZpbGwtY29sb3I7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCUgNTAlIDUwJSAwO1xuXG4gICAgLnZhbHVlIHtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2hhcmVkXG5AbWl4aW4gcmFuZ2UtdHJhY2sge1xuICBoZWlnaHQ6ICR0cmFjay1oZWlnaHQ7XG4gIEBleHRlbmQgLnN1cmZhY2UtdmFyaWFudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5AbWl4aW4gcmFuZ2UtdGh1bWIge1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogJHJhbmdlLWhlaWdodDtcbiAgd2lkdGg6ICRyYW5nZS13aWR0aDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAkcmFkaW8tZmlsbC1jb2xvcjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuM3M7XG59XG5cbi8vIFdlYktpdFxuaW5wdXRbdHlwZT1yYW5nZV0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIEBpbmNsdWRlIHJhbmdlLXRyYWNrO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBAaW5jbHVkZSByYW5nZS10aHVtYjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgbWFyZ2luOiAtNXB4IDAgMCAwO1xuXG59XG5cbi5rZXlib2FyZC1mb2N1c2VkIGlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzOm5vdCguYWN0aXZlKTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4ICRyYWRpby1mb2N1cy1jb2xvcjtcbn1cblxuLy8gRmlyZUZveFxuaW5wdXRbdHlwZT1yYW5nZV0ge1xuXG4gIC8qcmVxdWlyZWQgZm9yIHByb3BlciB0cmFjayBzaXppbmcgaW4gRkYqL1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIEBpbmNsdWRlIHJhbmdlLXRyYWNrO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBAaW5jbHVkZSByYW5nZS10aHVtYjtcbiAgbWFyZ2luLXRvcDogLTVweDtcbn1cblxuLy8gaGlkZSB0aGUgb3V0bGluZSBiZWhpbmQgdGhlIGJvcmRlclxuaW5wdXRbdHlwZT1yYW5nZV06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggc29saWQgI2ZmZjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi5rZXlib2FyZC1mb2N1c2VkIGlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzOm5vdCguYWN0aXZlKTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggJHJhZGlvLWZvY3VzLWNvbG9yO1xufVxuXG4vLyBJRSAxMCtcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICBoZWlnaHQ6ICR0cmFjay1oZWlnaHQ7XG5cbiAgLy8gcmVtb3ZlIGJnIGNvbG91ciBmcm9tIHRoZSB0cmFjaywgd2UnbGwgdXNlIG1zLWZpbGwtbG93ZXIgYW5kIG1zLWZpbGwtdXBwZXIgaW5zdGVhZFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAvLyBsZWF2ZSByb29tIGZvciB0aGUgbGFyZ2VyIHRodW1iIHRvIG92ZXJmbG93IHdpdGggYSB0cmFuc3BhcmVudCBib3JkZXIgKi9cbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiA2cHggMDtcblxuICAvKnJlbW92ZSBkZWZhdWx0IHRpY2sgbWFya3MqL1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlcixcbmlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlcixcbmlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWNvbG9yO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRodW1iIHtcbiAgQGluY2x1ZGUgcmFuZ2UtdGh1bWI7XG59XG5cbi5rZXlib2FyZC1mb2N1c2VkIGlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzOm5vdCguYWN0aXZlKTo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkcmFkaW8tZm9jdXMtY29sb3I7XG59XG4iLCIvKioqKioqKioqKioqKioqXG4gICAgTmF2IExpc3RcbioqKioqKioqKioqKioqKi9cbi50YWJsZS1vZi1jb250ZW50cyB7XG4gICYuZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGRpdmlkZXItY29sb3I7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbWFpbjtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTRweDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvKiBUaGlzIHNob3VsZCBiZSBhbiBVTC1FbGVtZW50Ki9cbi5zaWRlbmF2IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogJHNpZGVuYXYtd2lkdGg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdi1iZy1jb2xvcjtcbiAgei1pbmRleDogOTk5O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSk7IFxuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG5cbiAgLy8gUmlnaHQgQWxpZ25cbiAgJi5yaWdodC1hbGlnbmVkIHtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSk7XG4gICAgbGVmdDogYXV0bztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cblxuICAuY29sbGFwc2libGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8qIEhvdmVyIG9ubHkgb24gdG9wIHJvdyAqL1xuICBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsYXQtaG92ZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsYXQtZm9jdXMtYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuXG4gIGxpLmFjdGl2ZSA+IGE6bm90KC5jb2xsYXBzaWJsZS1oZWFkZXIpOm5vdCguYnRuKTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tc21hbGwpOm5vdCguYnRuLWZsYXQpOm5vdCguYnRuLWxhcmdlKTpub3QoLmJ0bi1mbG9hdGluZykgIHtcbiAgICBjb2xvcjogJGZvbnQtb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjtcbiAgfVxuXG4gIC5jb2xsYXBzaWJsZS1ib2R5ID4gdWwgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuICBsaSB7ICAgIFxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgbGkgPiBhIHtcbiAgICAvKiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy81ODQ4MDkwL2Z1bGwtd2lkdGgtaG92ZXItYmFja2dyb3VuZC1mb3ItbmVzdGVkLWxpc3RzICovXG4gICAgLy9wYWRkaW5nLWxlZnQ6IGNhbGMoMTAwJSArICRzaWRlbmF2LXBhZGRpbmcpO1xuICAgIC8vbWFyZ2luLWxlZnQ6IC0xMDAlO1xuICAgIG1hcmdpbjogMCAxMnB4O1xuICAgIHBhZGRpbmc6IDAgJHNpZGVuYXYtcGFkZGluZztcbiAgICAvL3BhZGRpbmctbGVmdDogJHNpZGVuYXYtcGFkZGluZztcblxuICAgIC8vIFRydW5jYXRlIHRvbyBsb25nIHRleHRcbiAgICAvKlxuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgKi9cblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAkc2lkZW5hdi1pdGVtLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcblxuICAgICY6bm90KC5idG4pOm5vdCguYnRuLWZsYXQpOm5vdCguYnRuLWxhcmdlKTpub3QoLmJ0bi1mbG9hdGluZykge1xuICAgICAgY29sb3I6ICRzaWRlbmF2LWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgJi5idG4sICYuYnRuLWxhcmdlLCAmLmJ0bi1mbGF0LCAmLmJ0bi1mbG9hdGluZyB7XG4gICAgICBtYXJnaW46IDEwcHggMTVweDtcbiAgICB9XG5cbiAgICAvKiBUT0RPOiBVc2Ugc3BlY2lhbCBjbGFzcyBpbiBmdXR1cmUgbGlrZSBcIm13LWljb25cIiAqL1xuICAgICYgPiAubWF0ZXJpYWwtaWNvbnMsICYgPiAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCxcbiAgICAmID4gLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgJiA+IC5tYXRlcmlhbC1zeW1ib2xzLXNoYXJwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGNvbG9yOiAkc2lkZW5hdi1pY29uLWNvbG9yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIH1cbiAgfVxuXG4gIC5kaXZpZGVyIHtcbiAgICBtYXJnaW46ICgkc2lkZW5hdi1wYWRkaW5nICogMC41KSAwIDAgMDtcbiAgfVxuXG4gIC5zdWJoZWFkZXIge1xuICAgIGN1cnNvcjogaW5pdGlhbDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb2xvcjogJHNpZGVuYXYtc3ViaGVhZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJHNpZGVuYXYtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6ICRzaWRlbmF2LWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoaXM/IGlzIHZlcnkgY3VzdG9tXG4gIC51c2VyLXZpZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAoJHNpZGVuYXYtcGFkZGluZyAqIDIpICgkc2lkZW5hdi1wYWRkaW5nICogMikgMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2lkZW5hdi1wYWRkaW5nICogMC41O1xuXG4gICAgJiA+IGEge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5iYWNrZ3JvdW5kIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG5cbiAgICAuY2lyY2xlLCAubmFtZSwgLmVtYWlsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5jaXJjbGUge1xuICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgd2lkdGg6IDY0cHg7XG4gICAgfVxuXG4gICAgLm5hbWUsXG4gICAgLmVtYWlsIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpZGVuYXYtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRzaWRlbmF2LWxpbmUtaGVpZ2h0ICogMC41O1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIC5lbWFpbCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFRvdWNoIGludGVyYWN0aW9uXG4uZHJhZy10YXJnZXQge1xuICAvLyBSaWdodCBBbGlnblxuICAmLnJpZ2h0LWFsaWduZWQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5ODtcbn1cblxuLy8gRml4ZWQgU2lkZW5hdiBzaG93blxuLnNpZGVuYXYuc2lkZW5hdi1maXhlZCB7XG4gIC8vIFJpZ2h0IEFsaWduXG4gICYucmlnaHQtYWxpZ25lZCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLy8gRml4ZWQgU2lkZW5hdiBoaWRlIG9uIHNtYWxsZXJcbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnNpZGVuYXYge1xuICAgICYuc2lkZW5hdi1maXhlZCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpO1xuXG4gICAgICAmLnJpZ2h0LWFsaWduZWQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSk7XG4gICAgICB9XG4gICAgfVxuICAgID4gYSB7XG4gICAgICBwYWRkaW5nOiAwICRzaWRlbmF2LXBhZGRpbmc7XG4gICAgfVxuICAgIC51c2VyLXZpZXcge1xuICAgICAgcGFkZGluZzogJHNpZGVuYXYtcGFkZGluZyAkc2lkZW5hdi1wYWRkaW5nIDA7XG4gICAgfVxuICB9XG59XG5cbi5zaWRlbmF2IC5jb2xsYXBzaWJsZS1ib2R5IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNpZGVuYXYtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMjB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNSk7XG4gIHotaW5kZXg6IDk5NztcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gU2lkZW5hdiBjb2xsYXBzaWJsZSBzdHlsaW5nIChUYWtlbiBmcm9tIENvbGxhcHNpYmxlLnNjc3MpXG4uc2lkZW5hdixcbi5zaWRlbmF2LnNpZGVuYXYtZml4ZWQge1xuICAuY29sbGFwc2libGUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC5jb2xsYXBzaWJsZS1oZWFkZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICAuY29sbGFwc2libGUtYm9keSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBCYXJcbi5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICBAZXh0ZW5kIC5zdXJmYWNlLXZhcmlhbnQ7XG5cbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmRldGVybWluYXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggLjNzIGxpbmVhcjtcbiAgfVxuXG4gIC5pbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpbGwtY2hhbmdlOiBsZWZ0LCByaWdodDtcbiAgICAgIC8vIEN1c3RvbSBiZXppZXJcbiAgICAgIGFuaW1hdGlvbjogaW5kZXRlcm1pbmF0ZSAyLjFzIGN1YmljLWJlemllcigwLjY1MCwgMC44MTUsIDAuNzM1LCAwLjM5NSkgaW5maW5pdGU7XG5cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gICAgICAvLyBDdXN0b20gYmV6aWVyXG4gICAgICBhbmltYXRpb246IGluZGV0ZXJtaW5hdGUtc2hvcnQgMi4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQwLCAwLjQ0MCwgMS4wMDApIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxLjE1cztcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBpbmRldGVybWluYXRlIHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zNSU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gIH1cbiAgNjAlIHtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHJpZ2h0OiAtOTAlO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgcmlnaHQ6IC05MCU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBpbmRldGVybWluYXRlLXNob3J0IHtcbiAgMCUge1xuICAgIGxlZnQ6IC0yMDAlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIDYwJSB7XG4gICAgbGVmdDogMTA3JTtcbiAgICByaWdodDogLTglO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDEwNyU7XG4gICAgcmlnaHQ6IC04JTtcbiAgfVxufVxuXG5cblxuLypcbiAgICBAbGljZW5zZVxuICAgIENvcHlyaWdodCAoYykgMjAxNCBUaGUgUG9seW1lciBQcm9qZWN0IEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gICAgVGhpcyBjb2RlIG1heSBvbmx5IGJlIHVzZWQgdW5kZXIgdGhlIEJTRCBzdHlsZSBsaWNlbnNlIGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9MSUNFTlNFLnR4dFxuICAgIFRoZSBjb21wbGV0ZSBzZXQgb2YgYXV0aG9ycyBtYXkgYmUgZm91bmQgYXQgaHR0cDovL3BvbHltZXIuZ2l0aHViLmlvL0FVVEhPUlMudHh0XG4gICAgVGhlIGNvbXBsZXRlIHNldCBvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9DT05UUklCVVRPUlMudHh0XG4gICAgQ29kZSBkaXN0cmlidXRlZCBieSBHb29nbGUgYXMgcGFydCBvZiB0aGUgcG9seW1lciBwcm9qZWN0IGlzIGFsc29cbiAgICBzdWJqZWN0IHRvIGFuIGFkZGl0aW9uYWwgSVAgcmlnaHRzIGdyYW50IGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9QQVRFTlRTLnR4dFxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFNUWUxFUyBGT1IgVEhFIFNQSU5ORVIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLypcbiAqIENvbnN0YW50czpcbiAqICAgICAgU1RST0tFV0lEVEggPSAzcHhcbiAqICAgICAgQVJDU0laRSAgICAgPSAyNzAgZGVncmVlcyAoYW1vdW50IG9mIGNpcmNsZSB0aGUgYXJjIHRha2VzIHVwKVxuICogICAgICBBUkNUSU1FICAgICA9IDEzMzNtcyAodGltZSBpdCB0YWtlcyB0byBleHBhbmQgYW5kIGNvbnRyYWN0IGFyYylcbiAqICAgICAgQVJDU1RBUlRST1QgPSAyMTYgZGVncmVlcyAoaG93IG11Y2ggdGhlIHN0YXJ0IGxvY2F0aW9uIG9mIHRoZSBhcmNcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG91bGQgcm90YXRlIGVhY2ggdGltZSwgMjE2IGdpdmVzIHVzIGFcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1IHBvaW50ZWQgc3RhciBzaGFwZSAoaXQncyAzNjAvNSAqIDMpLlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciBhIDcgcG9pbnRlZCBzdGFyLCB3ZSBtaWdodCBkb1xuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM2MC83ICogMyA9IDE1NC4yODYpXG4gKiAgICAgIENPTlRBSU5FUldJRFRIID0gMjhweFxuICogICAgICBTSFJJTktfVElNRSA9IDQwMG1zXG4gKi9cblxuXG4ucHJlbG9hZGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcblxuICAmLnNtYWxsIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gIH1cblxuICAmLmJpZyB7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIC8qIGR1cmF0aW9uOiAzNjAgKiBBUkNUSU1FIC8gKEFSQ1NUQVJUUk9UICsgKDM2MC1BUkNTSVpFKSkgKi9cbiAgICAtd2Via2l0LWFuaW1hdGlvbjogY29udGFpbmVyLXJvdGF0ZSAxNTY4bXMgbGluZWFyIGluZmluaXRlO1xuICAgIGFuaW1hdGlvbjogY29udGFpbmVyLXJvdGF0ZSAxNTY4bXMgbGluZWFyIGluZmluaXRlO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBjb250YWluZXItcm90YXRlIHtcbiAgdG8geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvbnRhaW5lci1yb3RhdGUge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgfVxufVxuXG4uc3Bpbm5lci1sYXllciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgYm9yZGVyLWNvbG9yOiAkc3Bpbm5lci1kZWZhdWx0LWNvbG9yO1xufVxuXG4uc3Bpbm5lci1ibHVlLFxuLnNwaW5uZXItYmx1ZS1vbmx5IHtcbiAgYm9yZGVyLWNvbG9yOiAjNDI4NWY0O1xufVxuXG4uc3Bpbm5lci1yZWQsXG4uc3Bpbm5lci1yZWQtb25seSB7XG4gIGJvcmRlci1jb2xvcjogI2RiNDQzNztcbn1cblxuLnNwaW5uZXIteWVsbG93LFxuLnNwaW5uZXIteWVsbG93LW9ubHkge1xuICBib3JkZXItY29sb3I6ICNmNGI0MDA7XG59XG5cbi5zcGlubmVyLWdyZWVuLFxuLnNwaW5uZXItZ3JlZW4tb25seSB7XG4gIGJvcmRlci1jb2xvcjogIzBmOWQ1ODtcbn1cblxuLyoqXG4gKiBJTVBPUlRBTlQgTk9URSBBQk9VVCBDU1MgQU5JTUFUSU9OIFBST1BFUlRJRVMgKGtlYW51bGVlKTpcbiAqXG4gKiBpT1MgU2FmYXJpICh0ZXN0ZWQgb24gaU9TIDguMSkgZG9lcyBub3QgaGFuZGxlIGFuaW1hdGlvbi1kZWxheSB2ZXJ5IHdlbGwgLSBpdCBkb2Vzbid0XG4gKiBndWFyYW50ZWUgdGhhdCB0aGUgYW5pbWF0aW9uIHdpbGwgc3RhcnQgX2V4YWN0bHlfIGFmdGVyIHRoYXQgdmFsdWUuIFNvIHdlIGF2b2lkIHVzaW5nXG4gKiBhbmltYXRpb24tZGVsYXkgYW5kIGluc3RlYWQgc2V0IGN1c3RvbSBrZXlmcmFtZXMgZm9yIGVhY2ggY29sb3IgKGFzIHJlZHVuZGFudCBhcyBpdFxuICogc2VlbXMpLlxuICpcbiAqIFdlIHdyaXRlIG91dCBlYWNoIGFuaW1hdGlvbiBpbiBmdWxsIChpbnN0ZWFkIG9mIHNlcGFyYXRpbmcgYW5pbWF0aW9uLW5hbWUsXG4gKiBhbmltYXRpb24tZHVyYXRpb24sIGV0Yy4pIGJlY2F1c2UgdW5kZXIgdGhlIHBvbHlmaWxsLCBTYWZhcmkgZG9lcyBub3QgcmVjb2duaXplIHRob3NlXG4gKiBzcGVjaWZpYyBwcm9wZXJ0aWVzIHByb3Blcmx5LCB0cmVhdHMgdGhlbSBhcyAtd2Via2l0LWFuaW1hdGlvbiwgYW5kIG92ZXJyaWRlcyB0aGVcbiAqIG90aGVyIGFuaW1hdGlvbiBydWxlcy4gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9Qb2x5bWVyL3BsYXRmb3JtL2lzc3Vlcy81My5cbiAqL1xuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLWJsdWUge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCBibHVlLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCBibHVlLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXJlZCB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHJlZC1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgcmVkLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXllbGxvdyB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHllbGxvdy1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgeWVsbG93LWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLWdyZWVuIHtcbiAgLyogZHVyYXRpb25zOiA0ICogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgZ3JlZW4tZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIGdyZWVuLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllcixcbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ibHVlLW9ubHksXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXItcmVkLW9ubHksXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXIteWVsbG93LW9ubHksXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXItZ3JlZW4tb25seSB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZpbGwtdW5maWxsLXJvdGF0ZSB7XG4gIDEyLjUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOyAgfSAvKiAwLjUgKiBBUkNTSVpFICovXG4gIDI1JSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyAgfSAvKiAxICAgKiBBUkNTSVpFICovXG4gIDM3LjUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0MDVkZWcpOyAgfSAvKiAxLjUgKiBBUkNTSVpFICovXG4gIDUwJSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg1NDBkZWcpOyAgfSAvKiAyICAgKiBBUkNTSVpFICovXG4gIDYyLjUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2NzVkZWcpOyAgfSAvKiAyLjUgKiBBUkNTSVpFICovXG4gIDc1JSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg4MTBkZWcpOyAgfSAvKiAzICAgKiBBUkNTSVpFICovXG4gIDg3LjUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5NDVkZWcpOyAgfSAvKiAzLjUgKiBBUkNTSVpFICovXG4gIHRvICAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMDgwZGVnKTsgfSAvKiA0ICAgKiBBUkNTSVpFICovXG59XG5cbkBrZXlmcmFtZXMgZmlsbC11bmZpbGwtcm90YXRlIHtcbiAgMTIuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpOyAgfSAvKiAwLjUgKiBBUkNTSVpFICovXG4gIDI1JSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgIH0gLyogMSAgICogQVJDU0laRSAqL1xuICAzNy41JSB7IHRyYW5zZm9ybTogcm90YXRlKDQwNWRlZyk7ICB9IC8qIDEuNSAqIEFSQ1NJWkUgKi9cbiAgNTAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1NDBkZWcpOyAgfSAvKiAyICAgKiBBUkNTSVpFICovXG4gIDYyLjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoNjc1ZGVnKTsgIH0gLyogMi41ICogQVJDU0laRSAqL1xuICA3NSUgICB7IHRyYW5zZm9ybTogcm90YXRlKDgxMGRlZyk7ICB9IC8qIDMgICAqIEFSQ1NJWkUgKi9cbiAgODcuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg5NDVkZWcpOyAgfSAvKiAzLjUgKiBBUkNTSVpFICovXG4gIHRvICAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMTA4MGRlZyk7IH0gLyogNCAgICogQVJDU0laRSAqL1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmx1ZS1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgMjYlIHsgb3BhY2l0eTogMDsgfVxuICA4OSUgeyBvcGFjaXR5OiAwOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQGtleWZyYW1lcyBibHVlLWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgMjUlIHsgb3BhY2l0eTogMTsgfVxuICAyNiUgeyBvcGFjaXR5OiAwOyB9XG4gIDg5JSB7IG9wYWNpdHk6IDA7IH1cbiAgOTAlIHsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVkLWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgMTUlIHsgb3BhY2l0eTogMDsgfVxuICAyNSUgeyBvcGFjaXR5OiAxOyB9XG4gIDUwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNTElIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlZC1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7IG9wYWNpdHk6IDA7IH1cbiAgMjUlIHsgb3BhY2l0eTogMTsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDUxJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHllbGxvdy1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7IG9wYWNpdHk6IDA7IH1cbiAgNTAlIHsgb3BhY2l0eTogMTsgfVxuICA3NSUgeyBvcGFjaXR5OiAxOyB9XG4gIDc2JSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyB5ZWxsb3ctZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA0MCUgeyBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNzUlIHsgb3BhY2l0eTogMTsgfVxuICA3NiUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBncmVlbi1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDY1JSB7IG9wYWNpdHk6IDA7IH1cbiAgNzUlIHsgb3BhY2l0eTogMTsgfVxuICA5MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgZ3JlZW4tZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA2NSUgeyBvcGFjaXR5OiAwOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgOTAlIHsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMDsgfVxufVxuXG4vKipcbiAqIFBhdGNoIHRoZSBnYXAgdGhhdCBhcHBlYXIgYmV0d2VlbiB0aGUgdHdvIGFkamFjZW50IGRpdi5jaXJjbGUtY2xpcHBlciB3aGlsZSB0aGVcbiAqIHNwaW5uZXIgaXMgcm90YXRpbmcgKGFwcGVhcnMgb24gQ2hyb21lIDM4LCBTYWZhcmkgNy4xLCBhbmQgSUUgMTEpLlxuICovXG4uZ2FwLXBhdGNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDQ1JTtcbiAgd2lkdGg6IDEwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG5cbi5nYXAtcGF0Y2ggLmNpcmNsZSB7XG4gIHdpZHRoOiAxMDAwJTtcbiAgbGVmdDogLTQ1MCU7XG59XG5cbi5jaXJjbGUtY2xpcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblxuICAuY2lyY2xlIHtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXdpZHRoOiAzcHg7IC8qIFNUUk9LRVdJRFRIICovXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IG5vbmU7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgJi5sZWZ0IC5jaXJjbGUge1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTI5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMjlkZWcpO1xuICB9XG4gICYucmlnaHQgLmNpcmNsZSB7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTI5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTI5ZGVnKTtcbiAgfVxufVxuXG5cblxuLmFjdGl2ZSAuY2lyY2xlLWNsaXBwZXIubGVmdCAuY2lyY2xlIHtcbiAgLyogZHVyYXRpb246IEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogbGVmdC1zcGluIDEzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuLmFjdGl2ZSAuY2lyY2xlLWNsaXBwZXIucmlnaHQgLmNpcmNsZSB7XG4gIC8qIGR1cmF0aW9uOiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiByaWdodC1zcGluIDEzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiByaWdodC1zcGluIDEzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxlZnQtc3BpbiB7XG4gIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbiAgNTAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7IH1cbiAgdG8geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyBsZWZ0LXNwaW4ge1xuICBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTsgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7IH1cbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByaWdodC1zcGluIHtcbiAgZnJvbSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzMGRlZyk7IH1cbiAgNTAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxuICB0byB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzMGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyByaWdodC1zcGluIHtcbiAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG4gIDUwJSB7IHRyYW5zZm9ybTogcm90YXRlKDVkZWcpOyB9XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoLTEzMGRlZyk7IH1cbn1cblxuI3NwaW5uZXJDb250YWluZXIuY29vbGRvd24ge1xuICAvKiBkdXJhdGlvbjogU0hSSU5LX1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZSwgZmFkZS1vdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpO1xuICBhbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZSwgZmFkZS1vdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZS1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIHRvIHsgb3BhY2l0eTogMDsgfVxufVxuIiwiLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gRnVsbHNjcmVlbiBzbGlkZXJcbiAgJi5mdWxsc2NyZWVuIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcblxuICAgIHVsLnNsaWRlcyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgdWwuaW5kaWNhdG9ycyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgYm90dG9tOiAzMHB4O1xuXG4gICAgICAuaW5kaWNhdG9yLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZ1bGxzY3JlZW4taW5kaWNhdG9yLWNvbG9yO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZ1bGxzY3JlZW4taW5kaWNhdG9yLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgLnNsaWRlcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iZy1jb2xvcjtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyBcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY2FwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTUlO1xuICAgICAgICBsZWZ0OiAxNSU7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbmRpY2F0b3JzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgbWFyZ2luOiAwIDEycHg7XG4gICAgfVxuXG4gICAgLmluZGljYXRvci1pdGVtLWJ0biB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1pbmRpY2F0b3ItY29sb3I7XG5cbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaW5kaWNhdG9yLWNvbG9yLWFjdGl2ZTtcbiAgICAgIH1cblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59IiwiLmNhcm91c2VsIHtcbiAgJi5jYXJvdXNlbC1zbGlkZXIge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgLmNhcm91c2VsLWZpeGVkLWl0ZW0ge1xuICAgICAgJi53aXRoLWluZGljYXRvcnMge1xuICAgICAgICBib3R0b206IDY4cHg7XG4gICAgICB9XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAkY2Fyb3VzZWwtaGVpZ2h0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGNhcm91c2VsLWhlaWdodDtcbiAgcGVyc3BlY3RpdmU6IDUwMHB4O1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG5cbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogJGNhcm91c2VsLWl0ZW0td2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaXRlbS1oZWlnaHQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgJiA+IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaW5kaWNhdG9ycyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1jb2xvci1hY3RpdmU7XG4gICAgICB9XG5cbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIG1hcmdpbjogMjRweCA0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWNvbG9yO1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cblxuICAvLyBNYXRlcmlhbGJveCBjb21wYXRpYmlsaXR5XG4gICYuc2Nyb2xsaW5nIC5jYXJvdXNlbC1pdGVtIC5tYXRlcmlhbGJveGVkLFxuICAuY2Fyb3VzZWwtaXRlbTpub3QoLmFjdGl2ZSkgLm1hdGVyaWFsYm94ZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG4iLCIudGFwLXRhcmdldC13cmFwcGVyIHtcbiAgd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IDgwMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAuM3M7XG59XG5cbi50YXAtdGFyZ2V0LXdyYXBwZXIub3BlbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHM7XG5cbiAgLnRhcC10YXJnZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogLjk1O1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguNDIsMCwuNTgsMSksXG4gICAgICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpO1xuICB9XG5cbiAgLnRhcC10YXJnZXQtd2F2ZTo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC50YXAtdGFyZ2V0LXdhdmU6OmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGFuaW1hdGlvbjogcHVsc2UtYW5pbWF0aW9uIDFzIGN1YmljLWJlemllcigwLjI0LCAwLCAwLjM4LCAxKSBpbmZpbml0ZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgb3BhY2l0eSAuM3MsXG4gICAgICB0cmFuc2Zvcm0gLjNzLFxuICAgICAgdmlzaWJpbGl0eSAwcyAxcztcbiAgfVxufVxuXG4udGFwLXRhcmdldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gIGNvbG9yOiAkZm9udC1vbi1zZWNvbmRhcnktY29sb3ItbWFpbjtcbiAgYm94LXNoYWRvdzogMCAyMHB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDEwcHggNTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMzBweCAxMHB4IC0yMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjQyLCAwLCAuNTgsIDEpLFxuICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLCAwLCAuNTgsIDEpO1xufVxuXG4udGFwLXRhcmdldC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4udGFwLXRhcmdldC13YXZlIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtY29sb3JcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5IC4zcyxcbiAgICAgIHRyYW5zZm9ybSAuM3MsXG4gICAgICB2aXNpYmlsaXR5IDBzO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHotaW5kZXg6IDEwMDAxO1xufVxuXG4udGFwLXRhcmdldC1vcmlnaW4ge1xuICAmOm5vdCguYnRuKSxcbiAgJjpub3QoLmJ0bik6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuXG4gIHotaW5kZXg6IDEwMDAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAudGFwLXRhcmdldCwgLnRhcC10YXJnZXQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIGhlaWdodDogNjAwcHg7XG4gIH1cbn1cbiIsIi5wdWxzZSB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MsIHRyYW5zZm9ybSAuM3M7XG4gICAgYW5pbWF0aW9uOiBwdWxzZS1hbmltYXRpb24gMXMgY3ViaWMtYmV6aWVyKDAuMjQsIDAsIDAuMzgsIDEpIGluZmluaXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZS1hbmltYXRpb24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbn1cbiIsIi8qIE1vZGFsICovXG4uZGF0ZXBpY2tlci1tb2RhbCB7XG4gIG1heC13aWR0aDogMzI1cHg7XG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5kYXRlcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtY29sb3I7XG59XG5cbi5kYXRlcGlja2VyLWNvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMjgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIC5zZWxlY3RzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgaW5wdXQge1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmNhcmV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdC15ZWFyIGlucHV0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuXG4gIC5zZWxlY3QtbW9udGggaW5wdXQge1xuICAgIHdpZHRoOiA4MHB4O1xuICB9XG5cbiAgLm1vbnRoLXByZXYsXG4gIC5tb250aC1uZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLm1vbnRoLXByZXYgPiBzdmcsXG4gIC5tb250aC1uZXh0ID4gc3ZnIHtcbiAgICBmaWxsOiAkYnV0dG9uLWZsYXQtY29sb3I7XG4gIH1cbn1cblxuLm1vbnRoLXByZXYsIC5tb250aC1uZXh0IHtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cblxuLyogRGF0ZSBEaXNwbGF5ICovXG4uZGF0ZXBpY2tlci1kYXRlLWRpc3BsYXkge1xuICBmbGV4OiAxIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICBwYWRkaW5nOiAyMHB4IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgLnllYXItdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgY29sb3I6ICRkYXRlcGlja2VyLXllYXI7XG4gIH1cblxuICAuZGF0ZS10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogNDdweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG5cblxuLyogQ2FsZW5kYXIgKi9cbi5kYXRlcGlja2VyLWNhbGVuZGFyLWNvbnRhaW5lciB7XG4gIGZsZXg6IDIuNSBhdXRvO1xufVxuXG4uZGF0ZXBpY2tlci10YWJsZSB7XG4gIHdpZHRoOiAyODBweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW46IDAgYXV0bztcblxuICB0aGVhZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIHRoIHtcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICB0ciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgYWJiciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1jYWxlbmRhci1oZWFkZXItY29sb3I7XG4gIH1cblxuICB0ZCB7XG4gICAgY29sb3I6ICRkYXRlcGlja2VyLWRheS1mb250LWNvbG9yO1xuXG4gICAgJi5pcy10b2RheSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gICAgfVxuXG4gICAgJi5pcy1vdXRzaWRlLWN1cnJlbnQtbW9udGgsXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRhdGVwaWNrZXItZGF5LWZvbnQtY29sb3ItZGlzYWJsZWQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uZGF0ZXBpY2tlci1kYXktYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiAwIDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogaW5oZXJpdDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1kYXktaG92ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1kYXktZm9jdXM7XG4gIH1cbn1cblxuXG4vKiBGb290ZXIgKi9cbi5kYXRlcGlja2VyLWZvb3RlciB7XG4gIHdpZHRoOiAyODBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmRhdGVwaWNrZXItY2FuY2VsLFxuLmRhdGVwaWNrZXItY2xlYXIsXG4uZGF0ZXBpY2tlci10b2RheSxcbi5kYXRlcGlja2VyLWRvbmUge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLmRhdGVwaWNrZXItY2xlYXIge1xuICBjb2xvcjogJGVycm9yLWNvbG9yO1xufVxuXG5cbi8qIE1lZGlhIFF1ZXJpZXMgKi9cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gIC5kYXRlcGlja2VyLW1vZGFsIHtcbiAgICBtYXgtd2lkdGg6IDYyNXB4O1xuICB9XG5cbiAgLmRhdGVwaWNrZXItY29udGFpbmVyLm1vZGFsLWNvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1kYXRlLWRpc3BsYXkge1xuICAgIGZsZXg6IDAgMSAyNzBweDtcbiAgfVxuXG4gIC5kYXRlcGlja2VyLWNvbnRyb2xzLFxuICAuZGF0ZXBpY2tlci10YWJsZSxcbiAgLmRhdGVwaWNrZXItZm9vdGVyIHtcbiAgICB3aWR0aDogMzIwcHg7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1kYXktYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogNDRweDtcbiAgfVxufVxuIiwiLyogVGltZXBpY2tlciBDb250YWluZXJzICovXG4udGltZXBpY2tlci1tb2RhbCB7XG4gIG1heC13aWR0aDogMzI1cHg7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi50aW1lcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG59XG5cblxuLyogQ2xvY2sgRGlnaXRhbCBEaXNwbGF5ICovXG4udGltZXBpY2tlci1kaWdpdGFsLWRpc3BsYXkge1xuICB3aWR0aDogMjAwcHg7XG4gIGZsZXg6IDEgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi50aW1lcGlja2VyLXRleHQtY29udGFpbmVyIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tZWRpdW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgaW5wdXRbdHlwZT10ZXh0XXtcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICBib3JkZXItYm90dG9tOiAwcHg7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICB9XG59XG5cbi50aW1lcGlja2VyLWlucHV0LWhvdXJzLFxuLnRpbWVwaWNrZXItaW5wdXQtbWludXRlcyxcbi50aW1lcGlja2VyLXNwYW4tYW0tcG0gZGl2IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLnRpbWVwaWNrZXItaW5wdXQtaG91cnMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDI4JTtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0udGltZXBpY2tlci1pbnB1dC1taW51dGVzIHtcbiAgd2lkdGg6IDMzJTtcbiAgbWFyZ2luLWxlZnQ6IDNweDtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XS50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbn1cblxuLnRpbWVwaWNrZXItZGlzcGxheS1hbS1wbSB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxcmVtO1xuICBib3R0b206IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cblxuLyogQW5hbG9nIENsb2NrIERpc3BsYXkgKi9cbi50aW1lcGlja2VyLWFuYWxvZy1kaXNwbGF5IHtcbiAgZmxleDogMi41IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aW1lcGlja2VyLWNsb2NrLWJnO1xufVxuXG4udGltZXBpY2tlci1wbGF0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aW1lcGlja2VyLWNsb2NrLXBsYXRlLWJnO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAyNzBweDtcbiAgaGVpZ2h0OiAyNzBweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4udGltZXBpY2tlci1jYW52YXMsXG4udGltZXBpY2tlci1kaWFsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi50aW1lcGlja2VyLW1pbnV0ZXMge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi50aW1lcGlja2VyLXRpY2sge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAkdGltZXBpY2tlci1jbG9jay1jb2xvcjtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLnRpbWVwaWNrZXItdGljay5hY3RpdmUsXG4udGltZXBpY2tlci10aWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3ItaG92ZXItb3BhcXVlO1xufVxuXG4udGltZXBpY2tlci1kaWFsIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDM1MG1zLCBvcGFjaXR5IDM1MG1zO1xufVxuXG4udGltZXBpY2tlci1kaWFsLW91dCB7XG4gICYudGltZXBpY2tlci1ob3VycyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7XG4gIH1cblxuICAmLnRpbWVwaWNrZXItbWludXRlcyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguOCwgLjgpO1xuICB9XG5cbiAgb3BhY2l0eTogMDtcbn1cblxuLnRpbWVwaWNrZXItY2FudmFzIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNzVtcztcblxuICBsaW5lIHtcbiAgICBzdHJva2U6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHN0cm9rZS13aWR0aDogNDtcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIH1cbn1cblxuLnRpbWVwaWNrZXItY2FudmFzLW91dCB7XG4gIG9wYWNpdHk6IDAuMjU7XG59XG5cbi50aW1lcGlja2VyLWNhbnZhcy1iZWFyaW5nIHtcbiAgc3Ryb2tlOiBub25lO1xuICBmaWxsOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLnRpbWVwaWNrZXItY2FudmFzLWJnIHtcbiAgc3Ryb2tlOiBub25lO1xuICBmaWxsOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuXG4vKiBGb290ZXIgKi9cbi50aW1lcGlja2VyLWZvb3RlciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA1cHggMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4udGltZXBpY2tlci1jbGVhciB7XG4gIGNvbG9yOiAkZXJyb3ItY29sb3I7XG59XG5cbi50aW1lcGlja2VyLWNsb3NlIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4udGltZXBpY2tlci1jbGVhcixcbi50aW1lcGlja2VyLWNsb3NlIHtcbiAgcGFkZGluZzogMCAyMHB4O1xufVxuXG4vKiBNZWRpYSBRdWVyaWVzICovXG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAudGltZXBpY2tlci1tb2RhbCB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgfVxuXG4gIC50aW1lcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLnRpbWVwaWNrZXItdGV4dC1jb250YWluZXIge1xuICAgIHRvcDogMzIlO1xuICB9XG5cbiAgLnRpbWVwaWNrZXItZGlzcGxheS1hbS1wbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICB9XG59XG4iLCIudmlzaXRhLXJlc3VtZW4ge1xuICAgIC0tY2FyZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jYXJkLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4pO1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmluZGljYWRvcmVzIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgIGN1cnNvcjogaGVscDtcbiAgICAgICAgLmluZGljYWRvcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb2xpbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbik7XG4gICAgfVxuXG4gICAgLnRpcG8sIC5wcm92ZWVkb3Ige1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bSk7XG4gICAgICAgIH0gICBcbiAgICB9XG5cbiAgICAuY29tZW50YXJpb3Mge1xuXG4gICAgfSAgICBcbn1cbi5jYXJkLml0aW5lcmFyaW8ge1xuICAgIHBhZGRpbmc6IDVweCAxcmVtO1xuICAgIC5mZWNoYSwgLmhvcmEge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmNvbXBsZW1lbnRvLmVzdGFkbyBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn0iLCIudmlzaXRhbnRlLXJlc3VtZW4sIC5lbXBsZWFkby1yZXN1bWVuIHtcbiAgICAtLXN0YXR1cy1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgLnBwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1heC13aWR0aDogMTI4cHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tc3RhdHVzLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogODBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuICAgIFxuICAgIC5pbmRpY2Fkb3JlcyB7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICBjdXJzb3I6IGhlbHA7XG4gICAgICAgIC5pbmRpY2Fkb3I6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvY2VkZW5jaWEsIC5lc3RhZG8sIC5zaXR1YWNpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vbWJyZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxufSIsIi51bmlkYWQtcmVzdW1lbiB7XG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4pO1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbmRpY2Fkb3JlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGN1cnNvcjogaGVscDtcbiAgICAgICAgLmluZGljYWRvcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RlbG8sIC50aXBvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1tZWRpdW0pO1xuICAgICAgICB9ICAgXG4gICAgfVxuXG4gICAgLmxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pO1xuICAgIH1cbn0iLCIudGltZWxpbmUge1xuICAgIC0tY2hpbGQtbWluLWNyb3NzLWF4aXMtaGVpZ2h0OiA4cmVtO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3VyZmFjZS1jb2xvcik7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5ob3Jpem9udGFsIHtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cblxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAmLmFsdGVybmF0ZSB7XG4gICAgICAgICAgICAudGltZXNsb3Q6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICAgICAgLmRhdGEge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE1cHggc29saWQgdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29tcGxlbWVudG8ge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50aW1lc2xvdDpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAuZGF0YSB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxNXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRpbWVzbG90IHtcbiAgICAgICAgICAgIC5kYXRhLCAuY29tcGxlbWVudG8geyBcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWNoaWxkLW1pbi1jcm9zcy1heGlzLWhlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgJi5hbHRlcm5hdGUge1xuICAgICAgICAgICAgLnRpbWVzbG90Om50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGltZXNsb3Q6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aW1lc2xvdCB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tY2hpbGQtY3Jvc3MtYXhpcy1oZWlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgJi5jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgJi5ldmVuIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgfVxuICAgICYuc3RhcnQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgICYuZW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gICAgJi5hcm91bmQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG5cbiAgICAudGltZXNsb3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAuZGF0YSwgLmNvbXBsZW1lbnRvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUgLml0aW5lcmFyaW8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogI2VlZTtcbiAgICAgICAgfVxuICAgICAgICAmLmNsb3NlZDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5jdW1wbGVhbm9zLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDVweCAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzMnB4IDVweCAzMnB4IDVweDtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1tYWluKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXM7XG4gICAgLmRhdGEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWVkYWQpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNWRlZyk7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5nb3JyaXRvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgIGxlZnQ6IDY1JTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb2xvci1ob3Zlcik7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgfVxuXG4gICAgJi5oYmQge1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/