/*! nouislider - 14.1.1 - 12/15/2019 */
.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;touch-action:none;-moz-user-select:none;user-select:none;box-sizing:border-box}.noUi-target{position:relative}.noUi-base,.noUi-connects{width:100%;height:100%;position:relative;z-index:1}.noUi-connects{overflow:hidden;z-index:0}.noUi-connect,.noUi-origin{will-change:transform;position:absolute;z-index:1;top:0;right:0;-ms-transform-origin:0 0;-webkit-transform-origin:0 0;-webkit-transform-style:preserve-3d;transform-origin:0 0;-webkit-transform-style:flat;transform-style:flat}.noUi-connect{height:100%;width:100%}.noUi-origin{height:10%;width:10%}.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto}.noUi-vertical .noUi-origin{width:0}.noUi-horizontal .noUi-origin{height:0}.noUi-handle{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute}.noUi-touch-area{height:100%;width:100%}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s, -webkit-transform .3s}.noUi-state-drag *{cursor:inherit!important}.noUi-horizontal{height:18px}.noUi-horizontal .noUi-handle{width:34px;height:28px;right:-17px;top:-6px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;right:-6px;top:-17px}.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto}.noUi-target{background:#FAFAFA;border-radius:4px;border:1px solid #D3D3D3;box-shadow:inset 0 1px 1px #F0F0F0,0 3px 6px -5px #BBB}.noUi-connects{border-radius:3px}.noUi-connect{background:#3FB8AF}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{border:1px solid #D9D9D9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #EBEBEB,0 3px 6px -3px #BBB}.noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.noUi-handle:after,.noUi-handle:before{content:"";display:block;position:absolute;height:14px;width:1px;background:#E8E7E6;left:14px;top:6px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:after,.noUi-vertical .noUi-handle:before{width:14px;height:1px;left:6px;top:14px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#B8B8B8}[disabled] .noUi-handle,[disabled].noUi-handle,[disabled].noUi-target{cursor:not-allowed}.noUi-pips,.noUi-pips *{box-sizing:border-box}.noUi-pips{position:absolute;color:#999}.noUi-value{position:absolute;white-space:nowrap;text-align:center}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{position:absolute;background:#CCC}.noUi-marker-sub{background:#AAA}.noUi-marker-large{background:#AAA}.noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.noUi-value-horizontal{-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.noUi-rtl .noUi-value-horizontal{-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.noUi-value-vertical{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);padding-left:25px}.noUi-rtl .noUi-value-vertical{-webkit-transform:translate(0,50%);transform:translate(0,50%)}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{display:block;position:absolute;border:1px solid #D9D9D9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap}.noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.noUi-vertical .noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}
/* This is a compiled file, you should be editing the file in the templates directory */
.pace {
  -webkit-pointer-events: none;
  pointer-events: none;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pace-inactive {
  display: none;
}

.pace .pace-progress {
  background: #2299dd;
  position: fixed;
  z-index: 2000;
  top: 0;
  right: 100%;
  width: 100%;
  height: 2px;
}

/*!
 * FullCalendar v3.9.0
 * Docs & License: https://fullcalendar.io/
 * (c) 2018 Adam Shaw
 */
.fc {
  direction: ltr;
  text-align: left; }

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

body .fc {
  /* extra precedence to overcome jqui */
  font-size: 1em; }

/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-highlight {
  /* when user is selecting cells */
  background: #bce8f1;
  opacity: .3; }

.fc-bgevent {
  /* default look for background events */
  background: #8fdf82;
  opacity: .3; }

.fc-nonbusiness {
  /* default look for non-business-hours areas */
  /* will inherit .fc-bgevent's styles */
  background: #d7d7d7; }

/* Buttons (styled <button> tags, normalized to work cross-browser)
--------------------------------------------------------------------------------------------------*/
.fc button {
  /* force height to include the border and padding */
  box-sizing: border-box;
  /* dimensions */
  margin: 0;
  height: 2.1em;
  padding: 0 .6em;
  /* text & cursor */
  font-size: 1em;
  /* normalize */
  white-space: nowrap;
  cursor: pointer; }

/* Firefox has an annoying inner border */
.fc button::-moz-focus-inner {
  margin: 0;
  padding: 0; }

.fc-state-default {
  /* non-theme */
  border: 1px solid; }

.fc-state-default.fc-corner-left {
  /* non-theme */
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }

.fc-state-default.fc-corner-right {
  /* non-theme */
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

/* icons in buttons */
.fc button .fc-icon {
  /* non-theme */
  position: relative;
  top: -0.05em;
  /* seems to be a good adjustment across browsers */
  margin: 0 .2em;
  vertical-align: middle; }

/*
  button states
  borrowed from twitter bootstrap (http://twitter.github.com/bootstrap/)
*/
.fc-state-default {
  background-color: #f5f5f5;
  background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
  background-repeat: repeat-x;
  border-color: #e6e6e6 #e6e6e6 #bfbfbf;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  color: #333;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); }

.fc-state-hover,
.fc-state-down,
.fc-state-active,
.fc-state-disabled {
  color: #333333;
  background-color: #e6e6e6; }

.fc-state-hover {
  color: #333333;
  text-decoration: none;
  background-position: 0 -15px;
  transition: background-position 0.1s linear; }

.fc-state-down,
.fc-state-active {
  background-color: #cccccc;
  background-image: none;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); }

.fc-state-disabled {
  cursor: default;
  background-image: none;
  opacity: 0.65;
  box-shadow: none; }

/* Buttons Groups
--------------------------------------------------------------------------------------------------*/
.fc-button-group {
  display: inline-block; }

/*
every button that is not first in a button group should scootch over one pixel and cover the
previous button's border...
*/
.fc .fc-button-group > * {
  /* extra precedence b/c buttons have margin set to zero */
  float: left;
  margin: 0 0 0 -1px; }

.fc .fc-button-group > :first-child {
  /* same */
  margin-left: 0; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover {
  position: absolute;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }

.fc-popover .fc-header {
  /* TODO: be more consistent with fc-head/fc-body */
  padding: 2px 4px; }

.fc-popover .fc-header .fc-title {
  margin: 0 2px; }

.fc-popover .fc-header .fc-close {
  cursor: pointer; }

.fc-ltr .fc-popover .fc-header .fc-title,
.fc-rtl .fc-popover .fc-header .fc-close {
  float: left; }

.fc-rtl .fc-popover .fc-header .fc-title,
.fc-ltr .fc-popover .fc-header .fc-close {
  float: right; }

/* Misc Reusable Components
--------------------------------------------------------------------------------------------------*/
.fc-divider {
  border-style: solid;
  border-width: 1px; }

hr.fc-divider {
  height: 0;
  margin: 0;
  padding: 0 0 2px;
  /* height is unreliable across browsers, so use padding */
  border-width: 1px 0; }

.fc-clear {
  clear: both; }

.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-helper-skeleton {
  /* these element should always cling to top-left/right corners */
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

.fc-bg {
  bottom: 0;
  /* strech bg to bottom edge */ }

.fc-bg table {
  height: 100%;
  /* strech bg to bottom edge */ }

/* Tables
--------------------------------------------------------------------------------------------------*/
.fc table {
  width: 100%;
  box-sizing: border-box;
  /* fix scrollbar issue in firefox */
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1em;
  /* normalize cross-browser */ }

.fc th {
  text-align: center; }

.fc th,
.fc td {
  border-style: solid;
  border-width: 1px;
  padding: 0;
  vertical-align: top; }

.fc td.fc-today {
  border-style: double;
  /* overcome neighboring borders */ }

/* Internal Nav Links
--------------------------------------------------------------------------------------------------*/
a[data-goto] {
  cursor: pointer; }

a[data-goto]:hover {
  text-decoration: underline; }

/* Fake Table Rows
--------------------------------------------------------------------------------------------------*/
.fc .fc-row {
  /* extra precedence to overcome themes w/ .ui-widget-content forcing a 1px border */
  /* no visible border by default. but make available if need be (scrollbar width compensation) */
  border-style: solid;
  border-width: 0; }

.fc-row table {
  /* don't put left/right border on anything within a fake row.
     the outer tbody will worry about this */
  border-left: 0 hidden transparent;
  border-right: 0 hidden transparent;
  /* no bottom borders on rows */
  border-bottom: 0 hidden transparent; }

.fc-row:first-child table {
  border-top: 0 hidden transparent;
  /* no top border on first row */ }

/* Day Row (used within the header and the DayGrid)
--------------------------------------------------------------------------------------------------*/
.fc-row {
  position: relative; }

.fc-row .fc-bg {
  z-index: 1; }

/* highlighting cells & background event skeleton */
.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
  bottom: 0;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
  height: 100%;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-highlight-skeleton td,
.fc-row .fc-bgevent-skeleton td {
  border-color: transparent; }

.fc-row .fc-bgevent-skeleton {
  z-index: 2; }

.fc-row .fc-highlight-skeleton {
  z-index: 3; }

/*
row content (which contains day/week numbers and events) as well as "helper" (which contains
temporary rendered events).
*/
.fc-row .fc-content-skeleton {
  position: relative;
  z-index: 4;
  padding-bottom: 2px;
  /* matches the space above the events */ }

.fc-row .fc-helper-skeleton {
  z-index: 5; }

.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-helper-skeleton td {
  /* see-through to the background below */
  /* extra precedence to prevent theme-provided backgrounds */
  background: none;
  /* in case <td>s are globally styled */
  border-color: transparent; }

.fc-row .fc-content-skeleton td,
.fc-row .fc-helper-skeleton td {
  /* don't put a border between events and/or the day number */
  border-bottom: 0; }

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-helper-skeleton tbody td {
  /* don't put a border between event cells */
  border-top: 0; }

/* Scrolling Container
--------------------------------------------------------------------------------------------------*/
.fc-scroller {
  -webkit-overflow-scrolling: touch; }

/* TODO: move to agenda/basic */
.fc-scroller > .fc-day-grid,
.fc-scroller > .fc-time-grid {
  position: relative;
  /* re-scope all positions */
  width: 100%;
  /* hack to force re-sizing this inner element when scrollbars appear/disappear */ }

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.fc-event {
  position: relative;
  /* for resize handle and other inner positioning */
  display: block;
  /* make the <a> tag block */
  font-size: .85em;
  line-height: 1.3;
  border-radius: 3px;
  border: 1px solid #3a87ad;
  /* default BORDER color */ }

.fc-event,
.fc-event-dot {
  background-color: #3a87ad;
  /* default BACKGROUND color */ }

.fc-event,
.fc-event:hover {
  color: #fff;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */ }

.fc-event[href],
.fc-event.fc-draggable {
  cursor: pointer;
  /* give events with links and draggable events a hand mouse pointer */ }

.fc-not-allowed,
.fc-not-allowed .fc-event {
  /* to override an event's custom cursor */
  cursor: not-allowed; }

.fc-event .fc-bg {
  /* the generic .fc-bg already does position */
  z-index: 1;
  background: #fff;
  opacity: .25; }

.fc-event .fc-content {
  position: relative;
  z-index: 2; }

/* resizer (cursor AND touch devices) */
.fc-event .fc-resizer {
  position: absolute;
  z-index: 4; }

/* resizer (touch devices) */
.fc-event .fc-resizer {
  display: none; }

.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
  /* only show when hovering or selected (with touch) */
  display: block; }

/* hit area */
.fc-event.fc-selected .fc-resizer:before {
  /* 40x40 touch area */
  content: "";
  position: absolute;
  z-index: 9999;
  /* user of this util can scope within a lower z-index */
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin-left: -20px;
  margin-top: -20px; }

/* Event Selection (only for touch devices)
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-selected {
  z-index: 9999 !important;
  /* overcomes inline z-index */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); }

.fc-event.fc-selected.fc-dragging {
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3); }

/* Horizontal Events
--------------------------------------------------------------------------------------------------*/
/* bigger touch area when selected */
.fc-h-event.fc-selected:before {
  content: "";
  position: absolute;
  z-index: 3;
  /* below resizers */
  top: -10px;
  bottom: -10px;
  left: 0;
  right: 0; }

/* events that are continuing to/from another week. kill rounded corners and butt up against edge */
.fc-ltr .fc-h-event.fc-not-start,
.fc-rtl .fc-h-event.fc-not-end {
  margin-left: 0;
  border-left-width: 0;
  padding-left: 1px;
  /* replace the border with padding */
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.fc-ltr .fc-h-event.fc-not-end,
.fc-rtl .fc-h-event.fc-not-start {
  margin-right: 0;
  border-right-width: 0;
  padding-right: 1px;
  /* replace the border with padding */
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

/* resizer (cursor AND touch devices) */
/* left resizer  */
.fc-ltr .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-end-resizer {
  cursor: w-resize;
  left: -1px;
  /* overcome border */ }

/* right resizer */
.fc-ltr .fc-h-event .fc-end-resizer,
.fc-rtl .fc-h-event .fc-start-resizer {
  cursor: e-resize;
  right: -1px;
  /* overcome border */ }

/* resizer (mouse devices) */
.fc-h-event.fc-allow-mouse-resize .fc-resizer {
  width: 7px;
  top: -1px;
  /* overcome top border */
  bottom: -1px;
  /* overcome bottom border */ }

/* resizer (touch devices) */
.fc-h-event.fc-selected .fc-resizer {
  /* 8x8 little dot */
  border-radius: 4px;
  border-width: 1px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-color: inherit;
  background: #fff;
  /* vertically center */
  top: 50%;
  margin-top: -4px; }

/* left resizer  */
.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
  margin-left: -4px;
  /* centers the 8x8 dot on the left edge */ }

/* right resizer */
.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
  margin-right: -4px;
  /* centers the 8x8 dot on the right edge */ }

/* DayGrid events
----------------------------------------------------------------------------------------------------
We use the full "fc-day-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-day-grid-event {
  margin: 1px 2px 0;
  /* spacing between events and edges */
  padding: 0 1px; }

tr:first-child > td > .fc-day-grid-event {
  margin-top: 2px;
  /* a little bit more space before the first event */ }

.fc-day-grid-event.fc-selected:after {
  content: "";
  position: absolute;
  z-index: 1;
  /* same z-index as fc-bg, behind text */
  /* overcome the borders */
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  /* darkening effect */
  background: #000;
  opacity: .25; }

.fc-day-grid-event .fc-content {
  /* force events to be one-line tall */
  white-space: nowrap;
  overflow: hidden; }

.fc-day-grid-event .fc-time {
  font-weight: bold; }

/* resizer (cursor devices) */
/* left resizer  */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
  margin-left: -2px;
  /* to the day cell's edge */ }

/* right resizer */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
  margin-right: -2px;
  /* to the day cell's edge */ }

/* Event Limiting
--------------------------------------------------------------------------------------------------*/
/* "more" link that represents hidden events */
a.fc-more {
  margin: 1px 3px;
  font-size: .85em;
  cursor: pointer;
  text-decoration: none; }

a.fc-more:hover {
  text-decoration: underline; }

.fc-limited {
  /* rows and cells that are hidden because of a "more" link */
  display: none; }

/* popover that appears when "more" link is clicked */
.fc-day-grid .fc-row {
  z-index: 1;
  /* make the "more" popover one higher than this */ }

.fc-more-popover {
  z-index: 2;
  width: 220px; }

.fc-more-popover .fc-event-container {
  padding: 10px; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-now-indicator {
  position: absolute;
  border: 0 solid red; }

/* Utilities
--------------------------------------------------------------------------------------------------*/
.fc-unselectable {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent; }

/*
TODO: more distinction between this file and common.css
*/
/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
  border-color: #ddd; }

.fc-unthemed .fc-popover {
  background-color: #fff; }

.fc-unthemed .fc-divider,
.fc-unthemed .fc-popover .fc-header,
.fc-unthemed .fc-list-heading td {
  background: #eee; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  color: #666; }

.fc-unthemed td.fc-today {
  background: #fcf8e3; }

.fc-unthemed .fc-disabled-day {
  background: #d7d7d7;
  opacity: .3; }

/* Icons (inline elements with styled text that mock arrow icons)
--------------------------------------------------------------------------------------------------*/
.fc-icon {
  display: inline-block;
  height: 1em;
  line-height: 1em;
  font-size: 1em;
  text-align: center;
  overflow: hidden;
  font-family: "Courier New", Courier, monospace;
  /* don't allow browser text-selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

/*
Acceptable font-family overrides for individual icons:
  "Arial", sans-serif
  "Times New Roman", serif

NOTE: use percentage font sizes or else old IE chokes
*/
.fc-icon:after {
  position: relative; }

.fc-icon-left-single-arrow:after {
  content: "\2039";
  font-weight: bold;
  font-size: 200%;
  top: -7%; }

.fc-icon-right-single-arrow:after {
  content: "\203A";
  font-weight: bold;
  font-size: 200%;
  top: -7%; }

.fc-icon-left-double-arrow:after {
  content: "\AB";
  font-size: 160%;
  top: -7%; }

.fc-icon-right-double-arrow:after {
  content: "\BB";
  font-size: 160%;
  top: -7%; }

.fc-icon-left-triangle:after {
  content: "\25C4";
  font-size: 125%;
  top: 3%; }

.fc-icon-right-triangle:after {
  content: "\25BA";
  font-size: 125%;
  top: 3%; }

.fc-icon-down-triangle:after {
  content: "\25BC";
  font-size: 125%;
  top: 2%; }

.fc-icon-x:after {
  content: "\D7";
  font-size: 200%;
  top: 6%; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-popover {
  border-width: 1px;
  border-style: solid; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  font-size: .9em;
  margin-top: 2px; }

/* List View
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-list-item:hover td {
  background-color: #f5f5f5; }

/* Colors
--------------------------------------------------------------------------------------------------*/
.ui-widget .fc-disabled-day {
  background-image: none; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover > .ui-widget-header + .ui-widget-content {
  border-top: 0;
  /* where they meet, let the header have the border */ }

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.ui-widget .fc-event {
  /* overpower jqui's styles on <a> tags. TODO: more DRY */
  color: #fff;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */
  /* undo ui-widget-header bold */
  font-weight: normal; }

/* TimeGrid axis running down the side (for both the all-day area and the slot area)
--------------------------------------------------------------------------------------------------*/
.ui-widget td.fc-axis {
  font-weight: normal;
  /* overcome bold */ }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-slats .ui-widget-content {
  background: none;
  /* see through to fc-bg */ }

.fc.fc-bootstrap3 a {
  text-decoration: none; }

.fc.fc-bootstrap3 a[data-goto]:hover {
  text-decoration: underline; }

.fc-bootstrap3 hr.fc-divider {
  border-color: inherit; }

.fc-bootstrap3 .fc-today.alert {
  border-radius: 0; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap3 .fc-popover .panel-body {
  padding: 0; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap3 .fc-time-grid .fc-slats table {
  /* some themes have background color. see through to slats */
  background: none; }

.fc.fc-bootstrap4 a {
  text-decoration: none; }

.fc.fc-bootstrap4 a[data-goto]:hover {
  text-decoration: underline; }

.fc-bootstrap4 hr.fc-divider {
  border-color: inherit; }

.fc-bootstrap4 .fc-today.alert {
  border-radius: 0; }

.fc-bootstrap4 a.fc-event:not([href]):not([tabindex]) {
  color: #fff; }

.fc-bootstrap4 .fc-popover.card {
  position: absolute; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap4 .fc-popover .card-body {
  padding: 0; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap4 .fc-time-grid .fc-slats table {
  /* some themes have background color. see through to slats */
  background: none; }

/* Toolbar
--------------------------------------------------------------------------------------------------*/
.fc-toolbar {
  text-align: center; }

.fc-toolbar.fc-header-toolbar {
  margin-bottom: 1em; }

.fc-toolbar.fc-footer-toolbar {
  margin-top: 1em; }

.fc-toolbar .fc-left {
  float: left; }

.fc-toolbar .fc-right {
  float: right; }

.fc-toolbar .fc-center {
  display: inline-block; }

/* the things within each left/right/center section */
.fc .fc-toolbar > * > * {
  /* extra precedence to override button border margins */
  float: left;
  margin-left: .75em; }

/* the first thing within each left/center/right section */
.fc .fc-toolbar > * > :first-child {
  /* extra precedence to override button border margins */
  margin-left: 0; }

/* title text */
.fc-toolbar h2 {
  margin: 0; }

/* button layering (for border precedence) */
.fc-toolbar button {
  position: relative; }

.fc-toolbar .fc-state-hover,
.fc-toolbar .ui-state-hover {
  z-index: 2; }

.fc-toolbar .fc-state-down {
  z-index: 3; }

.fc-toolbar .fc-state-active,
.fc-toolbar .ui-state-active {
  z-index: 4; }

.fc-toolbar button:focus {
  z-index: 5; }

/* View Structure
--------------------------------------------------------------------------------------------------*/
/* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
/* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
.fc-view-container *,
.fc-view-container *:before,
.fc-view-container *:after {
  box-sizing: content-box; }

.fc-view,
.fc-view > table {
  /* so dragged elements can be above the view's main element */
  position: relative;
  z-index: 1; }

/* BasicView
--------------------------------------------------------------------------------------------------*/
/* day row structure */
.fc-basicWeek-view .fc-content-skeleton,
.fc-basicDay-view .fc-content-skeleton {
  /* there may be week numbers in these views, so no padding-top */
  padding-bottom: 1em;
  /* ensure a space at bottom of cell for user selecting/clicking */ }

.fc-basic-view .fc-body .fc-row {
  min-height: 4em;
  /* ensure that all rows are at least this tall */ }

/* a "rigid" row will take up a constant amount of height because content-skeleton is absolute */
.fc-row.fc-rigid {
  overflow: hidden; }

.fc-row.fc-rigid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

/* week and day number styling */
.fc-day-top.fc-other-month {
  opacity: 0.3; }

.fc-basic-view .fc-week-number,
.fc-basic-view .fc-day-number {
  padding: 2px; }

.fc-basic-view th.fc-week-number,
.fc-basic-view th.fc-day-number {
  padding: 0 2px;
  /* column headers can't have as much v space */ }

.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
  float: right; }

.fc-rtl .fc-basic-view .fc-day-top .fc-day-number {
  float: left; }

.fc-ltr .fc-basic-view .fc-day-top .fc-week-number {
  float: left;
  border-radius: 0 0 3px 0; }

.fc-rtl .fc-basic-view .fc-day-top .fc-week-number {
  float: right;
  border-radius: 0 0 0 3px; }

.fc-basic-view .fc-day-top .fc-week-number {
  min-width: 1.5em;
  text-align: center;
  background-color: #f2f2f2;
  color: #808080; }

/* when week/day number have own column */
.fc-basic-view td.fc-week-number {
  text-align: center; }

.fc-basic-view td.fc-week-number > * {
  /* work around the way we do column resizing and ensure a minimum width */
  display: inline-block;
  min-width: 1.25em; }

/* AgendaView all-day area
--------------------------------------------------------------------------------------------------*/
.fc-agenda-view .fc-day-grid {
  position: relative;
  z-index: 2;
  /* so the "more.." popover will be over the time grid */ }

.fc-agenda-view .fc-day-grid .fc-row {
  min-height: 3em;
  /* all-day section will never get shorter than this */ }

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
  padding-bottom: 1em;
  /* give space underneath events for clicking/selecting days */ }

/* TimeGrid axis running down the side (for both the all-day area and the slot area)
--------------------------------------------------------------------------------------------------*/
.fc .fc-axis {
  /* .fc to overcome default cell styles */
  vertical-align: middle;
  padding: 0 4px;
  white-space: nowrap; }

.fc-ltr .fc-axis {
  text-align: right; }

.fc-rtl .fc-axis {
  text-align: left; }

/* TimeGrid Structure
--------------------------------------------------------------------------------------------------*/
.fc-time-grid-container,
.fc-time-grid {
  /* so slats/bg/content/etc positions get scoped within here */
  position: relative;
  z-index: 1; }

.fc-time-grid {
  min-height: 100%;
  /* so if height setting is 'auto', .fc-bg stretches to fill height */ }

.fc-time-grid table {
  /* don't put outer borders on slats/bg/content/etc */
  border: 0 hidden transparent; }

.fc-time-grid > .fc-bg {
  z-index: 1; }

.fc-time-grid .fc-slats,
.fc-time-grid > hr {
  /* the <hr> AgendaView injects when grid is shorter than scroller */
  position: relative;
  z-index: 2; }

.fc-time-grid .fc-content-col {
  position: relative;
  /* because now-indicator lives directly inside */ }

.fc-time-grid .fc-content-skeleton {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  right: 0; }

/* divs within a cell within the fc-content-skeleton */
.fc-time-grid .fc-business-container {
  position: relative;
  z-index: 1; }

.fc-time-grid .fc-bgevent-container {
  position: relative;
  z-index: 2; }

.fc-time-grid .fc-highlight-container {
  position: relative;
  z-index: 3; }

.fc-time-grid .fc-event-container {
  position: relative;
  z-index: 4; }

.fc-time-grid .fc-now-indicator-line {
  z-index: 5; }

.fc-time-grid .fc-helper-container {
  /* also is fc-event-container */
  position: relative;
  z-index: 6; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-slats td {
  height: 1.5em;
  border-bottom: 0;
  /* each cell is responsible for its top border */ }

.fc-time-grid .fc-slats .fc-minor td {
  border-top-style: dotted; }

/* TimeGrid Highlighting Slots
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-highlight-container {
  /* a div within a cell within the fc-highlight-skeleton */
  position: relative;
  /* scopes the left/right of the fc-highlight to be in the column */ }

.fc-time-grid .fc-highlight {
  position: absolute;
  left: 0;
  right: 0;
  /* top and bottom will be in by JS */ }

/* TimeGrid Event Containment
--------------------------------------------------------------------------------------------------*/
.fc-ltr .fc-time-grid .fc-event-container {
  /* space on the sides of events for LTR (default) */
  margin: 0 2.5% 0 2px; }

.fc-rtl .fc-time-grid .fc-event-container {
  /* space on the sides of events for RTL */
  margin: 0 2px 0 2.5%; }

.fc-time-grid .fc-event,
.fc-time-grid .fc-bgevent {
  position: absolute;
  z-index: 1;
  /* scope inner z-index's */ }

.fc-time-grid .fc-bgevent {
  /* background events always span full width */
  left: 0;
  right: 0; }

/* Generic Vertical Event
--------------------------------------------------------------------------------------------------*/
.fc-v-event.fc-not-start {
  /* events that are continuing from another day */
  /* replace space made by the top border with padding */
  border-top-width: 0;
  padding-top: 1px;
  /* remove top rounded corners */
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.fc-v-event.fc-not-end {
  /* replace space made by the top border with padding */
  border-bottom-width: 0;
  padding-bottom: 1px;
  /* remove bottom rounded corners */
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

/* TimeGrid Event Styling
----------------------------------------------------------------------------------------------------
We use the full "fc-time-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-time-grid-event {
  overflow: hidden;
  /* don't let the bg flow over rounded corners */ }

.fc-time-grid-event.fc-selected {
  /* need to allow touch resizers to extend outside event's bounding box */
  /* common fc-selected styles hide the fc-bg, so don't need this anyway */
  overflow: visible; }

.fc-time-grid-event.fc-selected .fc-bg {
  display: none;
  /* hide semi-white background, to appear darker */ }

.fc-time-grid-event .fc-content {
  overflow: hidden;
  /* for when .fc-selected */ }

.fc-time-grid-event .fc-time,
.fc-time-grid-event .fc-title {
  padding: 0 1px; }

.fc-time-grid-event .fc-time {
  font-size: .85em;
  white-space: nowrap; }

/* short mode, where time and title are on the same line */
.fc-time-grid-event.fc-short .fc-content {
  /* don't wrap to second line (now that contents will be inline) */
  white-space: nowrap; }

.fc-time-grid-event.fc-short .fc-time,
.fc-time-grid-event.fc-short .fc-title {
  /* put the time and title on the same line */
  display: inline-block;
  vertical-align: top; }

.fc-time-grid-event.fc-short .fc-time span {
  display: none;
  /* don't display the full time text... */ }

.fc-time-grid-event.fc-short .fc-time:before {
  content: attr(data-start);
  /* ...instead, display only the start time */ }

.fc-time-grid-event.fc-short .fc-time:after {
  content: "\A0-\A0";
  /* seperate with a dash, wrapped in nbsp's */ }

.fc-time-grid-event.fc-short .fc-title {
  font-size: .85em;
  /* make the title text the same size as the time */
  padding: 0;
  /* undo padding from above */ }

/* resizer (cursor device) */
.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer {
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  overflow: hidden;
  line-height: 8px;
  font-size: 11px;
  font-family: monospace;
  text-align: center;
  cursor: s-resize; }

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after {
  content: "="; }

/* resizer (touch device) */
.fc-time-grid-event.fc-selected .fc-resizer {
  /* 10x10 dot */
  border-radius: 5px;
  border-width: 1px;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-color: inherit;
  background: #fff;
  /* horizontally center */
  left: 50%;
  margin-left: -5px;
  /* center on the bottom edge */
  bottom: -5px; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-now-indicator-line {
  border-top-width: 1px;
  left: 0;
  right: 0; }

/* arrow on axis */
.fc-time-grid .fc-now-indicator-arrow {
  margin-top: -5px;
  /* vertically center on top coordinate */ }

.fc-ltr .fc-time-grid .fc-now-indicator-arrow {
  left: 0;
  /* triangle pointing right... */
  border-width: 5px 0 5px 6px;
  border-top-color: transparent;
  border-bottom-color: transparent; }

.fc-rtl .fc-time-grid .fc-now-indicator-arrow {
  right: 0;
  /* triangle pointing left... */
  border-width: 5px 6px 5px 0;
  border-top-color: transparent;
  border-bottom-color: transparent; }

/* List View
--------------------------------------------------------------------------------------------------*/
/* possibly reusable */
.fc-event-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 5px; }

/* view wrapper */
.fc-rtl .fc-list-view {
  direction: rtl;
  /* unlike core views, leverage browser RTL */ }

.fc-list-view {
  border-width: 1px;
  border-style: solid; }

/* table resets */
.fc .fc-list-table {
  table-layout: auto;
  /* for shrinkwrapping cell content */ }

.fc-list-table td {
  border-width: 1px 0 0;
  padding: 8px 14px; }

.fc-list-table tr:first-child td {
  border-top-width: 0; }

/* day headings with the list */
.fc-list-heading {
  border-bottom-width: 1px; }

.fc-list-heading td {
  font-weight: bold; }

.fc-ltr .fc-list-heading-main {
  float: left; }

.fc-ltr .fc-list-heading-alt {
  float: right; }

.fc-rtl .fc-list-heading-main {
  float: right; }

.fc-rtl .fc-list-heading-alt {
  float: left; }

/* event list items */
.fc-list-item.fc-has-url {
  cursor: pointer;
  /* whole row will be clickable */ }

.fc-list-item-marker,
.fc-list-item-time {
  white-space: nowrap;
  width: 1px; }

/* make the dot closer to the event title */
.fc-ltr .fc-list-item-marker {
  padding-right: 0; }

.fc-rtl .fc-list-item-marker {
  padding-left: 0; }

.fc-list-item-title a {
  /* every event title cell has an <a> tag */
  text-decoration: none;
  color: inherit; }

.fc-list-item-title a[href]:hover {
  /* hover effect only on titles with hrefs */
  text-decoration: underline; }

/* message when no events */
.fc-list-empty-wrap2 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.fc-list-empty-wrap1 {
  width: 100%;
  height: 100%;
  display: table; }

.fc-list-empty {
  display: table-cell;
  vertical-align: middle;
  text-align: center; }

.fc-unthemed .fc-list-empty {
  /* theme will provide own background */
  background-color: #eee; }

/*!
 * FullCalendar Scheduler v1.9.4
 * Docs & License: https://fullcalendar.io/scheduler/
 * (c) 2018 Adam Shaw
 */
/* TODO: break this file up */
/* Scroller
--------------------------------------------------------------------------------------------------*/
.fc-scroller-clip {
  overflow: hidden;
  /* for clipping scrollbars */
  position: relative;
  /* so things like scrollfollowers can attach to this */ }

/* supresses rendering of native scrollbars */
/* on .fc-scroller */
.fc-no-scrollbars {
  background: rgba(255, 255, 255, 0);
  /* hack for dynamic DOM nodes (in Chrome OSX at least) */ }

.fc-no-scrollbars::-webkit-scrollbar {
  width: 0;
  height: 0; }

.fc-scroller-canvas {
  position: relative;
  /* origin for bg */
  box-sizing: border-box;
  /* so that padding (for gutter) will be part of height */
  min-height: 100%; }

.fc-scroller-canvas > .fc-bg {
  z-index: 1;
  /* make default? */ }

.fc-scroller-canvas > .fc-content {
  z-index: 2;
  /* make default? */
  position: relative;
  /* origin for inner content */
  border-style: solid;
  border-width: 0; }

/* for themed, hard to get the border-color, so just forget it (REVISIT) */
.ui-widget .fc-scroller-canvas > .fc-content {
  border-color: transparent; }

.fc-scroller-canvas.fc-gutter-left > .fc-content {
  border-left-width: 1px;
  margin-left: -1px; }

.fc-scroller-canvas.fc-gutter-right > .fc-content {
  border-right-width: 1px;
  margin-right: -1px; }

.fc-scroller-canvas.fc-gutter-top > .fc-content {
  border-top-width: 1px;
  margin-top: -1px; }

/* content is responsible for bottom border */
/* View Structure
--------------------------------------------------------------------------------------------------*/
.fc-rtl .fc-timeline {
  direction: rtl; }

.fc-timeline .fc-divider {
  width: 3px;
  border-style: double;
  /* overcome neighboring borders */ }

.fc-timeline .fc-head > tr > .fc-divider {
  border-bottom: 0; }

.fc-timeline .fc-body > tr > .fc-divider {
  border-top: 0; }

.fc-timeline .fc-body .fc-divider.ui-widget-header {
  background-image: none; }

.fc-scrolled .fc-head .fc-scroller {
  z-index: 2;
  /* so drop shadow will go above body panes */ }

.fc-timeline.fc-scrolled .fc-head .fc-scroller {
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.075); }

.fc-timeline .fc-body .fc-scroller {
  z-index: 1; }

/*
on most tables that expand to the edges, kill the outer border,
because the container elements take care of it.
example tables:
.fc-scroller-canvas .fc-content table
.fc-scroller-canvas .fc-bg .fc-slats table
*/
.fc-timeline .fc-scroller-canvas > div > table,
.fc-timeline .fc-scroller-canvas > div > div > table {
  border-style: hidden; }

/*
for resource rows (in both the spreadsheet and timeline areas),
undo previous rule in order to always show last border.
*/
.fc-timeline .fc-scroller-canvas > .fc-content > .fc-rows > table {
  border-bottom-style: none; }

/* Table Cell Common
--------------------------------------------------------------------------------------------------*/
.fc-timeline th,
.fc-timeline td {
  white-space: nowrap; }

.fc-timeline .fc-cell-content {
  overflow: hidden; }

.fc-timeline .fc-cell-text {
  padding-left: 4px;
  padding-right: 4px; }

.fc-timeline .fc-col-resizer {
  cursor: col-resize; }

/*
Cells at the start of a week
TODO: figure out better styling

.fc-ltr .fc-timeline .fc-em-cell div {
	border-left: 3px solid #eee;
	height: 100%;
}
.fc-rtl .fc-timeline .fc-em-cell {
	border-right-width: 3px;
}
*/
/* head */
.fc-timeline th {
  vertical-align: middle; }

.fc-timeline .fc-head .fc-cell-content {
  padding-top: 3px;
  padding-bottom: 3px; }

/* body */
.fc-timeline .fc-body .ui-widget-content {
  background-image: none; }

/* Resource Area
--------------------------------------------------------------------------------------------------*/
.fc-resource-area {
  width: 30%; }

.fc-resource-area col {
  width: 40%;
  min-width: 70px;
  /* will be read by JS */ }

.fc-resource-area col.fc-main-col {
  width: 60%;
  /* make the first column in a nested setup bigger */ }

.fc-flat .fc-expander-space {
  /* fc-flat is opposite of fc-nested */
  display: none; }

.fc-ltr .fc-resource-area tr > * {
  text-align: left; }

.fc-rtl .fc-resource-area tr > * {
  text-align: right; }

.fc-resource-area .fc-cell-content {
  padding-left: 4px;
  padding-right: 4px; }

/* head */
.fc-resource-area .fc-super th {
  text-align: center; }

.fc-resource-area th > div {
  position: relative; }

.fc-resource-area th .fc-cell-content {
  position: relative;
  z-index: 1; }

.fc-resource-area th .fc-col-resizer {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: 5px; }

.fc-ltr .fc-resource-area th .fc-col-resizer {
  right: -3px; }

.fc-rtl .fc-resource-area th .fc-col-resizer {
  left: -3px; }

/* body */
tr.fc-collapsed > td,
tr.fc-transitioning > td {
  /* during the transition */
  overflow: hidden;
  /* prevents absolutely-positioned events from bleeding out */ }

tr.fc-transitioning > td > div {
  transition: margin-top 0.2s; }

tr.fc-collapsed > td > div {
  margin-top: -10px; }

.fc-body .fc-resource-area .fc-cell-content {
  /* might BE the cell */
  position: relative;
  /* optimization for ScrollFollower */
  padding-top: 8px;
  padding-bottom: 8px; }

.fc-no-overlap .fc-body .fc-resource-area .fc-cell-content {
  /* might BE the cell */
  padding-top: 5px;
  padding-bottom: 5px; }

.fc-resource-area .fc-icon {
  /* the expander and spacers before the expander */
  width: 1em;
  /* ensure constant width, esp for empty icons */
  font-size: .9em;
  vertical-align: middle;
  margin-top: -1%; }

.fc-resource-area .fc-expander {
  cursor: pointer;
  color: #666;
  /* for the icon within */ }

/* Time Area
--------------------------------------------------------------------------------------------------*/
.fc-time-area col {
  min-width: 2.2em;
  /* detected by JS */ }

/* head */
.fc-ltr .fc-time-area .fc-chrono th {
  text-align: left; }

.fc-rtl .fc-time-area .fc-chrono th {
  text-align: right; }

/* body slats (vertical lines) */
.fc-time-area .fc-slats {
  /* fc-bg is responsible for a lot of this now! */
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.fc-time-area .fc-slats table {
  height: 100%; }

.fc-time-area .fc-slats .fc-minor {
  border-style: dotted; }

.fc-time-area .fc-slats td {
  border-width: 0 1px;
  /* need to do this. sometimes -1 margin wouldn't hide the dotted */ }

.fc-ltr .fc-time-area .fc-slats td {
  border-right-width: 0; }

.fc-rtl .fc-time-area .fc-slats td {
  border-left-width: 0; }

/* body content containers
   can be within rows or directly within the pane's content
*/
.fc-time-area .fc-bgevent-container,
.fc-time-area .fc-highlight-container {
  position: absolute;
  z-index: 2;
  /* only for directly within pane. not for row. overridden later */
  top: 0;
  bottom: 0;
  width: 0; }

.fc-ltr .fc-time-area .fc-helper-container,
.fc-ltr .fc-time-area .fc-bgevent-container,
.fc-ltr .fc-time-area .fc-highlight-container {
  left: 0; }

.fc-rtl .fc-time-area .fc-helper-container,
.fc-rtl .fc-time-area .fc-bgevent-container,
.fc-rtl .fc-time-area .fc-highlight-container {
  right: 0; }

.fc-time-area .fc-bgevent,
.fc-time-area .fc-highlight {
  position: absolute;
  top: 0;
  bottom: 0; }

/* body resource rows */
.fc-time-area .fc-rows {
  position: relative;
  z-index: 3; }

.fc-time-area .fc-rows .ui-widget-content {
  background: none; }

.fc-time-area .fc-rows td > div {
  position: relative; }

.fc-time-area .fc-rows .fc-bgevent-container,
.fc-time-area .fc-rows .fc-highlight-container {
  z-index: 1; }

.fc-time-area .fc-event-container {
  position: relative;
  z-index: 2;
  /* above bgevent and highlight */
  width: 0;
  /* for event positioning. will end up on correct side based on dir */ }

.fc-time-area .fc-helper-container {
  /* also an fc-event-container */
  position: absolute;
  z-index: 3;
  top: 0; }

.fc-time-area .fc-event-container {
  padding-bottom: 8px;
  top: -1px; }

.fc-time-area tr:first-child .fc-event-container {
  top: 0; }

.fc-no-overlap .fc-time-area .fc-event-container {
  padding-bottom: 0;
  top: 0; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-timeline .fc-now-indicator {
  /* both the arrow and the line */
  z-index: 3;
  /* one above scroller's fc-content */
  top: 0; }

.fc-time-area .fc-now-indicator-arrow {
  margin: 0 -6px;
  /* 5, then one more to counteract scroller's negative margins */
  /* triangle pointing down... */
  border-width: 6px 5px 0 5px;
  border-left-color: transparent;
  border-right-color: transparent; }

.fc-time-area .fc-now-indicator-line {
  margin: 0 -1px;
  /* counteract scroller's negative margins */
  bottom: 0;
  border-left-width: 1px; }

/* Time Grid Events
--------------------------------------------------------------------------------------------------*/
.fc-timeline-event {
  position: absolute;
  border-radius: 0;
  padding: 2px 0;
  margin-bottom: 1px; }

.fc-no-overlap .fc-timeline-event {
  padding: 5px 0;
  margin-bottom: 0; }

/* don't overlap grid lines at the event's end */
.fc-ltr .fc-timeline-event {
  margin-right: 1px; }

.fc-rtl .fc-timeline-event {
  margin-left: 1px; }

.fc-timeline-event .fc-content {
  padding: 0 1px;
  white-space: nowrap;
  overflow: hidden; }

.fc-timeline-event .fc-time {
  font-weight: bold;
  padding: 0 1px; }

.fc-rtl .fc-timeline-event .fc-time {
  display: inline-block;
  /* will force it on the other side */ }

.fc-timeline-event .fc-title {
  position: relative;
  /* optimization for ScrollFollower */
  padding: 0 1px; }

.fc-timeline-event.fc-selected .fc-bg {
  display: none;
  /* hide semi-white background, to appear darker */ }

/* follower logic */
.fc-ltr .fc-timeline-event .fc-title {
  padding-left: 10px;
  margin-left: -8px; }

.fc-rtl .fc-timeline-event .fc-title {
  padding-right: 10px;
  margin-right: -8px; }

.fc-ltr .fc-timeline-event.fc-not-start .fc-title {
  margin-left: -2px; }

.fc-rtl .fc-timeline-event.fc-not-start .fc-title {
  margin-right: -2px; }

.fc-timeline-event.fc-not-start .fc-title,
.fc-body .fc-time-area .fc-following {
  position: relative; }

.fc-timeline-event.fc-not-start .fc-title:before,
.fc-body .fc-time-area .fc-following:before {
  /* generic arrow */
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -5px;
  border: 5px solid #000;
  border-top-color: transparent;
  border-bottom-color: transparent;
  opacity: .5; }

.fc-ltr .fc-timeline-event.fc-not-start .fc-title:before,
.fc-ltr .fc-body .fc-time-area .fc-following:before {
  /* LTR. left pointing arrow */
  border-left: 0;
  left: 2px; }

.fc-rtl .fc-timeline-event.fc-not-start .fc-title:before,
.fc-rtl .fc-body .fc-time-area .fc-following:before {
  /* RTL. right pointing arrow */
  border-right: 0;
  right: 2px; }

/* License Message
--------------------------------------------------------------------------------------------------*/
.fc-license-message {
  position: absolute;
  z-index: 99999;
  bottom: 1px;
  left: 1px;
  background: #eee;
  border-color: #ddd;
  border-style: solid;
  border-width: 1px 1px 0 0;
  padding: 2px 4px;
  font-size: 12px;
  border-top-right-radius: 3px; }

/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::-moz-selection {
	background: transparent;
}
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container.leaflet-touch-zoom {
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	-webkit-filter: inherit;
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	-webkit-transform-origin: 0 0;
	        transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	transition:         -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
	transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	transition:         transform 0.25s cubic-bezier(0,0,0.25,1), -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor: -webkit-grab;
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(images/layers.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(images/layers-2x.png);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(images/marker-icon.png);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-control-attribution svg {
	display: inline !important;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	overflow: hidden;
	box-sizing: border-box;

	background: #fff;
	background: rgba(255, 255, 255, 0.5);
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;

	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */
	
@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		color-adjust: exact;
		}
	}

.ember-notify-default.ember-notify-cn {
  position: fixed;
  z-index: 5000;
  bottom: 0px;
  right: 0px;
}

.ember-notify-default .ember-notify {
  display: block;
  margin: 10px;
  position: relative;
  width: 300px;
  /* the following is purely so that it doesn't look broken without Foundation installed */
  box-sizing: border-box;
  border: 1px solid #ccc;
  padding: 10px;
}

.ember-notify-default .ember-notify-show {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
  -webkit-animation-name: ember-notify-show;
  animation-name: ember-notify-show;
  -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.275);
  animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.275);
}

.ember-notify-default .ember-notify-hide {
  -webkit-animation-duration: 250ms;
  animation-duration: 250ms;
  -webkit-animation-name: ember-notify-hide;
  animation-name: ember-notify-hide;
  -webkit-animation-timing-function: cubic-bezier(0.600, -0.280, 0.735, 0.045);
  animation-timing-function: cubic-bezier(0.600, -0.280, 0.735, 0.045);
}

.ember-notify-hide:hover {
  -webkit-animation-play-state: paused; 
  animation-play-state: paused;
}

@-webkit-keyframes ember-notify-show {
  from {
    right: -310px;
  }
  to {
    right: 0;
  }
}

@keyframes ember-notify-show {
  from {
    right: -310px;
  }
  to {
    right: 0;
  }
}
@-webkit-keyframes ember-notify-hide {
  from {
    right: 0;
  }
  to {
    right: -310px;
  }
}
@keyframes ember-notify-hide {
  from {
    right: 0;
  }
  to {
    right: -310px;
  }
}

.ember-notify-default .ember-notify .close {
  float: right;
  cursor: pointer;
}


@media only screen and (max-width: 680px) {
  .ember-notify-default.ember-notify-cn {
    width: 100%;
    padding-left: 20px;
    box-sizing: border-box;
  }
  .ember-notify-default .ember-notify {
    width: 100%;
    float: right;
  }
}

.ember-notify-cn .clearfix {
  *zoom: 1;
}
.ember-notify-cn .clearfix:before,
.ember-notify-cn .clearfix:after {
  content: " ";
  display: table;
}
.ember-notify-cn .clearfix:after {
  clear: both;
}

/***
Spectrum Colorpicker v1.8.1
https://github.com/bgrins/spectrum
Author: Brian Grinstead
License: MIT
***/

.sp-container {
    position:absolute;
    top:0;
    left:0;
    display:inline-block;
    *display: inline;
    *zoom: 1;
    /* https://github.com/bgrins/spectrum/issues/40 */
    z-index: 9999994;
    overflow: hidden;
}
.sp-container.sp-flat {
    position: relative;
}

/* Fix for * { box-sizing: border-box; } */
.sp-container,
.sp-container * {
    box-sizing: content-box;
}

/* http://ansciath.tumblr.com/post/7347495869/css-aspect-ratio */
.sp-top {
  position:relative;
  width: 100%;
  display:inline-block;
}
.sp-top-inner {
   position:absolute;
   top:0;
   left:0;
   bottom:0;
   right:0;
}
.sp-color {
    position: absolute;
    top:0;
    left:0;
    bottom:0;
    right:20%;
}
.sp-hue {
    position: absolute;
    top:0;
    right:0;
    bottom:0;
    left:84%;
    height: 100%;
}

.sp-clear-enabled .sp-hue {
    top:33px;
    height: 77.5%;
}

.sp-fill {
    padding-top: 80%;
}
.sp-sat, .sp-val {
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

.sp-alpha-enabled .sp-top {
    margin-bottom: 18px;
}
.sp-alpha-enabled .sp-alpha {
    display: block;
}
.sp-alpha-handle {
    position:absolute;
    top:-4px;
    bottom: -4px;
    width: 6px;
    left: 50%;
    cursor: pointer;
    border: 1px solid black;
    background: white;
    opacity: .8;
}
.sp-alpha {
    display: none;
    position: absolute;
    bottom: -14px;
    right: 0;
    left: 0;
    height: 8px;
}
.sp-alpha-inner {
    border: solid 1px #333;
}

.sp-clear {
    display: none;
}

.sp-clear.sp-clear-display {
    background-position: center;
}

.sp-clear-enabled .sp-clear {
    display: block;
    position:absolute;
    top:0px;
    right:0;
    bottom:0;
    left:84%;
    height: 28px;
}

/* Don't allow text selection */
.sp-container, .sp-replacer, .sp-preview, .sp-dragger, .sp-slider, .sp-alpha, .sp-clear, .sp-alpha-handle, .sp-container.sp-dragging .sp-input, .sp-container button  {
    -webkit-user-select:none;
    -moz-user-select: -moz-none;
    -o-user-select:none;
    user-select: none;
}

.sp-container.sp-input-disabled .sp-input-container {
    display: none;
}
.sp-container.sp-buttons-disabled .sp-button-container {
    display: none;
}
.sp-container.sp-palette-buttons-disabled .sp-palette-button-container {
    display: none;
}
.sp-palette-only .sp-picker-container {
    display: none;
}
.sp-palette-disabled .sp-palette-container {
    display: none;
}

.sp-initial-disabled .sp-initial {
    display: none;
}


/* Gradients for hue, saturation and value instead of images.  Not pretty... but it works */
.sp-sat {
    background-image: linear-gradient(to right, #fff, rgba(204, 154, 129, 0));
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";
    filter : progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81');
}
.sp-val {
    background-image: linear-gradient(to top, #000, rgba(204, 154, 129, 0));
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";
    filter : progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000');
}

.sp-hue {
    background: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
}

/* IE filters do not support multiple color stops.
   Generate 6 divs, line them up, and do two color gradients for each.
   Yes, really.
 */
.sp-1 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00');
}
.sp-2 {
    height:16%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00');
}
.sp-3 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff');
}
.sp-4 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff');
}
.sp-5 {
    height:16%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff');
}
.sp-6 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000');
}

.sp-hidden {
    display: none !important;
}

/* Clearfix hack */
.sp-cf:before, .sp-cf:after { content: ""; display: table; }
.sp-cf:after { clear: both; }
.sp-cf { *zoom: 1; }

/* Mobile devices, make hue slider bigger so it is easier to slide */
@media (max-device-width: 480px) {
    .sp-color { right: 40%; }
    .sp-hue { left: 63%; }
    .sp-fill { padding-top: 60%; }
}
.sp-dragger {
   border-radius: 5px;
   height: 5px;
   width: 5px;
   border: 1px solid #fff;
   background: #000;
   cursor: pointer;
   position:absolute;
   top:0;
   left: 0;
}
.sp-slider {
    position: absolute;
    top:0;
    cursor:pointer;
    height: 3px;
    left: -1px;
    right: -1px;
    border: 1px solid #000;
    background: white;
    opacity: .8;
}

/*
Theme authors:
Here are the basic themeable display options (colors, fonts, global widths).
See http://bgrins.github.io/spectrum/themes/ for instructions.
*/

.sp-container {
    border-radius: 0;
    background-color: #ECECEC;
    border: solid 1px #f0c49B;
    padding: 0;
}
.sp-container, .sp-container button, .sp-container input, .sp-color, .sp-hue, .sp-clear {
    font: normal 12px "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.sp-top {
    margin-bottom: 3px;
}
.sp-color, .sp-hue, .sp-clear {
    border: solid 1px #666;
}

/* Input */
.sp-input-container {
    float:right;
    width: 100px;
    margin-bottom: 4px;
}
.sp-initial-disabled  .sp-input-container {
    width: 100%;
}
.sp-input {
   font-size: 12px !important;
   border: 1px inset;
   padding: 4px 5px;
   margin: 0;
   width: 100%;
   background:transparent;
   border-radius: 3px;
   color: #222;
}
.sp-input:focus  {
    border: 1px solid orange;
}
.sp-input.sp-validation-error {
    border: 1px solid red;
    background: #fdd;
}
.sp-picker-container , .sp-palette-container {
    float:left;
    position: relative;
    padding: 10px;
    padding-bottom: 300px;
    margin-bottom: -290px;
}
.sp-picker-container {
    width: 172px;
    border-left: solid 1px #fff;
}

/* Palettes */
.sp-palette-container {
    border-right: solid 1px #ccc;
}

.sp-palette-only .sp-palette-container {
    border: 0;
}

.sp-palette .sp-thumb-el {
    display: block;
    position:relative;
    float:left;
    width: 24px;
    height: 15px;
    margin: 3px;
    cursor: pointer;
    border:solid 2px transparent;
}
.sp-palette .sp-thumb-el:hover, .sp-palette .sp-thumb-el.sp-thumb-active {
    border-color: orange;
}
.sp-thumb-el {
    position:relative;
}

/* Initial */
.sp-initial {
    float: left;
    border: solid 1px #333;
}
.sp-initial span {
    width: 30px;
    height: 25px;
    border:none;
    display:block;
    float:left;
    margin:0;
}

.sp-initial .sp-clear-display {
    background-position: center;
}

/* Buttons */
.sp-palette-button-container,
.sp-button-container {
    float: right;
}

/* Replacer (the little preview div that shows up instead of the <input>) */
.sp-replacer {
    margin:0;
    overflow:hidden;
    cursor:pointer;
    padding: 4px;
    display:inline-block;
    *zoom: 1;
    *display: inline;
    border: solid 1px #91765d;
    background: #eee;
    color: #333;
    vertical-align: middle;
}
.sp-replacer:hover, .sp-replacer.sp-active {
    border-color: #F0C49B;
    color: #111;
}
.sp-replacer.sp-disabled {
    cursor:default;
    border-color: silver;
    color: silver;
}
.sp-dd {
    padding: 2px 0;
    height: 16px;
    line-height: 16px;
    float:left;
    font-size:10px;
}
.sp-preview {
    position:relative;
    width:25px;
    height: 20px;
    border: solid 1px #222;
    margin-right: 5px;
    float:left;
    z-index: 0;
}

.sp-palette {
    *width: 220px;
    max-width: 220px;
}
.sp-palette .sp-thumb-el {
    width:16px;
    height: 16px;
    margin:2px 1px;
    border: solid 1px #d0d0d0;
}

.sp-container {
    padding-bottom:0;
}


/* Buttons: http://hellohappy.org/css3-buttons/ */
.sp-container button {
  background-color: #eeeeee;
  background-image: linear-gradient(to bottom, #eeeeee, #cccccc);
  border: 1px solid #ccc;
  border-bottom: 1px solid #bbb;
  border-radius: 3px;
  color: #333;
  font-size: 14px;
  line-height: 1;
  padding: 5px 4px;
  text-align: center;
  text-shadow: 0 1px 0 #eee;
  vertical-align: middle;
}
.sp-container button:hover {
    background-color: #dddddd;
    background-image: linear-gradient(to bottom, #dddddd, #bbbbbb);
    border: 1px solid #bbb;
    border-bottom: 1px solid #999;
    cursor: pointer;
    text-shadow: 0 1px 0 #ddd;
}
.sp-container button:active {
    border: 1px solid #aaa;
    border-bottom: 1px solid #888;
    -ms-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    -o-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
}
.sp-cancel {
    font-size: 11px;
    color: #d93f3f !important;
    margin:0;
    padding:2px;
    margin-right: 5px;
    vertical-align: middle;
    text-decoration:none;

}
.sp-cancel:hover {
    color: #d93f3f !important;
    text-decoration: underline;
}


.sp-palette span:hover, .sp-palette span.sp-thumb-active {
    border-color: #000;
}

.sp-preview, .sp-alpha, .sp-thumb-el {
    position:relative;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);
}
.sp-preview-inner, .sp-alpha-inner, .sp-thumb-inner {
    display:block;
    position:absolute;
    top:0;left:0;bottom:0;right:0;
}

.sp-palette .sp-thumb-inner {
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=);
}

.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=);
}

.sp-clear-display {
    background-repeat:no-repeat;
    background-position: center;
    background-image: url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==);
}

/**!
  Visualization Classes for debugging the vertical-collection
  */
.vertical-collection-visual-debugger {
  height: 100%;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: left;
  background: rgba(50, 50, 50, 1);
  width: 125px;
}

.vertical-collection-visual-debugger .vc_visualization-container {
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  left: 0;
  position: relative;
}


.vertical-collection-visual-debugger .vc_visualization-screen {
  position: absolute;
  background: transparent;
  box-sizing: content-box;
  border-top: 2px dashed yellow;
  border-bottom: 2px dashed yellow;
  width: 500px;
}

.vertical-collection-visual-debugger .vc_visualization-scroll-container {
  position: absolute;
  width: 500px;
  background: rgba(100, 230, 100, 0.65);
}

.vertical-collection-visual-debugger .vc_visualization-item-container {
  position: absolute;
  width: 500px;
  background: rgba(255, 255, 255, .15);
}

.vertical-collection-visual-debugger .vc_visualization-virtual-component {
  box-sizing: border-box;
  background: rgba(230, 100, 230, 0.6);
  border: 1px dotted #bbb;
  border-top: 0px;
  color: #fff;
  text-align: center;
  font-size: 2.5em;
  width: 250px;
}

.vertical-collection-visual-debugger .vc_visualization-virtual-component:first-of-type {
  border-top: 1px dotted #bbb;
}

.vertical-collection-visual-debugger .vc_visualization-virtual-component.culled {
  background: transparent;
}

 /*
 * # Semantic UI - 2.4.2
 * https://github.com/Semantic-Org/Semantic-UI
 * http://www.semantic-ui.com/
 *
 * Copyright 2014 Contributors
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */
@import url('https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900&subset=latin');
/*!
 * # Semantic UI 2.4.2 - Reset
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Reset
*******************************/

/* Border-Box */

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

html {
  box-sizing: border-box;
}

/* iPad Input Shadows */

input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  /* mobile firefox too! */
}

/*! normalize.css v7.0.0 | 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
 *    IE on Windows Phone and in iOS.
 */

html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  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
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 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
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * 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 style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * 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
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * 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 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

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 and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Site
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Page
*******************************/

html,
body {
  height: 100%;
}

html {
  font-size: 14px;
}

body {
  margin: 0px;
  padding: 0px;
  overflow-x: hidden;
  min-width: 320px;
  background: #FFFFFF;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.4285em;
  color: rgba(0, 0, 0, 0.87);
  font-smoothing: antialiased;
}

/*******************************
             Headers
*******************************/

h1,
h2,
h3,
h4,
h5 {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  line-height: 1.28571429em;
  margin: calc(2rem -  0.14285714em ) 0em 1rem;
  font-weight: bold;
  padding: 0em;
}

h1 {
  min-height: 1rem;
  font-size: 2rem;
}

h2 {
  font-size: 1.71428571rem;
}

h3 {
  font-size: 1.28571429rem;
}

h4 {
  font-size: 1.07142857rem;
}

h5 {
  font-size: 1rem;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child {
  margin-top: 0em;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child {
  margin-bottom: 0em;
}

/*******************************
             Text
*******************************/

p {
  margin: 0em 0em 1em;
  line-height: 1.4285em;
}

p:first-child {
  margin-top: 0em;
}

p:last-child {
  margin-bottom: 0em;
}

/*-------------------
        Links
--------------------*/

a {
  color: #4183C4;
  text-decoration: none;
}

a:hover {
  color: #1e70bf;
  text-decoration: none;
}

/*******************************
         Scrollbars
*******************************/

/*******************************
          Highlighting
*******************************/

/* Site */

::-webkit-selection {
  background-color: #CCE2FF;
  color: rgba(0, 0, 0, 0.87);
}

::-moz-selection {
  background-color: #CCE2FF;
  color: rgba(0, 0, 0, 0.87);
}

::selection {
  background-color: #CCE2FF;
  color: rgba(0, 0, 0, 0.87);
}

/* Form */

textarea::-webkit-selection,
input::-webkit-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.87);
}

textarea::-moz-selection,
input::-moz-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.87);
}

textarea::-moz-selection,
input::-moz-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.87);
}

textarea::-moz-selection, input::-moz-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.87);
}

textarea::selection,
input::selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.87);
}

/* Force Simple Scrollbars */

body ::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 10px;
  height: 10px;
}

body ::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 0px;
}

body ::-webkit-scrollbar-thumb {
  cursor: pointer;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.25);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}

body ::-webkit-scrollbar-thumb:window-inactive {
  background: rgba(0, 0, 0, 0.15);
}

body ::-webkit-scrollbar-thumb:hover {
  background: rgba(128, 135, 139, 0.8);
}

/* Inverted UI */

body .ui.inverted::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.1);
}

body .ui.inverted::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.25);
}

body .ui.inverted::-webkit-scrollbar-thumb:window-inactive {
  background: rgba(255, 255, 255, 0.15);
}

body .ui.inverted::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.35);
}

/*******************************
        Global Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Button
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Button
*******************************/

.ui.button {
  cursor: pointer;
  display: inline-block;
  min-height: 1em;
  outline: none;
  border: none;
  vertical-align: baseline;
  background: #E0E1E2 none;
  color: rgba(0, 0, 0, 0.6);
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  margin: 0em 0.25em 0em 0em;
  padding: 0.78571429em 1.5em 0.78571429em;
  text-transform: none;
  text-shadow: none;
  font-weight: bold;
  line-height: 1em;
  font-style: normal;
  text-align: center;
  text-decoration: none;
  border-radius: 0.28571429rem;
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;
  will-change: '';
  -webkit-tap-highlight-color: transparent;
}

/*******************************
            States
*******************************/

/*--------------
      Hover
---------------*/

.ui.button:hover {
  background-color: #CACBCD;
  background-image: none;
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
  color: rgba(0, 0, 0, 0.8);
}

.ui.button:hover .icon {
  opacity: 0.85;
}

/*--------------
      Focus
---------------*/

.ui.button:focus {
  background-color: #CACBCD;
  color: rgba(0, 0, 0, 0.8);
  background-image: '' !important;
  box-shadow: '' !important;
}

.ui.button:focus .icon {
  opacity: 0.85;
}

/*--------------
      Down
---------------*/

.ui.button:active,
.ui.active.button:active {
  background-color: #BABBBC;
  background-image: '';
  color: rgba(0, 0, 0, 0.9);
  box-shadow: 0px 0px 0px 1px transparent inset, none;
}

/*--------------
     Active
---------------*/

.ui.active.button {
  background-color: #C0C1C2;
  background-image: none;
  box-shadow: 0px 0px 0px 1px transparent inset;
  color: rgba(0, 0, 0, 0.95);
}

.ui.active.button:hover {
  background-color: #C0C1C2;
  background-image: none;
  color: rgba(0, 0, 0, 0.95);
}

.ui.active.button:active {
  background-color: #C0C1C2;
  background-image: none;
}

/*--------------
    Loading
---------------*/

/* Specificity hack */

.ui.loading.loading.loading.loading.loading.loading.button {
  position: relative;
  cursor: default;
  text-shadow: none !important;
  color: transparent !important;
  opacity: 1;
  pointer-events: auto;
  transition: all 0s linear, opacity 0.1s ease;
}

.ui.loading.button:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.15);
}

.ui.loading.button:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  -webkit-animation: button-spin 0.6s linear;
  animation: button-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #FFFFFF transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}

.ui.labeled.icon.loading.button .icon {
  background-color: transparent;
  box-shadow: none;
}

@-webkit-keyframes button-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes button-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.ui.basic.loading.button:not(.inverted):before {
  border-color: rgba(0, 0, 0, 0.1);
}

.ui.basic.loading.button:not(.inverted):after {
  border-top-color: #767676;
}

/*-------------------
      Disabled
--------------------*/

.ui.buttons .disabled.button,
.ui.disabled.button,
.ui.button:disabled,
.ui.disabled.button:hover,
.ui.disabled.active.button {
  cursor: default;
  opacity: 0.45 !important;
  background-image: none !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

/* Basic Group With Disabled */

.ui.basic.buttons .ui.disabled.button {
  border-color: rgba(34, 36, 38, 0.5);
}

/*******************************
             Types
*******************************/

/*-------------------
       Animated
--------------------*/

.ui.animated.button {
  position: relative;
  overflow: hidden;
  padding-right: 0em !important;
  vertical-align: middle;
  z-index: 1;
}

.ui.animated.button .content {
  will-change: transform, opacity;
}

.ui.animated.button .visible.content {
  position: relative;
  margin-right: 1.5em;
}

.ui.animated.button .hidden.content {
  position: absolute;
  width: 100%;
}

/* Horizontal */

.ui.animated.button .visible.content,
.ui.animated.button .hidden.content {
  transition: right 0.3s ease 0s;
}

.ui.animated.button .visible.content {
  left: auto;
  right: 0%;
}

.ui.animated.button .hidden.content {
  top: 50%;
  left: auto;
  right: -100%;
  margin-top: -0.5em;
}

.ui.animated.button:focus .visible.content,
.ui.animated.button:hover .visible.content {
  left: auto;
  right: 200%;
}

.ui.animated.button:focus .hidden.content,
.ui.animated.button:hover .hidden.content {
  left: auto;
  right: 0%;
}

/* Vertical */

.ui.vertical.animated.button .visible.content,
.ui.vertical.animated.button .hidden.content {
  transition: top 0.3s ease, -webkit-transform 0.3s ease;
  transition: top 0.3s ease, transform 0.3s ease;
  transition: top 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}

.ui.vertical.animated.button .visible.content {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
  right: auto;
}

.ui.vertical.animated.button .hidden.content {
  top: -50%;
  left: 0%;
  right: auto;
}

.ui.vertical.animated.button:focus .visible.content,
.ui.vertical.animated.button:hover .visible.content {
  -webkit-transform: translateY(200%);
  transform: translateY(200%);
  right: auto;
}

.ui.vertical.animated.button:focus .hidden.content,
.ui.vertical.animated.button:hover .hidden.content {
  top: 50%;
  right: auto;
}

/* Fade */

.ui.fade.animated.button .visible.content,
.ui.fade.animated.button .hidden.content {
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}

.ui.fade.animated.button .visible.content {
  left: auto;
  right: auto;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.ui.fade.animated.button .hidden.content {
  opacity: 0;
  left: 0%;
  right: auto;
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}

.ui.fade.animated.button:focus .visible.content,
.ui.fade.animated.button:hover .visible.content {
  left: auto;
  right: auto;
  opacity: 0;
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
}

.ui.fade.animated.button:focus .hidden.content,
.ui.fade.animated.button:hover .hidden.content {
  left: 0%;
  right: auto;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/*-------------------
       Inverted
--------------------*/

.ui.inverted.button {
  box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
  background: transparent none;
  color: #FFFFFF;
  text-shadow: none !important;
}

/* Group */

.ui.inverted.buttons .button {
  margin: 0px 0px 0px -2px;
}

.ui.inverted.buttons .button:first-child {
  margin-left: 0em;
}

.ui.inverted.vertical.buttons .button {
  margin: 0px 0px -2px 0px;
}

.ui.inverted.vertical.buttons .button:first-child {
  margin-top: 0em;
}

/* States */

/* Hover */

.ui.inverted.button:hover {
  background: #FFFFFF;
  box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
  color: rgba(0, 0, 0, 0.8);
}

/* Active / Focus */

.ui.inverted.button:focus,
.ui.inverted.button.active {
  background: #FFFFFF;
  box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
  color: rgba(0, 0, 0, 0.8);
}

/* Active Focus */

.ui.inverted.button.active:focus {
  background: #DCDDDE;
  box-shadow: 0px 0px 0px 2px #DCDDDE inset !important;
  color: rgba(0, 0, 0, 0.8);
}

/*-------------------
    Labeled Button
--------------------*/

.ui.labeled.button:not(.icon) {
  display: inline-flex;
  flex-direction: row;
  background: none !important;
  padding: 0px !important;
  border: none !important;
  box-shadow: none !important;
}

.ui.labeled.button > .button {
  margin: 0px;
}

.ui.labeled.button > .label {
  display: flex;
  align-items: center;
  margin: 0px 0px 0px -1px !important;
  padding: '';
  font-size: 1em;
  border-color: rgba(34, 36, 38, 0.15);
}

/* Tag */

.ui.labeled.button > .tag.label:before {
  width: 1.85em;
  height: 1.85em;
}

/* Right */

.ui.labeled.button:not([class*="left labeled"]) > .button {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}

.ui.labeled.button:not([class*="left labeled"]) > .label {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}

/* Left Side */

.ui[class*="left labeled"].button > .button {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}

.ui[class*="left labeled"].button > .label {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}

/*-------------------
       Social
--------------------*/

/* Facebook */

.ui.facebook.button {
  background-color: #3B5998;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.facebook.button:hover {
  background-color: #304d8a;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.facebook.button:active {
  background-color: #2d4373;
  color: #FFFFFF;
  text-shadow: none;
}

/* Twitter */

.ui.twitter.button {
  background-color: #55ACEE;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.twitter.button:hover {
  background-color: #35a2f4;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.twitter.button:active {
  background-color: #2795e9;
  color: #FFFFFF;
  text-shadow: none;
}

/* Google Plus */

.ui.google.plus.button {
  background-color: #DD4B39;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.google.plus.button:hover {
  background-color: #e0321c;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.google.plus.button:active {
  background-color: #c23321;
  color: #FFFFFF;
  text-shadow: none;
}

/* Linked In */

.ui.linkedin.button {
  background-color: #1F88BE;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.linkedin.button:hover {
  background-color: #147baf;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.linkedin.button:active {
  background-color: #186992;
  color: #FFFFFF;
  text-shadow: none;
}

/* YouTube */

.ui.youtube.button {
  background-color: #FF0000;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.youtube.button:hover {
  background-color: #e60000;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.youtube.button:active {
  background-color: #cc0000;
  color: #FFFFFF;
  text-shadow: none;
}

/* Instagram */

.ui.instagram.button {
  background-color: #49769C;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.instagram.button:hover {
  background-color: #3d698e;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.instagram.button:active {
  background-color: #395c79;
  color: #FFFFFF;
  text-shadow: none;
}

/* Pinterest */

.ui.pinterest.button {
  background-color: #BD081C;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.pinterest.button:hover {
  background-color: #ac0013;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.pinterest.button:active {
  background-color: #8c0615;
  color: #FFFFFF;
  text-shadow: none;
}

/* VK */

.ui.vk.button {
  background-color: #4D7198;
  color: #FFFFFF;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.vk.button:hover {
  background-color: #41648a;
  color: #FFFFFF;
}

.ui.vk.button:active {
  background-color: #3c5876;
  color: #FFFFFF;
}

/*--------------
     Icon
---------------*/

.ui.button > .icon:not(.button) {
  height: 0.85714286em;
  opacity: 0.8;
  margin: 0em 0.42857143em 0em -0.21428571em;
  transition: opacity 0.1s ease;
  vertical-align: '';
  color: '';
}

.ui.button:not(.icon) > .icon:not(.button):not(.dropdown) {
  margin: 0em 0.42857143em 0em -0.21428571em;
}

.ui.button:not(.icon) > .right.icon:not(.button):not(.dropdown) {
  margin: 0em -0.21428571em 0em 0.42857143em;
}

/*******************************
           Variations
*******************************/

/*-------------------
       Floated
--------------------*/

.ui[class*="left floated"].buttons,
.ui[class*="left floated"].button {
  float: left;
  margin-left: 0em;
  margin-right: 0.25em;
}

.ui[class*="right floated"].buttons,
.ui[class*="right floated"].button {
  float: right;
  margin-right: 0em;
  margin-left: 0.25em;
}

/*-------------------
       Compact
--------------------*/

.ui.compact.buttons .button,
.ui.compact.button {
  padding: 0.58928571em 1.125em 0.58928571em;
}

.ui.compact.icon.buttons .button,
.ui.compact.icon.button {
  padding: 0.58928571em 0.58928571em 0.58928571em;
}

.ui.compact.labeled.icon.buttons .button,
.ui.compact.labeled.icon.button {
  padding: 0.58928571em 3.69642857em 0.58928571em;
}

/*-------------------
        Sizes
--------------------*/

.ui.mini.buttons .button,
.ui.mini.buttons .or,
.ui.mini.button {
  font-size: 0.78571429rem;
}

.ui.tiny.buttons .button,
.ui.tiny.buttons .or,
.ui.tiny.button {
  font-size: 0.85714286rem;
}

.ui.small.buttons .button,
.ui.small.buttons .or,
.ui.small.button {
  font-size: 0.92857143rem;
}

.ui.buttons .button,
.ui.buttons .or,
.ui.button {
  font-size: 1rem;
}

.ui.large.buttons .button,
.ui.large.buttons .or,
.ui.large.button {
  font-size: 1.14285714rem;
}

.ui.big.buttons .button,
.ui.big.buttons .or,
.ui.big.button {
  font-size: 1.28571429rem;
}

.ui.huge.buttons .button,
.ui.huge.buttons .or,
.ui.huge.button {
  font-size: 1.42857143rem;
}

.ui.massive.buttons .button,
.ui.massive.buttons .or,
.ui.massive.button {
  font-size: 1.71428571rem;
}

/*--------------
    Icon Only
---------------*/

.ui.icon.buttons .button,
.ui.icon.button {
  padding: 0.78571429em 0.78571429em 0.78571429em;
}

.ui.icon.buttons .button > .icon,
.ui.icon.button > .icon {
  opacity: 0.9;
  margin: 0em !important;
  vertical-align: top;
}

/*-------------------
        Basic
--------------------*/

.ui.basic.buttons .button,
.ui.basic.button {
  background: transparent none !important;
  color: rgba(0, 0, 0, 0.6) !important;
  font-weight: normal;
  border-radius: 0.28571429rem;
  text-transform: none;
  text-shadow: none !important;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
}

.ui.basic.buttons {
  box-shadow: none;
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
}

.ui.basic.buttons .button {
  border-radius: 0em;
}

.ui.basic.buttons .button:hover,
.ui.basic.button:hover {
  background: #FFFFFF !important;
  color: rgba(0, 0, 0, 0.8) !important;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.basic.buttons .button:focus,
.ui.basic.button:focus {
  background: #FFFFFF !important;
  color: rgba(0, 0, 0, 0.8) !important;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.basic.buttons .button:active,
.ui.basic.button:active {
  background: #F8F8F8 !important;
  color: rgba(0, 0, 0, 0.9) !important;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.basic.buttons .active.button,
.ui.basic.active.button {
  background: rgba(0, 0, 0, 0.05) !important;
  box-shadow: '' !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.basic.buttons .active.button:hover,
.ui.basic.active.button:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

/* Vertical */

.ui.basic.buttons .button:hover {
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset inset;
}

.ui.basic.buttons .button:active {
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset inset;
}

.ui.basic.buttons .active.button {
  box-shadow: '' !important;
}

/* Standard Basic Inverted */

.ui.basic.inverted.buttons .button,
.ui.basic.inverted.button {
  background-color: transparent !important;
  color: #F9FAFB !important;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
}

.ui.basic.inverted.buttons .button:hover,
.ui.basic.inverted.button:hover {
  color: #FFFFFF !important;
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}

.ui.basic.inverted.buttons .button:focus,
.ui.basic.inverted.button:focus {
  color: #FFFFFF !important;
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}

.ui.basic.inverted.buttons .button:active,
.ui.basic.inverted.button:active {
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: #FFFFFF !important;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9) inset !important;
}

.ui.basic.inverted.buttons .active.button,
.ui.basic.inverted.active.button {
  background-color: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
  text-shadow: none;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7) inset;
}

.ui.basic.inverted.buttons .active.button:hover,
.ui.basic.inverted.active.button:hover {
  background-color: rgba(255, 255, 255, 0.15);
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}

/* Basic Group */

.ui.basic.buttons .button {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: none;
}

.ui.basic.vertical.buttons .button {
  border-left: none;
}

.ui.basic.vertical.buttons .button {
  border-left-width: 0px;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.basic.vertical.buttons .button:first-child {
  border-top-width: 0px;
}

/*--------------
  Labeled Icon
---------------*/

.ui.labeled.icon.buttons .button,
.ui.labeled.icon.button {
  position: relative;
  padding-left: 4.07142857em !important;
  padding-right: 1.5em !important;
}

/* Left Labeled */

.ui.labeled.icon.buttons > .button > .icon,
.ui.labeled.icon.button > .icon {
  position: absolute;
  height: 100%;
  line-height: 1;
  border-radius: 0px;
  border-top-left-radius: inherit;
  border-bottom-left-radius: inherit;
  text-align: center;
  margin: 0em;
  width: 2.57142857em;
  background-color: rgba(0, 0, 0, 0.05);
  color: '';
  box-shadow: -1px 0px 0px 0px transparent inset;
}

/* Left Labeled */

.ui.labeled.icon.buttons > .button > .icon,
.ui.labeled.icon.button > .icon {
  top: 0em;
  left: 0em;
}

/* Right Labeled */

.ui[class*="right labeled"].icon.button {
  padding-right: 4.07142857em !important;
  padding-left: 1.5em !important;
}

.ui[class*="right labeled"].icon.button > .icon {
  left: auto;
  right: 0em;
  border-radius: 0px;
  border-top-right-radius: inherit;
  border-bottom-right-radius: inherit;
  box-shadow: 1px 0px 0px 0px transparent inset;
}

.ui.labeled.icon.buttons > .button > .icon:before,
.ui.labeled.icon.button > .icon:before,
.ui.labeled.icon.buttons > .button > .icon:after,
.ui.labeled.icon.button > .icon:after {
  display: block;
  position: absolute;
  width: 100%;
  top: 50%;
  text-align: center;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.ui.labeled.icon.buttons .button > .icon {
  border-radius: 0em;
}

.ui.labeled.icon.buttons .button:first-child > .icon {
  border-top-left-radius: 0.28571429rem;
  border-bottom-left-radius: 0.28571429rem;
}

.ui.labeled.icon.buttons .button:last-child > .icon {
  border-top-right-radius: 0.28571429rem;
  border-bottom-right-radius: 0.28571429rem;
}

.ui.vertical.labeled.icon.buttons .button:first-child > .icon {
  border-radius: 0em;
  border-top-left-radius: 0.28571429rem;
}

.ui.vertical.labeled.icon.buttons .button:last-child > .icon {
  border-radius: 0em;
  border-bottom-left-radius: 0.28571429rem;
}

/* Fluid Labeled */

.ui.fluid[class*="left labeled"].icon.button,
.ui.fluid[class*="right labeled"].icon.button {
  padding-left: 1.5em !important;
  padding-right: 1.5em !important;
}

/*--------------
     Toggle
---------------*/

/* Toggle (Modifies active state to give affordances) */

.ui.toggle.buttons .active.button,
.ui.buttons .button.toggle.active,
.ui.button.toggle.active {
  background-color: #21BA45 !important;
  box-shadow: none !important;
  text-shadow: none;
  color: #FFFFFF !important;
}

.ui.button.toggle.active:hover {
  background-color: #16ab39 !important;
  text-shadow: none;
  color: #FFFFFF !important;
}

/*--------------
    Circular
---------------*/

.ui.circular.button {
  border-radius: 10em;
}

.ui.circular.button > .icon {
  width: 1em;
  vertical-align: baseline;
}

/*-------------------
      Or Buttons
--------------------*/

.ui.buttons .or {
  position: relative;
  width: 0.3em;
  height: 2.57142857em;
  z-index: 3;
}

.ui.buttons .or:before {
  position: absolute;
  text-align: center;
  border-radius: 500rem;
  content: 'or';
  top: 50%;
  left: 50%;
  background-color: #FFFFFF;
  text-shadow: none;
  margin-top: -0.89285714em;
  margin-left: -0.89285714em;
  width: 1.78571429em;
  height: 1.78571429em;
  line-height: 1.78571429em;
  color: rgba(0, 0, 0, 0.4);
  font-style: normal;
  font-weight: bold;
  box-shadow: 0px 0px 0px 1px transparent inset;
}

.ui.buttons .or[data-text]:before {
  content: attr(data-text);
}

/* Fluid Or */

.ui.fluid.buttons .or {
  width: 0em !important;
}

.ui.fluid.buttons .or:after {
  display: none;
}

/*-------------------
       Attached
--------------------*/

/* Singular */

.ui.attached.button {
  position: relative;
  display: block;
  margin: 0em;
  border-radius: 0em;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) !important;
}

/* Top / Bottom */

.ui.attached.top.button {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.attached.bottom.button {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

/* Left / Right */

.ui.left.attached.button {
  display: inline-block;
  border-left: none;
  text-align: right;
  padding-right: 0.75em;
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

.ui.right.attached.button {
  display: inline-block;
  text-align: left;
  padding-left: 0.75em;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

/* Plural */

.ui.attached.buttons {
  position: relative;
  display: flex;
  border-radius: 0em;
  width: auto !important;
  z-index: 2;
  margin-left: -1px;
  margin-right: -1px;
}

.ui.attached.buttons .button {
  margin: 0em;
}

.ui.attached.buttons .button:first-child {
  border-radius: 0em;
}

.ui.attached.buttons .button:last-child {
  border-radius: 0em;
}

/* Top / Bottom */

.ui[class*="top attached"].buttons {
  margin-bottom: -1px;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui[class*="top attached"].buttons .button:first-child {
  border-radius: 0.28571429rem 0em 0em 0em;
}

.ui[class*="top attached"].buttons .button:last-child {
  border-radius: 0em 0.28571429rem 0em 0em;
}

.ui[class*="bottom attached"].buttons {
  margin-top: -1px;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui[class*="bottom attached"].buttons .button:first-child {
  border-radius: 0em 0em 0em 0.28571429rem;
}

.ui[class*="bottom attached"].buttons .button:last-child {
  border-radius: 0em 0em 0.28571429rem 0em;
}

/* Left / Right */

.ui[class*="left attached"].buttons {
  display: inline-flex;
  margin-right: 0em;
  margin-left: -1px;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

.ui[class*="left attached"].buttons .button:first-child {
  margin-left: -1px;
  border-radius: 0em 0.28571429rem 0em 0em;
}

.ui[class*="left attached"].buttons .button:last-child {
  margin-left: -1px;
  border-radius: 0em 0em 0.28571429rem 0em;
}

.ui[class*="right attached"].buttons {
  display: inline-flex;
  margin-left: 0em;
  margin-right: -1px;
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

.ui[class*="right attached"].buttons .button:first-child {
  margin-left: -1px;
  border-radius: 0.28571429rem 0em 0em 0em;
}

.ui[class*="right attached"].buttons .button:last-child {
  margin-left: -1px;
  border-radius: 0em 0em 0em 0.28571429rem;
}

/*-------------------
        Fluid
--------------------*/

.ui.fluid.buttons,
.ui.fluid.button {
  width: 100%;
}

.ui.fluid.button {
  display: block;
}

.ui.two.buttons {
  width: 100%;
}

.ui.two.buttons > .button {
  width: 50%;
}

.ui.three.buttons {
  width: 100%;
}

.ui.three.buttons > .button {
  width: 33.333%;
}

.ui.four.buttons {
  width: 100%;
}

.ui.four.buttons > .button {
  width: 25%;
}

.ui.five.buttons {
  width: 100%;
}

.ui.five.buttons > .button {
  width: 20%;
}

.ui.six.buttons {
  width: 100%;
}

.ui.six.buttons > .button {
  width: 16.666%;
}

.ui.seven.buttons {
  width: 100%;
}

.ui.seven.buttons > .button {
  width: 14.285%;
}

.ui.eight.buttons {
  width: 100%;
}

.ui.eight.buttons > .button {
  width: 12.5%;
}

.ui.nine.buttons {
  width: 100%;
}

.ui.nine.buttons > .button {
  width: 11.11%;
}

.ui.ten.buttons {
  width: 100%;
}

.ui.ten.buttons > .button {
  width: 10%;
}

.ui.eleven.buttons {
  width: 100%;
}

.ui.eleven.buttons > .button {
  width: 9.09%;
}

.ui.twelve.buttons {
  width: 100%;
}

.ui.twelve.buttons > .button {
  width: 8.3333%;
}

/* Fluid Vertical Buttons */

.ui.fluid.vertical.buttons,
.ui.fluid.vertical.buttons > .button {
  display: flex;
  width: auto;
}

.ui.two.vertical.buttons > .button {
  height: 50%;
}

.ui.three.vertical.buttons > .button {
  height: 33.333%;
}

.ui.four.vertical.buttons > .button {
  height: 25%;
}

.ui.five.vertical.buttons > .button {
  height: 20%;
}

.ui.six.vertical.buttons > .button {
  height: 16.666%;
}

.ui.seven.vertical.buttons > .button {
  height: 14.285%;
}

.ui.eight.vertical.buttons > .button {
  height: 12.5%;
}

.ui.nine.vertical.buttons > .button {
  height: 11.11%;
}

.ui.ten.vertical.buttons > .button {
  height: 10%;
}

.ui.eleven.vertical.buttons > .button {
  height: 9.09%;
}

.ui.twelve.vertical.buttons > .button {
  height: 8.3333%;
}

/*-------------------
       Colors
--------------------*/

/*--- Black ---*/

.ui.black.buttons .button,
.ui.black.button {
  background-color: #1B1C1D;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.black.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.black.buttons .button:hover,
.ui.black.button:hover {
  background-color: #27292a;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.black.buttons .button:focus,
.ui.black.button:focus {
  background-color: #2f3032;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.black.buttons .button:active,
.ui.black.button:active {
  background-color: #343637;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.black.buttons .active.button,
.ui.black.buttons .active.button:active,
.ui.black.active.button,
.ui.black.button .active.button:active {
  background-color: #0f0f10;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.black.buttons .button,
.ui.basic.black.button {
  box-shadow: 0px 0px 0px 1px #1B1C1D inset !important;
  color: #1B1C1D !important;
}

.ui.basic.black.buttons .button:hover,
.ui.basic.black.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #27292a inset !important;
  color: #27292a !important;
}

.ui.basic.black.buttons .button:focus,
.ui.basic.black.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #2f3032 inset !important;
  color: #27292a !important;
}

.ui.basic.black.buttons .active.button,
.ui.basic.black.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #0f0f10 inset !important;
  color: #343637 !important;
}

.ui.basic.black.buttons .button:active,
.ui.basic.black.button:active {
  box-shadow: 0px 0px 0px 1px #343637 inset !important;
  color: #343637 !important;
}

.ui.buttons:not(.vertical) > .basic.black.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.black.buttons .button,
.ui.inverted.black.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important;
  color: #FFFFFF;
}

.ui.inverted.black.buttons .button:hover,
.ui.inverted.black.button:hover,
.ui.inverted.black.buttons .button:focus,
.ui.inverted.black.button:focus,
.ui.inverted.black.buttons .button.active,
.ui.inverted.black.button.active,
.ui.inverted.black.buttons .button:active,
.ui.inverted.black.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.black.buttons .button:hover,
.ui.inverted.black.button:hover {
  background-color: #000000;
}

.ui.inverted.black.buttons .button:focus,
.ui.inverted.black.button:focus {
  background-color: #000000;
}

.ui.inverted.black.buttons .active.button,
.ui.inverted.black.active.button {
  background-color: #000000;
}

.ui.inverted.black.buttons .button:active,
.ui.inverted.black.button:active {
  background-color: #000000;
}

/* Inverted Basic */

.ui.inverted.black.basic.buttons .button,
.ui.inverted.black.buttons .basic.button,
.ui.inverted.black.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.black.basic.buttons .button:hover,
.ui.inverted.black.buttons .basic.button:hover,
.ui.inverted.black.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #000000 inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.black.basic.buttons .button:focus,
.ui.inverted.black.basic.buttons .button:focus,
.ui.inverted.black.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #000000 inset !important;
  color: #545454 !important;
}

.ui.inverted.black.basic.buttons .active.button,
.ui.inverted.black.buttons .basic.active.button,
.ui.inverted.black.basic.active.button {
  box-shadow: 0px 0px 0px 2px #000000 inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.black.basic.buttons .button:active,
.ui.inverted.black.buttons .basic.button:active,
.ui.inverted.black.basic.button:active {
  box-shadow: 0px 0px 0px 2px #000000 inset !important;
  color: #FFFFFF !important;
}

/*--- Grey ---*/

.ui.grey.buttons .button,
.ui.grey.button {
  background-color: #767676;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.grey.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.grey.buttons .button:hover,
.ui.grey.button:hover {
  background-color: #838383;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.grey.buttons .button:focus,
.ui.grey.button:focus {
  background-color: #8a8a8a;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.grey.buttons .button:active,
.ui.grey.button:active {
  background-color: #909090;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.grey.buttons .active.button,
.ui.grey.buttons .active.button:active,
.ui.grey.active.button,
.ui.grey.button .active.button:active {
  background-color: #696969;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.grey.buttons .button,
.ui.basic.grey.button {
  box-shadow: 0px 0px 0px 1px #767676 inset !important;
  color: #767676 !important;
}

.ui.basic.grey.buttons .button:hover,
.ui.basic.grey.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #838383 inset !important;
  color: #838383 !important;
}

.ui.basic.grey.buttons .button:focus,
.ui.basic.grey.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #8a8a8a inset !important;
  color: #838383 !important;
}

.ui.basic.grey.buttons .active.button,
.ui.basic.grey.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #696969 inset !important;
  color: #909090 !important;
}

.ui.basic.grey.buttons .button:active,
.ui.basic.grey.button:active {
  box-shadow: 0px 0px 0px 1px #909090 inset !important;
  color: #909090 !important;
}

.ui.buttons:not(.vertical) > .basic.grey.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.grey.buttons .button,
.ui.inverted.grey.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important;
  color: #FFFFFF;
}

.ui.inverted.grey.buttons .button:hover,
.ui.inverted.grey.button:hover,
.ui.inverted.grey.buttons .button:focus,
.ui.inverted.grey.button:focus,
.ui.inverted.grey.buttons .button.active,
.ui.inverted.grey.button.active,
.ui.inverted.grey.buttons .button:active,
.ui.inverted.grey.button:active {
  box-shadow: none !important;
  color: rgba(0, 0, 0, 0.6);
}

.ui.inverted.grey.buttons .button:hover,
.ui.inverted.grey.button:hover {
  background-color: #cfd0d2;
}

.ui.inverted.grey.buttons .button:focus,
.ui.inverted.grey.button:focus {
  background-color: #c7c9cb;
}

.ui.inverted.grey.buttons .active.button,
.ui.inverted.grey.active.button {
  background-color: #cfd0d2;
}

.ui.inverted.grey.buttons .button:active,
.ui.inverted.grey.button:active {
  background-color: #c2c4c5;
}

/* Inverted Basic */

.ui.inverted.grey.basic.buttons .button,
.ui.inverted.grey.buttons .basic.button,
.ui.inverted.grey.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.grey.basic.buttons .button:hover,
.ui.inverted.grey.buttons .basic.button:hover,
.ui.inverted.grey.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.grey.basic.buttons .button:focus,
.ui.inverted.grey.basic.buttons .button:focus,
.ui.inverted.grey.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #c7c9cb inset !important;
  color: #DCDDDE !important;
}

.ui.inverted.grey.basic.buttons .active.button,
.ui.inverted.grey.buttons .basic.active.button,
.ui.inverted.grey.basic.active.button {
  box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.grey.basic.buttons .button:active,
.ui.inverted.grey.buttons .basic.button:active,
.ui.inverted.grey.basic.button:active {
  box-shadow: 0px 0px 0px 2px #c2c4c5 inset !important;
  color: #FFFFFF !important;
}

/*--- Brown ---*/

.ui.brown.buttons .button,
.ui.brown.button {
  background-color: #A5673F;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.brown.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.brown.buttons .button:hover,
.ui.brown.button:hover {
  background-color: #975b33;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.brown.buttons .button:focus,
.ui.brown.button:focus {
  background-color: #90532b;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.brown.buttons .button:active,
.ui.brown.button:active {
  background-color: #805031;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.brown.buttons .active.button,
.ui.brown.buttons .active.button:active,
.ui.brown.active.button,
.ui.brown.button .active.button:active {
  background-color: #995a31;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.brown.buttons .button,
.ui.basic.brown.button {
  box-shadow: 0px 0px 0px 1px #A5673F inset !important;
  color: #A5673F !important;
}

.ui.basic.brown.buttons .button:hover,
.ui.basic.brown.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #975b33 inset !important;
  color: #975b33 !important;
}

.ui.basic.brown.buttons .button:focus,
.ui.basic.brown.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #90532b inset !important;
  color: #975b33 !important;
}

.ui.basic.brown.buttons .active.button,
.ui.basic.brown.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #995a31 inset !important;
  color: #805031 !important;
}

.ui.basic.brown.buttons .button:active,
.ui.basic.brown.button:active {
  box-shadow: 0px 0px 0px 1px #805031 inset !important;
  color: #805031 !important;
}

.ui.buttons:not(.vertical) > .basic.brown.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.brown.buttons .button,
.ui.inverted.brown.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #D67C1C inset !important;
  color: #D67C1C;
}

.ui.inverted.brown.buttons .button:hover,
.ui.inverted.brown.button:hover,
.ui.inverted.brown.buttons .button:focus,
.ui.inverted.brown.button:focus,
.ui.inverted.brown.buttons .button.active,
.ui.inverted.brown.button.active,
.ui.inverted.brown.buttons .button:active,
.ui.inverted.brown.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.brown.buttons .button:hover,
.ui.inverted.brown.button:hover {
  background-color: #c86f11;
}

.ui.inverted.brown.buttons .button:focus,
.ui.inverted.brown.button:focus {
  background-color: #c16808;
}

.ui.inverted.brown.buttons .active.button,
.ui.inverted.brown.active.button {
  background-color: #cc6f0d;
}

.ui.inverted.brown.buttons .button:active,
.ui.inverted.brown.button:active {
  background-color: #a96216;
}

/* Inverted Basic */

.ui.inverted.brown.basic.buttons .button,
.ui.inverted.brown.buttons .basic.button,
.ui.inverted.brown.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.brown.basic.buttons .button:hover,
.ui.inverted.brown.buttons .basic.button:hover,
.ui.inverted.brown.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #c86f11 inset !important;
  color: #D67C1C !important;
}

.ui.inverted.brown.basic.buttons .button:focus,
.ui.inverted.brown.basic.buttons .button:focus,
.ui.inverted.brown.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #c16808 inset !important;
  color: #D67C1C !important;
}

.ui.inverted.brown.basic.buttons .active.button,
.ui.inverted.brown.buttons .basic.active.button,
.ui.inverted.brown.basic.active.button {
  box-shadow: 0px 0px 0px 2px #cc6f0d inset !important;
  color: #D67C1C !important;
}

.ui.inverted.brown.basic.buttons .button:active,
.ui.inverted.brown.buttons .basic.button:active,
.ui.inverted.brown.basic.button:active {
  box-shadow: 0px 0px 0px 2px #a96216 inset !important;
  color: #D67C1C !important;
}

/*--- Blue ---*/

.ui.blue.buttons .button,
.ui.blue.button {
  background-color: #2185D0;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.blue.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.blue.buttons .button:hover,
.ui.blue.button:hover {
  background-color: #1678c2;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.blue.buttons .button:focus,
.ui.blue.button:focus {
  background-color: #0d71bb;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.blue.buttons .button:active,
.ui.blue.button:active {
  background-color: #1a69a4;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.blue.buttons .active.button,
.ui.blue.buttons .active.button:active,
.ui.blue.active.button,
.ui.blue.button .active.button:active {
  background-color: #1279c6;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.blue.buttons .button,
.ui.basic.blue.button {
  box-shadow: 0px 0px 0px 1px #2185D0 inset !important;
  color: #2185D0 !important;
}

.ui.basic.blue.buttons .button:hover,
.ui.basic.blue.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #1678c2 inset !important;
  color: #1678c2 !important;
}

.ui.basic.blue.buttons .button:focus,
.ui.basic.blue.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #0d71bb inset !important;
  color: #1678c2 !important;
}

.ui.basic.blue.buttons .active.button,
.ui.basic.blue.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #1279c6 inset !important;
  color: #1a69a4 !important;
}

.ui.basic.blue.buttons .button:active,
.ui.basic.blue.button:active {
  box-shadow: 0px 0px 0px 1px #1a69a4 inset !important;
  color: #1a69a4 !important;
}

.ui.buttons:not(.vertical) > .basic.blue.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.blue.buttons .button,
.ui.inverted.blue.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #54C8FF inset !important;
  color: #54C8FF;
}

.ui.inverted.blue.buttons .button:hover,
.ui.inverted.blue.button:hover,
.ui.inverted.blue.buttons .button:focus,
.ui.inverted.blue.button:focus,
.ui.inverted.blue.buttons .button.active,
.ui.inverted.blue.button.active,
.ui.inverted.blue.buttons .button:active,
.ui.inverted.blue.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.blue.buttons .button:hover,
.ui.inverted.blue.button:hover {
  background-color: #3ac0ff;
}

.ui.inverted.blue.buttons .button:focus,
.ui.inverted.blue.button:focus {
  background-color: #2bbbff;
}

.ui.inverted.blue.buttons .active.button,
.ui.inverted.blue.active.button {
  background-color: #3ac0ff;
}

.ui.inverted.blue.buttons .button:active,
.ui.inverted.blue.button:active {
  background-color: #21b8ff;
}

/* Inverted Basic */

.ui.inverted.blue.basic.buttons .button,
.ui.inverted.blue.buttons .basic.button,
.ui.inverted.blue.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.blue.basic.buttons .button:hover,
.ui.inverted.blue.buttons .basic.button:hover,
.ui.inverted.blue.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.blue.basic.buttons .button:focus,
.ui.inverted.blue.basic.buttons .button:focus,
.ui.inverted.blue.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #2bbbff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.blue.basic.buttons .active.button,
.ui.inverted.blue.buttons .basic.active.button,
.ui.inverted.blue.basic.active.button {
  box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.blue.basic.buttons .button:active,
.ui.inverted.blue.buttons .basic.button:active,
.ui.inverted.blue.basic.button:active {
  box-shadow: 0px 0px 0px 2px #21b8ff inset !important;
  color: #54C8FF !important;
}

/*--- Green ---*/

.ui.green.buttons .button,
.ui.green.button {
  background-color: #21BA45;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.green.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.green.buttons .button:hover,
.ui.green.button:hover {
  background-color: #16ab39;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.green.buttons .button:focus,
.ui.green.button:focus {
  background-color: #0ea432;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.green.buttons .button:active,
.ui.green.button:active {
  background-color: #198f35;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.green.buttons .active.button,
.ui.green.buttons .active.button:active,
.ui.green.active.button,
.ui.green.button .active.button:active {
  background-color: #13ae38;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.green.buttons .button,
.ui.basic.green.button {
  box-shadow: 0px 0px 0px 1px #21BA45 inset !important;
  color: #21BA45 !important;
}

.ui.basic.green.buttons .button:hover,
.ui.basic.green.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #16ab39 inset !important;
  color: #16ab39 !important;
}

.ui.basic.green.buttons .button:focus,
.ui.basic.green.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #0ea432 inset !important;
  color: #16ab39 !important;
}

.ui.basic.green.buttons .active.button,
.ui.basic.green.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #13ae38 inset !important;
  color: #198f35 !important;
}

.ui.basic.green.buttons .button:active,
.ui.basic.green.button:active {
  box-shadow: 0px 0px 0px 1px #198f35 inset !important;
  color: #198f35 !important;
}

.ui.buttons:not(.vertical) > .basic.green.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.green.buttons .button,
.ui.inverted.green.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #2ECC40 inset !important;
  color: #2ECC40;
}

.ui.inverted.green.buttons .button:hover,
.ui.inverted.green.button:hover,
.ui.inverted.green.buttons .button:focus,
.ui.inverted.green.button:focus,
.ui.inverted.green.buttons .button.active,
.ui.inverted.green.button.active,
.ui.inverted.green.buttons .button:active,
.ui.inverted.green.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.green.buttons .button:hover,
.ui.inverted.green.button:hover {
  background-color: #22be34;
}

.ui.inverted.green.buttons .button:focus,
.ui.inverted.green.button:focus {
  background-color: #19b82b;
}

.ui.inverted.green.buttons .active.button,
.ui.inverted.green.active.button {
  background-color: #1fc231;
}

.ui.inverted.green.buttons .button:active,
.ui.inverted.green.button:active {
  background-color: #25a233;
}

/* Inverted Basic */

.ui.inverted.green.basic.buttons .button,
.ui.inverted.green.buttons .basic.button,
.ui.inverted.green.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.green.basic.buttons .button:hover,
.ui.inverted.green.buttons .basic.button:hover,
.ui.inverted.green.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #22be34 inset !important;
  color: #2ECC40 !important;
}

.ui.inverted.green.basic.buttons .button:focus,
.ui.inverted.green.basic.buttons .button:focus,
.ui.inverted.green.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #19b82b inset !important;
  color: #2ECC40 !important;
}

.ui.inverted.green.basic.buttons .active.button,
.ui.inverted.green.buttons .basic.active.button,
.ui.inverted.green.basic.active.button {
  box-shadow: 0px 0px 0px 2px #1fc231 inset !important;
  color: #2ECC40 !important;
}

.ui.inverted.green.basic.buttons .button:active,
.ui.inverted.green.buttons .basic.button:active,
.ui.inverted.green.basic.button:active {
  box-shadow: 0px 0px 0px 2px #25a233 inset !important;
  color: #2ECC40 !important;
}

/*--- Orange ---*/

.ui.orange.buttons .button,
.ui.orange.button {
  background-color: #F2711C;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.orange.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.orange.buttons .button:hover,
.ui.orange.button:hover {
  background-color: #f26202;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.orange.buttons .button:focus,
.ui.orange.button:focus {
  background-color: #e55b00;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.orange.buttons .button:active,
.ui.orange.button:active {
  background-color: #cf590c;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.orange.buttons .active.button,
.ui.orange.buttons .active.button:active,
.ui.orange.active.button,
.ui.orange.button .active.button:active {
  background-color: #f56100;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.orange.buttons .button,
.ui.basic.orange.button {
  box-shadow: 0px 0px 0px 1px #F2711C inset !important;
  color: #F2711C !important;
}

.ui.basic.orange.buttons .button:hover,
.ui.basic.orange.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #f26202 inset !important;
  color: #f26202 !important;
}

.ui.basic.orange.buttons .button:focus,
.ui.basic.orange.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #e55b00 inset !important;
  color: #f26202 !important;
}

.ui.basic.orange.buttons .active.button,
.ui.basic.orange.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #f56100 inset !important;
  color: #cf590c !important;
}

.ui.basic.orange.buttons .button:active,
.ui.basic.orange.button:active {
  box-shadow: 0px 0px 0px 1px #cf590c inset !important;
  color: #cf590c !important;
}

.ui.buttons:not(.vertical) > .basic.orange.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.orange.buttons .button,
.ui.inverted.orange.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #FF851B inset !important;
  color: #FF851B;
}

.ui.inverted.orange.buttons .button:hover,
.ui.inverted.orange.button:hover,
.ui.inverted.orange.buttons .button:focus,
.ui.inverted.orange.button:focus,
.ui.inverted.orange.buttons .button.active,
.ui.inverted.orange.button.active,
.ui.inverted.orange.buttons .button:active,
.ui.inverted.orange.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.orange.buttons .button:hover,
.ui.inverted.orange.button:hover {
  background-color: #ff7701;
}

.ui.inverted.orange.buttons .button:focus,
.ui.inverted.orange.button:focus {
  background-color: #f17000;
}

.ui.inverted.orange.buttons .active.button,
.ui.inverted.orange.active.button {
  background-color: #ff7701;
}

.ui.inverted.orange.buttons .button:active,
.ui.inverted.orange.button:active {
  background-color: #e76b00;
}

/* Inverted Basic */

.ui.inverted.orange.basic.buttons .button,
.ui.inverted.orange.buttons .basic.button,
.ui.inverted.orange.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.orange.basic.buttons .button:hover,
.ui.inverted.orange.buttons .basic.button:hover,
.ui.inverted.orange.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff7701 inset !important;
  color: #FF851B !important;
}

.ui.inverted.orange.basic.buttons .button:focus,
.ui.inverted.orange.basic.buttons .button:focus,
.ui.inverted.orange.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #f17000 inset !important;
  color: #FF851B !important;
}

.ui.inverted.orange.basic.buttons .active.button,
.ui.inverted.orange.buttons .basic.active.button,
.ui.inverted.orange.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff7701 inset !important;
  color: #FF851B !important;
}

.ui.inverted.orange.basic.buttons .button:active,
.ui.inverted.orange.buttons .basic.button:active,
.ui.inverted.orange.basic.button:active {
  box-shadow: 0px 0px 0px 2px #e76b00 inset !important;
  color: #FF851B !important;
}

/*--- Pink ---*/

.ui.pink.buttons .button,
.ui.pink.button {
  background-color: #E03997;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.pink.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.pink.buttons .button:hover,
.ui.pink.button:hover {
  background-color: #e61a8d;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.pink.buttons .button:focus,
.ui.pink.button:focus {
  background-color: #e10f85;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.pink.buttons .button:active,
.ui.pink.button:active {
  background-color: #c71f7e;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.pink.buttons .active.button,
.ui.pink.buttons .active.button:active,
.ui.pink.active.button,
.ui.pink.button .active.button:active {
  background-color: #ea158d;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.pink.buttons .button,
.ui.basic.pink.button {
  box-shadow: 0px 0px 0px 1px #E03997 inset !important;
  color: #E03997 !important;
}

.ui.basic.pink.buttons .button:hover,
.ui.basic.pink.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #e61a8d inset !important;
  color: #e61a8d !important;
}

.ui.basic.pink.buttons .button:focus,
.ui.basic.pink.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #e10f85 inset !important;
  color: #e61a8d !important;
}

.ui.basic.pink.buttons .active.button,
.ui.basic.pink.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #ea158d inset !important;
  color: #c71f7e !important;
}

.ui.basic.pink.buttons .button:active,
.ui.basic.pink.button:active {
  box-shadow: 0px 0px 0px 1px #c71f7e inset !important;
  color: #c71f7e !important;
}

.ui.buttons:not(.vertical) > .basic.pink.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.pink.buttons .button,
.ui.inverted.pink.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #FF8EDF inset !important;
  color: #FF8EDF;
}

.ui.inverted.pink.buttons .button:hover,
.ui.inverted.pink.button:hover,
.ui.inverted.pink.buttons .button:focus,
.ui.inverted.pink.button:focus,
.ui.inverted.pink.buttons .button.active,
.ui.inverted.pink.button.active,
.ui.inverted.pink.buttons .button:active,
.ui.inverted.pink.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.pink.buttons .button:hover,
.ui.inverted.pink.button:hover {
  background-color: #ff74d8;
}

.ui.inverted.pink.buttons .button:focus,
.ui.inverted.pink.button:focus {
  background-color: #ff65d3;
}

.ui.inverted.pink.buttons .active.button,
.ui.inverted.pink.active.button {
  background-color: #ff74d8;
}

.ui.inverted.pink.buttons .button:active,
.ui.inverted.pink.button:active {
  background-color: #ff5bd1;
}

/* Inverted Basic */

.ui.inverted.pink.basic.buttons .button,
.ui.inverted.pink.buttons .basic.button,
.ui.inverted.pink.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.pink.basic.buttons .button:hover,
.ui.inverted.pink.buttons .basic.button:hover,
.ui.inverted.pink.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff74d8 inset !important;
  color: #FF8EDF !important;
}

.ui.inverted.pink.basic.buttons .button:focus,
.ui.inverted.pink.basic.buttons .button:focus,
.ui.inverted.pink.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #ff65d3 inset !important;
  color: #FF8EDF !important;
}

.ui.inverted.pink.basic.buttons .active.button,
.ui.inverted.pink.buttons .basic.active.button,
.ui.inverted.pink.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff74d8 inset !important;
  color: #FF8EDF !important;
}

.ui.inverted.pink.basic.buttons .button:active,
.ui.inverted.pink.buttons .basic.button:active,
.ui.inverted.pink.basic.button:active {
  box-shadow: 0px 0px 0px 2px #ff5bd1 inset !important;
  color: #FF8EDF !important;
}

/*--- Violet ---*/

.ui.violet.buttons .button,
.ui.violet.button {
  background-color: #6435C9;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.violet.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.violet.buttons .button:hover,
.ui.violet.button:hover {
  background-color: #5829bb;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.violet.buttons .button:focus,
.ui.violet.button:focus {
  background-color: #4f20b5;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.violet.buttons .button:active,
.ui.violet.button:active {
  background-color: #502aa1;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.violet.buttons .active.button,
.ui.violet.buttons .active.button:active,
.ui.violet.active.button,
.ui.violet.button .active.button:active {
  background-color: #5626bf;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.violet.buttons .button,
.ui.basic.violet.button {
  box-shadow: 0px 0px 0px 1px #6435C9 inset !important;
  color: #6435C9 !important;
}

.ui.basic.violet.buttons .button:hover,
.ui.basic.violet.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #5829bb inset !important;
  color: #5829bb !important;
}

.ui.basic.violet.buttons .button:focus,
.ui.basic.violet.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #4f20b5 inset !important;
  color: #5829bb !important;
}

.ui.basic.violet.buttons .active.button,
.ui.basic.violet.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #5626bf inset !important;
  color: #502aa1 !important;
}

.ui.basic.violet.buttons .button:active,
.ui.basic.violet.button:active {
  box-shadow: 0px 0px 0px 1px #502aa1 inset !important;
  color: #502aa1 !important;
}

.ui.buttons:not(.vertical) > .basic.violet.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.violet.buttons .button,
.ui.inverted.violet.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #A291FB inset !important;
  color: #A291FB;
}

.ui.inverted.violet.buttons .button:hover,
.ui.inverted.violet.button:hover,
.ui.inverted.violet.buttons .button:focus,
.ui.inverted.violet.button:focus,
.ui.inverted.violet.buttons .button.active,
.ui.inverted.violet.button.active,
.ui.inverted.violet.buttons .button:active,
.ui.inverted.violet.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.violet.buttons .button:hover,
.ui.inverted.violet.button:hover {
  background-color: #8a73ff;
}

.ui.inverted.violet.buttons .button:focus,
.ui.inverted.violet.button:focus {
  background-color: #7d64ff;
}

.ui.inverted.violet.buttons .active.button,
.ui.inverted.violet.active.button {
  background-color: #8a73ff;
}

.ui.inverted.violet.buttons .button:active,
.ui.inverted.violet.button:active {
  background-color: #7860f9;
}

/* Inverted Basic */

.ui.inverted.violet.basic.buttons .button,
.ui.inverted.violet.buttons .basic.button,
.ui.inverted.violet.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.violet.basic.buttons .button:hover,
.ui.inverted.violet.buttons .basic.button:hover,
.ui.inverted.violet.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #8a73ff inset !important;
  color: #A291FB !important;
}

.ui.inverted.violet.basic.buttons .button:focus,
.ui.inverted.violet.basic.buttons .button:focus,
.ui.inverted.violet.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #7d64ff inset !important;
  color: #A291FB !important;
}

.ui.inverted.violet.basic.buttons .active.button,
.ui.inverted.violet.buttons .basic.active.button,
.ui.inverted.violet.basic.active.button {
  box-shadow: 0px 0px 0px 2px #8a73ff inset !important;
  color: #A291FB !important;
}

.ui.inverted.violet.basic.buttons .button:active,
.ui.inverted.violet.buttons .basic.button:active,
.ui.inverted.violet.basic.button:active {
  box-shadow: 0px 0px 0px 2px #7860f9 inset !important;
  color: #A291FB !important;
}

/*--- Purple ---*/

.ui.purple.buttons .button,
.ui.purple.button {
  background-color: #A333C8;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.purple.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.purple.buttons .button:hover,
.ui.purple.button:hover {
  background-color: #9627ba;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.purple.buttons .button:focus,
.ui.purple.button:focus {
  background-color: #8f1eb4;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.purple.buttons .button:active,
.ui.purple.button:active {
  background-color: #82299f;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.purple.buttons .active.button,
.ui.purple.buttons .active.button:active,
.ui.purple.active.button,
.ui.purple.button .active.button:active {
  background-color: #9724be;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.purple.buttons .button,
.ui.basic.purple.button {
  box-shadow: 0px 0px 0px 1px #A333C8 inset !important;
  color: #A333C8 !important;
}

.ui.basic.purple.buttons .button:hover,
.ui.basic.purple.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #9627ba inset !important;
  color: #9627ba !important;
}

.ui.basic.purple.buttons .button:focus,
.ui.basic.purple.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #8f1eb4 inset !important;
  color: #9627ba !important;
}

.ui.basic.purple.buttons .active.button,
.ui.basic.purple.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #9724be inset !important;
  color: #82299f !important;
}

.ui.basic.purple.buttons .button:active,
.ui.basic.purple.button:active {
  box-shadow: 0px 0px 0px 1px #82299f inset !important;
  color: #82299f !important;
}

.ui.buttons:not(.vertical) > .basic.purple.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.purple.buttons .button,
.ui.inverted.purple.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #DC73FF inset !important;
  color: #DC73FF;
}

.ui.inverted.purple.buttons .button:hover,
.ui.inverted.purple.button:hover,
.ui.inverted.purple.buttons .button:focus,
.ui.inverted.purple.button:focus,
.ui.inverted.purple.buttons .button.active,
.ui.inverted.purple.button.active,
.ui.inverted.purple.buttons .button:active,
.ui.inverted.purple.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.purple.buttons .button:hover,
.ui.inverted.purple.button:hover {
  background-color: #d65aff;
}

.ui.inverted.purple.buttons .button:focus,
.ui.inverted.purple.button:focus {
  background-color: #d24aff;
}

.ui.inverted.purple.buttons .active.button,
.ui.inverted.purple.active.button {
  background-color: #d65aff;
}

.ui.inverted.purple.buttons .button:active,
.ui.inverted.purple.button:active {
  background-color: #cf40ff;
}

/* Inverted Basic */

.ui.inverted.purple.basic.buttons .button,
.ui.inverted.purple.buttons .basic.button,
.ui.inverted.purple.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.purple.basic.buttons .button:hover,
.ui.inverted.purple.buttons .basic.button:hover,
.ui.inverted.purple.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #d65aff inset !important;
  color: #DC73FF !important;
}

.ui.inverted.purple.basic.buttons .button:focus,
.ui.inverted.purple.basic.buttons .button:focus,
.ui.inverted.purple.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #d24aff inset !important;
  color: #DC73FF !important;
}

.ui.inverted.purple.basic.buttons .active.button,
.ui.inverted.purple.buttons .basic.active.button,
.ui.inverted.purple.basic.active.button {
  box-shadow: 0px 0px 0px 2px #d65aff inset !important;
  color: #DC73FF !important;
}

.ui.inverted.purple.basic.buttons .button:active,
.ui.inverted.purple.buttons .basic.button:active,
.ui.inverted.purple.basic.button:active {
  box-shadow: 0px 0px 0px 2px #cf40ff inset !important;
  color: #DC73FF !important;
}

/*--- Red ---*/

.ui.red.buttons .button,
.ui.red.button {
  background-color: #DB2828;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.red.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.red.buttons .button:hover,
.ui.red.button:hover {
  background-color: #d01919;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.red.buttons .button:focus,
.ui.red.button:focus {
  background-color: #ca1010;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.red.buttons .button:active,
.ui.red.button:active {
  background-color: #b21e1e;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.red.buttons .active.button,
.ui.red.buttons .active.button:active,
.ui.red.active.button,
.ui.red.button .active.button:active {
  background-color: #d41515;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.red.buttons .button,
.ui.basic.red.button {
  box-shadow: 0px 0px 0px 1px #DB2828 inset !important;
  color: #DB2828 !important;
}

.ui.basic.red.buttons .button:hover,
.ui.basic.red.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #d01919 inset !important;
  color: #d01919 !important;
}

.ui.basic.red.buttons .button:focus,
.ui.basic.red.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #ca1010 inset !important;
  color: #d01919 !important;
}

.ui.basic.red.buttons .active.button,
.ui.basic.red.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #d41515 inset !important;
  color: #b21e1e !important;
}

.ui.basic.red.buttons .button:active,
.ui.basic.red.button:active {
  box-shadow: 0px 0px 0px 1px #b21e1e inset !important;
  color: #b21e1e !important;
}

.ui.buttons:not(.vertical) > .basic.red.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.red.buttons .button,
.ui.inverted.red.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #FF695E inset !important;
  color: #FF695E;
}

.ui.inverted.red.buttons .button:hover,
.ui.inverted.red.button:hover,
.ui.inverted.red.buttons .button:focus,
.ui.inverted.red.button:focus,
.ui.inverted.red.buttons .button.active,
.ui.inverted.red.button.active,
.ui.inverted.red.buttons .button:active,
.ui.inverted.red.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.red.buttons .button:hover,
.ui.inverted.red.button:hover {
  background-color: #ff5144;
}

.ui.inverted.red.buttons .button:focus,
.ui.inverted.red.button:focus {
  background-color: #ff4335;
}

.ui.inverted.red.buttons .active.button,
.ui.inverted.red.active.button {
  background-color: #ff5144;
}

.ui.inverted.red.buttons .button:active,
.ui.inverted.red.button:active {
  background-color: #ff392b;
}

/* Inverted Basic */

.ui.inverted.red.basic.buttons .button,
.ui.inverted.red.buttons .basic.button,
.ui.inverted.red.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.red.basic.buttons .button:hover,
.ui.inverted.red.buttons .basic.button:hover,
.ui.inverted.red.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff5144 inset !important;
  color: #FF695E !important;
}

.ui.inverted.red.basic.buttons .button:focus,
.ui.inverted.red.basic.buttons .button:focus,
.ui.inverted.red.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #ff4335 inset !important;
  color: #FF695E !important;
}

.ui.inverted.red.basic.buttons .active.button,
.ui.inverted.red.buttons .basic.active.button,
.ui.inverted.red.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff5144 inset !important;
  color: #FF695E !important;
}

.ui.inverted.red.basic.buttons .button:active,
.ui.inverted.red.buttons .basic.button:active,
.ui.inverted.red.basic.button:active {
  box-shadow: 0px 0px 0px 2px #ff392b inset !important;
  color: #FF695E !important;
}

/*--- Teal ---*/

.ui.teal.buttons .button,
.ui.teal.button {
  background-color: #00B5AD;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.teal.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.teal.buttons .button:hover,
.ui.teal.button:hover {
  background-color: #009c95;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.teal.buttons .button:focus,
.ui.teal.button:focus {
  background-color: #008c86;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.teal.buttons .button:active,
.ui.teal.button:active {
  background-color: #00827c;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.teal.buttons .active.button,
.ui.teal.buttons .active.button:active,
.ui.teal.active.button,
.ui.teal.button .active.button:active {
  background-color: #009c95;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.teal.buttons .button,
.ui.basic.teal.button {
  box-shadow: 0px 0px 0px 1px #00B5AD inset !important;
  color: #00B5AD !important;
}

.ui.basic.teal.buttons .button:hover,
.ui.basic.teal.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #009c95 inset !important;
  color: #009c95 !important;
}

.ui.basic.teal.buttons .button:focus,
.ui.basic.teal.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #008c86 inset !important;
  color: #009c95 !important;
}

.ui.basic.teal.buttons .active.button,
.ui.basic.teal.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #009c95 inset !important;
  color: #00827c !important;
}

.ui.basic.teal.buttons .button:active,
.ui.basic.teal.button:active {
  box-shadow: 0px 0px 0px 1px #00827c inset !important;
  color: #00827c !important;
}

.ui.buttons:not(.vertical) > .basic.teal.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.teal.buttons .button,
.ui.inverted.teal.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #6DFFFF inset !important;
  color: #6DFFFF;
}

.ui.inverted.teal.buttons .button:hover,
.ui.inverted.teal.button:hover,
.ui.inverted.teal.buttons .button:focus,
.ui.inverted.teal.button:focus,
.ui.inverted.teal.buttons .button.active,
.ui.inverted.teal.button.active,
.ui.inverted.teal.buttons .button:active,
.ui.inverted.teal.button:active {
  box-shadow: none !important;
  color: rgba(0, 0, 0, 0.6);
}

.ui.inverted.teal.buttons .button:hover,
.ui.inverted.teal.button:hover {
  background-color: #54ffff;
}

.ui.inverted.teal.buttons .button:focus,
.ui.inverted.teal.button:focus {
  background-color: #44ffff;
}

.ui.inverted.teal.buttons .active.button,
.ui.inverted.teal.active.button {
  background-color: #54ffff;
}

.ui.inverted.teal.buttons .button:active,
.ui.inverted.teal.button:active {
  background-color: #3affff;
}

/* Inverted Basic */

.ui.inverted.teal.basic.buttons .button,
.ui.inverted.teal.buttons .basic.button,
.ui.inverted.teal.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.teal.basic.buttons .button:hover,
.ui.inverted.teal.buttons .basic.button:hover,
.ui.inverted.teal.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #54ffff inset !important;
  color: #6DFFFF !important;
}

.ui.inverted.teal.basic.buttons .button:focus,
.ui.inverted.teal.basic.buttons .button:focus,
.ui.inverted.teal.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #44ffff inset !important;
  color: #6DFFFF !important;
}

.ui.inverted.teal.basic.buttons .active.button,
.ui.inverted.teal.buttons .basic.active.button,
.ui.inverted.teal.basic.active.button {
  box-shadow: 0px 0px 0px 2px #54ffff inset !important;
  color: #6DFFFF !important;
}

.ui.inverted.teal.basic.buttons .button:active,
.ui.inverted.teal.buttons .basic.button:active,
.ui.inverted.teal.basic.button:active {
  box-shadow: 0px 0px 0px 2px #3affff inset !important;
  color: #6DFFFF !important;
}

/*--- Olive ---*/

.ui.olive.buttons .button,
.ui.olive.button {
  background-color: #B5CC18;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.olive.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.olive.buttons .button:hover,
.ui.olive.button:hover {
  background-color: #a7bd0d;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.olive.buttons .button:focus,
.ui.olive.button:focus {
  background-color: #a0b605;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.olive.buttons .button:active,
.ui.olive.button:active {
  background-color: #8d9e13;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.olive.buttons .active.button,
.ui.olive.buttons .active.button:active,
.ui.olive.active.button,
.ui.olive.button .active.button:active {
  background-color: #aac109;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.olive.buttons .button,
.ui.basic.olive.button {
  box-shadow: 0px 0px 0px 1px #B5CC18 inset !important;
  color: #B5CC18 !important;
}

.ui.basic.olive.buttons .button:hover,
.ui.basic.olive.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #a7bd0d inset !important;
  color: #a7bd0d !important;
}

.ui.basic.olive.buttons .button:focus,
.ui.basic.olive.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #a0b605 inset !important;
  color: #a7bd0d !important;
}

.ui.basic.olive.buttons .active.button,
.ui.basic.olive.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #aac109 inset !important;
  color: #8d9e13 !important;
}

.ui.basic.olive.buttons .button:active,
.ui.basic.olive.button:active {
  box-shadow: 0px 0px 0px 1px #8d9e13 inset !important;
  color: #8d9e13 !important;
}

.ui.buttons:not(.vertical) > .basic.olive.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.olive.buttons .button,
.ui.inverted.olive.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #D9E778 inset !important;
  color: #D9E778;
}

.ui.inverted.olive.buttons .button:hover,
.ui.inverted.olive.button:hover,
.ui.inverted.olive.buttons .button:focus,
.ui.inverted.olive.button:focus,
.ui.inverted.olive.buttons .button.active,
.ui.inverted.olive.button.active,
.ui.inverted.olive.buttons .button:active,
.ui.inverted.olive.button:active {
  box-shadow: none !important;
  color: rgba(0, 0, 0, 0.6);
}

.ui.inverted.olive.buttons .button:hover,
.ui.inverted.olive.button:hover {
  background-color: #d8ea5c;
}

.ui.inverted.olive.buttons .button:focus,
.ui.inverted.olive.button:focus {
  background-color: #daef47;
}

.ui.inverted.olive.buttons .active.button,
.ui.inverted.olive.active.button {
  background-color: #daed59;
}

.ui.inverted.olive.buttons .button:active,
.ui.inverted.olive.button:active {
  background-color: #cddf4d;
}

/* Inverted Basic */

.ui.inverted.olive.basic.buttons .button,
.ui.inverted.olive.buttons .basic.button,
.ui.inverted.olive.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.olive.basic.buttons .button:hover,
.ui.inverted.olive.buttons .basic.button:hover,
.ui.inverted.olive.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #d8ea5c inset !important;
  color: #D9E778 !important;
}

.ui.inverted.olive.basic.buttons .button:focus,
.ui.inverted.olive.basic.buttons .button:focus,
.ui.inverted.olive.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #daef47 inset !important;
  color: #D9E778 !important;
}

.ui.inverted.olive.basic.buttons .active.button,
.ui.inverted.olive.buttons .basic.active.button,
.ui.inverted.olive.basic.active.button {
  box-shadow: 0px 0px 0px 2px #daed59 inset !important;
  color: #D9E778 !important;
}

.ui.inverted.olive.basic.buttons .button:active,
.ui.inverted.olive.buttons .basic.button:active,
.ui.inverted.olive.basic.button:active {
  box-shadow: 0px 0px 0px 2px #cddf4d inset !important;
  color: #D9E778 !important;
}

/*--- Yellow ---*/

.ui.yellow.buttons .button,
.ui.yellow.button {
  background-color: #FBBD08;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.yellow.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.yellow.buttons .button:hover,
.ui.yellow.button:hover {
  background-color: #eaae00;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.yellow.buttons .button:focus,
.ui.yellow.button:focus {
  background-color: #daa300;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.yellow.buttons .button:active,
.ui.yellow.button:active {
  background-color: #cd9903;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.yellow.buttons .active.button,
.ui.yellow.buttons .active.button:active,
.ui.yellow.active.button,
.ui.yellow.button .active.button:active {
  background-color: #eaae00;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.yellow.buttons .button,
.ui.basic.yellow.button {
  box-shadow: 0px 0px 0px 1px #FBBD08 inset !important;
  color: #FBBD08 !important;
}

.ui.basic.yellow.buttons .button:hover,
.ui.basic.yellow.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #eaae00 inset !important;
  color: #eaae00 !important;
}

.ui.basic.yellow.buttons .button:focus,
.ui.basic.yellow.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #daa300 inset !important;
  color: #eaae00 !important;
}

.ui.basic.yellow.buttons .active.button,
.ui.basic.yellow.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #eaae00 inset !important;
  color: #cd9903 !important;
}

.ui.basic.yellow.buttons .button:active,
.ui.basic.yellow.button:active {
  box-shadow: 0px 0px 0px 1px #cd9903 inset !important;
  color: #cd9903 !important;
}

.ui.buttons:not(.vertical) > .basic.yellow.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.yellow.buttons .button,
.ui.inverted.yellow.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #FFE21F inset !important;
  color: #FFE21F;
}

.ui.inverted.yellow.buttons .button:hover,
.ui.inverted.yellow.button:hover,
.ui.inverted.yellow.buttons .button:focus,
.ui.inverted.yellow.button:focus,
.ui.inverted.yellow.buttons .button.active,
.ui.inverted.yellow.button.active,
.ui.inverted.yellow.buttons .button:active,
.ui.inverted.yellow.button:active {
  box-shadow: none !important;
  color: rgba(0, 0, 0, 0.6);
}

.ui.inverted.yellow.buttons .button:hover,
.ui.inverted.yellow.button:hover {
  background-color: #ffdf05;
}

.ui.inverted.yellow.buttons .button:focus,
.ui.inverted.yellow.button:focus {
  background-color: #f5d500;
}

.ui.inverted.yellow.buttons .active.button,
.ui.inverted.yellow.active.button {
  background-color: #ffdf05;
}

.ui.inverted.yellow.buttons .button:active,
.ui.inverted.yellow.button:active {
  background-color: #ebcd00;
}

/* Inverted Basic */

.ui.inverted.yellow.basic.buttons .button,
.ui.inverted.yellow.buttons .basic.button,
.ui.inverted.yellow.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.yellow.basic.buttons .button:hover,
.ui.inverted.yellow.buttons .basic.button:hover,
.ui.inverted.yellow.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ffdf05 inset !important;
  color: #FFE21F !important;
}

.ui.inverted.yellow.basic.buttons .button:focus,
.ui.inverted.yellow.basic.buttons .button:focus,
.ui.inverted.yellow.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #f5d500 inset !important;
  color: #FFE21F !important;
}

.ui.inverted.yellow.basic.buttons .active.button,
.ui.inverted.yellow.buttons .basic.active.button,
.ui.inverted.yellow.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ffdf05 inset !important;
  color: #FFE21F !important;
}

.ui.inverted.yellow.basic.buttons .button:active,
.ui.inverted.yellow.buttons .basic.button:active,
.ui.inverted.yellow.basic.button:active {
  box-shadow: 0px 0px 0px 2px #ebcd00 inset !important;
  color: #FFE21F !important;
}

/*-------------------
       Primary
--------------------*/

/*--- Standard ---*/

.ui.primary.buttons .button,
.ui.primary.button {
  background-color: #2185D0;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.primary.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.primary.buttons .button:hover,
.ui.primary.button:hover {
  background-color: #1678c2;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.primary.buttons .button:focus,
.ui.primary.button:focus {
  background-color: #0d71bb;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.primary.buttons .button:active,
.ui.primary.button:active {
  background-color: #1a69a4;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.primary.buttons .active.button,
.ui.primary.buttons .active.button:active,
.ui.primary.active.button,
.ui.primary.button .active.button:active {
  background-color: #1279c6;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.primary.buttons .button,
.ui.basic.primary.button {
  box-shadow: 0px 0px 0px 1px #2185D0 inset !important;
  color: #2185D0 !important;
}

.ui.basic.primary.buttons .button:hover,
.ui.basic.primary.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #1678c2 inset !important;
  color: #1678c2 !important;
}

.ui.basic.primary.buttons .button:focus,
.ui.basic.primary.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #0d71bb inset !important;
  color: #1678c2 !important;
}

.ui.basic.primary.buttons .active.button,
.ui.basic.primary.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #1279c6 inset !important;
  color: #1a69a4 !important;
}

.ui.basic.primary.buttons .button:active,
.ui.basic.primary.button:active {
  box-shadow: 0px 0px 0px 1px #1a69a4 inset !important;
  color: #1a69a4 !important;
}

.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.primary.buttons .button,
.ui.inverted.primary.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #54C8FF inset !important;
  color: #54C8FF;
}

.ui.inverted.primary.buttons .button:hover,
.ui.inverted.primary.button:hover,
.ui.inverted.primary.buttons .button:focus,
.ui.inverted.primary.button:focus,
.ui.inverted.primary.buttons .button.active,
.ui.inverted.primary.button.active,
.ui.inverted.primary.buttons .button:active,
.ui.inverted.primary.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.primary.buttons .button:hover,
.ui.inverted.primary.button:hover {
  background-color: #3ac0ff;
}

.ui.inverted.primary.buttons .button:focus,
.ui.inverted.primary.button:focus {
  background-color: #2bbbff;
}

.ui.inverted.primary.buttons .active.button,
.ui.inverted.primary.active.button {
  background-color: #3ac0ff;
}

.ui.inverted.primary.buttons .button:active,
.ui.inverted.primary.button:active {
  background-color: #21b8ff;
}

/* Inverted Basic */

.ui.inverted.primary.basic.buttons .button,
.ui.inverted.primary.buttons .basic.button,
.ui.inverted.primary.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.primary.basic.buttons .button:hover,
.ui.inverted.primary.buttons .basic.button:hover,
.ui.inverted.primary.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.primary.basic.buttons .button:focus,
.ui.inverted.primary.basic.buttons .button:focus,
.ui.inverted.primary.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #2bbbff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.primary.basic.buttons .active.button,
.ui.inverted.primary.buttons .basic.active.button,
.ui.inverted.primary.basic.active.button {
  box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
  color: #54C8FF !important;
}

.ui.inverted.primary.basic.buttons .button:active,
.ui.inverted.primary.buttons .basic.button:active,
.ui.inverted.primary.basic.button:active {
  box-shadow: 0px 0px 0px 2px #21b8ff inset !important;
  color: #54C8FF !important;
}

/*-------------------
      Secondary
--------------------*/

/* Standard */

.ui.secondary.buttons .button,
.ui.secondary.button {
  background-color: #1B1C1D;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.secondary.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.secondary.buttons .button:hover,
.ui.secondary.button:hover {
  background-color: #27292a;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.secondary.buttons .button:focus,
.ui.secondary.button:focus {
  background-color: #2e3032;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.secondary.buttons .button:active,
.ui.secondary.button:active {
  background-color: #343637;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.secondary.buttons .active.button,
.ui.secondary.buttons .active.button:active,
.ui.secondary.active.button,
.ui.secondary.button .active.button:active {
  background-color: #27292a;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.secondary.buttons .button,
.ui.basic.secondary.button {
  box-shadow: 0px 0px 0px 1px #1B1C1D inset !important;
  color: #1B1C1D !important;
}

.ui.basic.secondary.buttons .button:hover,
.ui.basic.secondary.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #27292a inset !important;
  color: #27292a !important;
}

.ui.basic.secondary.buttons .button:focus,
.ui.basic.secondary.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #2e3032 inset !important;
  color: #27292a !important;
}

.ui.basic.secondary.buttons .active.button,
.ui.basic.secondary.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #27292a inset !important;
  color: #343637 !important;
}

.ui.basic.secondary.buttons .button:active,
.ui.basic.secondary.button:active {
  box-shadow: 0px 0px 0px 1px #343637 inset !important;
  color: #343637 !important;
}

.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) {
  margin-left: -1px;
}

/* Inverted */

.ui.inverted.secondary.buttons .button,
.ui.inverted.secondary.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #545454 inset !important;
  color: #545454;
}

.ui.inverted.secondary.buttons .button:hover,
.ui.inverted.secondary.button:hover,
.ui.inverted.secondary.buttons .button:focus,
.ui.inverted.secondary.button:focus,
.ui.inverted.secondary.buttons .button.active,
.ui.inverted.secondary.button.active,
.ui.inverted.secondary.buttons .button:active,
.ui.inverted.secondary.button:active {
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.inverted.secondary.buttons .button:hover,
.ui.inverted.secondary.button:hover {
  background-color: #616161;
}

.ui.inverted.secondary.buttons .button:focus,
.ui.inverted.secondary.button:focus {
  background-color: #686868;
}

.ui.inverted.secondary.buttons .active.button,
.ui.inverted.secondary.active.button {
  background-color: #616161;
}

.ui.inverted.secondary.buttons .button:active,
.ui.inverted.secondary.button:active {
  background-color: #6e6e6e;
}

/* Inverted Basic */

.ui.inverted.secondary.basic.buttons .button,
.ui.inverted.secondary.buttons .basic.button,
.ui.inverted.secondary.basic.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
  color: #FFFFFF !important;
}

.ui.inverted.secondary.basic.buttons .button:hover,
.ui.inverted.secondary.buttons .basic.button:hover,
.ui.inverted.secondary.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #616161 inset !important;
  color: #545454 !important;
}

.ui.inverted.secondary.basic.buttons .button:focus,
.ui.inverted.secondary.basic.buttons .button:focus,
.ui.inverted.secondary.basic.button:focus {
  box-shadow: 0px 0px 0px 2px #686868 inset !important;
  color: #545454 !important;
}

.ui.inverted.secondary.basic.buttons .active.button,
.ui.inverted.secondary.buttons .basic.active.button,
.ui.inverted.secondary.basic.active.button {
  box-shadow: 0px 0px 0px 2px #616161 inset !important;
  color: #545454 !important;
}

.ui.inverted.secondary.basic.buttons .button:active,
.ui.inverted.secondary.buttons .basic.button:active,
.ui.inverted.secondary.basic.button:active {
  box-shadow: 0px 0px 0px 2px #6e6e6e inset !important;
  color: #545454 !important;
}

/*---------------
    Positive
----------------*/

/* Standard */

.ui.positive.buttons .button,
.ui.positive.button {
  background-color: #21BA45;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.positive.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.positive.buttons .button:hover,
.ui.positive.button:hover {
  background-color: #16ab39;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.positive.buttons .button:focus,
.ui.positive.button:focus {
  background-color: #0ea432;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.positive.buttons .button:active,
.ui.positive.button:active {
  background-color: #198f35;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.positive.buttons .active.button,
.ui.positive.buttons .active.button:active,
.ui.positive.active.button,
.ui.positive.button .active.button:active {
  background-color: #13ae38;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.positive.buttons .button,
.ui.basic.positive.button {
  box-shadow: 0px 0px 0px 1px #21BA45 inset !important;
  color: #21BA45 !important;
}

.ui.basic.positive.buttons .button:hover,
.ui.basic.positive.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #16ab39 inset !important;
  color: #16ab39 !important;
}

.ui.basic.positive.buttons .button:focus,
.ui.basic.positive.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #0ea432 inset !important;
  color: #16ab39 !important;
}

.ui.basic.positive.buttons .active.button,
.ui.basic.positive.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #13ae38 inset !important;
  color: #198f35 !important;
}

.ui.basic.positive.buttons .button:active,
.ui.basic.positive.button:active {
  box-shadow: 0px 0px 0px 1px #198f35 inset !important;
  color: #198f35 !important;
}

.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) {
  margin-left: -1px;
}

/*---------------
     Negative
----------------*/

/* Standard */

.ui.negative.buttons .button,
.ui.negative.button {
  background-color: #DB2828;
  color: #FFFFFF;
  text-shadow: none;
  background-image: none;
}

.ui.negative.button {
  box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.negative.buttons .button:hover,
.ui.negative.button:hover {
  background-color: #d01919;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.negative.buttons .button:focus,
.ui.negative.button:focus {
  background-color: #ca1010;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.negative.buttons .button:active,
.ui.negative.button:active {
  background-color: #b21e1e;
  color: #FFFFFF;
  text-shadow: none;
}

.ui.negative.buttons .active.button,
.ui.negative.buttons .active.button:active,
.ui.negative.active.button,
.ui.negative.button .active.button:active {
  background-color: #d41515;
  color: #FFFFFF;
  text-shadow: none;
}

/* Basic */

.ui.basic.negative.buttons .button,
.ui.basic.negative.button {
  box-shadow: 0px 0px 0px 1px #DB2828 inset !important;
  color: #DB2828 !important;
}

.ui.basic.negative.buttons .button:hover,
.ui.basic.negative.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #d01919 inset !important;
  color: #d01919 !important;
}

.ui.basic.negative.buttons .button:focus,
.ui.basic.negative.button:focus {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #ca1010 inset !important;
  color: #d01919 !important;
}

.ui.basic.negative.buttons .active.button,
.ui.basic.negative.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 1px #d41515 inset !important;
  color: #b21e1e !important;
}

.ui.basic.negative.buttons .button:active,
.ui.basic.negative.button:active {
  box-shadow: 0px 0px 0px 1px #b21e1e inset !important;
  color: #b21e1e !important;
}

.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) {
  margin-left: -1px;
}

/*******************************
            Groups
*******************************/

.ui.buttons {
  display: inline-flex;
  flex-direction: row;
  font-size: 0em;
  vertical-align: baseline;
  margin: 0em 0.25em 0em 0em;
}

.ui.buttons:not(.basic):not(.inverted) {
  box-shadow: none;
}

/* Clearfix */

.ui.buttons:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* Standard Group */

.ui.buttons .button {
  flex: 1 0 auto;
  margin: 0em;
  border-radius: 0em;
  margin: 0px 0px 0px 0px;
}

.ui.buttons > .ui.button:not(.basic):not(.inverted),
.ui.buttons:not(.basic):not(.inverted) > .button {
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}

.ui.buttons .button:first-child {
  border-left: none;
  margin-left: 0em;
  border-top-left-radius: 0.28571429rem;
  border-bottom-left-radius: 0.28571429rem;
}

.ui.buttons .button:last-child {
  border-top-right-radius: 0.28571429rem;
  border-bottom-right-radius: 0.28571429rem;
}

/* Vertical  Style */

.ui.vertical.buttons {
  display: inline-flex;
  flex-direction: column;
}

.ui.vertical.buttons .button {
  display: block;
  float: none;
  width: 100%;
  margin: 0px 0px 0px 0px;
  box-shadow: none;
  border-radius: 0em;
}

.ui.vertical.buttons .button:first-child {
  border-top-left-radius: 0.28571429rem;
  border-top-right-radius: 0.28571429rem;
}

.ui.vertical.buttons .button:last-child {
  margin-bottom: 0px;
  border-bottom-left-radius: 0.28571429rem;
  border-bottom-right-radius: 0.28571429rem;
}

.ui.vertical.buttons .button:only-child {
  border-radius: 0.28571429rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Container
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Container
*******************************/

/* All Sizes */

.ui.container {
  display: block;
  max-width: 100% !important;
}

/* Mobile */

@media only screen and (max-width: 767px) {
  .ui.container {
    width: auto !important;
    margin-left: 1em !important;
    margin-right: 1em !important;
  }

  .ui.grid.container {
    width: auto !important;
  }

  .ui.relaxed.grid.container {
    width: auto !important;
  }

  .ui.very.relaxed.grid.container {
    width: auto !important;
  }
}

/* Tablet */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.container {
    width: 723px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ui.grid.container {
    width: calc( 723px  +  2rem ) !important;
  }

  .ui.relaxed.grid.container {
    width: calc( 723px  +  3rem ) !important;
  }

  .ui.very.relaxed.grid.container {
    width: calc( 723px  +  5rem ) !important;
  }
}

/* Small Monitor */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ui.container {
    width: 933px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ui.grid.container {
    width: calc( 933px  +  2rem ) !important;
  }

  .ui.relaxed.grid.container {
    width: calc( 933px  +  3rem ) !important;
  }

  .ui.very.relaxed.grid.container {
    width: calc( 933px  +  5rem ) !important;
  }
}

/* Large Monitor */

@media only screen and (min-width: 1200px) {
  .ui.container {
    width: 1127px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ui.grid.container {
    width: calc( 1127px  +  2rem ) !important;
  }

  .ui.relaxed.grid.container {
    width: calc( 1127px  +  3rem ) !important;
  }

  .ui.very.relaxed.grid.container {
    width: calc( 1127px  +  5rem ) !important;
  }
}

/*******************************
             Types
*******************************/

/* Text Container */

.ui.text.container {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  max-width: 700px !important;
  line-height: 1.5;
}

.ui.text.container {
  font-size: 1.14285714rem;
}

/* Fluid */

.ui.fluid.container {
  width: 100%;
}

/*******************************
           Variations
*******************************/

.ui[class*="left aligned"].container {
  text-align: left;
}

.ui[class*="center aligned"].container {
  text-align: center;
}

.ui[class*="right aligned"].container {
  text-align: right;
}

.ui.justified.container {
  text-align: justify;
  -webkit-hyphens: auto;
  hyphens: auto;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Divider
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Divider
*******************************/

.ui.divider {
  margin: 1rem 0rem;
  line-height: 1;
  height: 0em;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(0, 0, 0, 0.85);
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/*--------------
      Basic
---------------*/

.ui.divider:not(.vertical):not(.horizontal) {
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/*--------------
    Coupling
---------------*/

/* Allow divider between each column row */

.ui.grid > .column + .divider,
.ui.grid > .row > .column + .divider {
  left: auto;
}

/*--------------
   Horizontal
---------------*/

.ui.horizontal.divider {
  display: table;
  white-space: nowrap;
  height: auto;
  margin: '';
  line-height: 1;
  text-align: center;
}

.ui.horizontal.divider:before,
.ui.horizontal.divider:after {
  content: '';
  display: table-cell;
  position: relative;
  top: 50%;
  width: 50%;
  background-repeat: no-repeat;
}

.ui.horizontal.divider:before {
  background-position: right 1em top 50%;
}

.ui.horizontal.divider:after {
  background-position: left 1em top 50%;
}

/*--------------
    Vertical
---------------*/

.ui.vertical.divider {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  margin: 0rem;
  padding: 0em;
  width: auto;
  height: 50%;
  line-height: 0em;
  text-align: center;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.ui.vertical.divider:before,
.ui.vertical.divider:after {
  position: absolute;
  left: 50%;
  content: '';
  z-index: 3;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  width: 0%;
  height: calc(100% -  1rem );
}

.ui.vertical.divider:before {
  top: -100%;
}

.ui.vertical.divider:after {
  top: auto;
  bottom: 0px;
}

/* Inside grid */

@media only screen and (max-width: 767px) {
  .ui.stackable.grid .ui.vertical.divider,
  .ui.grid .stackable.row .ui.vertical.divider {
    display: table;
    white-space: nowrap;
    height: auto;
    margin: '';
    overflow: hidden;
    line-height: 1;
    text-align: center;
    position: static;
    top: 0;
    left: 0;
    -webkit-transform: none;
    transform: none;
  }

  .ui.stackable.grid .ui.vertical.divider:before,
  .ui.grid .stackable.row .ui.vertical.divider:before,
  .ui.stackable.grid .ui.vertical.divider:after,
  .ui.grid .stackable.row .ui.vertical.divider:after {
    position: static;
    left: 0;
    border-left: none;
    border-right: none;
    content: '';
    display: table-cell;
    position: relative;
    top: 50%;
    width: 50%;
    background-repeat: no-repeat;
  }

  .ui.stackable.grid .ui.vertical.divider:before,
  .ui.grid .stackable.row .ui.vertical.divider:before {
    background-position: right 1em top 50%;
  }

  .ui.stackable.grid .ui.vertical.divider:after,
  .ui.grid .stackable.row .ui.vertical.divider:after {
    background-position: left 1em top 50%;
  }
}

/*--------------
      Icon
---------------*/

.ui.divider > .icon {
  margin: 0rem;
  font-size: 1rem;
  height: 1em;
  vertical-align: middle;
}

/*******************************
          Variations
*******************************/

/*--------------
    Hidden
---------------*/

.ui.hidden.divider {
  border-color: transparent !important;
}

.ui.hidden.divider:before,
.ui.hidden.divider:after {
  display: none;
}

/*--------------
    Inverted
---------------*/

.ui.divider.inverted,
.ui.vertical.inverted.divider,
.ui.horizontal.inverted.divider {
  color: #FFFFFF;
}

.ui.divider.inverted,
.ui.divider.inverted:after,
.ui.divider.inverted:before {
  border-top-color: rgba(34, 36, 38, 0.15) !important;
  border-left-color: rgba(34, 36, 38, 0.15) !important;
  border-bottom-color: rgba(255, 255, 255, 0.15) !important;
  border-right-color: rgba(255, 255, 255, 0.15) !important;
}

/*--------------
    Fitted
---------------*/

.ui.fitted.divider {
  margin: 0em;
}

/*--------------
    Clearing
---------------*/

.ui.clearing.divider {
  clear: both;
}

/*--------------
    Section
---------------*/

.ui.section.divider {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

/*--------------
     Sizes
---------------*/

.ui.divider {
  font-size: 1rem;
}

/*******************************
         Theme Overrides
*******************************/

.ui.horizontal.divider:before,
.ui.horizontal.divider:after {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC');
}

@media only screen and (max-width: 767px) {
  .ui.stackable.grid .ui.vertical.divider:before,
  .ui.grid .stackable.row .ui.vertical.divider:before,
  .ui.stackable.grid .ui.vertical.divider:after,
  .ui.grid .stackable.row .ui.vertical.divider:after {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC');
  }
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Flag
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Flag
*******************************/

i.flag:not(.icon) {
  display: inline-block;
  width: 16px;
  height: 11px;
  line-height: 11px;
  vertical-align: baseline;
  margin: 0em 0.5em 0em 0em;
  text-decoration: inherit;
  speak: none;
  font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Sprite */

i.flag:not(.icon):before {
  display: inline-block;
  content: '';
  background: url("./themes/default/assets/images/flags.png") no-repeat -108px -1976px;
  width: 16px;
  height: 11px;
}

/* Flag Sprite Based On http://www.famfamfam.com/lab/icons/flags/ */

/*******************************
         Theme Overrides
*******************************/

i.flag.ad:before,
i.flag.andorra:before {
  background-position: 0px 0px;
}

i.flag.ae:before,
i.flag.united.arab.emirates:before,
i.flag.uae:before {
  background-position: 0px -26px;
}

i.flag.af:before,
i.flag.afghanistan:before {
  background-position: 0px -52px;
}

i.flag.ag:before,
i.flag.antigua:before {
  background-position: 0px -78px;
}

i.flag.ai:before,
i.flag.anguilla:before {
  background-position: 0px -104px;
}

i.flag.al:before,
i.flag.albania:before {
  background-position: 0px -130px;
}

i.flag.am:before,
i.flag.armenia:before {
  background-position: 0px -156px;
}

i.flag.an:before,
i.flag.netherlands.antilles:before {
  background-position: 0px -182px;
}

i.flag.ao:before,
i.flag.angola:before {
  background-position: 0px -208px;
}

i.flag.ar:before,
i.flag.argentina:before {
  background-position: 0px -234px;
}

i.flag.as:before,
i.flag.american.samoa:before {
  background-position: 0px -260px;
}

i.flag.at:before,
i.flag.austria:before {
  background-position: 0px -286px;
}

i.flag.au:before,
i.flag.australia:before {
  background-position: 0px -312px;
}

i.flag.aw:before,
i.flag.aruba:before {
  background-position: 0px -338px;
}

i.flag.ax:before,
i.flag.aland.islands:before {
  background-position: 0px -364px;
}

i.flag.az:before,
i.flag.azerbaijan:before {
  background-position: 0px -390px;
}

i.flag.ba:before,
i.flag.bosnia:before {
  background-position: 0px -416px;
}

i.flag.bb:before,
i.flag.barbados:before {
  background-position: 0px -442px;
}

i.flag.bd:before,
i.flag.bangladesh:before {
  background-position: 0px -468px;
}

i.flag.be:before,
i.flag.belgium:before {
  background-position: 0px -494px;
}

i.flag.bf:before,
i.flag.burkina.faso:before {
  background-position: 0px -520px;
}

i.flag.bg:before,
i.flag.bulgaria:before {
  background-position: 0px -546px;
}

i.flag.bh:before,
i.flag.bahrain:before {
  background-position: 0px -572px;
}

i.flag.bi:before,
i.flag.burundi:before {
  background-position: 0px -598px;
}

i.flag.bj:before,
i.flag.benin:before {
  background-position: 0px -624px;
}

i.flag.bm:before,
i.flag.bermuda:before {
  background-position: 0px -650px;
}

i.flag.bn:before,
i.flag.brunei:before {
  background-position: 0px -676px;
}

i.flag.bo:before,
i.flag.bolivia:before {
  background-position: 0px -702px;
}

i.flag.br:before,
i.flag.brazil:before {
  background-position: 0px -728px;
}

i.flag.bs:before,
i.flag.bahamas:before {
  background-position: 0px -754px;
}

i.flag.bt:before,
i.flag.bhutan:before {
  background-position: 0px -780px;
}

i.flag.bv:before,
i.flag.bouvet.island:before {
  background-position: 0px -806px;
}

i.flag.bw:before,
i.flag.botswana:before {
  background-position: 0px -832px;
}

i.flag.by:before,
i.flag.belarus:before {
  background-position: 0px -858px;
}

i.flag.bz:before,
i.flag.belize:before {
  background-position: 0px -884px;
}

i.flag.ca:before,
i.flag.canada:before {
  background-position: 0px -910px;
}

i.flag.cc:before,
i.flag.cocos.islands:before {
  background-position: 0px -962px;
}

i.flag.cd:before,
i.flag.congo:before {
  background-position: 0px -988px;
}

i.flag.cf:before,
i.flag.central.african.republic:before {
  background-position: 0px -1014px;
}

i.flag.cg:before,
i.flag.congo.brazzaville:before {
  background-position: 0px -1040px;
}

i.flag.ch:before,
i.flag.switzerland:before {
  background-position: 0px -1066px;
}

i.flag.ci:before,
i.flag.cote.divoire:before {
  background-position: 0px -1092px;
}

i.flag.ck:before,
i.flag.cook.islands:before {
  background-position: 0px -1118px;
}

i.flag.cl:before,
i.flag.chile:before {
  background-position: 0px -1144px;
}

i.flag.cm:before,
i.flag.cameroon:before {
  background-position: 0px -1170px;
}

i.flag.cn:before,
i.flag.china:before {
  background-position: 0px -1196px;
}

i.flag.co:before,
i.flag.colombia:before {
  background-position: 0px -1222px;
}

i.flag.cr:before,
i.flag.costa.rica:before {
  background-position: 0px -1248px;
}

i.flag.cs:before,
i.flag.serbia:before {
  background-position: 0px -1274px;
}

i.flag.cu:before,
i.flag.cuba:before {
  background-position: 0px -1300px;
}

i.flag.cv:before,
i.flag.cape.verde:before {
  background-position: 0px -1326px;
}

i.flag.cx:before,
i.flag.christmas.island:before {
  background-position: 0px -1352px;
}

i.flag.cy:before,
i.flag.cyprus:before {
  background-position: 0px -1378px;
}

i.flag.cz:before,
i.flag.czech.republic:before {
  background-position: 0px -1404px;
}

i.flag.de:before,
i.flag.germany:before {
  background-position: 0px -1430px;
}

i.flag.dj:before,
i.flag.djibouti:before {
  background-position: 0px -1456px;
}

i.flag.dk:before,
i.flag.denmark:before {
  background-position: 0px -1482px;
}

i.flag.dm:before,
i.flag.dominica:before {
  background-position: 0px -1508px;
}

i.flag.do:before,
i.flag.dominican.republic:before {
  background-position: 0px -1534px;
}

i.flag.dz:before,
i.flag.algeria:before {
  background-position: 0px -1560px;
}

i.flag.ec:before,
i.flag.ecuador:before {
  background-position: 0px -1586px;
}

i.flag.ee:before,
i.flag.estonia:before {
  background-position: 0px -1612px;
}

i.flag.eg:before,
i.flag.egypt:before {
  background-position: 0px -1638px;
}

i.flag.eh:before,
i.flag.western.sahara:before {
  background-position: 0px -1664px;
}

i.flag.gb.eng:before,
i.flag.england:before {
  background-position: 0px -1690px;
}

i.flag.er:before,
i.flag.eritrea:before {
  background-position: 0px -1716px;
}

i.flag.es:before,
i.flag.spain:before {
  background-position: 0px -1742px;
}

i.flag.et:before,
i.flag.ethiopia:before {
  background-position: 0px -1768px;
}

i.flag.eu:before,
i.flag.european.union:before {
  background-position: 0px -1794px;
}

i.flag.fi:before,
i.flag.finland:before {
  background-position: 0px -1846px;
}

i.flag.fj:before,
i.flag.fiji:before {
  background-position: 0px -1872px;
}

i.flag.fk:before,
i.flag.falkland.islands:before {
  background-position: 0px -1898px;
}

i.flag.fm:before,
i.flag.micronesia:before {
  background-position: 0px -1924px;
}

i.flag.fo:before,
i.flag.faroe.islands:before {
  background-position: 0px -1950px;
}

i.flag.fr:before,
i.flag.france:before {
  background-position: 0px -1976px;
}

i.flag.ga:before,
i.flag.gabon:before {
  background-position: -36px 0px;
}

i.flag.gb:before,
i.flag.uk:before,
i.flag.united.kingdom:before {
  background-position: -36px -26px;
}

i.flag.gd:before,
i.flag.grenada:before {
  background-position: -36px -52px;
}

i.flag.ge:before,
i.flag.georgia:before {
  background-position: -36px -78px;
}

i.flag.gf:before,
i.flag.french.guiana:before {
  background-position: -36px -104px;
}

i.flag.gh:before,
i.flag.ghana:before {
  background-position: -36px -130px;
}

i.flag.gi:before,
i.flag.gibraltar:before {
  background-position: -36px -156px;
}

i.flag.gl:before,
i.flag.greenland:before {
  background-position: -36px -182px;
}

i.flag.gm:before,
i.flag.gambia:before {
  background-position: -36px -208px;
}

i.flag.gn:before,
i.flag.guinea:before {
  background-position: -36px -234px;
}

i.flag.gp:before,
i.flag.guadeloupe:before {
  background-position: -36px -260px;
}

i.flag.gq:before,
i.flag.equatorial.guinea:before {
  background-position: -36px -286px;
}

i.flag.gr:before,
i.flag.greece:before {
  background-position: -36px -312px;
}

i.flag.gs:before,
i.flag.sandwich.islands:before {
  background-position: -36px -338px;
}

i.flag.gt:before,
i.flag.guatemala:before {
  background-position: -36px -364px;
}

i.flag.gu:before,
i.flag.guam:before {
  background-position: -36px -390px;
}

i.flag.gw:before,
i.flag.guinea-bissau:before {
  background-position: -36px -416px;
}

i.flag.gy:before,
i.flag.guyana:before {
  background-position: -36px -442px;
}

i.flag.hk:before,
i.flag.hong.kong:before {
  background-position: -36px -468px;
}

i.flag.hm:before,
i.flag.heard.island:before {
  background-position: -36px -494px;
}

i.flag.hn:before,
i.flag.honduras:before {
  background-position: -36px -520px;
}

i.flag.hr:before,
i.flag.croatia:before {
  background-position: -36px -546px;
}

i.flag.ht:before,
i.flag.haiti:before {
  background-position: -36px -572px;
}

i.flag.hu:before,
i.flag.hungary:before {
  background-position: -36px -598px;
}

i.flag.id:before,
i.flag.indonesia:before {
  background-position: -36px -624px;
}

i.flag.ie:before,
i.flag.ireland:before {
  background-position: -36px -650px;
}

i.flag.il:before,
i.flag.israel:before {
  background-position: -36px -676px;
}

i.flag.in:before,
i.flag.india:before {
  background-position: -36px -702px;
}

i.flag.io:before,
i.flag.indian.ocean.territory:before {
  background-position: -36px -728px;
}

i.flag.iq:before,
i.flag.iraq:before {
  background-position: -36px -754px;
}

i.flag.ir:before,
i.flag.iran:before {
  background-position: -36px -780px;
}

i.flag.is:before,
i.flag.iceland:before {
  background-position: -36px -806px;
}

i.flag.it:before,
i.flag.italy:before {
  background-position: -36px -832px;
}

i.flag.jm:before,
i.flag.jamaica:before {
  background-position: -36px -858px;
}

i.flag.jo:before,
i.flag.jordan:before {
  background-position: -36px -884px;
}

i.flag.jp:before,
i.flag.japan:before {
  background-position: -36px -910px;
}

i.flag.ke:before,
i.flag.kenya:before {
  background-position: -36px -936px;
}

i.flag.kg:before,
i.flag.kyrgyzstan:before {
  background-position: -36px -962px;
}

i.flag.kh:before,
i.flag.cambodia:before {
  background-position: -36px -988px;
}

i.flag.ki:before,
i.flag.kiribati:before {
  background-position: -36px -1014px;
}

i.flag.km:before,
i.flag.comoros:before {
  background-position: -36px -1040px;
}

i.flag.kn:before,
i.flag.saint.kitts.and.nevis:before {
  background-position: -36px -1066px;
}

i.flag.kp:before,
i.flag.north.korea:before {
  background-position: -36px -1092px;
}

i.flag.kr:before,
i.flag.south.korea:before {
  background-position: -36px -1118px;
}

i.flag.kw:before,
i.flag.kuwait:before {
  background-position: -36px -1144px;
}

i.flag.ky:before,
i.flag.cayman.islands:before {
  background-position: -36px -1170px;
}

i.flag.kz:before,
i.flag.kazakhstan:before {
  background-position: -36px -1196px;
}

i.flag.la:before,
i.flag.laos:before {
  background-position: -36px -1222px;
}

i.flag.lb:before,
i.flag.lebanon:before {
  background-position: -36px -1248px;
}

i.flag.lc:before,
i.flag.saint.lucia:before {
  background-position: -36px -1274px;
}

i.flag.li:before,
i.flag.liechtenstein:before {
  background-position: -36px -1300px;
}

i.flag.lk:before,
i.flag.sri.lanka:before {
  background-position: -36px -1326px;
}

i.flag.lr:before,
i.flag.liberia:before {
  background-position: -36px -1352px;
}

i.flag.ls:before,
i.flag.lesotho:before {
  background-position: -36px -1378px;
}

i.flag.lt:before,
i.flag.lithuania:before {
  background-position: -36px -1404px;
}

i.flag.lu:before,
i.flag.luxembourg:before {
  background-position: -36px -1430px;
}

i.flag.lv:before,
i.flag.latvia:before {
  background-position: -36px -1456px;
}

i.flag.ly:before,
i.flag.libya:before {
  background-position: -36px -1482px;
}

i.flag.ma:before,
i.flag.morocco:before {
  background-position: -36px -1508px;
}

i.flag.mc:before,
i.flag.monaco:before {
  background-position: -36px -1534px;
}

i.flag.md:before,
i.flag.moldova:before {
  background-position: -36px -1560px;
}

i.flag.me:before,
i.flag.montenegro:before {
  background-position: -36px -1586px;
}

i.flag.mg:before,
i.flag.madagascar:before {
  background-position: -36px -1613px;
}

i.flag.mh:before,
i.flag.marshall.islands:before {
  background-position: -36px -1639px;
}

i.flag.mk:before,
i.flag.macedonia:before {
  background-position: -36px -1665px;
}

i.flag.ml:before,
i.flag.mali:before {
  background-position: -36px -1691px;
}

i.flag.mm:before,
i.flag.myanmar:before,
i.flag.burma:before {
  background-position: -73px -1821px;
}

i.flag.mn:before,
i.flag.mongolia:before {
  background-position: -36px -1743px;
}

i.flag.mo:before,
i.flag.macau:before {
  background-position: -36px -1769px;
}

i.flag.mp:before,
i.flag.northern.mariana.islands:before {
  background-position: -36px -1795px;
}

i.flag.mq:before,
i.flag.martinique:before {
  background-position: -36px -1821px;
}

i.flag.mr:before,
i.flag.mauritania:before {
  background-position: -36px -1847px;
}

i.flag.ms:before,
i.flag.montserrat:before {
  background-position: -36px -1873px;
}

i.flag.mt:before,
i.flag.malta:before {
  background-position: -36px -1899px;
}

i.flag.mu:before,
i.flag.mauritius:before {
  background-position: -36px -1925px;
}

i.flag.mv:before,
i.flag.maldives:before {
  background-position: -36px -1951px;
}

i.flag.mw:before,
i.flag.malawi:before {
  background-position: -36px -1977px;
}

i.flag.mx:before,
i.flag.mexico:before {
  background-position: -72px 0px;
}

i.flag.my:before,
i.flag.malaysia:before {
  background-position: -72px -26px;
}

i.flag.mz:before,
i.flag.mozambique:before {
  background-position: -72px -52px;
}

i.flag.na:before,
i.flag.namibia:before {
  background-position: -72px -78px;
}

i.flag.nc:before,
i.flag.new.caledonia:before {
  background-position: -72px -104px;
}

i.flag.ne:before,
i.flag.niger:before {
  background-position: -72px -130px;
}

i.flag.nf:before,
i.flag.norfolk.island:before {
  background-position: -72px -156px;
}

i.flag.ng:before,
i.flag.nigeria:before {
  background-position: -72px -182px;
}

i.flag.ni:before,
i.flag.nicaragua:before {
  background-position: -72px -208px;
}

i.flag.nl:before,
i.flag.netherlands:before {
  background-position: -72px -234px;
}

i.flag.no:before,
i.flag.norway:before {
  background-position: -72px -260px;
}

i.flag.np:before,
i.flag.nepal:before {
  background-position: -72px -286px;
}

i.flag.nr:before,
i.flag.nauru:before {
  background-position: -72px -312px;
}

i.flag.nu:before,
i.flag.niue:before {
  background-position: -72px -338px;
}

i.flag.nz:before,
i.flag.new.zealand:before {
  background-position: -72px -364px;
}

i.flag.om:before,
i.flag.oman:before {
  background-position: -72px -390px;
}

i.flag.pa:before,
i.flag.panama:before {
  background-position: -72px -416px;
}

i.flag.pe:before,
i.flag.peru:before {
  background-position: -72px -442px;
}

i.flag.pf:before,
i.flag.french.polynesia:before {
  background-position: -72px -468px;
}

i.flag.pg:before,
i.flag.new.guinea:before {
  background-position: -72px -494px;
}

i.flag.ph:before,
i.flag.philippines:before {
  background-position: -72px -520px;
}

i.flag.pk:before,
i.flag.pakistan:before {
  background-position: -72px -546px;
}

i.flag.pl:before,
i.flag.poland:before {
  background-position: -72px -572px;
}

i.flag.pm:before,
i.flag.saint.pierre:before {
  background-position: -72px -598px;
}

i.flag.pn:before,
i.flag.pitcairn.islands:before {
  background-position: -72px -624px;
}

i.flag.pr:before,
i.flag.puerto.rico:before {
  background-position: -72px -650px;
}

i.flag.ps:before,
i.flag.palestine:before {
  background-position: -72px -676px;
}

i.flag.pt:before,
i.flag.portugal:before {
  background-position: -72px -702px;
}

i.flag.pw:before,
i.flag.palau:before {
  background-position: -72px -728px;
}

i.flag.py:before,
i.flag.paraguay:before {
  background-position: -72px -754px;
}

i.flag.qa:before,
i.flag.qatar:before {
  background-position: -72px -780px;
}

i.flag.re:before,
i.flag.reunion:before {
  background-position: -72px -806px;
}

i.flag.ro:before,
i.flag.romania:before {
  background-position: -72px -832px;
}

i.flag.rs:before,
i.flag.serbia:before {
  background-position: -72px -858px;
}

i.flag.ru:before,
i.flag.russia:before {
  background-position: -72px -884px;
}

i.flag.rw:before,
i.flag.rwanda:before {
  background-position: -72px -910px;
}

i.flag.sa:before,
i.flag.saudi.arabia:before {
  background-position: -72px -936px;
}

i.flag.sb:before,
i.flag.solomon.islands:before {
  background-position: -72px -962px;
}

i.flag.sc:before,
i.flag.seychelles:before {
  background-position: -72px -988px;
}

i.flag.gb.sct:before,
i.flag.scotland:before {
  background-position: -72px -1014px;
}

i.flag.sd:before,
i.flag.sudan:before {
  background-position: -72px -1040px;
}

i.flag.se:before,
i.flag.sweden:before {
  background-position: -72px -1066px;
}

i.flag.sg:before,
i.flag.singapore:before {
  background-position: -72px -1092px;
}

i.flag.sh:before,
i.flag.saint.helena:before {
  background-position: -72px -1118px;
}

i.flag.si:before,
i.flag.slovenia:before {
  background-position: -72px -1144px;
}

i.flag.sj:before,
i.flag.svalbard:before,
i.flag.jan.mayen:before {
  background-position: -72px -1170px;
}

i.flag.sk:before,
i.flag.slovakia:before {
  background-position: -72px -1196px;
}

i.flag.sl:before,
i.flag.sierra.leone:before {
  background-position: -72px -1222px;
}

i.flag.sm:before,
i.flag.san.marino:before {
  background-position: -72px -1248px;
}

i.flag.sn:before,
i.flag.senegal:before {
  background-position: -72px -1274px;
}

i.flag.so:before,
i.flag.somalia:before {
  background-position: -72px -1300px;
}

i.flag.sr:before,
i.flag.suriname:before {
  background-position: -72px -1326px;
}

i.flag.st:before,
i.flag.sao.tome:before {
  background-position: -72px -1352px;
}

i.flag.sv:before,
i.flag.el.salvador:before {
  background-position: -72px -1378px;
}

i.flag.sy:before,
i.flag.syria:before {
  background-position: -72px -1404px;
}

i.flag.sz:before,
i.flag.swaziland:before {
  background-position: -72px -1430px;
}

i.flag.tc:before,
i.flag.caicos.islands:before {
  background-position: -72px -1456px;
}

i.flag.td:before,
i.flag.chad:before {
  background-position: -72px -1482px;
}

i.flag.tf:before,
i.flag.french.territories:before {
  background-position: -72px -1508px;
}

i.flag.tg:before,
i.flag.togo:before {
  background-position: -72px -1534px;
}

i.flag.th:before,
i.flag.thailand:before {
  background-position: -72px -1560px;
}

i.flag.tj:before,
i.flag.tajikistan:before {
  background-position: -72px -1586px;
}

i.flag.tk:before,
i.flag.tokelau:before {
  background-position: -72px -1612px;
}

i.flag.tl:before,
i.flag.timorleste:before {
  background-position: -72px -1638px;
}

i.flag.tm:before,
i.flag.turkmenistan:before {
  background-position: -72px -1664px;
}

i.flag.tn:before,
i.flag.tunisia:before {
  background-position: -72px -1690px;
}

i.flag.to:before,
i.flag.tonga:before {
  background-position: -72px -1716px;
}

i.flag.tr:before,
i.flag.turkey:before {
  background-position: -72px -1742px;
}

i.flag.tt:before,
i.flag.trinidad:before {
  background-position: -72px -1768px;
}

i.flag.tv:before,
i.flag.tuvalu:before {
  background-position: -72px -1794px;
}

i.flag.tw:before,
i.flag.taiwan:before {
  background-position: -72px -1820px;
}

i.flag.tz:before,
i.flag.tanzania:before {
  background-position: -72px -1846px;
}

i.flag.ua:before,
i.flag.ukraine:before {
  background-position: -72px -1872px;
}

i.flag.ug:before,
i.flag.uganda:before {
  background-position: -72px -1898px;
}

i.flag.um:before,
i.flag.us.minor.islands:before {
  background-position: -72px -1924px;
}

i.flag.us:before,
i.flag.america:before,
i.flag.united.states:before {
  background-position: -72px -1950px;
}

i.flag.uy:before,
i.flag.uruguay:before {
  background-position: -72px -1976px;
}

i.flag.uz:before,
i.flag.uzbekistan:before {
  background-position: -108px 0px;
}

i.flag.va:before,
i.flag.vatican.city:before {
  background-position: -108px -26px;
}

i.flag.vc:before,
i.flag.saint.vincent:before {
  background-position: -108px -52px;
}

i.flag.ve:before,
i.flag.venezuela:before {
  background-position: -108px -78px;
}

i.flag.vg:before,
i.flag.british.virgin.islands:before {
  background-position: -108px -104px;
}

i.flag.vi:before,
i.flag.us.virgin.islands:before {
  background-position: -108px -130px;
}

i.flag.vn:before,
i.flag.vietnam:before {
  background-position: -108px -156px;
}

i.flag.vu:before,
i.flag.vanuatu:before {
  background-position: -108px -182px;
}

i.flag.gb.wls:before,
i.flag.wales:before {
  background-position: -108px -208px;
}

i.flag.wf:before,
i.flag.wallis.and.futuna:before {
  background-position: -108px -234px;
}

i.flag.ws:before,
i.flag.samoa:before {
  background-position: -108px -260px;
}

i.flag.ye:before,
i.flag.yemen:before {
  background-position: -108px -286px;
}

i.flag.yt:before,
i.flag.mayotte:before {
  background-position: -108px -312px;
}

i.flag.za:before,
i.flag.south.africa:before {
  background-position: -108px -338px;
}

i.flag.zm:before,
i.flag.zambia:before {
  background-position: -108px -364px;
}

i.flag.zw:before,
i.flag.zimbabwe:before {
  background-position: -108px -390px;
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Header
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Header
*******************************/

/* Standard */

.ui.header {
  border: none;
  margin: calc(2rem -  0.14285714em ) 0em 1rem;
  padding: 0em 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-weight: bold;
  line-height: 1.28571429em;
  text-transform: none;
  color: rgba(0, 0, 0, 0.87);
}

.ui.header:first-child {
  margin-top: -0.14285714em;
}

.ui.header:last-child {
  margin-bottom: 0em;
}

/*--------------
   Sub Header
---------------*/

.ui.header .sub.header {
  display: block;
  font-weight: normal;
  padding: 0em;
  margin: 0em;
  font-size: 1rem;
  line-height: 1.2em;
  color: rgba(0, 0, 0, 0.6);
}

/*--------------
      Icon
---------------*/

.ui.header > .icon {
  display: table-cell;
  opacity: 1;
  font-size: 1.5em;
  padding-top: 0em;
  vertical-align: middle;
}

/* With Text Node */

.ui.header .icon:only-child {
  display: inline-block;
  padding: 0em;
  margin-right: 0.75rem;
}

/*-------------------
        Image
--------------------*/

.ui.header > .image:not(.icon),
.ui.header > img {
  display: inline-block;
  margin-top: 0.14285714em;
  width: 2.5em;
  height: auto;
  vertical-align: middle;
}

.ui.header > .image:not(.icon):only-child,
.ui.header > img:only-child {
  margin-right: 0.75rem;
}

/*--------------
     Content
---------------*/

.ui.header .content {
  display: inline-block;
  vertical-align: top;
}

/* After Image */

.ui.header > img + .content,
.ui.header > .image + .content {
  padding-left: 0.75rem;
  vertical-align: middle;
}

/* After Icon */

.ui.header > .icon + .content {
  padding-left: 0.75rem;
  display: table-cell;
  vertical-align: middle;
}

/*--------------
 Loose Coupling
---------------*/

.ui.header .ui.label {
  font-size: '';
  margin-left: 0.5rem;
  vertical-align: middle;
}

/* Positioning */

.ui.header + p {
  margin-top: 0em;
}

/*******************************
            Types
*******************************/

/*--------------
     Page
---------------*/

h1.ui.header {
  font-size: 2rem;
}

h2.ui.header {
  font-size: 1.71428571rem;
}

h3.ui.header {
  font-size: 1.28571429rem;
}

h4.ui.header {
  font-size: 1.07142857rem;
}

h5.ui.header {
  font-size: 1rem;
}

/* Sub Header */

h1.ui.header .sub.header {
  font-size: 1.14285714rem;
}

h2.ui.header .sub.header {
  font-size: 1.14285714rem;
}

h3.ui.header .sub.header {
  font-size: 1rem;
}

h4.ui.header .sub.header {
  font-size: 1rem;
}

h5.ui.header .sub.header {
  font-size: 0.92857143rem;
}

/*--------------
 Content Heading
---------------*/

.ui.huge.header {
  min-height: 1em;
  font-size: 2em;
}

.ui.large.header {
  font-size: 1.71428571em;
}

.ui.medium.header {
  font-size: 1.28571429em;
}

.ui.small.header {
  font-size: 1.07142857em;
}

.ui.tiny.header {
  font-size: 1em;
}

/* Sub Header */

.ui.huge.header .sub.header {
  font-size: 1.14285714rem;
}

.ui.large.header .sub.header {
  font-size: 1.14285714rem;
}

.ui.header .sub.header {
  font-size: 1rem;
}

.ui.small.header .sub.header {
  font-size: 1rem;
}

.ui.tiny.header .sub.header {
  font-size: 0.92857143rem;
}

/*--------------
   Sub Heading
---------------*/

.ui.sub.header {
  padding: 0em;
  margin-bottom: 0.14285714rem;
  font-weight: bold;
  font-size: 0.85714286em;
  text-transform: uppercase;
  color: '';
}

.ui.small.sub.header {
  font-size: 0.78571429em;
}

.ui.sub.header {
  font-size: 0.85714286em;
}

.ui.large.sub.header {
  font-size: 0.92857143em;
}

.ui.huge.sub.header {
  font-size: 1em;
}

/*-------------------
        Icon
--------------------*/

.ui.icon.header {
  display: inline-block;
  text-align: center;
  margin: 2rem 0em 1rem;
}

.ui.icon.header:after {
  content: '';
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}

.ui.icon.header:first-child {
  margin-top: 0em;
}

.ui.icon.header .icon {
  float: none;
  display: block;
  width: auto;
  height: auto;
  line-height: 1;
  padding: 0em;
  font-size: 3em;
  margin: 0em auto 0.5rem;
  opacity: 1;
}

.ui.icon.header .content {
  display: block;
  padding: 0em;
}

.ui.icon.header .circular.icon {
  font-size: 2em;
}

.ui.icon.header .square.icon {
  font-size: 2em;
}

.ui.block.icon.header .icon {
  margin-bottom: 0em;
}

.ui.icon.header.aligned {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

/*******************************
            States
*******************************/

.ui.disabled.header {
  opacity: 0.45;
}

/*******************************
           Variations
*******************************/

/*-------------------
      Inverted
--------------------*/

.ui.inverted.header {
  color: #FFFFFF;
}

.ui.inverted.header .sub.header {
  color: rgba(255, 255, 255, 0.8);
}

.ui.inverted.attached.header {
  background: #545454 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  box-shadow: none;
  border-color: transparent;
}

.ui.inverted.block.header {
  background: #545454 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  box-shadow: none;
}

.ui.inverted.block.header {
  border-bottom: none;
}

/*-------------------
       Colors
--------------------*/

/*--- Red ---*/

.ui.red.header {
  color: #DB2828 !important;
}

a.ui.red.header:hover {
  color: #d01919 !important;
}

.ui.red.dividing.header {
  border-bottom: 2px solid #DB2828;
}

/* Inverted */

.ui.inverted.red.header {
  color: #FF695E !important;
}

a.ui.inverted.red.header:hover {
  color: #ff5144 !important;
}

/*--- Orange ---*/

.ui.orange.header {
  color: #F2711C !important;
}

a.ui.orange.header:hover {
  color: #f26202 !important;
}

.ui.orange.dividing.header {
  border-bottom: 2px solid #F2711C;
}

/* Inverted */

.ui.inverted.orange.header {
  color: #FF851B !important;
}

a.ui.inverted.orange.header:hover {
  color: #ff7701 !important;
}

/*--- Olive ---*/

.ui.olive.header {
  color: #B5CC18 !important;
}

a.ui.olive.header:hover {
  color: #a7bd0d !important;
}

.ui.olive.dividing.header {
  border-bottom: 2px solid #B5CC18;
}

/* Inverted */

.ui.inverted.olive.header {
  color: #D9E778 !important;
}

a.ui.inverted.olive.header:hover {
  color: #d8ea5c !important;
}

/*--- Yellow ---*/

.ui.yellow.header {
  color: #FBBD08 !important;
}

a.ui.yellow.header:hover {
  color: #eaae00 !important;
}

.ui.yellow.dividing.header {
  border-bottom: 2px solid #FBBD08;
}

/* Inverted */

.ui.inverted.yellow.header {
  color: #FFE21F !important;
}

a.ui.inverted.yellow.header:hover {
  color: #ffdf05 !important;
}

/*--- Green ---*/

.ui.green.header {
  color: #21BA45 !important;
}

a.ui.green.header:hover {
  color: #16ab39 !important;
}

.ui.green.dividing.header {
  border-bottom: 2px solid #21BA45;
}

/* Inverted */

.ui.inverted.green.header {
  color: #2ECC40 !important;
}

a.ui.inverted.green.header:hover {
  color: #22be34 !important;
}

/*--- Teal ---*/

.ui.teal.header {
  color: #00B5AD !important;
}

a.ui.teal.header:hover {
  color: #009c95 !important;
}

.ui.teal.dividing.header {
  border-bottom: 2px solid #00B5AD;
}

/* Inverted */

.ui.inverted.teal.header {
  color: #6DFFFF !important;
}

a.ui.inverted.teal.header:hover {
  color: #54ffff !important;
}

/*--- Blue ---*/

.ui.blue.header {
  color: #2185D0 !important;
}

a.ui.blue.header:hover {
  color: #1678c2 !important;
}

.ui.blue.dividing.header {
  border-bottom: 2px solid #2185D0;
}

/* Inverted */

.ui.inverted.blue.header {
  color: #54C8FF !important;
}

a.ui.inverted.blue.header:hover {
  color: #3ac0ff !important;
}

/*--- Violet ---*/

.ui.violet.header {
  color: #6435C9 !important;
}

a.ui.violet.header:hover {
  color: #5829bb !important;
}

.ui.violet.dividing.header {
  border-bottom: 2px solid #6435C9;
}

/* Inverted */

.ui.inverted.violet.header {
  color: #A291FB !important;
}

a.ui.inverted.violet.header:hover {
  color: #8a73ff !important;
}

/*--- Purple ---*/

.ui.purple.header {
  color: #A333C8 !important;
}

a.ui.purple.header:hover {
  color: #9627ba !important;
}

.ui.purple.dividing.header {
  border-bottom: 2px solid #A333C8;
}

/* Inverted */

.ui.inverted.purple.header {
  color: #DC73FF !important;
}

a.ui.inverted.purple.header:hover {
  color: #d65aff !important;
}

/*--- Pink ---*/

.ui.pink.header {
  color: #E03997 !important;
}

a.ui.pink.header:hover {
  color: #e61a8d !important;
}

.ui.pink.dividing.header {
  border-bottom: 2px solid #E03997;
}

/* Inverted */

.ui.inverted.pink.header {
  color: #FF8EDF !important;
}

a.ui.inverted.pink.header:hover {
  color: #ff74d8 !important;
}

/*--- Brown ---*/

.ui.brown.header {
  color: #A5673F !important;
}

a.ui.brown.header:hover {
  color: #975b33 !important;
}

.ui.brown.dividing.header {
  border-bottom: 2px solid #A5673F;
}

/* Inverted */

.ui.inverted.brown.header {
  color: #D67C1C !important;
}

a.ui.inverted.brown.header:hover {
  color: #c86f11 !important;
}

/*--- Grey ---*/

.ui.grey.header {
  color: #767676 !important;
}

a.ui.grey.header:hover {
  color: #838383 !important;
}

.ui.grey.dividing.header {
  border-bottom: 2px solid #767676;
}

/* Inverted */

.ui.inverted.grey.header {
  color: #DCDDDE !important;
}

a.ui.inverted.grey.header:hover {
  color: #cfd0d2 !important;
}

/*-------------------
       Aligned
--------------------*/

.ui.left.aligned.header {
  text-align: left;
}

.ui.right.aligned.header {
  text-align: right;
}

.ui.centered.header,
.ui.center.aligned.header {
  text-align: center;
}

.ui.justified.header {
  text-align: justify;
}

.ui.justified.header:after {
  display: inline-block;
  content: '';
  width: 100%;
}

/*-------------------
       Floated
--------------------*/

.ui.floated.header,
.ui[class*="left floated"].header {
  float: left;
  margin-top: 0em;
  margin-right: 0.5em;
}

.ui[class*="right floated"].header {
  float: right;
  margin-top: 0em;
  margin-left: 0.5em;
}

/*-------------------
       Fitted
--------------------*/

.ui.fitted.header {
  padding: 0em;
}

/*-------------------
      Dividing
--------------------*/

.ui.dividing.header {
  padding-bottom: 0.21428571rem;
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.dividing.header .sub.header {
  padding-bottom: 0.21428571rem;
}

.ui.dividing.header .icon {
  margin-bottom: 0em;
}

.ui.inverted.dividing.header {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

/*-------------------
        Block
--------------------*/

.ui.block.header {
  background: #F3F4F5;
  padding: 0.78571429rem 1rem;
  box-shadow: none;
  border: 1px solid #D4D4D5;
  border-radius: 0.28571429rem;
}

.ui.tiny.block.header {
  font-size: 0.85714286rem;
}

.ui.small.block.header {
  font-size: 0.92857143rem;
}

.ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1rem;
}

.ui.large.block.header {
  font-size: 1.14285714rem;
}

.ui.huge.block.header {
  font-size: 1.42857143rem;
}

/*-------------------
       Attached
--------------------*/

.ui.attached.header {
  background: #FFFFFF;
  padding: 0.78571429rem 1rem;
  margin-left: -1px;
  margin-right: -1px;
  box-shadow: none;
  border: 1px solid #D4D4D5;
}

.ui.attached.block.header {
  background: #F3F4F5;
}

.ui.attached:not(.top):not(.bottom).header {
  margin-top: 0em;
  margin-bottom: 0em;
  border-top: none;
  border-radius: 0em;
}

.ui.top.attached.header {
  margin-bottom: 0em;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.bottom.attached.header {
  margin-top: 0em;
  border-top: none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

/* Attached Sizes */

.ui.tiny.attached.header {
  font-size: 0.85714286em;
}

.ui.small.attached.header {
  font-size: 0.92857143em;
}

.ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1em;
}

.ui.large.attached.header {
  font-size: 1.14285714em;
}

.ui.huge.attached.header {
  font-size: 1.42857143em;
}

/*-------------------
        Sizing
--------------------*/

.ui.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1.28571429em;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Icon
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Icon
*******************************/

@font-face {
  font-family: 'Icons';
  src: url("./themes/default/assets/fonts/icons.eot");
  src: url("./themes/default/assets/fonts/icons.eot?#iefix") format('embedded-opentype'), url("./themes/default/assets/fonts/icons.woff2") format('woff2'), url("./themes/default/assets/fonts/icons.woff") format('woff'), url("./themes/default/assets/fonts/icons.ttf") format('truetype'), url("./themes/default/assets/fonts/icons.svg#icons") format('svg');
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-transform: none;
}

i.icon {
  display: inline-block;
  opacity: 1;
  margin: 0em 0.25rem 0em 0em;
  width: 1.18em;
  height: 1em;
  font-family: 'Icons';
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  text-align: center;
  speak: none;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

i.icon:before {
  background: none !important;
}

/*******************************
             Types
*******************************/

/*--------------
    Loading
---------------*/

i.icon.loading {
  height: 1em;
  line-height: 1;
  -webkit-animation: icon-loading 2s linear infinite;
  animation: icon-loading 2s linear infinite;
}

@-webkit-keyframes icon-loading {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes icon-loading {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*******************************
             States
*******************************/

i.icon.hover {
  opacity: 1 !important;
}

i.icon.active {
  opacity: 1 !important;
}

i.emphasized.icon {
  opacity: 1 !important;
}

i.disabled.icon {
  opacity: 0.45 !important;
}

/*******************************
           Variations
*******************************/

/*-------------------
        Fitted
--------------------*/

i.fitted.icon {
  width: auto;
  margin: 0em !important;
}

/*-------------------
         Link
--------------------*/

i.link.icon,
i.link.icons {
  cursor: pointer;
  opacity: 0.8;
  transition: opacity 0.1s ease;
}

i.link.icon:hover,
i.link.icons:hover {
  opacity: 1 !important;
}

/*-------------------
      Circular
--------------------*/

i.circular.icon {
  border-radius: 500em !important;
  line-height: 1 !important;
  padding: 0.5em 0em !important;
  box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
  width: 2em !important;
  height: 2em !important;
}

i.circular.inverted.icon {
  border: none;
  box-shadow: none;
}

/*-------------------
      Flipped
--------------------*/

i.flipped.icon,
i.horizontally.flipped.icon {
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

i.vertically.flipped.icon {
  -webkit-transform: scale(1, -1);
  transform: scale(1, -1);
}

/*-------------------
      Rotated
--------------------*/

i.rotated.icon,
i.right.rotated.icon,
i.clockwise.rotated.icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

i.left.rotated.icon,
i.counterclockwise.rotated.icon {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

/*-------------------
      Bordered
--------------------*/

i.bordered.icon {
  line-height: 1;
  vertical-align: baseline;
  width: 2em;
  height: 2em;
  padding: 0.5em 0em !important;
  box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
}

i.bordered.inverted.icon {
  border: none;
  box-shadow: none;
}

/*-------------------
      Inverted
--------------------*/

/* Inverted Shapes */

i.inverted.bordered.icon,
i.inverted.circular.icon {
  background-color: #1B1C1D !important;
  color: #FFFFFF !important;
}

i.inverted.icon {
  color: #FFFFFF;
}

/*-------------------
       Colors
--------------------*/

/* Red */

i.red.icon {
  color: #DB2828 !important;
}

i.inverted.red.icon {
  color: #FF695E !important;
}

i.inverted.bordered.red.icon,
i.inverted.circular.red.icon {
  background-color: #DB2828 !important;
  color: #FFFFFF !important;
}

/* Orange */

i.orange.icon {
  color: #F2711C !important;
}

i.inverted.orange.icon {
  color: #FF851B !important;
}

i.inverted.bordered.orange.icon,
i.inverted.circular.orange.icon {
  background-color: #F2711C !important;
  color: #FFFFFF !important;
}

/* Yellow */

i.yellow.icon {
  color: #FBBD08 !important;
}

i.inverted.yellow.icon {
  color: #FFE21F !important;
}

i.inverted.bordered.yellow.icon,
i.inverted.circular.yellow.icon {
  background-color: #FBBD08 !important;
  color: #FFFFFF !important;
}

/* Olive */

i.olive.icon {
  color: #B5CC18 !important;
}

i.inverted.olive.icon {
  color: #D9E778 !important;
}

i.inverted.bordered.olive.icon,
i.inverted.circular.olive.icon {
  background-color: #B5CC18 !important;
  color: #FFFFFF !important;
}

/* Green */

i.green.icon {
  color: #21BA45 !important;
}

i.inverted.green.icon {
  color: #2ECC40 !important;
}

i.inverted.bordered.green.icon,
i.inverted.circular.green.icon {
  background-color: #21BA45 !important;
  color: #FFFFFF !important;
}

/* Teal */

i.teal.icon {
  color: #00B5AD !important;
}

i.inverted.teal.icon {
  color: #6DFFFF !important;
}

i.inverted.bordered.teal.icon,
i.inverted.circular.teal.icon {
  background-color: #00B5AD !important;
  color: #FFFFFF !important;
}

/* Blue */

i.blue.icon {
  color: #2185D0 !important;
}

i.inverted.blue.icon {
  color: #54C8FF !important;
}

i.inverted.bordered.blue.icon,
i.inverted.circular.blue.icon {
  background-color: #2185D0 !important;
  color: #FFFFFF !important;
}

/* Violet */

i.violet.icon {
  color: #6435C9 !important;
}

i.inverted.violet.icon {
  color: #A291FB !important;
}

i.inverted.bordered.violet.icon,
i.inverted.circular.violet.icon {
  background-color: #6435C9 !important;
  color: #FFFFFF !important;
}

/* Purple */

i.purple.icon {
  color: #A333C8 !important;
}

i.inverted.purple.icon {
  color: #DC73FF !important;
}

i.inverted.bordered.purple.icon,
i.inverted.circular.purple.icon {
  background-color: #A333C8 !important;
  color: #FFFFFF !important;
}

/* Pink */

i.pink.icon {
  color: #E03997 !important;
}

i.inverted.pink.icon {
  color: #FF8EDF !important;
}

i.inverted.bordered.pink.icon,
i.inverted.circular.pink.icon {
  background-color: #E03997 !important;
  color: #FFFFFF !important;
}

/* Brown */

i.brown.icon {
  color: #A5673F !important;
}

i.inverted.brown.icon {
  color: #D67C1C !important;
}

i.inverted.bordered.brown.icon,
i.inverted.circular.brown.icon {
  background-color: #A5673F !important;
  color: #FFFFFF !important;
}

/* Grey */

i.grey.icon {
  color: #767676 !important;
}

i.inverted.grey.icon {
  color: #DCDDDE !important;
}

i.inverted.bordered.grey.icon,
i.inverted.circular.grey.icon {
  background-color: #767676 !important;
  color: #FFFFFF !important;
}

/* Black */

i.black.icon {
  color: #1B1C1D !important;
}

i.inverted.black.icon {
  color: #545454 !important;
}

i.inverted.bordered.black.icon,
i.inverted.circular.black.icon {
  background-color: #1B1C1D !important;
  color: #FFFFFF !important;
}

/*-------------------
        Sizes
--------------------*/

i.mini.icon,
i.mini.icons {
  line-height: 1;
  font-size: 0.4em;
}

i.tiny.icon,
i.tiny.icons {
  line-height: 1;
  font-size: 0.5em;
}

i.small.icon,
i.small.icons {
  line-height: 1;
  font-size: 0.75em;
}

i.icon,
i.icons {
  font-size: 1em;
}

i.large.icon,
i.large.icons {
  line-height: 1;
  vertical-align: middle;
  font-size: 1.5em;
}

i.big.icon,
i.big.icons {
  line-height: 1;
  vertical-align: middle;
  font-size: 2em;
}

i.huge.icon,
i.huge.icons {
  line-height: 1;
  vertical-align: middle;
  font-size: 4em;
}

i.massive.icon,
i.massive.icons {
  line-height: 1;
  vertical-align: middle;
  font-size: 8em;
}

/*******************************
            Groups
*******************************/

i.icons {
  display: inline-block;
  position: relative;
  line-height: 1;
}

i.icons .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  margin: 0em;
  margin: 0;
}

i.icons .icon:first-child {
  position: static;
  width: auto;
  height: auto;
  vertical-align: top;
  -webkit-transform: none;
  transform: none;
  margin-right: 0.25rem;
}

/* Corner Icon */

i.icons .corner.icon {
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
  -webkit-transform: none;
  transform: none;
  font-size: 0.45em;
  text-shadow: -1px -1px 0 #FFFFFF, 1px -1px 0 #FFFFFF, -1px 1px 0 #FFFFFF, 1px 1px 0 #FFFFFF;
}

i.icons .top.right.corner.icon {
  top: 0;
  left: auto;
  right: 0;
  bottom: auto;
}

i.icons .top.left.corner.icon {
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
}

i.icons .bottom.left.corner.icon {
  top: auto;
  left: 0;
  right: auto;
  bottom: 0;
}

i.icons .bottom.right.corner.icon {
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
}

i.icons .inverted.corner.icon {
  text-shadow: -1px -1px 0 #1B1C1D, 1px -1px 0 #1B1C1D, -1px 1px 0 #1B1C1D, 1px 1px 0 #1B1C1D;
}

/*
 * Font Awesome 5.0.8 by @fontawesome - http://fontawesome.io - @fontawesome
 * License - https://fontawesome.com/license (Icons: CC BY 4.0 License, Fonts: SIL OFL 1.1 License, CSS: MIT License)
 */

/*******************************

Semantic-UI integration of font-awesome :

///class names are separated
i.icon.circle => i.icon.circle
i.icon.circle-o => i.icon.circle.outline

//abbreviation are replaced by full letters:
i.icon.ellipsis-h => i.icon.ellipsis.horizontal
i.icon.ellipsis-v => i.icon.ellipsis.vertical
.alpha => .i.icon.alphabet
.asc => .i.icon.ascending
.desc => .i.icon.descending
.alt =>.alternate

ASCII order is conserved for easier maintenance.

Icons that only have one style 'outline', 'square' etc do not require this class
for instance `lemon icon` not `lemon outline icon` since there is only one lemon

*******************************/

/*******************************
            Icons
*******************************/

/* Deprecated *In/Out Naming Conflict) */

i.icon.linkedin.in:before {
  content: "\f0e1";
}

i.icon.zoom.in:before {
  content: "\f00e";
}

i.icon.zoom.out:before {
  content: "\f010";
}

i.icon.sign.in:before {
  content: "\f2f6";
}

i.icon.in.cart:before {
  content: "\f218";
}

i.icon.log.out:before {
  content: "\f2f5";
}

i.icon.sign.out:before {
  content: "\f2f5";
}

/* Icons */

i.icon.\35 00px:before {
  content: "\f26e";
}

i.icon.accessible.icon:before {
  content: "\f368";
}

i.icon.accusoft:before {
  content: "\f369";
}

i.icon.address.book:before {
  content: "\f2b9";
}

i.icon.address.card:before {
  content: "\f2bb";
}

i.icon.adjust:before {
  content: "\f042";
}

i.icon.adn:before {
  content: "\f170";
}

i.icon.adversal:before {
  content: "\f36a";
}

i.icon.affiliatetheme:before {
  content: "\f36b";
}

i.icon.algolia:before {
  content: "\f36c";
}

i.icon.align.center:before {
  content: "\f037";
}

i.icon.align.justify:before {
  content: "\f039";
}

i.icon.align.left:before {
  content: "\f036";
}

i.icon.align.right:before {
  content: "\f038";
}

i.icon.amazon:before {
  content: "\f270";
}

i.icon.amazon.pay:before {
  content: "\f42c";
}

i.icon.ambulance:before {
  content: "\f0f9";
}

i.icon.american.sign.language.interpreting:before {
  content: "\f2a3";
}

i.icon.amilia:before {
  content: "\f36d";
}

i.icon.anchor:before {
  content: "\f13d";
}

i.icon.android:before {
  content: "\f17b";
}

i.icon.angellist:before {
  content: "\f209";
}

i.icon.angle.double.down:before {
  content: "\f103";
}

i.icon.angle.double.left:before {
  content: "\f100";
}

i.icon.angle.double.right:before {
  content: "\f101";
}

i.icon.angle.double.up:before {
  content: "\f102";
}

i.icon.angle.down:before {
  content: "\f107";
}

i.icon.angle.left:before {
  content: "\f104";
}

i.icon.angle.right:before {
  content: "\f105";
}

i.icon.angle.up:before {
  content: "\f106";
}

i.icon.angrycreative:before {
  content: "\f36e";
}

i.icon.angular:before {
  content: "\f420";
}

i.icon.app.store:before {
  content: "\f36f";
}

i.icon.app.store.ios:before {
  content: "\f370";
}

i.icon.apper:before {
  content: "\f371";
}

i.icon.apple:before {
  content: "\f179";
}

i.icon.apple.pay:before {
  content: "\f415";
}

i.icon.archive:before {
  content: "\f187";
}

i.icon.arrow.alternate.circle.down:before {
  content: "\f358";
}

i.icon.arrow.alternate.circle.left:before {
  content: "\f359";
}

i.icon.arrow.alternate.circle.right:before {
  content: "\f35a";
}

i.icon.arrow.alternate.circle.up:before {
  content: "\f35b";
}

i.icon.arrow.circle.down:before {
  content: "\f0ab";
}

i.icon.arrow.circle.left:before {
  content: "\f0a8";
}

i.icon.arrow.circle.right:before {
  content: "\f0a9";
}

i.icon.arrow.circle.up:before {
  content: "\f0aa";
}

i.icon.arrow.down:before {
  content: "\f063";
}

i.icon.arrow.left:before {
  content: "\f060";
}

i.icon.arrow.right:before {
  content: "\f061";
}

i.icon.arrow.up:before {
  content: "\f062";
}

i.icon.arrows.alternate:before {
  content: "\f0b2";
}

i.icon.arrows.alternate.horizontal:before {
  content: "\f337";
}

i.icon.arrows.alternate.vertical:before {
  content: "\f338";
}

i.icon.assistive.listening.systems:before {
  content: "\f2a2";
}

i.icon.asterisk:before {
  content: "\f069";
}

i.icon.asymmetrik:before {
  content: "\f372";
}

i.icon.at:before {
  content: "\f1fa";
}

i.icon.audible:before {
  content: "\f373";
}

i.icon.audio.description:before {
  content: "\f29e";
}

i.icon.autoprefixer:before {
  content: "\f41c";
}

i.icon.avianex:before {
  content: "\f374";
}

i.icon.aviato:before {
  content: "\f421";
}

i.icon.aws:before {
  content: "\f375";
}

i.icon.backward:before {
  content: "\f04a";
}

i.icon.balance.scale:before {
  content: "\f24e";
}

i.icon.ban:before {
  content: "\f05e";
}

i.icon.band.aid:before {
  content: "\f462";
}

i.icon.bandcamp:before {
  content: "\f2d5";
}

i.icon.barcode:before {
  content: "\f02a";
}

i.icon.bars:before {
  content: "\f0c9";
}

i.icon.baseball.ball:before {
  content: "\f433";
}

i.icon.basketball.ball:before {
  content: "\f434";
}

i.icon.bath:before {
  content: "\f2cd";
}

i.icon.battery.empty:before {
  content: "\f244";
}

i.icon.battery.full:before {
  content: "\f240";
}

i.icon.battery.half:before {
  content: "\f242";
}

i.icon.battery.quarter:before {
  content: "\f243";
}

i.icon.battery.three.quarters:before {
  content: "\f241";
}

i.icon.bed:before {
  content: "\f236";
}

i.icon.beer:before {
  content: "\f0fc";
}

i.icon.behance:before {
  content: "\f1b4";
}

i.icon.behance.square:before {
  content: "\f1b5";
}

i.icon.bell:before {
  content: "\f0f3";
}

i.icon.bell.slash:before {
  content: "\f1f6";
}

i.icon.bicycle:before {
  content: "\f206";
}

i.icon.bimobject:before {
  content: "\f378";
}

i.icon.binoculars:before {
  content: "\f1e5";
}

i.icon.birthday.cake:before {
  content: "\f1fd";
}

i.icon.bitbucket:before {
  content: "\f171";
}

i.icon.bitcoin:before {
  content: "\f379";
}

i.icon.bity:before {
  content: "\f37a";
}

i.icon.black.tie:before {
  content: "\f27e";
}

i.icon.blackberry:before {
  content: "\f37b";
}

i.icon.blind:before {
  content: "\f29d";
}

i.icon.blogger:before {
  content: "\f37c";
}

i.icon.blogger.b:before {
  content: "\f37d";
}

i.icon.bluetooth:before {
  content: "\f293";
}

i.icon.bluetooth.b:before {
  content: "\f294";
}

i.icon.bold:before {
  content: "\f032";
}

i.icon.bolt:before {
  content: "\f0e7";
}

i.icon.bomb:before {
  content: "\f1e2";
}

i.icon.book:before {
  content: "\f02d";
}

i.icon.bookmark:before {
  content: "\f02e";
}

i.icon.bowling.ball:before {
  content: "\f436";
}

i.icon.box:before {
  content: "\f466";
}

i.icon.boxes:before {
  content: "\f468";
}

i.icon.braille:before {
  content: "\f2a1";
}

i.icon.briefcase:before {
  content: "\f0b1";
}

i.icon.btc:before {
  content: "\f15a";
}

i.icon.bug:before {
  content: "\f188";
}

i.icon.building:before {
  content: "\f1ad";
}

i.icon.bullhorn:before {
  content: "\f0a1";
}

i.icon.bullseye:before {
  content: "\f140";
}

i.icon.buromobelexperte:before {
  content: "\f37f";
}

i.icon.bus:before {
  content: "\f207";
}

i.icon.buysellads:before {
  content: "\f20d";
}

i.icon.calculator:before {
  content: "\f1ec";
}

i.icon.calendar:before {
  content: "\f133";
}

i.icon.calendar.alternate:before {
  content: "\f073";
}

i.icon.calendar.check:before {
  content: "\f274";
}

i.icon.calendar.minus:before {
  content: "\f272";
}

i.icon.calendar.plus:before {
  content: "\f271";
}

i.icon.calendar.times:before {
  content: "\f273";
}

i.icon.camera:before {
  content: "\f030";
}

i.icon.camera.retro:before {
  content: "\f083";
}

i.icon.car:before {
  content: "\f1b9";
}

i.icon.caret.down:before {
  content: "\f0d7";
}

i.icon.caret.left:before {
  content: "\f0d9";
}

i.icon.caret.right:before {
  content: "\f0da";
}

i.icon.caret.square.down:before {
  content: "\f150";
}

i.icon.caret.square.left:before {
  content: "\f191";
}

i.icon.caret.square.right:before {
  content: "\f152";
}

i.icon.caret.square.up:before {
  content: "\f151";
}

i.icon.caret.up:before {
  content: "\f0d8";
}

i.icon.cart.arrow.down:before {
  content: "\f218";
}

i.icon.cart.plus:before {
  content: "\f217";
}

i.icon.cc.amazon.pay:before {
  content: "\f42d";
}

i.icon.cc.amex:before {
  content: "\f1f3";
}

i.icon.cc.apple.pay:before {
  content: "\f416";
}

i.icon.cc.diners.club:before {
  content: "\f24c";
}

i.icon.cc.discover:before {
  content: "\f1f2";
}

i.icon.cc.jcb:before {
  content: "\f24b";
}

i.icon.cc.mastercard:before {
  content: "\f1f1";
}

i.icon.cc.paypal:before {
  content: "\f1f4";
}

i.icon.cc.stripe:before {
  content: "\f1f5";
}

i.icon.cc.visa:before {
  content: "\f1f0";
}

i.icon.centercode:before {
  content: "\f380";
}

i.icon.certificate:before {
  content: "\f0a3";
}

i.icon.chart.area:before {
  content: "\f1fe";
}

i.icon.chart.bar:before {
  content: "\f080";
}

i.icon.chart.line:before {
  content: "\f201";
}

i.icon.chart.pie:before {
  content: "\f200";
}

i.icon.check:before {
  content: "\f00c";
}

i.icon.check.circle:before {
  content: "\f058";
}

i.icon.check.square:before {
  content: "\f14a";
}

i.icon.chess:before {
  content: "\f439";
}

i.icon.chess.bishop:before {
  content: "\f43a";
}

i.icon.chess.board:before {
  content: "\f43c";
}

i.icon.chess.king:before {
  content: "\f43f";
}

i.icon.chess.knight:before {
  content: "\f441";
}

i.icon.chess.pawn:before {
  content: "\f443";
}

i.icon.chess.queen:before {
  content: "\f445";
}

i.icon.chess.rook:before {
  content: "\f447";
}

i.icon.chevron.circle.down:before {
  content: "\f13a";
}

i.icon.chevron.circle.left:before {
  content: "\f137";
}

i.icon.chevron.circle.right:before {
  content: "\f138";
}

i.icon.chevron.circle.up:before {
  content: "\f139";
}

i.icon.chevron.down:before {
  content: "\f078";
}

i.icon.chevron.left:before {
  content: "\f053";
}

i.icon.chevron.right:before {
  content: "\f054";
}

i.icon.chevron.up:before {
  content: "\f077";
}

i.icon.child:before {
  content: "\f1ae";
}

i.icon.chrome:before {
  content: "\f268";
}

i.icon.circle:before {
  content: "\f111";
}

i.icon.circle.notch:before {
  content: "\f1ce";
}

i.icon.clipboard:before {
  content: "\f328";
}

i.icon.clipboard.check:before {
  content: "\f46c";
}

i.icon.clipboard.list:before {
  content: "\f46d";
}

i.icon.clock:before {
  content: "\f017";
}

i.icon.clone:before {
  content: "\f24d";
}

i.icon.closed.captioning:before {
  content: "\f20a";
}

i.icon.cloud:before {
  content: "\f0c2";
}

i.icon.cloudscale:before {
  content: "\f383";
}

i.icon.cloudsmith:before {
  content: "\f384";
}

i.icon.cloudversify:before {
  content: "\f385";
}

i.icon.code:before {
  content: "\f121";
}

i.icon.code.branch:before {
  content: "\f126";
}

i.icon.codepen:before {
  content: "\f1cb";
}

i.icon.codiepie:before {
  content: "\f284";
}

i.icon.coffee:before {
  content: "\f0f4";
}

i.icon.cog:before {
  content: "\f013";
}

i.icon.cogs:before {
  content: "\f085";
}

i.icon.columns:before {
  content: "\f0db";
}

i.icon.comment:before {
  content: "\f075";
}

i.icon.comment.alternate:before {
  content: "\f27a";
}

i.icon.comments:before {
  content: "\f086";
}

i.icon.compass:before {
  content: "\f14e";
}

i.icon.compress:before {
  content: "\f066";
}

i.icon.connectdevelop:before {
  content: "\f20e";
}

i.icon.contao:before {
  content: "\f26d";
}

i.icon.copy:before {
  content: "\f0c5";
}

i.icon.copyright:before {
  content: "\f1f9";
}

i.icon.cpanel:before {
  content: "\f388";
}

i.icon.creative.commons:before {
  content: "\f25e";
}

i.icon.credit.card:before {
  content: "\f09d";
}

i.icon.crop:before {
  content: "\f125";
}

i.icon.crosshairs:before {
  content: "\f05b";
}

i.icon.css3:before {
  content: "\f13c";
}

i.icon.css3.alternate:before {
  content: "\f38b";
}

i.icon.cube:before {
  content: "\f1b2";
}

i.icon.cubes:before {
  content: "\f1b3";
}

i.icon.cut:before {
  content: "\f0c4";
}

i.icon.cuttlefish:before {
  content: "\f38c";
}

i.icon.d.and.d:before {
  content: "\f38d";
}

i.icon.dashcube:before {
  content: "\f210";
}

i.icon.database:before {
  content: "\f1c0";
}

i.icon.deaf:before {
  content: "\f2a4";
}

i.icon.delicious:before {
  content: "\f1a5";
}

i.icon.deploydog:before {
  content: "\f38e";
}

i.icon.deskpro:before {
  content: "\f38f";
}

i.icon.desktop:before {
  content: "\f108";
}

i.icon.deviantart:before {
  content: "\f1bd";
}

i.icon.digg:before {
  content: "\f1a6";
}

i.icon.digital.ocean:before {
  content: "\f391";
}

i.icon.discord:before {
  content: "\f392";
}

i.icon.discourse:before {
  content: "\f393";
}

i.icon.dna:before {
  content: "\f471";
}

i.icon.dochub:before {
  content: "\f394";
}

i.icon.docker:before {
  content: "\f395";
}

i.icon.dollar.sign:before {
  content: "\f155";
}

i.icon.dolly:before {
  content: "\f472";
}

i.icon.dolly.flatbed:before {
  content: "\f474";
}

i.icon.dot.circle:before {
  content: "\f192";
}

i.icon.download:before {
  content: "\f019";
}

i.icon.draft2digital:before {
  content: "\f396";
}

i.icon.dribbble:before {
  content: "\f17d";
}

i.icon.dribbble.square:before {
  content: "\f397";
}

i.icon.dropbox:before {
  content: "\f16b";
}

i.icon.drupal:before {
  content: "\f1a9";
}

i.icon.dyalog:before {
  content: "\f399";
}

i.icon.earlybirds:before {
  content: "\f39a";
}

i.icon.edge:before {
  content: "\f282";
}

i.icon.edit:before {
  content: "\f044";
}

i.icon.eject:before {
  content: "\f052";
}

i.icon.elementor:before {
  content: "\f430";
}

i.icon.ellipsis.horizontal:before {
  content: "\f141";
}

i.icon.ellipsis.vertical:before {
  content: "\f142";
}

i.icon.ember:before {
  content: "\f423";
}

i.icon.empire:before {
  content: "\f1d1";
}

i.icon.envelope:before {
  content: "\f0e0";
}

i.icon.envelope.open:before {
  content: "\f2b6";
}

i.icon.envelope.square:before {
  content: "\f199";
}

i.icon.envira:before {
  content: "\f299";
}

i.icon.eraser:before {
  content: "\f12d";
}

i.icon.erlang:before {
  content: "\f39d";
}

i.icon.ethereum:before {
  content: "\f42e";
}

i.icon.etsy:before {
  content: "\f2d7";
}

i.icon.euro.sign:before {
  content: "\f153";
}

i.icon.exchange.alternate:before {
  content: "\f362";
}

i.icon.exclamation:before {
  content: "\f12a";
}

i.icon.exclamation.circle:before {
  content: "\f06a";
}

i.icon.exclamation.triangle:before {
  content: "\f071";
}

i.icon.expand:before {
  content: "\f065";
}

i.icon.expand.arrows.alternate:before {
  content: "\f31e";
}

i.icon.expeditedssl:before {
  content: "\f23e";
}

i.icon.external.alternate:before {
  content: "\f35d";
}

i.icon.external.square.alternate:before {
  content: "\f360";
}

i.icon.eye:before {
  content: "\f06e";
}

i.icon.eye.dropper:before {
  content: "\f1fb";
}

i.icon.eye.slash:before {
  content: "\f070";
}

i.icon.facebook:before {
  content: "\f09a";
}

i.icon.facebook.f:before {
  content: "\f39e";
}

i.icon.facebook.messenger:before {
  content: "\f39f";
}

i.icon.facebook.square:before {
  content: "\f082";
}

i.icon.fast.backward:before {
  content: "\f049";
}

i.icon.fast.forward:before {
  content: "\f050";
}

i.icon.fax:before {
  content: "\f1ac";
}

i.icon.female:before {
  content: "\f182";
}

i.icon.fighter.jet:before {
  content: "\f0fb";
}

i.icon.file:before {
  content: "\f15b";
}

i.icon.file.alternate:before {
  content: "\f15c";
}

i.icon.file.archive:before {
  content: "\f1c6";
}

i.icon.file.audio:before {
  content: "\f1c7";
}

i.icon.file.code:before {
  content: "\f1c9";
}

i.icon.file.excel:before {
  content: "\f1c3";
}

i.icon.file.image:before {
  content: "\f1c5";
}

i.icon.file.pdf:before {
  content: "\f1c1";
}

i.icon.file.powerpoint:before {
  content: "\f1c4";
}

i.icon.file.video:before {
  content: "\f1c8";
}

i.icon.file.word:before {
  content: "\f1c2";
}

i.icon.film:before {
  content: "\f008";
}

i.icon.filter:before {
  content: "\f0b0";
}

i.icon.fire:before {
  content: "\f06d";
}

i.icon.fire.extinguisher:before {
  content: "\f134";
}

i.icon.firefox:before {
  content: "\f269";
}

i.icon.first.aid:before {
  content: "\f479";
}

i.icon.first.order:before {
  content: "\f2b0";
}

i.icon.firstdraft:before {
  content: "\f3a1";
}

i.icon.flag:before {
  content: "\f024";
}

i.icon.flag.checkered:before {
  content: "\f11e";
}

i.icon.flask:before {
  content: "\f0c3";
}

i.icon.flickr:before {
  content: "\f16e";
}

i.icon.flipboard:before {
  content: "\f44d";
}

i.icon.fly:before {
  content: "\f417";
}

i.icon.folder:before {
  content: "\f07b";
}

i.icon.folder.open:before {
  content: "\f07c";
}

i.icon.font:before {
  content: "\f031";
}

i.icon.font.awesome:before {
  content: "\f2b4";
}

i.icon.font.awesome.alternate:before {
  content: "\f35c";
}

i.icon.font.awesome.flag:before {
  content: "\f425";
}

i.icon.fonticons:before {
  content: "\f280";
}

i.icon.fonticons.fi:before {
  content: "\f3a2";
}

i.icon.football.ball:before {
  content: "\f44e";
}

i.icon.fort.awesome:before {
  content: "\f286";
}

i.icon.fort.awesome.alternate:before {
  content: "\f3a3";
}

i.icon.forumbee:before {
  content: "\f211";
}

i.icon.forward:before {
  content: "\f04e";
}

i.icon.foursquare:before {
  content: "\f180";
}

i.icon.free.code.camp:before {
  content: "\f2c5";
}

i.icon.freebsd:before {
  content: "\f3a4";
}

i.icon.frown:before {
  content: "\f119";
}

i.icon.futbol:before {
  content: "\f1e3";
}

i.icon.gamepad:before {
  content: "\f11b";
}

i.icon.gavel:before {
  content: "\f0e3";
}

i.icon.gem:before {
  content: "\f3a5";
}

i.icon.genderless:before {
  content: "\f22d";
}

i.icon.get.pocket:before {
  content: "\f265";
}

i.icon.gg:before {
  content: "\f260";
}

i.icon.gg.circle:before {
  content: "\f261";
}

i.icon.gift:before {
  content: "\f06b";
}

i.icon.git:before {
  content: "\f1d3";
}

i.icon.git.square:before {
  content: "\f1d2";
}

i.icon.github:before {
  content: "\f09b";
}

i.icon.github.alternate:before {
  content: "\f113";
}

i.icon.github.square:before {
  content: "\f092";
}

i.icon.gitkraken:before {
  content: "\f3a6";
}

i.icon.gitlab:before {
  content: "\f296";
}

i.icon.gitter:before {
  content: "\f426";
}

i.icon.glass.martini:before {
  content: "\f000";
}

i.icon.glide:before {
  content: "\f2a5";
}

i.icon.glide.g:before {
  content: "\f2a6";
}

i.icon.globe:before {
  content: "\f0ac";
}

i.icon.gofore:before {
  content: "\f3a7";
}

i.icon.golf.ball:before {
  content: "\f450";
}

i.icon.goodreads:before {
  content: "\f3a8";
}

i.icon.goodreads.g:before {
  content: "\f3a9";
}

i.icon.google:before {
  content: "\f1a0";
}

i.icon.google.drive:before {
  content: "\f3aa";
}

i.icon.google.play:before {
  content: "\f3ab";
}

i.icon.google.plus:before {
  content: "\f2b3";
}

i.icon.google.plus.g:before {
  content: "\f0d5";
}

i.icon.google.plus.square:before {
  content: "\f0d4";
}

i.icon.google.wallet:before {
  content: "\f1ee";
}

i.icon.graduation.cap:before {
  content: "\f19d";
}

i.icon.gratipay:before {
  content: "\f184";
}

i.icon.grav:before {
  content: "\f2d6";
}

i.icon.gripfire:before {
  content: "\f3ac";
}

i.icon.grunt:before {
  content: "\f3ad";
}

i.icon.gulp:before {
  content: "\f3ae";
}

i.icon.h.square:before {
  content: "\f0fd";
}

i.icon.hacker.news:before {
  content: "\f1d4";
}

i.icon.hacker.news.square:before {
  content: "\f3af";
}

i.icon.hand.lizard:before {
  content: "\f258";
}

i.icon.hand.paper:before {
  content: "\f256";
}

i.icon.hand.peace:before {
  content: "\f25b";
}

i.icon.hand.point.down:before {
  content: "\f0a7";
}

i.icon.hand.point.left:before {
  content: "\f0a5";
}

i.icon.hand.point.right:before {
  content: "\f0a4";
}

i.icon.hand.point.up:before {
  content: "\f0a6";
}

i.icon.hand.pointer:before {
  content: "\f25a";
}

i.icon.hand.rock:before {
  content: "\f255";
}

i.icon.hand.scissors:before {
  content: "\f257";
}

i.icon.hand.spock:before {
  content: "\f259";
}

i.icon.handshake:before {
  content: "\f2b5";
}

i.icon.hashtag:before {
  content: "\f292";
}

i.icon.hdd:before {
  content: "\f0a0";
}

i.icon.heading:before {
  content: "\f1dc";
}

i.icon.headphones:before {
  content: "\f025";
}

i.icon.heart:before {
  content: "\f004";
}

i.icon.heartbeat:before {
  content: "\f21e";
}

i.icon.hips:before {
  content: "\f452";
}

i.icon.hire.a.helper:before {
  content: "\f3b0";
}

i.icon.history:before {
  content: "\f1da";
}

i.icon.hockey.puck:before {
  content: "\f453";
}

i.icon.home:before {
  content: "\f015";
}

i.icon.hooli:before {
  content: "\f427";
}

i.icon.hospital:before {
  content: "\f0f8";
}

i.icon.hospital.symbol:before {
  content: "\f47e";
}

i.icon.hotjar:before {
  content: "\f3b1";
}

i.icon.hourglass:before {
  content: "\f254";
}

i.icon.hourglass.end:before {
  content: "\f253";
}

i.icon.hourglass.half:before {
  content: "\f252";
}

i.icon.hourglass.start:before {
  content: "\f251";
}

i.icon.houzz:before {
  content: "\f27c";
}

i.icon.html5:before {
  content: "\f13b";
}

i.icon.hubspot:before {
  content: "\f3b2";
}

i.icon.i.cursor:before {
  content: "\f246";
}

i.icon.id.badge:before {
  content: "\f2c1";
}

i.icon.id.card:before {
  content: "\f2c2";
}

i.icon.image:before {
  content: "\f03e";
}

i.icon.images:before {
  content: "\f302";
}

i.icon.imdb:before {
  content: "\f2d8";
}

i.icon.inbox:before {
  content: "\f01c";
}

i.icon.indent:before {
  content: "\f03c";
}

i.icon.industry:before {
  content: "\f275";
}

i.icon.info:before {
  content: "\f129";
}

i.icon.info.circle:before {
  content: "\f05a";
}

i.icon.instagram:before {
  content: "\f16d";
}

i.icon.internet.explorer:before {
  content: "\f26b";
}

i.icon.ioxhost:before {
  content: "\f208";
}

i.icon.italic:before {
  content: "\f033";
}

i.icon.itunes:before {
  content: "\f3b4";
}

i.icon.itunes.note:before {
  content: "\f3b5";
}

i.icon.jenkins:before {
  content: "\f3b6";
}

i.icon.joget:before {
  content: "\f3b7";
}

i.icon.joomla:before {
  content: "\f1aa";
}

i.icon.js:before {
  content: "\f3b8";
}

i.icon.js.square:before {
  content: "\f3b9";
}

i.icon.jsfiddle:before {
  content: "\f1cc";
}

i.icon.key:before {
  content: "\f084";
}

i.icon.keyboard:before {
  content: "\f11c";
}

i.icon.keycdn:before {
  content: "\f3ba";
}

i.icon.kickstarter:before {
  content: "\f3bb";
}

i.icon.kickstarter.k:before {
  content: "\f3bc";
}

i.icon.korvue:before {
  content: "\f42f";
}

i.icon.language:before {
  content: "\f1ab";
}

i.icon.laptop:before {
  content: "\f109";
}

i.icon.laravel:before {
  content: "\f3bd";
}

i.icon.lastfm:before {
  content: "\f202";
}

i.icon.lastfm.square:before {
  content: "\f203";
}

i.icon.leaf:before {
  content: "\f06c";
}

i.icon.leanpub:before {
  content: "\f212";
}

i.icon.lemon:before {
  content: "\f094";
}

i.icon.less:before {
  content: "\f41d";
}

i.icon.level.down.alternate:before {
  content: "\f3be";
}

i.icon.level.up.alternate:before {
  content: "\f3bf";
}

i.icon.life.ring:before {
  content: "\f1cd";
}

i.icon.lightbulb:before {
  content: "\f0eb";
}

i.icon.linechat:before {
  content: "\f3c0";
}

i.icon.linkify:before {
  content: "\f0c1";
}

i.icon.linkedin:before {
  content: "\f08c";
}

i.icon.linkedin.alt:before {
  content: "\f0e1";
}

i.icon.linode:before {
  content: "\f2b8";
}

i.icon.linux:before {
  content: "\f17c";
}

i.icon.lira.sign:before {
  content: "\f195";
}

i.icon.list:before {
  content: "\f03a";
}

i.icon.list.alternate:before {
  content: "\f022";
}

i.icon.list.ol:before {
  content: "\f0cb";
}

i.icon.list.ul:before {
  content: "\f0ca";
}

i.icon.location.arrow:before {
  content: "\f124";
}

i.icon.lock:before {
  content: "\f023";
}

i.icon.lock.open:before {
  content: "\f3c1";
}

i.icon.long.arrow.alternate.down:before {
  content: "\f309";
}

i.icon.long.arrow.alternate.left:before {
  content: "\f30a";
}

i.icon.long.arrow.alternate.right:before {
  content: "\f30b";
}

i.icon.long.arrow.alternate.up:before {
  content: "\f30c";
}

i.icon.low.vision:before {
  content: "\f2a8";
}

i.icon.lyft:before {
  content: "\f3c3";
}

i.icon.magento:before {
  content: "\f3c4";
}

i.icon.magic:before {
  content: "\f0d0";
}

i.icon.magnet:before {
  content: "\f076";
}

i.icon.male:before {
  content: "\f183";
}

i.icon.map:before {
  content: "\f279";
}

i.icon.map.marker:before {
  content: "\f041";
}

i.icon.map.marker.alternate:before {
  content: "\f3c5";
}

i.icon.map.pin:before {
  content: "\f276";
}

i.icon.map.signs:before {
  content: "\f277";
}

i.icon.mars:before {
  content: "\f222";
}

i.icon.mars.double:before {
  content: "\f227";
}

i.icon.mars.stroke:before {
  content: "\f229";
}

i.icon.mars.stroke.horizontal:before {
  content: "\f22b";
}

i.icon.mars.stroke.vertical:before {
  content: "\f22a";
}

i.icon.maxcdn:before {
  content: "\f136";
}

i.icon.medapps:before {
  content: "\f3c6";
}

i.icon.medium:before {
  content: "\f23a";
}

i.icon.medium.m:before {
  content: "\f3c7";
}

i.icon.medkit:before {
  content: "\f0fa";
}

i.icon.medrt:before {
  content: "\f3c8";
}

i.icon.meetup:before {
  content: "\f2e0";
}

i.icon.meh:before {
  content: "\f11a";
}

i.icon.mercury:before {
  content: "\f223";
}

i.icon.microchip:before {
  content: "\f2db";
}

i.icon.microphone:before {
  content: "\f130";
}

i.icon.microphone.slash:before {
  content: "\f131";
}

i.icon.microsoft:before {
  content: "\f3ca";
}

i.icon.minus:before {
  content: "\f068";
}

i.icon.minus.circle:before {
  content: "\f056";
}

i.icon.minus.square:before {
  content: "\f146";
}

i.icon.mix:before {
  content: "\f3cb";
}

i.icon.mixcloud:before {
  content: "\f289";
}

i.icon.mizuni:before {
  content: "\f3cc";
}

i.icon.mobile:before {
  content: "\f10b";
}

i.icon.mobile.alternate:before {
  content: "\f3cd";
}

i.icon.modx:before {
  content: "\f285";
}

i.icon.monero:before {
  content: "\f3d0";
}

i.icon.money.bill.alternate:before {
  content: "\f3d1";
}

i.icon.moon:before {
  content: "\f186";
}

i.icon.motorcycle:before {
  content: "\f21c";
}

i.icon.mouse.pointer:before {
  content: "\f245";
}

i.icon.music:before {
  content: "\f001";
}

i.icon.napster:before {
  content: "\f3d2";
}

i.icon.neuter:before {
  content: "\f22c";
}

i.icon.newspaper:before {
  content: "\f1ea";
}

i.icon.nintendo.switch:before {
  content: "\f418";
}

i.icon.node:before {
  content: "\f419";
}

i.icon.node.js:before {
  content: "\f3d3";
}

i.icon.npm:before {
  content: "\f3d4";
}

i.icon.ns8:before {
  content: "\f3d5";
}

i.icon.nutritionix:before {
  content: "\f3d6";
}

i.icon.object.group:before {
  content: "\f247";
}

i.icon.object.ungroup:before {
  content: "\f248";
}

i.icon.odnoklassniki:before {
  content: "\f263";
}

i.icon.odnoklassniki.square:before {
  content: "\f264";
}

i.icon.opencart:before {
  content: "\f23d";
}

i.icon.openid:before {
  content: "\f19b";
}

i.icon.opera:before {
  content: "\f26a";
}

i.icon.optin.monster:before {
  content: "\f23c";
}

i.icon.osi:before {
  content: "\f41a";
}

i.icon.outdent:before {
  content: "\f03b";
}

i.icon.page4:before {
  content: "\f3d7";
}

i.icon.pagelines:before {
  content: "\f18c";
}

i.icon.paint.brush:before {
  content: "\f1fc";
}

i.icon.palfed:before {
  content: "\f3d8";
}

i.icon.pallet:before {
  content: "\f482";
}

i.icon.paper.plane:before {
  content: "\f1d8";
}

i.icon.paperclip:before {
  content: "\f0c6";
}

i.icon.paragraph:before {
  content: "\f1dd";
}

i.icon.paste:before {
  content: "\f0ea";
}

i.icon.patreon:before {
  content: "\f3d9";
}

i.icon.pause:before {
  content: "\f04c";
}

i.icon.pause.circle:before {
  content: "\f28b";
}

i.icon.paw:before {
  content: "\f1b0";
}

i.icon.paypal:before {
  content: "\f1ed";
}

i.icon.pen.square:before {
  content: "\f14b";
}

i.icon.pencil.alternate:before {
  content: "\f303";
}

i.icon.percent:before {
  content: "\f295";
}

i.icon.periscope:before {
  content: "\f3da";
}

i.icon.phabricator:before {
  content: "\f3db";
}

i.icon.phoenix.framework:before {
  content: "\f3dc";
}

i.icon.phone:before {
  content: "\f095";
}

i.icon.phone.square:before {
  content: "\f098";
}

i.icon.phone.volume:before {
  content: "\f2a0";
}

i.icon.php:before {
  content: "\f457";
}

i.icon.pied.piper:before {
  content: "\f2ae";
}

i.icon.pied.piper.alternate:before {
  content: "\f1a8";
}

i.icon.pied.piper.pp:before {
  content: "\f1a7";
}

i.icon.pills:before {
  content: "\f484";
}

i.icon.pinterest:before {
  content: "\f0d2";
}

i.icon.pinterest.p:before {
  content: "\f231";
}

i.icon.pinterest.square:before {
  content: "\f0d3";
}

i.icon.plane:before {
  content: "\f072";
}

i.icon.play:before {
  content: "\f04b";
}

i.icon.play.circle:before {
  content: "\f144";
}

i.icon.playstation:before {
  content: "\f3df";
}

i.icon.plug:before {
  content: "\f1e6";
}

i.icon.plus:before {
  content: "\f067";
}

i.icon.plus.circle:before {
  content: "\f055";
}

i.icon.plus.square:before {
  content: "\f0fe";
}

i.icon.podcast:before {
  content: "\f2ce";
}

i.icon.pound.sign:before {
  content: "\f154";
}

i.icon.power.off:before {
  content: "\f011";
}

i.icon.print:before {
  content: "\f02f";
}

i.icon.product.hunt:before {
  content: "\f288";
}

i.icon.pushed:before {
  content: "\f3e1";
}

i.icon.puzzle.piece:before {
  content: "\f12e";
}

i.icon.python:before {
  content: "\f3e2";
}

i.icon.qq:before {
  content: "\f1d6";
}

i.icon.qrcode:before {
  content: "\f029";
}

i.icon.question:before {
  content: "\f128";
}

i.icon.question.circle:before {
  content: "\f059";
}

i.icon.quidditch:before {
  content: "\f458";
}

i.icon.quinscape:before {
  content: "\f459";
}

i.icon.quora:before {
  content: "\f2c4";
}

i.icon.quote.left:before {
  content: "\f10d";
}

i.icon.quote.right:before {
  content: "\f10e";
}

i.icon.random:before {
  content: "\f074";
}

i.icon.ravelry:before {
  content: "\f2d9";
}

i.icon.react:before {
  content: "\f41b";
}

i.icon.rebel:before {
  content: "\f1d0";
}

i.icon.recycle:before {
  content: "\f1b8";
}

i.icon.redriver:before {
  content: "\f3e3";
}

i.icon.reddit:before {
  content: "\f1a1";
}

i.icon.reddit.alien:before {
  content: "\f281";
}

i.icon.reddit.square:before {
  content: "\f1a2";
}

i.icon.redo:before {
  content: "\f01e";
}

i.icon.redo.alternate:before {
  content: "\f2f9";
}

i.icon.registered:before {
  content: "\f25d";
}

i.icon.rendact:before {
  content: "\f3e4";
}

i.icon.renren:before {
  content: "\f18b";
}

i.icon.reply:before {
  content: "\f3e5";
}

i.icon.reply.all:before {
  content: "\f122";
}

i.icon.replyd:before {
  content: "\f3e6";
}

i.icon.resolving:before {
  content: "\f3e7";
}

i.icon.retweet:before {
  content: "\f079";
}

i.icon.road:before {
  content: "\f018";
}

i.icon.rocket:before {
  content: "\f135";
}

i.icon.rocketchat:before {
  content: "\f3e8";
}

i.icon.rockrms:before {
  content: "\f3e9";
}

i.icon.rss:before {
  content: "\f09e";
}

i.icon.rss.square:before {
  content: "\f143";
}

i.icon.ruble.sign:before {
  content: "\f158";
}

i.icon.rupee.sign:before {
  content: "\f156";
}

i.icon.safari:before {
  content: "\f267";
}

i.icon.sass:before {
  content: "\f41e";
}

i.icon.save:before {
  content: "\f0c7";
}

i.icon.schlix:before {
  content: "\f3ea";
}

i.icon.scribd:before {
  content: "\f28a";
}

i.icon.search:before {
  content: "\f002";
}

i.icon.search.minus:before {
  content: "\f010";
}

i.icon.search.plus:before {
  content: "\f00e";
}

i.icon.searchengin:before {
  content: "\f3eb";
}

i.icon.sellcast:before {
  content: "\f2da";
}

i.icon.sellsy:before {
  content: "\f213";
}

i.icon.server:before {
  content: "\f233";
}

i.icon.servicestack:before {
  content: "\f3ec";
}

i.icon.share:before {
  content: "\f064";
}

i.icon.share.alternate:before {
  content: "\f1e0";
}

i.icon.share.alternate.square:before {
  content: "\f1e1";
}

i.icon.share.square:before {
  content: "\f14d";
}

i.icon.shekel.sign:before {
  content: "\f20b";
}

i.icon.shield.alternate:before {
  content: "\f3ed";
}

i.icon.ship:before {
  content: "\f21a";
}

i.icon.shipping.fast:before {
  content: "\f48b";
}

i.icon.shirtsinbulk:before {
  content: "\f214";
}

i.icon.shopping.bag:before {
  content: "\f290";
}

i.icon.shopping.basket:before {
  content: "\f291";
}

i.icon.shopping.cart:before {
  content: "\f07a";
}

i.icon.shower:before {
  content: "\f2cc";
}

i.icon.sign.language:before {
  content: "\f2a7";
}

i.icon.signal:before {
  content: "\f012";
}

i.icon.simplybuilt:before {
  content: "\f215";
}

i.icon.sistrix:before {
  content: "\f3ee";
}

i.icon.sitemap:before {
  content: "\f0e8";
}

i.icon.skyatlas:before {
  content: "\f216";
}

i.icon.skype:before {
  content: "\f17e";
}

i.icon.slack:before {
  content: "\f198";
}

i.icon.slack.hash:before {
  content: "\f3ef";
}

i.icon.sliders.horizontal:before {
  content: "\f1de";
}

i.icon.slideshare:before {
  content: "\f1e7";
}

i.icon.smile:before {
  content: "\f118";
}

i.icon.snapchat:before {
  content: "\f2ab";
}

i.icon.snapchat.ghost:before {
  content: "\f2ac";
}

i.icon.snapchat.square:before {
  content: "\f2ad";
}

i.icon.snowflake:before {
  content: "\f2dc";
}

i.icon.sort:before {
  content: "\f0dc";
}

i.icon.sort.alphabet.down:before {
  content: "\f15d";
}

i.icon.sort.alphabet.up:before {
  content: "\f15e";
}

i.icon.sort.amount.down:before {
  content: "\f160";
}

i.icon.sort.amount.up:before {
  content: "\f161";
}

i.icon.sort.down:before {
  content: "\f0dd";
}

i.icon.sort.numeric.down:before {
  content: "\f162";
}

i.icon.sort.numeric.up:before {
  content: "\f163";
}

i.icon.sort.up:before {
  content: "\f0de";
}

i.icon.soundcloud:before {
  content: "\f1be";
}

i.icon.space.shuttle:before {
  content: "\f197";
}

i.icon.speakap:before {
  content: "\f3f3";
}

i.icon.spinner:before {
  content: "\f110";
}

i.icon.spotify:before {
  content: "\f1bc";
}

i.icon.square:before {
  content: "\f0c8";
}

i.icon.square.full:before {
  content: "\f45c";
}

i.icon.stack.exchange:before {
  content: "\f18d";
}

i.icon.stack.overflow:before {
  content: "\f16c";
}

i.icon.star:before {
  content: "\f005";
}

i.icon.star.half:before {
  content: "\f089";
}

i.icon.staylinked:before {
  content: "\f3f5";
}

i.icon.steam:before {
  content: "\f1b6";
}

i.icon.steam.square:before {
  content: "\f1b7";
}

i.icon.steam.symbol:before {
  content: "\f3f6";
}

i.icon.step.backward:before {
  content: "\f048";
}

i.icon.step.forward:before {
  content: "\f051";
}

i.icon.stethoscope:before {
  content: "\f0f1";
}

i.icon.sticker.mule:before {
  content: "\f3f7";
}

i.icon.sticky.note:before {
  content: "\f249";
}

i.icon.stop:before {
  content: "\f04d";
}

i.icon.stop.circle:before {
  content: "\f28d";
}

i.icon.stopwatch:before {
  content: "\f2f2";
}

i.icon.strava:before {
  content: "\f428";
}

i.icon.street.view:before {
  content: "\f21d";
}

i.icon.strikethrough:before {
  content: "\f0cc";
}

i.icon.stripe:before {
  content: "\f429";
}

i.icon.stripe.s:before {
  content: "\f42a";
}

i.icon.studiovinari:before {
  content: "\f3f8";
}

i.icon.stumbleupon:before {
  content: "\f1a4";
}

i.icon.stumbleupon.circle:before {
  content: "\f1a3";
}

i.icon.subscript:before {
  content: "\f12c";
}

i.icon.subway:before {
  content: "\f239";
}

i.icon.suitcase:before {
  content: "\f0f2";
}

i.icon.sun:before {
  content: "\f185";
}

i.icon.superpowers:before {
  content: "\f2dd";
}

i.icon.superscript:before {
  content: "\f12b";
}

i.icon.supple:before {
  content: "\f3f9";
}

i.icon.sync:before {
  content: "\f021";
}

i.icon.sync.alternate:before {
  content: "\f2f1";
}

i.icon.syringe:before {
  content: "\f48e";
}

i.icon.table:before {
  content: "\f0ce";
}

i.icon.table.tennis:before {
  content: "\f45d";
}

i.icon.tablet:before {
  content: "\f10a";
}

i.icon.tablet.alternate:before {
  content: "\f3fa";
}

i.icon.tachometer.alternate:before {
  content: "\f3fd";
}

i.icon.tag:before {
  content: "\f02b";
}

i.icon.tags:before {
  content: "\f02c";
}

i.icon.tasks:before {
  content: "\f0ae";
}

i.icon.taxi:before {
  content: "\f1ba";
}

i.icon.telegram:before {
  content: "\f2c6";
}

i.icon.telegram.plane:before {
  content: "\f3fe";
}

i.icon.tencent.weibo:before {
  content: "\f1d5";
}

i.icon.terminal:before {
  content: "\f120";
}

i.icon.text.height:before {
  content: "\f034";
}

i.icon.text.width:before {
  content: "\f035";
}

i.icon.th:before {
  content: "\f00a";
}

i.icon.th.large:before {
  content: "\f009";
}

i.icon.th.list:before {
  content: "\f00b";
}

i.icon.themeisle:before {
  content: "\f2b2";
}

i.icon.thermometer:before {
  content: "\f491";
}

i.icon.thermometer.empty:before {
  content: "\f2cb";
}

i.icon.thermometer.full:before {
  content: "\f2c7";
}

i.icon.thermometer.half:before {
  content: "\f2c9";
}

i.icon.thermometer.quarter:before {
  content: "\f2ca";
}

i.icon.thermometer.three.quarters:before {
  content: "\f2c8";
}

i.icon.thumbs.down:before {
  content: "\f165";
}

i.icon.thumbs.up:before {
  content: "\f164";
}

i.icon.thumbtack:before {
  content: "\f08d";
}

i.icon.ticket.alternate:before {
  content: "\f3ff";
}

i.icon.times:before {
  content: "\f00d";
}

i.icon.times.circle:before {
  content: "\f057";
}

i.icon.tint:before {
  content: "\f043";
}

i.icon.toggle.off:before {
  content: "\f204";
}

i.icon.toggle.on:before {
  content: "\f205";
}

i.icon.trademark:before {
  content: "\f25c";
}

i.icon.train:before {
  content: "\f238";
}

i.icon.transgender:before {
  content: "\f224";
}

i.icon.transgender.alternate:before {
  content: "\f225";
}

i.icon.trash:before {
  content: "\f1f8";
}

i.icon.trash.alternate:before {
  content: "\f2ed";
}

i.icon.tree:before {
  content: "\f1bb";
}

i.icon.trello:before {
  content: "\f181";
}

i.icon.tripadvisor:before {
  content: "\f262";
}

i.icon.trophy:before {
  content: "\f091";
}

i.icon.truck:before {
  content: "\f0d1";
}

i.icon.tty:before {
  content: "\f1e4";
}

i.icon.tumblr:before {
  content: "\f173";
}

i.icon.tumblr.square:before {
  content: "\f174";
}

i.icon.tv:before {
  content: "\f26c";
}

i.icon.twitch:before {
  content: "\f1e8";
}

i.icon.twitter:before {
  content: "\f099";
}

i.icon.twitter.square:before {
  content: "\f081";
}

i.icon.typo3:before {
  content: "\f42b";
}

i.icon.uber:before {
  content: "\f402";
}

i.icon.uikit:before {
  content: "\f403";
}

i.icon.umbrella:before {
  content: "\f0e9";
}

i.icon.underline:before {
  content: "\f0cd";
}

i.icon.undo:before {
  content: "\f0e2";
}

i.icon.undo.alternate:before {
  content: "\f2ea";
}

i.icon.uniregistry:before {
  content: "\f404";
}

i.icon.universal.access:before {
  content: "\f29a";
}

i.icon.university:before {
  content: "\f19c";
}

i.icon.unlink:before {
  content: "\f127";
}

i.icon.unlock:before {
  content: "\f09c";
}

i.icon.unlock.alternate:before {
  content: "\f13e";
}

i.icon.untappd:before {
  content: "\f405";
}

i.icon.upload:before {
  content: "\f093";
}

i.icon.usb:before {
  content: "\f287";
}

i.icon.user:before {
  content: "\f007";
}

i.icon.user.circle:before {
  content: "\f2bd";
}

i.icon.user.md:before {
  content: "\f0f0";
}

i.icon.user.plus:before {
  content: "\f234";
}

i.icon.user.secret:before {
  content: "\f21b";
}

i.icon.user.times:before {
  content: "\f235";
}

i.icon.users:before {
  content: "\f0c0";
}

i.icon.ussunnah:before {
  content: "\f407";
}

i.icon.utensil.spoon:before {
  content: "\f2e5";
}

i.icon.utensils:before {
  content: "\f2e7";
}

i.icon.vaadin:before {
  content: "\f408";
}

i.icon.venus:before {
  content: "\f221";
}

i.icon.venus.double:before {
  content: "\f226";
}

i.icon.venus.mars:before {
  content: "\f228";
}

i.icon.viacoin:before {
  content: "\f237";
}

i.icon.viadeo:before {
  content: "\f2a9";
}

i.icon.viadeo.square:before {
  content: "\f2aa";
}

i.icon.viber:before {
  content: "\f409";
}

i.icon.video:before {
  content: "\f03d";
}

i.icon.vimeo:before {
  content: "\f40a";
}

i.icon.vimeo.square:before {
  content: "\f194";
}

i.icon.vimeo.v:before {
  content: "\f27d";
}

i.icon.vine:before {
  content: "\f1ca";
}

i.icon.vk:before {
  content: "\f189";
}

i.icon.vnv:before {
  content: "\f40b";
}

i.icon.volleyball.ball:before {
  content: "\f45f";
}

i.icon.volume.down:before {
  content: "\f027";
}

i.icon.volume.off:before {
  content: "\f026";
}

i.icon.volume.up:before {
  content: "\f028";
}

i.icon.vuejs:before {
  content: "\f41f";
}

i.icon.warehouse:before {
  content: "\f494";
}

i.icon.weibo:before {
  content: "\f18a";
}

i.icon.weight:before {
  content: "\f496";
}

i.icon.weixin:before {
  content: "\f1d7";
}

i.icon.whatsapp:before {
  content: "\f232";
}

i.icon.whatsapp.square:before {
  content: "\f40c";
}

i.icon.wheelchair:before {
  content: "\f193";
}

i.icon.whmcs:before {
  content: "\f40d";
}

i.icon.wifi:before {
  content: "\f1eb";
}

i.icon.wikipedia.w:before {
  content: "\f266";
}

i.icon.window.close:before {
  content: "\f410";
}

i.icon.window.maximize:before {
  content: "\f2d0";
}

i.icon.window.minimize:before {
  content: "\f2d1";
}

i.icon.window.restore:before {
  content: "\f2d2";
}

i.icon.windows:before {
  content: "\f17a";
}

i.icon.won.sign:before {
  content: "\f159";
}

i.icon.wordpress:before {
  content: "\f19a";
}

i.icon.wordpress.simple:before {
  content: "\f411";
}

i.icon.wpbeginner:before {
  content: "\f297";
}

i.icon.wpexplorer:before {
  content: "\f2de";
}

i.icon.wpforms:before {
  content: "\f298";
}

i.icon.wrench:before {
  content: "\f0ad";
}

i.icon.xbox:before {
  content: "\f412";
}

i.icon.xing:before {
  content: "\f168";
}

i.icon.xing.square:before {
  content: "\f169";
}

i.icon.y.combinator:before {
  content: "\f23b";
}

i.icon.yahoo:before {
  content: "\f19e";
}

i.icon.yandex:before {
  content: "\f413";
}

i.icon.yandex.international:before {
  content: "\f414";
}

i.icon.yelp:before {
  content: "\f1e9";
}

i.icon.yen.sign:before {
  content: "\f157";
}

i.icon.yoast:before {
  content: "\f2b1";
}

i.icon.youtube:before {
  content: "\f167";
}

i.icon.youtube.square:before {
  content: "\f431";
}

/* Aliases */

i.icon.chess.rock:before {
  content: "\f447";
}

i.icon.ordered.list:before {
  content: "\f0cb";
}

i.icon.unordered.list:before {
  content: "\f0ca";
}

i.icon.user.doctor:before {
  content: "\f0f0";
}

i.icon.shield:before {
  content: "\f3ed";
}

i.icon.puzzle:before {
  content: "\f12e";
}

i.icon.credit.card.amazon.pay:before {
  content: "\f42d";
}

i.icon.credit.card.american.express:before {
  content: "\f1f3";
}

i.icon.credit.card.diners.club:before {
  content: "\f24c";
}

i.icon.credit.card.discover:before {
  content: "\f1f2";
}

i.icon.credit.card.jcb:before {
  content: "\f24b";
}

i.icon.credit.card.mastercard:before {
  content: "\f1f1";
}

i.icon.credit.card.paypal:before {
  content: "\f1f4";
}

i.icon.credit.card.stripe:before {
  content: "\f1f5";
}

i.icon.credit.card.visa:before {
  content: "\f1f0";
}

i.icon.add.circle:before {
  content: "\f055";
}

i.icon.add.square:before {
  content: "\f0fe";
}

i.icon.add.to.calendar:before {
  content: "\f271";
}

i.icon.add.to.cart:before {
  content: "\f217";
}

i.icon.add.user:before {
  content: "\f234";
}

i.icon.add:before {
  content: "\f067";
}

i.icon.alarm.mute:before {
  content: "\f1f6";
}

i.icon.alarm:before {
  content: "\f0f3";
}

i.icon.ald:before {
  content: "\f2a2";
}

i.icon.als:before {
  content: "\f2a2";
}

i.icon.american.express.card:before {
  content: "\f1f3";
}

i.icon.american.express:before {
  content: "\f1f3";
}

i.icon.amex:before {
  content: "\f1f3";
}

i.icon.announcement:before {
  content: "\f0a1";
}

i.icon.area.chart:before {
  content: "\f1fe";
}

i.icon.area.graph:before {
  content: "\f1fe";
}

i.icon.arrow.down.cart:before {
  content: "\f218";
}

i.icon.asexual:before {
  content: "\f22d";
}

i.icon.asl.interpreting:before {
  content: "\f2a3";
}

i.icon.asl:before {
  content: "\f2a3";
}

i.icon.assistive.listening.devices:before {
  content: "\f2a2";
}

i.icon.attach:before {
  content: "\f0c6";
}

i.icon.attention:before {
  content: "\f06a";
}

i.icon.balance:before {
  content: "\f24e";
}

i.icon.bar:before {
  content: "\f0fc";
}

i.icon.bathtub:before {
  content: "\f2cd";
}

i.icon.battery.four:before {
  content: "\f240";
}

i.icon.battery.high:before {
  content: "\f241";
}

i.icon.battery.low:before {
  content: "\f243";
}

i.icon.battery.medium:before {
  content: "\f242";
}

i.icon.battery.one:before {
  content: "\f243";
}

i.icon.battery.three:before {
  content: "\f241";
}

i.icon.battery.two:before {
  content: "\f242";
}

i.icon.battery.zero:before {
  content: "\f244";
}

i.icon.birthday:before {
  content: "\f1fd";
}

i.icon.block.layout:before {
  content: "\f009";
}

i.icon.bluetooth.alternative:before {
  content: "\f294";
}

i.icon.broken.chain:before {
  content: "\f127";
}

i.icon.browser:before {
  content: "\f022";
}

i.icon.call.square:before {
  content: "\f098";
}

i.icon.call:before {
  content: "\f095";
}

i.icon.cancel:before {
  content: "\f00d";
}

i.icon.cart:before {
  content: "\f07a";
}

i.icon.cc:before {
  content: "\f20a";
}

i.icon.chain:before {
  content: "\f0c1";
}

i.icon.chat:before {
  content: "\f075";
}

i.icon.checked.calendar:before {
  content: "\f274";
}

i.icon.checkmark:before {
  content: "\f00c";
}

i.icon.circle.notched:before {
  content: "\f1ce";
}

i.icon.close:before {
  content: "\f00d";
}

i.icon.cny:before {
  content: "\f157";
}

i.icon.cocktail:before {
  content: "\f000";
}

i.icon.commenting:before {
  content: "\f27a";
}

i.icon.computer:before {
  content: "\f108";
}

i.icon.configure:before {
  content: "\f0ad";
}

i.icon.content:before {
  content: "\f0c9";
}

i.icon.deafness:before {
  content: "\f2a4";
}

i.icon.delete.calendar:before {
  content: "\f273";
}

i.icon.delete:before {
  content: "\f00d";
}

i.icon.detective:before {
  content: "\f21b";
}

i.icon.diners.club.card:before {
  content: "\f24c";
}

i.icon.diners.club:before {
  content: "\f24c";
}

i.icon.discover.card:before {
  content: "\f1f2";
}

i.icon.discover:before {
  content: "\f1f2";
}

i.icon.discussions:before {
  content: "\f086";
}

i.icon.doctor:before {
  content: "\f0f0";
}

i.icon.dollar:before {
  content: "\f155";
}

i.icon.dont:before {
  content: "\f05e";
}

i.icon.dribble:before {
  content: "\f17d";
}

i.icon.drivers.license:before {
  content: "\f2c2";
}

i.icon.dropdown:before {
  content: "\f0d7";
}

i.icon.eercast:before {
  content: "\f2da";
}

i.icon.emergency:before {
  content: "\f0f9";
}

i.icon.envira.gallery:before {
  content: "\f299";
}

i.icon.erase:before {
  content: "\f12d";
}

i.icon.eur:before {
  content: "\f153";
}

i.icon.euro:before {
  content: "\f153";
}

i.icon.eyedropper:before {
  content: "\f1fb";
}

i.icon.fa:before {
  content: "\f2b4";
}

i.icon.factory:before {
  content: "\f275";
}

i.icon.favorite:before {
  content: "\f005";
}

i.icon.feed:before {
  content: "\f09e";
}

i.icon.female.homosexual:before {
  content: "\f226";
}

i.icon.file.text:before {
  content: "\f15c";
}

i.icon.find:before {
  content: "\f1e5";
}

i.icon.first.aid:before {
  content: "\f0fa";
}

i.icon.five.hundred.pixels:before {
  content: "\f26e";
}

i.icon.fork:before {
  content: "\f126";
}

i.icon.game:before {
  content: "\f11b";
}

i.icon.gay:before {
  content: "\f227";
}

i.icon.gbp:before {
  content: "\f154";
}

i.icon.gittip:before {
  content: "\f184";
}

i.icon.google.plus.circle:before {
  content: "\f2b3";
}

i.icon.google.plus.official:before {
  content: "\f2b3";
}

i.icon.grab:before {
  content: "\f255";
}

i.icon.graduation:before {
  content: "\f19d";
}

i.icon.grid.layout:before {
  content: "\f00a";
}

i.icon.group:before {
  content: "\f0c0";
}

i.icon.h:before {
  content: "\f0fd";
}

i.icon.hand.victory:before {
  content: "\f25b";
}

i.icon.handicap:before {
  content: "\f193";
}

i.icon.hard.of.hearing:before {
  content: "\f2a4";
}

i.icon.header:before {
  content: "\f1dc";
}

i.icon.help.circle:before {
  content: "\f059";
}

i.icon.help:before {
  content: "\f128";
}

i.icon.heterosexual:before {
  content: "\f228";
}

i.icon.hide:before {
  content: "\f070";
}

i.icon.hotel:before {
  content: "\f236";
}

i.icon.hourglass.four:before {
  content: "\f254";
}

i.icon.hourglass.full:before {
  content: "\f254";
}

i.icon.hourglass.one:before {
  content: "\f251";
}

i.icon.hourglass.three:before {
  content: "\f253";
}

i.icon.hourglass.two:before {
  content: "\f252";
}

i.icon.idea:before {
  content: "\f0eb";
}

i.icon.ils:before {
  content: "\f20b";
}

i.icon.in-cart:before {
  content: "\f218";
}

i.icon.inr:before {
  content: "\f156";
}

i.icon.intergender:before {
  content: "\f224";
}

i.icon.intersex:before {
  content: "\f224";
}

i.icon.japan.credit.bureau.card:before {
  content: "\f24b";
}

i.icon.japan.credit.bureau:before {
  content: "\f24b";
}

i.icon.jcb:before {
  content: "\f24b";
}

i.icon.jpy:before {
  content: "\f157";
}

i.icon.krw:before {
  content: "\f159";
}

i.icon.lab:before {
  content: "\f0c3";
}

i.icon.law:before {
  content: "\f24e";
}

i.icon.legal:before {
  content: "\f0e3";
}

i.icon.lesbian:before {
  content: "\f226";
}

i.icon.lightning:before {
  content: "\f0e7";
}

i.icon.like:before {
  content: "\f004";
}

i.icon.line.graph:before {
  content: "\f201";
}

i.icon.linkedin.square:before {
  content: "\f08c";
}

i.icon.linkify:before {
  content: "\f0c1";
}

i.icon.lira:before {
  content: "\f195";
}

i.icon.list.layout:before {
  content: "\f00b";
}

i.icon.magnify:before {
  content: "\f00e";
}

i.icon.mail.forward:before {
  content: "\f064";
}

i.icon.mail.square:before {
  content: "\f199";
}

i.icon.mail:before {
  content: "\f0e0";
}

i.icon.male.homosexual:before {
  content: "\f227";
}

i.icon.man:before {
  content: "\f222";
}

i.icon.marker:before {
  content: "\f041";
}

i.icon.mars.alternate:before {
  content: "\f229";
}

i.icon.mars.horizontal:before {
  content: "\f22b";
}

i.icon.mars.vertical:before {
  content: "\f22a";
}

i.icon.mastercard.card:before {
  content: "\f1f1";
}

i.icon.mastercard:before {
  content: "\f1f1";
}

i.icon.microsoft.edge:before {
  content: "\f282";
}

i.icon.military:before {
  content: "\f0fb";
}

i.icon.ms.edge:before {
  content: "\f282";
}

i.icon.mute:before {
  content: "\f131";
}

i.icon.new.pied.piper:before {
  content: "\f2ae";
}

i.icon.non.binary.transgender:before {
  content: "\f223";
}

i.icon.numbered.list:before {
  content: "\f0cb";
}

i.icon.optinmonster:before {
  content: "\f23c";
}

i.icon.options:before {
  content: "\f1de";
}

i.icon.other.gender.horizontal:before {
  content: "\f22b";
}

i.icon.other.gender.vertical:before {
  content: "\f22a";
}

i.icon.other.gender:before {
  content: "\f229";
}

i.icon.payment:before {
  content: "\f09d";
}

i.icon.paypal.card:before {
  content: "\f1f4";
}

i.icon.pencil.square:before {
  content: "\f14b";
}

i.icon.photo:before {
  content: "\f030";
}

i.icon.picture:before {
  content: "\f03e";
}

i.icon.pie.chart:before {
  content: "\f200";
}

i.icon.pie.graph:before {
  content: "\f200";
}

i.icon.pied.piper.hat:before {
  content: "\f2ae";
}

i.icon.pin:before {
  content: "\f08d";
}

i.icon.plus.cart:before {
  content: "\f217";
}

i.icon.pocket:before {
  content: "\f265";
}

i.icon.point:before {
  content: "\f041";
}

i.icon.pointing.down:before {
  content: "\f0a7";
}

i.icon.pointing.left:before {
  content: "\f0a5";
}

i.icon.pointing.right:before {
  content: "\f0a4";
}

i.icon.pointing.up:before {
  content: "\f0a6";
}

i.icon.pound:before {
  content: "\f154";
}

i.icon.power.cord:before {
  content: "\f1e6";
}

i.icon.power:before {
  content: "\f011";
}

i.icon.privacy:before {
  content: "\f084";
}

i.icon.r.circle:before {
  content: "\f25d";
}

i.icon.rain:before {
  content: "\f0e9";
}

i.icon.record:before {
  content: "\f03d";
}

i.icon.refresh:before {
  content: "\f021";
}

i.icon.remove.circle:before {
  content: "\f057";
}

i.icon.remove.from.calendar:before {
  content: "\f272";
}

i.icon.remove.user:before {
  content: "\f235";
}

i.icon.remove:before {
  content: "\f00d";
}

i.icon.repeat:before {
  content: "\f01e";
}

i.icon.rmb:before {
  content: "\f157";
}

i.icon.rouble:before {
  content: "\f158";
}

i.icon.rub:before {
  content: "\f158";
}

i.icon.ruble:before {
  content: "\f158";
}

i.icon.rupee:before {
  content: "\f156";
}

i.icon.s15:before {
  content: "\f2cd";
}

i.icon.selected.radio:before {
  content: "\f192";
}

i.icon.send:before {
  content: "\f1d8";
}

i.icon.setting:before {
  content: "\f013";
}

i.icon.settings:before {
  content: "\f085";
}

i.icon.shekel:before {
  content: "\f20b";
}

i.icon.sheqel:before {
  content: "\f20b";
}

i.icon.shipping:before {
  content: "\f0d1";
}

i.icon.shop:before {
  content: "\f07a";
}

i.icon.shuffle:before {
  content: "\f074";
}

i.icon.shutdown:before {
  content: "\f011";
}

i.icon.sidebar:before {
  content: "\f0c9";
}

i.icon.signing:before {
  content: "\f2a7";
}

i.icon.signup:before {
  content: "\f044";
}

i.icon.sliders:before {
  content: "\f1de";
}

i.icon.soccer:before {
  content: "\f1e3";
}

i.icon.sort.alphabet.ascending:before {
  content: "\f15d";
}

i.icon.sort.alphabet.descending:before {
  content: "\f15e";
}

i.icon.sort.ascending:before {
  content: "\f0de";
}

i.icon.sort.content.ascending:before {
  content: "\f160";
}

i.icon.sort.content.descending:before {
  content: "\f161";
}

i.icon.sort.descending:before {
  content: "\f0dd";
}

i.icon.sort.numeric.ascending:before {
  content: "\f162";
}

i.icon.sort.numeric.descending:before {
  content: "\f163";
}

i.icon.sound:before {
  content: "\f025";
}

i.icon.spy:before {
  content: "\f21b";
}

i.icon.stripe.card:before {
  content: "\f1f5";
}

i.icon.student:before {
  content: "\f19d";
}

i.icon.talk:before {
  content: "\f27a";
}

i.icon.target:before {
  content: "\f140";
}

i.icon.teletype:before {
  content: "\f1e4";
}

i.icon.television:before {
  content: "\f26c";
}

i.icon.text.cursor:before {
  content: "\f246";
}

i.icon.text.telephone:before {
  content: "\f1e4";
}

i.icon.theme.isle:before {
  content: "\f2b2";
}

i.icon.theme:before {
  content: "\f043";
}

i.icon.thermometer:before {
  content: "\f2c7";
}

i.icon.thumb.tack:before {
  content: "\f08d";
}

i.icon.time:before {
  content: "\f017";
}

i.icon.tm:before {
  content: "\f25c";
}

i.icon.toggle.down:before {
  content: "\f150";
}

i.icon.toggle.left:before {
  content: "\f191";
}

i.icon.toggle.right:before {
  content: "\f152";
}

i.icon.toggle.up:before {
  content: "\f151";
}

i.icon.translate:before {
  content: "\f1ab";
}

i.icon.travel:before {
  content: "\f0b1";
}

i.icon.treatment:before {
  content: "\f0f1";
}

i.icon.triangle.down:before {
  content: "\f0d7";
}

i.icon.triangle.left:before {
  content: "\f0d9";
}

i.icon.triangle.right:before {
  content: "\f0da";
}

i.icon.triangle.up:before {
  content: "\f0d8";
}

i.icon.try:before {
  content: "\f195";
}

i.icon.unhide:before {
  content: "\f06e";
}

i.icon.unlinkify:before {
  content: "\f127";
}

i.icon.unmute:before {
  content: "\f130";
}

i.icon.usd:before {
  content: "\f155";
}

i.icon.user.cancel:before {
  content: "\f235";
}

i.icon.user.close:before {
  content: "\f235";
}

i.icon.user.delete:before {
  content: "\f235";
}

i.icon.user.x:before {
  content: "\f235";
}

i.icon.vcard:before {
  content: "\f2bb";
}

i.icon.video.camera:before {
  content: "\f03d";
}

i.icon.video.play:before {
  content: "\f144";
}

i.icon.visa.card:before {
  content: "\f1f0";
}

i.icon.visa:before {
  content: "\f1f0";
}

i.icon.volume.control.phone:before {
  content: "\f2a0";
}

i.icon.wait:before {
  content: "\f017";
}

i.icon.warning.circle:before {
  content: "\f06a";
}

i.icon.warning.sign:before {
  content: "\f071";
}

i.icon.warning:before {
  content: "\f12a";
}

i.icon.wechat:before {
  content: "\f1d7";
}

i.icon.wi-fi:before {
  content: "\f1eb";
}

i.icon.wikipedia:before {
  content: "\f266";
}

i.icon.winner:before {
  content: "\f091";
}

i.icon.wizard:before {
  content: "\f0d0";
}

i.icon.woman:before {
  content: "\f221";
}

i.icon.won:before {
  content: "\f159";
}

i.icon.wordpress.beginner:before {
  content: "\f297";
}

i.icon.wordpress.forms:before {
  content: "\f298";
}

i.icon.world:before {
  content: "\f0ac";
}

i.icon.write.square:before {
  content: "\f14b";
}

i.icon.x:before {
  content: "\f00d";
}

i.icon.yc:before {
  content: "\f23b";
}

i.icon.ycombinator:before {
  content: "\f23b";
}

i.icon.yen:before {
  content: "\f157";
}

i.icon.zip:before {
  content: "\f187";
}

i.icon.zoom-in:before {
  content: "\f00e";
}

i.icon.zoom-out:before {
  content: "\f010";
}

i.icon.zoom:before {
  content: "\f00e";
}

i.icon.bitbucket.square:before {
  content: "\f171";
}

i.icon.checkmark.box:before {
  content: "\f14a";
}

i.icon.circle.thin:before {
  content: "\f111";
}

i.icon.cloud.download:before {
  content: "\f381";
}

i.icon.cloud.upload:before {
  content: "\f382";
}

i.icon.compose:before {
  content: "\f303";
}

i.icon.conversation:before {
  content: "\f086";
}

i.icon.credit.card.alternative:before {
  content: "\f09d";
}

i.icon.currency:before {
  content: "\f3d1";
}

i.icon.dashboard:before {
  content: "\f3fd";
}

i.icon.diamond:before {
  content: "\f3a5";
}

i.icon.disk:before {
  content: "\f0a0";
}

i.icon.exchange:before {
  content: "\f362";
}

i.icon.external.share:before {
  content: "\f14d";
}

i.icon.external.square:before {
  content: "\f360";
}

i.icon.external:before {
  content: "\f35d";
}

i.icon.facebook.official:before {
  content: "\f082";
}

i.icon.food:before {
  content: "\f2e7";
}

i.icon.hourglass.zero:before {
  content: "\f253";
}

i.icon.level.down:before {
  content: "\f3be";
}

i.icon.level.up:before {
  content: "\f3bf";
}

i.icon.logout:before {
  content: "\f2f5";
}

i.icon.meanpath:before {
  content: "\f0c8";
}

i.icon.money:before {
  content: "\f3d1";
}

i.icon.move:before {
  content: "\f0b2";
}

i.icon.pencil:before {
  content: "\f303";
}

i.icon.protect:before {
  content: "\f023";
}

i.icon.radio:before {
  content: "\f192";
}

i.icon.remove.bookmark:before {
  content: "\f02e";
}

i.icon.resize.horizontal:before {
  content: "\f337";
}

i.icon.resize.vertical:before {
  content: "\f338";
}

i.icon.sign-in:before {
  content: "\f2f6";
}

i.icon.sign-out:before {
  content: "\f2f5";
}

i.icon.spoon:before {
  content: "\f2e5";
}

i.icon.star.half.empty:before {
  content: "\f089";
}

i.icon.star.half.full:before {
  content: "\f089";
}

i.icon.ticket:before {
  content: "\f3ff";
}

i.icon.times.rectangle:before {
  content: "\f410";
}

i.icon.write:before {
  content: "\f303";
}

i.icon.youtube.play:before {
  content: "\f167";
}

/*******************************
        Outline Icons
*******************************/

/* Outline Icon */

/* Load & Define Icon Font */

@font-face {
  font-family: 'outline-icons';
  src: url("./themes/default/assets/fonts/outline-icons.eot");
  src: url("./themes/default/assets/fonts/outline-icons.eot?#iefix") format('embedded-opentype'), url("./themes/default/assets/fonts/outline-icons.woff2") format('woff2'), url("./themes/default/assets/fonts/outline-icons.woff") format('woff'), url("./themes/default/assets/fonts/outline-icons.ttf") format('truetype'), url("./themes/default/assets/fonts/outline-icons.svg#icons") format('svg');
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-transform: none;
}

i.icon.outline {
  font-family: 'outline-icons';
}

/* Icon Definitions */

i.icon.address.book.outline:before {
  content: "\f2b9";
}

i.icon.address.card.outline:before {
  content: "\f2bb";
}

i.icon.arrow.alternate.circle.down.outline:before {
  content: "\f358";
}

i.icon.arrow.alternate.circle.left.outline:before {
  content: "\f359";
}

i.icon.arrow.alternate.circle.right.outline:before {
  content: "\f35a";
}

i.icon.arrow.alternate.circle.up.outline:before {
  content: "\f35b";
}

i.icon.bell.outline:before {
  content: "\f0f3";
}

i.icon.bell.slash.outline:before {
  content: "\f1f6";
}

i.icon.bookmark.outline:before {
  content: "\f02e";
}

i.icon.building.outline:before {
  content: "\f1ad";
}

i.icon.calendar.outline:before {
  content: "\f133";
}

i.icon.calendar.alternate.outline:before {
  content: "\f073";
}

i.icon.calendar.check.outline:before {
  content: "\f274";
}

i.icon.calendar.minus.outline:before {
  content: "\f272";
}

i.icon.calendar.plus.outline:before {
  content: "\f271";
}

i.icon.calendar.times.outline:before {
  content: "\f273";
}

i.icon.caret.square.down.outline:before {
  content: "\f150";
}

i.icon.caret.square.left.outline:before {
  content: "\f191";
}

i.icon.caret.square.right.outline:before {
  content: "\f152";
}

i.icon.caret.square.up.outline:before {
  content: "\f151";
}

i.icon.chart.bar.outline:before {
  content: "\f080";
}

i.icon.check.circle.outline:before {
  content: "\f058";
}

i.icon.check.square.outline:before {
  content: "\f14a";
}

i.icon.circle.outline:before {
  content: "\f111";
}

i.icon.clipboard.outline:before {
  content: "\f328";
}

i.icon.clock.outline:before {
  content: "\f017";
}

i.icon.clone.outline:before {
  content: "\f24d";
}

i.icon.closed.captioning.outline:before {
  content: "\f20a";
}

i.icon.comment.outline:before {
  content: "\f075";
}

i.icon.comment.alternate.outline:before {
  content: "\f27a";
}

i.icon.comments.outline:before {
  content: "\f086";
}

i.icon.compass.outline:before {
  content: "\f14e";
}

i.icon.copy.outline:before {
  content: "\f0c5";
}

i.icon.copyright.outline:before {
  content: "\f1f9";
}

i.icon.credit.card.outline:before {
  content: "\f09d";
}

i.icon.dot.circle.outline:before {
  content: "\f192";
}

i.icon.edit.outline:before {
  content: "\f044";
}

i.icon.envelope.outline:before {
  content: "\f0e0";
}

i.icon.envelope.open.outline:before {
  content: "\f2b6";
}

i.icon.eye.slash.outline:before {
  content: "\f070";
}

i.icon.file.outline:before {
  content: "\f15b";
}

i.icon.file.alternate.outline:before {
  content: "\f15c";
}

i.icon.file.archive.outline:before {
  content: "\f1c6";
}

i.icon.file.audio.outline:before {
  content: "\f1c7";
}

i.icon.file.code.outline:before {
  content: "\f1c9";
}

i.icon.file.excel.outline:before {
  content: "\f1c3";
}

i.icon.file.image.outline:before {
  content: "\f1c5";
}

i.icon.file.pdf.outline:before {
  content: "\f1c1";
}

i.icon.file.powerpoint.outline:before {
  content: "\f1c4";
}

i.icon.file.video.outline:before {
  content: "\f1c8";
}

i.icon.file.word.outline:before {
  content: "\f1c2";
}

i.icon.flag.outline:before {
  content: "\f024";
}

i.icon.folder.outline:before {
  content: "\f07b";
}

i.icon.folder.open.outline:before {
  content: "\f07c";
}

i.icon.frown.outline:before {
  content: "\f119";
}

i.icon.futbol.outline:before {
  content: "\f1e3";
}

i.icon.gem.outline:before {
  content: "\f3a5";
}

i.icon.hand.lizard.outline:before {
  content: "\f258";
}

i.icon.hand.paper.outline:before {
  content: "\f256";
}

i.icon.hand.peace.outline:before {
  content: "\f25b";
}

i.icon.hand.point.down.outline:before {
  content: "\f0a7";
}

i.icon.hand.point.left.outline:before {
  content: "\f0a5";
}

i.icon.hand.point.right.outline:before {
  content: "\f0a4";
}

i.icon.hand.point.up.outline:before {
  content: "\f0a6";
}

i.icon.hand.pointer.outline:before {
  content: "\f25a";
}

i.icon.hand.rock.outline:before {
  content: "\f255";
}

i.icon.hand.scissors.outline:before {
  content: "\f257";
}

i.icon.hand.spock.outline:before {
  content: "\f259";
}

i.icon.handshake.outline:before {
  content: "\f2b5";
}

i.icon.hdd.outline:before {
  content: "\f0a0";
}

i.icon.heart.outline:before {
  content: "\f004";
}

i.icon.hospital.outline:before {
  content: "\f0f8";
}

i.icon.hourglass.outline:before {
  content: "\f254";
}

i.icon.id.badge.outline:before {
  content: "\f2c1";
}

i.icon.id.card.outline:before {
  content: "\f2c2";
}

i.icon.image.outline:before {
  content: "\f03e";
}

i.icon.images.outline:before {
  content: "\f302";
}

i.icon.keyboard.outline:before {
  content: "\f11c";
}

i.icon.lemon.outline:before {
  content: "\f094";
}

i.icon.life.ring.outline:before {
  content: "\f1cd";
}

i.icon.lightbulb.outline:before {
  content: "\f0eb";
}

i.icon.list.alternate.outline:before {
  content: "\f022";
}

i.icon.map.outline:before {
  content: "\f279";
}

i.icon.meh.outline:before {
  content: "\f11a";
}

i.icon.minus.square.outline:before {
  content: "\f146";
}

i.icon.money.bill.alternate.outline:before {
  content: "\f3d1";
}

i.icon.moon.outline:before {
  content: "\f186";
}

i.icon.newspaper.outline:before {
  content: "\f1ea";
}

i.icon.object.group.outline:before {
  content: "\f247";
}

i.icon.object.ungroup.outline:before {
  content: "\f248";
}

i.icon.paper.plane.outline:before {
  content: "\f1d8";
}

i.icon.pause.circle.outline:before {
  content: "\f28b";
}

i.icon.play.circle.outline:before {
  content: "\f144";
}

i.icon.plus.square.outline:before {
  content: "\f0fe";
}

i.icon.question.circle.outline:before {
  content: "\f059";
}

i.icon.registered.outline:before {
  content: "\f25d";
}

i.icon.save.outline:before {
  content: "\f0c7";
}

i.icon.share.square.outline:before {
  content: "\f14d";
}

i.icon.smile.outline:before {
  content: "\f118";
}

i.icon.snowflake.outline:before {
  content: "\f2dc";
}

i.icon.square.outline:before {
  content: "\f0c8";
}

i.icon.star.outline:before {
  content: "\f005";
}

i.icon.star.half.outline:before {
  content: "\f089";
}

i.icon.sticky.note.outline:before {
  content: "\f249";
}

i.icon.stop.circle.outline:before {
  content: "\f28d";
}

i.icon.sun.outline:before {
  content: "\f185";
}

i.icon.thumbs.down.outline:before {
  content: "\f165";
}

i.icon.thumbs.up.outline:before {
  content: "\f164";
}

i.icon.times.circle.outline:before {
  content: "\f057";
}

i.icon.trash.alternate.outline:before {
  content: "\f2ed";
}

i.icon.user.outline:before {
  content: "\f007";
}

i.icon.user.circle.outline:before {
  content: "\f2bd";
}

i.icon.window.close.outline:before {
  content: "\f410";
}

i.icon.window.maximize.outline:before {
  content: "\f2d0";
}

i.icon.window.minimize.outline:before {
  content: "\f2d1";
}

i.icon.window.restore.outline:before {
  content: "\f2d2";
}

/* Outline Aliases */

i.icon.disk.outline:before {
  content: "\f0a0";
}

i.icon.heart.empty,
i.icon.star.empty {
  font-family: 'outline-icons';
}

i.icon.heart.empty:before {
  content: "\f004";
}

i.icon.star.empty:before {
  content: "\f089";
}

/*******************************
           Brand Icons
*******************************/

/* Load & Define Brand Font */

@font-face {
  font-family: 'brand-icons';
  src: url("./themes/default/assets/fonts/brand-icons.eot");
  src: url("./themes/default/assets/fonts/brand-icons.eot?#iefix") format('embedded-opentype'), url("./themes/default/assets/fonts/brand-icons.woff2") format('woff2'), url("./themes/default/assets/fonts/brand-icons.woff") format('woff'), url("./themes/default/assets/fonts/brand-icons.ttf") format('truetype'), url("./themes/default/assets/fonts/brand-icons.svg#icons") format('svg');
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-transform: none;
}

/* Brand Icon Font Family */

i.icon.\35 00px,
i.icon.accessible.icon,
i.icon.accusoft,
i.icon.adn,
i.icon.adversal,
i.icon.affiliatetheme,
i.icon.algolia,
i.icon.amazon,
i.icon.amazon.pay,
i.icon.amilia,
i.icon.android,
i.icon.angellist,
i.icon.angrycreative,
i.icon.angular,
i.icon.app.store,
i.icon.app.store.ios,
i.icon.apper,
i.icon.apple,
i.icon.apple.pay,
i.icon.asymmetrik,
i.icon.audible,
i.icon.autoprefixer,
i.icon.avianex,
i.icon.aviato,
i.icon.aws,
i.icon.bandcamp,
i.icon.behance,
i.icon.behance.square,
i.icon.bimobject,
i.icon.bitbucket,
i.icon.bitcoin,
i.icon.bity,
i.icon.black.tie,
i.icon.blackberry,
i.icon.blogger,
i.icon.blogger.b,
i.icon.bluetooth,
i.icon.bluetooth.b,
i.icon.btc,
i.icon.buromobelexperte,
i.icon.buysellads,
i.icon.cc.amazon.pay,
i.icon.cc.amex,
i.icon.cc.apple.pay,
i.icon.cc.diners.club,
i.icon.cc.discover,
i.icon.cc.jcb,
i.icon.cc.mastercard,
i.icon.cc.paypal,
i.icon.cc.stripe,
i.icon.cc.visa,
i.icon.centercode,
i.icon.chrome,
i.icon.cloudscale,
i.icon.cloudsmith,
i.icon.cloudversify,
i.icon.codepen,
i.icon.codiepie,
i.icon.connectdevelop,
i.icon.contao,
i.icon.cpanel,
i.icon.creative.commons,
i.icon.css3,
i.icon.css3.alternate,
i.icon.cuttlefish,
i.icon.d.and.d,
i.icon.dashcube,
i.icon.delicious,
i.icon.deploydog,
i.icon.deskpro,
i.icon.deviantart,
i.icon.digg,
i.icon.digital.ocean,
i.icon.discord,
i.icon.discourse,
i.icon.dochub,
i.icon.docker,
i.icon.draft2digital,
i.icon.dribbble,
i.icon.dribbble.square,
i.icon.dropbox,
i.icon.drupal,
i.icon.dyalog,
i.icon.earlybirds,
i.icon.edge,
i.icon.elementor,
i.icon.ember,
i.icon.empire,
i.icon.envira,
i.icon.erlang,
i.icon.ethereum,
i.icon.etsy,
i.icon.expeditedssl,
i.icon.facebook,
i.icon.facebook.f,
i.icon.facebook.messenger,
i.icon.facebook.square,
i.icon.firefox,
i.icon.first.order,
i.icon.firstdraft,
i.icon.flickr,
i.icon.flipboard,
i.icon.fly,
i.icon.font.awesome,
i.icon.font.awesome.alternate,
i.icon.font.awesome.flag,
i.icon.fonticons,
i.icon.fonticons.fi,
i.icon.fort.awesome,
i.icon.fort.awesome.alternate,
i.icon.forumbee,
i.icon.foursquare,
i.icon.free.code.camp,
i.icon.freebsd,
i.icon.get.pocket,
i.icon.gg,
i.icon.gg.circle,
i.icon.git,
i.icon.git.square,
i.icon.github,
i.icon.github.alternate,
i.icon.github.square,
i.icon.gitkraken,
i.icon.gitlab,
i.icon.gitter,
i.icon.glide,
i.icon.glide.g,
i.icon.gofore,
i.icon.goodreads,
i.icon.goodreads.g,
i.icon.google,
i.icon.google.drive,
i.icon.google.play,
i.icon.google.plus,
i.icon.google.plus.g,
i.icon.google.plus.square,
i.icon.google.wallet,
i.icon.gratipay,
i.icon.grav,
i.icon.gripfire,
i.icon.grunt,
i.icon.gulp,
i.icon.hacker.news,
i.icon.hacker.news.square,
i.icon.hips,
i.icon.hire.a.helper,
i.icon.hooli,
i.icon.hotjar,
i.icon.houzz,
i.icon.html5,
i.icon.hubspot,
i.icon.imdb,
i.icon.instagram,
i.icon.internet.explorer,
i.icon.ioxhost,
i.icon.itunes,
i.icon.itunes.note,
i.icon.jenkins,
i.icon.joget,
i.icon.joomla,
i.icon.js,
i.icon.js.square,
i.icon.jsfiddle,
i.icon.keycdn,
i.icon.kickstarter,
i.icon.kickstarter.k,
i.icon.korvue,
i.icon.laravel,
i.icon.lastfm,
i.icon.lastfm.square,
i.icon.leanpub,
i.icon.less,
i.icon.linechat,
i.icon.linkedin,
i.icon.linkedin.alternate,
i.icon.linkedin.in,
i.icon.linode,
i.icon.linux,
i.icon.lyft,
i.icon.magento,
i.icon.maxcdn,
i.icon.medapps,
i.icon.medium,
i.icon.medium.m,
i.icon.medrt,
i.icon.meetup,
i.icon.microsoft,
i.icon.mix,
i.icon.mixcloud,
i.icon.mizuni,
i.icon.modx,
i.icon.monero,
i.icon.napster,
i.icon.nintendo.switch,
i.icon.node,
i.icon.node.js,
i.icon.npm,
i.icon.ns8,
i.icon.nutritionix,
i.icon.odnoklassniki,
i.icon.odnoklassniki.square,
i.icon.opencart,
i.icon.openid,
i.icon.opera,
i.icon.optin.monster,
i.icon.osi,
i.icon.page4,
i.icon.pagelines,
i.icon.palfed,
i.icon.patreon,
i.icon.paypal,
i.icon.periscope,
i.icon.phabricator,
i.icon.phoenix.framework,
i.icon.php,
i.icon.pied.piper,
i.icon.pied.piper.alternate,
i.icon.pied.piper.pp,
i.icon.pinterest,
i.icon.pinterest.p,
i.icon.pinterest.square,
i.icon.playstation,
i.icon.product.hunt,
i.icon.pushed,
i.icon.python,
i.icon.qq,
i.icon.quinscape,
i.icon.quora,
i.icon.ravelry,
i.icon.react,
i.icon.rebel,
i.icon.redriver,
i.icon.reddit,
i.icon.reddit.alien,
i.icon.reddit.square,
i.icon.rendact,
i.icon.renren,
i.icon.replyd,
i.icon.resolving,
i.icon.rocketchat,
i.icon.rockrms,
i.icon.safari,
i.icon.sass,
i.icon.schlix,
i.icon.scribd,
i.icon.searchengin,
i.icon.sellcast,
i.icon.sellsy,
i.icon.servicestack,
i.icon.shirtsinbulk,
i.icon.simplybuilt,
i.icon.sistrix,
i.icon.skyatlas,
i.icon.skype,
i.icon.slack,
i.icon.slack.hash,
i.icon.slideshare,
i.icon.snapchat,
i.icon.snapchat.ghost,
i.icon.snapchat.square,
i.icon.soundcloud,
i.icon.speakap,
i.icon.spotify,
i.icon.stack.exchange,
i.icon.stack.overflow,
i.icon.staylinked,
i.icon.steam,
i.icon.steam.square,
i.icon.steam.symbol,
i.icon.sticker.mule,
i.icon.strava,
i.icon.stripe,
i.icon.stripe.s,
i.icon.studiovinari,
i.icon.stumbleupon,
i.icon.stumbleupon.circle,
i.icon.superpowers,
i.icon.supple,
i.icon.telegram,
i.icon.telegram.plane,
i.icon.tencent.weibo,
i.icon.themeisle,
i.icon.trello,
i.icon.tripadvisor,
i.icon.tumblr,
i.icon.tumblr.square,
i.icon.twitch,
i.icon.twitter,
i.icon.twitter.square,
i.icon.typo3,
i.icon.uber,
i.icon.uikit,
i.icon.uniregistry,
i.icon.untappd,
i.icon.usb,
i.icon.ussunnah,
i.icon.vaadin,
i.icon.viacoin,
i.icon.viadeo,
i.icon.viadeo.square,
i.icon.viber,
i.icon.vimeo,
i.icon.vimeo.square,
i.icon.vimeo.v,
i.icon.vine,
i.icon.vk,
i.icon.vnv,
i.icon.vuejs,
i.icon.wechat,
i.icon.weibo,
i.icon.weixin,
i.icon.whatsapp,
i.icon.whatsapp.square,
i.icon.whmcs,
i.icon.wikipedia.w,
i.icon.windows,
i.icon.wordpress,
i.icon.wordpress.simple,
i.icon.wpbeginner,
i.icon.wpexplorer,
i.icon.wpforms,
i.icon.xbox,
i.icon.xing,
i.icon.xing.square,
i.icon.y.combinator,
i.icon.yahoo,
i.icon.yandex,
i.icon.yandex.international,
i.icon.yelp,
i.icon.yoast,
i.icon.youtube,
i.icon.youtube.square {
  font-family: 'brand-icons';
}

/* Brand Icons Ideally Would Be Defined Here */

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Image
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Image
*******************************/

.ui.image {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  background-color: transparent;
}

img.ui.image {
  display: block;
}

.ui.image svg,
.ui.image img {
  display: block;
  max-width: 100%;
  height: auto;
}

/*******************************
            States
*******************************/

.ui.hidden.images,
.ui.hidden.image {
  display: none;
}

.ui.hidden.transition.images,
.ui.hidden.transition.image {
  display: block;
  visibility: hidden;
}

.ui.images > .hidden.transition {
  display: inline-block;
  visibility: hidden;
}

.ui.disabled.images,
.ui.disabled.image {
  cursor: default;
  opacity: 0.45;
}

/*******************************
          Variations
*******************************/

/*--------------
     Inline
---------------*/

.ui.inline.image,
.ui.inline.image svg,
.ui.inline.image img {
  display: inline-block;
}

/*------------------
  Vertical Aligned
-------------------*/

.ui.top.aligned.images .image,
.ui.top.aligned.image,
.ui.top.aligned.image svg,
.ui.top.aligned.image img {
  display: inline-block;
  vertical-align: top;
}

.ui.middle.aligned.images .image,
.ui.middle.aligned.image,
.ui.middle.aligned.image svg,
.ui.middle.aligned.image img {
  display: inline-block;
  vertical-align: middle;
}

.ui.bottom.aligned.images .image,
.ui.bottom.aligned.image,
.ui.bottom.aligned.image svg,
.ui.bottom.aligned.image img {
  display: inline-block;
  vertical-align: bottom;
}

/*--------------
     Rounded
---------------*/

.ui.rounded.images .image,
.ui.rounded.image,
.ui.rounded.images .image > *,
.ui.rounded.image > * {
  border-radius: 0.3125em;
}

/*--------------
    Bordered
---------------*/

.ui.bordered.images .image,
.ui.bordered.images img,
.ui.bordered.images svg,
.ui.bordered.image img,
.ui.bordered.image svg,
img.ui.bordered.image {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

/*--------------
    Circular
---------------*/

.ui.circular.images,
.ui.circular.image {
  overflow: hidden;
}

.ui.circular.images .image,
.ui.circular.image,
.ui.circular.images .image > *,
.ui.circular.image > * {
  border-radius: 500rem;
}

/*--------------
     Fluid
---------------*/

.ui.fluid.images,
.ui.fluid.image,
.ui.fluid.images img,
.ui.fluid.images svg,
.ui.fluid.image svg,
.ui.fluid.image img {
  display: block;
  width: 100%;
  height: auto;
}

/*--------------
     Avatar
---------------*/

.ui.avatar.images .image,
.ui.avatar.images img,
.ui.avatar.images svg,
.ui.avatar.image img,
.ui.avatar.image svg,
.ui.avatar.image {
  margin-right: 0.25em;
  display: inline-block;
  width: 2em;
  height: 2em;
  border-radius: 500rem;
}

/*-------------------
       Spaced
--------------------*/

.ui.spaced.image {
  display: inline-block !important;
  margin-left: 0.5em;
  margin-right: 0.5em;
}

.ui[class*="left spaced"].image {
  margin-left: 0.5em;
  margin-right: 0em;
}

.ui[class*="right spaced"].image {
  margin-left: 0em;
  margin-right: 0.5em;
}

/*-------------------
       Floated
--------------------*/

.ui.floated.image,
.ui.floated.images {
  float: left;
  margin-right: 1em;
  margin-bottom: 1em;
}

.ui.right.floated.images,
.ui.right.floated.image {
  float: right;
  margin-right: 0em;
  margin-bottom: 1em;
  margin-left: 1em;
}

.ui.floated.images:last-child,
.ui.floated.image:last-child {
  margin-bottom: 0em;
}

.ui.centered.images,
.ui.centered.image {
  margin-left: auto;
  margin-right: auto;
}

/*--------------
     Sizes
---------------*/

.ui.mini.images .image,
.ui.mini.images img,
.ui.mini.images svg,
.ui.mini.image {
  width: 35px;
  height: auto;
  font-size: 0.78571429rem;
}

.ui.tiny.images .image,
.ui.tiny.images img,
.ui.tiny.images svg,
.ui.tiny.image {
  width: 80px;
  height: auto;
  font-size: 0.85714286rem;
}

.ui.small.images .image,
.ui.small.images img,
.ui.small.images svg,
.ui.small.image {
  width: 150px;
  height: auto;
  font-size: 0.92857143rem;
}

.ui.medium.images .image,
.ui.medium.images img,
.ui.medium.images svg,
.ui.medium.image {
  width: 300px;
  height: auto;
  font-size: 1rem;
}

.ui.large.images .image,
.ui.large.images img,
.ui.large.images svg,
.ui.large.image {
  width: 450px;
  height: auto;
  font-size: 1.14285714rem;
}

.ui.big.images .image,
.ui.big.images img,
.ui.big.images svg,
.ui.big.image {
  width: 600px;
  height: auto;
  font-size: 1.28571429rem;
}

.ui.huge.images .image,
.ui.huge.images img,
.ui.huge.images svg,
.ui.huge.image {
  width: 800px;
  height: auto;
  font-size: 1.42857143rem;
}

.ui.massive.images .image,
.ui.massive.images img,
.ui.massive.images svg,
.ui.massive.image {
  width: 960px;
  height: auto;
  font-size: 1.71428571rem;
}

/*******************************
              Groups
*******************************/

.ui.images {
  font-size: 0em;
  margin: 0em -0.25rem 0rem;
}

.ui.images .image,
.ui.images > img,
.ui.images > svg {
  display: inline-block;
  margin: 0em 0.25rem 0.5rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Input
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           Standard
*******************************/

/*--------------------
        Inputs
---------------------*/

.ui.input {
  position: relative;
  font-weight: normal;
  font-style: normal;
  display: inline-flex;
  color: rgba(0, 0, 0, 0.87);
}

.ui.input > input {
  margin: 0em;
  max-width: 100%;
  flex: 1 0 auto;
  outline: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  text-align: left;
  line-height: 1.21428571em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  padding: 0.67857143em 1em;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  transition: box-shadow 0.1s ease, border-color 0.1s ease;
  box-shadow: none;
}

/*--------------------
      Placeholder
---------------------*/

/* browsers require these rules separate */

.ui.input > input::-webkit-input-placeholder {
  color: rgba(191, 191, 191, 0.87);
}

.ui.input > input::-moz-placeholder {
  color: rgba(191, 191, 191, 0.87);
}

.ui.input > input:-ms-input-placeholder {
  color: rgba(191, 191, 191, 0.87);
}

/*******************************
            States
*******************************/

/*--------------------
        Disabled
---------------------*/

.ui.disabled.input,
.ui.input:not(.disabled) input[disabled] {
  opacity: 0.45;
}

.ui.disabled.input > input,
.ui.input:not(.disabled) input[disabled] {
  pointer-events: none;
}

/*--------------------
        Active
---------------------*/

.ui.input > input:active,
.ui.input.down input {
  border-color: rgba(0, 0, 0, 0.3);
  background: #FAFAFA;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
}

/*--------------------
       Loading
---------------------*/

.ui.loading.loading.input > i.icon:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}

.ui.loading.loading.input > i.icon:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  -webkit-animation: button-spin 0.6s linear;
  animation: button-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}

/*--------------------
        Focus
---------------------*/

.ui.input.focus > input,
.ui.input > input:focus {
  border-color: #85B7D9;
  background: #FFFFFF;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: none;
}

.ui.input.focus > input::-webkit-input-placeholder,
.ui.input > input:focus::-webkit-input-placeholder {
  color: rgba(115, 115, 115, 0.87);
}

.ui.input.focus > input::-moz-placeholder,
.ui.input > input:focus::-moz-placeholder {
  color: rgba(115, 115, 115, 0.87);
}

.ui.input.focus > input:-ms-input-placeholder,
.ui.input > input:focus:-ms-input-placeholder {
  color: rgba(115, 115, 115, 0.87);
}

/*--------------------
        Error
---------------------*/

.ui.input.error > input {
  background-color: #FFF6F6;
  border-color: #E0B4B4;
  color: #9F3A38;
  box-shadow: none;
}

/* Error Placeholder */

.ui.input.error > input::-webkit-input-placeholder {
  color: #e7bdbc;
}

.ui.input.error > input::-moz-placeholder {
  color: #e7bdbc;
}

.ui.input.error > input:-ms-input-placeholder {
  color: #e7bdbc !important;
}

/* Focused Error Placeholder */

.ui.input.error > input:focus::-webkit-input-placeholder {
  color: #da9796;
}

.ui.input.error > input:focus::-moz-placeholder {
  color: #da9796;
}

.ui.input.error > input:focus:-ms-input-placeholder {
  color: #da9796 !important;
}

/*******************************
           Variations
*******************************/

/*--------------------
      Transparent
---------------------*/

.ui.transparent.input > input {
  border-color: transparent !important;
  background-color: transparent !important;
  padding: 0em !important;
  box-shadow: none !important;
  border-radius: 0px !important;
}

/* Transparent Icon */

.ui.transparent.icon.input > i.icon {
  width: 1.1em;
}

.ui.transparent.icon.input > input {
  padding-left: 0em !important;
  padding-right: 2em !important;
}

.ui.transparent[class*="left icon"].input > input {
  padding-left: 2em !important;
  padding-right: 0em !important;
}

/* Transparent Inverted */

.ui.transparent.inverted.input {
  color: #FFFFFF;
}

.ui.transparent.inverted.input > input {
  color: inherit;
}

.ui.transparent.inverted.input > input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.ui.transparent.inverted.input > input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.ui.transparent.inverted.input > input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

/*--------------------
         Icon
---------------------*/

.ui.icon.input > i.icon {
  cursor: default;
  position: absolute;
  line-height: 1;
  text-align: center;
  top: 0px;
  right: 0px;
  margin: 0em;
  height: 100%;
  width: 2.67142857em;
  opacity: 0.5;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
  transition: opacity 0.3s ease;
}

.ui.icon.input > i.icon:not(.link) {
  pointer-events: none;
}

.ui.icon.input > input {
  padding-right: 2.67142857em !important;
}

.ui.icon.input > i.icon:before,
.ui.icon.input > i.icon:after {
  left: 0;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%;
  margin-top: -0.5em;
}

.ui.icon.input > i.link.icon {
  cursor: pointer;
}

.ui.icon.input > i.circular.icon {
  top: 0.35em;
  right: 0.5em;
}

/* Left Icon Input */

.ui[class*="left icon"].input > i.icon {
  right: auto;
  left: 1px;
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

.ui[class*="left icon"].input > i.circular.icon {
  right: auto;
  left: 0.5em;
}

.ui[class*="left icon"].input > input {
  padding-left: 2.67142857em !important;
  padding-right: 1em !important;
}

/* Focus */

.ui.icon.input > input:focus ~ i.icon {
  opacity: 1;
}

/*--------------------
        Labeled
---------------------*/

/* Adjacent Label */

.ui.labeled.input > .label {
  flex: 0 0 auto;
  margin: 0;
  font-size: 1em;
}

.ui.labeled.input > .label:not(.corner) {
  padding-top: 0.78571429em;
  padding-bottom: 0.78571429em;
}

/* Regular Label on Left */

.ui.labeled.input:not([class*="corner labeled"]) .label:first-child {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}

.ui.labeled.input:not([class*="corner labeled"]) .label:first-child + input {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  border-left-color: transparent;
}

.ui.labeled.input:not([class*="corner labeled"]) .label:first-child + input:focus {
  border-left-color: #85B7D9;
}

/* Regular Label on Right */

.ui[class*="right labeled"].input > input {
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
  border-right-color: transparent !important;
}

.ui[class*="right labeled"].input > input + .label {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}

.ui[class*="right labeled"].input > input:focus {
  border-right-color: #85B7D9 !important;
}

/* Corner Label */

.ui.labeled.input .corner.label {
  top: 1px;
  right: 1px;
  font-size: 0.64285714em;
  border-radius: 0em 0.28571429rem 0em 0em;
}

/* Spacing with corner label */

.ui[class*="corner labeled"]:not([class*="left corner labeled"]).labeled.input > input {
  padding-right: 2.5em !important;
}

.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"]) > input {
  padding-right: 3.25em !important;
}

.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"]) > .icon {
  margin-right: 1.25em;
}

/* Left Labeled */

.ui[class*="left corner labeled"].labeled.input > input {
  padding-left: 2.5em !important;
}

.ui[class*="left corner labeled"].icon.input > input {
  padding-left: 3.25em !important;
}

.ui[class*="left corner labeled"].icon.input > .icon {
  margin-left: 1.25em;
}

/* Corner Label Position  */

.ui.input > .ui.corner.label {
  top: 1px;
  right: 1px;
}

.ui.input > .ui.left.corner.label {
  right: auto;
  left: 1px;
}

/*--------------------
        Action
---------------------*/

.ui.action.input > .button,
.ui.action.input > .buttons {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.ui.action.input > .button,
.ui.action.input > .buttons > .button {
  padding-top: 0.78571429em;
  padding-bottom: 0.78571429em;
  margin: 0;
}

/* Button on Right */

.ui.action.input:not([class*="left action"]) > input {
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
  border-right-color: transparent !important;
}

.ui.action.input:not([class*="left action"]) > .dropdown:not(:first-child),
.ui.action.input:not([class*="left action"]) > .button:not(:first-child),
.ui.action.input:not([class*="left action"]) > .buttons:not(:first-child) > .button {
  border-radius: 0px;
}

.ui.action.input:not([class*="left action"]) > .dropdown:last-child,
.ui.action.input:not([class*="left action"]) > .button:last-child,
.ui.action.input:not([class*="left action"]) > .buttons:last-child > .button {
  border-radius: 0px 0.28571429rem 0.28571429rem 0px;
}

/* Input Focus */

.ui.action.input:not([class*="left action"]) > input:focus {
  border-right-color: #85B7D9 !important;
}

/* Button on Left */

.ui[class*="left action"].input > input {
  border-top-left-radius: 0px !important;
  border-bottom-left-radius: 0px !important;
  border-left-color: transparent !important;
}

.ui[class*="left action"].input > .dropdown,
.ui[class*="left action"].input > .button,
.ui[class*="left action"].input > .buttons > .button {
  border-radius: 0px;
}

.ui[class*="left action"].input > .dropdown:first-child,
.ui[class*="left action"].input > .button:first-child,
.ui[class*="left action"].input > .buttons:first-child > .button {
  border-radius: 0.28571429rem 0px 0px 0.28571429rem;
}

/* Input Focus */

.ui[class*="left action"].input > input:focus {
  border-left-color: #85B7D9 !important;
}

/*--------------------
       Inverted
---------------------*/

/* Standard */

.ui.inverted.input > input {
  border: none;
}

/*--------------------
        Fluid
---------------------*/

.ui.fluid.input {
  display: flex;
}

.ui.fluid.input > input {
  width: 0px !important;
}

/*--------------------
        Size
---------------------*/

.ui.mini.input {
  font-size: 0.78571429em;
}

.ui.small.input {
  font-size: 0.92857143em;
}

.ui.input {
  font-size: 1em;
}

.ui.large.input {
  font-size: 1.14285714em;
}

.ui.big.input {
  font-size: 1.28571429em;
}

.ui.huge.input {
  font-size: 1.42857143em;
}

.ui.massive.input {
  font-size: 1.71428571em;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Label
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Label
*******************************/

.ui.label {
  display: inline-block;
  line-height: 1;
  vertical-align: baseline;
  margin: 0em 0.14285714em;
  background-color: #E8E8E8;
  background-image: none;
  padding: 0.5833em 0.833em;
  color: rgba(0, 0, 0, 0.6);
  text-transform: none;
  font-weight: bold;
  border: 0px solid transparent;
  border-radius: 0.28571429rem;
  transition: background 0.1s ease;
}

.ui.label:first-child {
  margin-left: 0em;
}

.ui.label:last-child {
  margin-right: 0em;
}

/* Link */

a.ui.label {
  cursor: pointer;
}

/* Inside Link */

.ui.label > a {
  cursor: pointer;
  color: inherit;
  opacity: 0.5;
  transition: 0.1s opacity ease;
}

.ui.label > a:hover {
  opacity: 1;
}

/* Image */

.ui.label > img {
  width: auto !important;
  vertical-align: middle;
  height: 2.1666em !important;
}

/* Icon */

.ui.label > .icon {
  width: auto;
  margin: 0em 0.75em 0em 0em;
}

/* Detail */

.ui.label > .detail {
  display: inline-block;
  vertical-align: top;
  font-weight: bold;
  margin-left: 1em;
  opacity: 0.8;
}

.ui.label > .detail .icon {
  margin: 0em 0.25em 0em 0em;
}

/* Removable label */

.ui.label > .close.icon,
.ui.label > .delete.icon {
  cursor: pointer;
  margin-right: 0em;
  margin-left: 0.5em;
  font-size: 0.92857143em;
  opacity: 0.5;
  transition: background 0.1s ease;
}

.ui.label > .delete.icon:hover {
  opacity: 1;
}

/*-------------------
       Group
--------------------*/

.ui.labels > .label {
  margin: 0em 0.5em 0.5em 0em;
}

/*-------------------
       Coupling
--------------------*/

.ui.header > .ui.label {
  margin-top: -0.29165em;
}

/* Remove border radius on attached segment */

.ui.attached.segment > .ui.top.left.attached.label,
.ui.bottom.attached.segment > .ui.top.left.attached.label {
  border-top-left-radius: 0;
}

.ui.attached.segment > .ui.top.right.attached.label,
.ui.bottom.attached.segment > .ui.top.right.attached.label {
  border-top-right-radius: 0;
}

.ui.top.attached.segment > .ui.bottom.left.attached.label {
  border-bottom-left-radius: 0;
}

.ui.top.attached.segment > .ui.bottom.right.attached.label {
  border-bottom-right-radius: 0;
}

/* Padding on next content after a label */

.ui.top.attached.label:first-child + :not(.attached),
.ui.top.attached.label + [class*="right floated"] + * {
  margin-top: 2rem !important;
}

.ui.bottom.attached.label:first-child ~ :last-child:not(.attached) {
  margin-top: 0em;
  margin-bottom: 2rem !important;
}

/*******************************
             Types
*******************************/

.ui.image.label {
  width: auto !important;
  margin-top: 0em;
  margin-bottom: 0em;
  max-width: 9999px;
  vertical-align: baseline;
  text-transform: none;
  background: #E8E8E8;
  padding: 0.5833em 0.833em 0.5833em 0.5em;
  border-radius: 0.28571429rem;
  box-shadow: none;
}

.ui.image.label img {
  display: inline-block;
  vertical-align: top;
  height: 2.1666em;
  margin: -0.5833em 0.5em -0.5833em -0.5em;
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

.ui.image.label .detail {
  background: rgba(0, 0, 0, 0.1);
  margin: -0.5833em -0.833em -0.5833em 0.5em;
  padding: 0.5833em 0.833em;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

/*-------------------
         Tag
--------------------*/

.ui.tag.labels .label,
.ui.tag.label {
  margin-left: 1em;
  position: relative;
  padding-left: 1.5em;
  padding-right: 1.5em;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
  transition: none;
}

.ui.tag.labels .label:before,
.ui.tag.label:before {
  position: absolute;
  -webkit-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  transform: translateY(-50%) translateX(50%) rotate(-45deg);
  top: 50%;
  right: 100%;
  content: '';
  background-color: inherit;
  background-image: none;
  width: 1.56em;
  height: 1.56em;
  transition: none;
}

.ui.tag.labels .label:after,
.ui.tag.label:after {
  position: absolute;
  content: '';
  top: 50%;
  left: -0.25em;
  margin-top: -0.25em;
  background-color: #FFFFFF !important;
  width: 0.5em;
  height: 0.5em;
  box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.3);
  border-radius: 500rem;
}

/*-------------------
    Corner Label
--------------------*/

.ui.corner.label {
  position: absolute;
  top: 0em;
  right: 0em;
  margin: 0em;
  padding: 0em;
  text-align: center;
  border-color: #E8E8E8;
  width: 4em;
  height: 4em;
  z-index: 1;
  transition: border-color 0.1s ease;
}

/* Icon Label */

.ui.corner.label {
  background-color: transparent !important;
}

.ui.corner.label:after {
  position: absolute;
  content: "";
  right: 0em;
  top: 0em;
  z-index: -1;
  width: 0em;
  height: 0em;
  background-color: transparent !important;
  border-top: 0em solid transparent;
  border-right: 4em solid transparent;
  border-bottom: 4em solid transparent;
  border-left: 0em solid transparent;
  border-right-color: inherit;
  transition: border-color 0.1s ease;
}

.ui.corner.label .icon {
  cursor: default;
  position: relative;
  top: 0.64285714em;
  left: 0.78571429em;
  font-size: 1.14285714em;
  margin: 0em;
}

/* Left Corner */

.ui.left.corner.label,
.ui.left.corner.label:after {
  right: auto;
  left: 0em;
}

.ui.left.corner.label:after {
  border-top: 4em solid transparent;
  border-right: 4em solid transparent;
  border-bottom: 0em solid transparent;
  border-left: 0em solid transparent;
  border-top-color: inherit;
}

.ui.left.corner.label .icon {
  left: -0.78571429em;
}

/* Segment */

.ui.segment > .ui.corner.label {
  top: -1px;
  right: -1px;
}

.ui.segment > .ui.left.corner.label {
  right: auto;
  left: -1px;
}

/*-------------------
       Ribbon
--------------------*/

.ui.ribbon.label {
  position: relative;
  margin: 0em;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
  border-color: rgba(0, 0, 0, 0.15);
}

.ui.ribbon.label:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 0%;
  background-color: transparent !important;
  border-style: solid;
  border-width: 0em 1.2em 1.2em 0em;
  border-color: transparent;
  border-right-color: inherit;
  width: 0em;
  height: 0em;
}

/* Positioning */

.ui.ribbon.label {
  left: calc(-1rem - 1.2em);
  margin-right: -1.2em;
  padding-left: calc(1rem + 1.2em);
  padding-right: 1.2em;
}

.ui[class*="right ribbon"].label {
  left: calc(100% + 1rem + 1.2em);
  padding-left: 1.2em;
  padding-right: calc(1rem + 1.2em);
}

/* Right Ribbon */

.ui[class*="right ribbon"].label {
  text-align: left;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

.ui[class*="right ribbon"].label:after {
  left: auto;
  right: 0%;
  border-style: solid;
  border-width: 1.2em 1.2em 0em 0em;
  border-color: transparent;
  border-top-color: inherit;
}

/* Inside Table */

.ui.image > .ribbon.label,
.ui.card .image > .ribbon.label {
  position: absolute;
  top: 1rem;
}

.ui.card .image > .ui.ribbon.label,
.ui.image > .ui.ribbon.label {
  left: calc(--0.05rem - 1.2em);
}

.ui.card .image > .ui[class*="right ribbon"].label,
.ui.image > .ui[class*="right ribbon"].label {
  left: calc(100% + -0.05rem + 1.2em);
  padding-left: 0.833em;
}

/* Inside Table */

.ui.table td > .ui.ribbon.label {
  left: calc(-0.78571429em - 1.2em);
}

.ui.table td > .ui[class*="right ribbon"].label {
  left: calc(100% + 0.78571429em + 1.2em);
  padding-left: 0.833em;
}

/*-------------------
      Attached
--------------------*/

.ui[class*="top attached"].label,
.ui.attached.label {
  width: 100%;
  position: absolute;
  margin: 0em;
  top: 0em;
  left: 0em;
  padding: 0.75em 1em;
  border-radius: 0.21428571rem 0.21428571rem 0em 0em;
}

.ui[class*="bottom attached"].label {
  top: auto;
  bottom: 0em;
  border-radius: 0em 0em 0.21428571rem 0.21428571rem;
}

.ui[class*="top left attached"].label {
  width: auto;
  margin-top: 0em !important;
  border-radius: 0.21428571rem 0em 0.28571429rem 0em;
}

.ui[class*="top right attached"].label {
  width: auto;
  left: auto;
  right: 0em;
  border-radius: 0em 0.21428571rem 0em 0.28571429rem;
}

.ui[class*="bottom left attached"].label {
  width: auto;
  top: auto;
  bottom: 0em;
  border-radius: 0em 0.28571429rem 0em 0.21428571rem;
}

.ui[class*="bottom right attached"].label {
  top: auto;
  bottom: 0em;
  left: auto;
  right: 0em;
  width: auto;
  border-radius: 0.28571429rem 0em 0.21428571rem 0em;
}

/*******************************
             States
*******************************/

/*-------------------
      Disabled
--------------------*/

.ui.label.disabled {
  opacity: 0.5;
}

/*-------------------
        Hover
--------------------*/

a.ui.labels .label:hover,
a.ui.label:hover {
  background-color: #E0E0E0;
  border-color: #E0E0E0;
  background-image: none;
  color: rgba(0, 0, 0, 0.8);
}

.ui.labels a.label:hover:before,
a.ui.label:hover:before {
  color: rgba(0, 0, 0, 0.8);
}

/*-------------------
        Active
--------------------*/

.ui.active.label {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  background-image: none;
  color: rgba(0, 0, 0, 0.95);
}

.ui.active.label:before {
  background-color: #D0D0D0;
  background-image: none;
  color: rgba(0, 0, 0, 0.95);
}

/*-------------------
     Active Hover
--------------------*/

a.ui.labels .active.label:hover,
a.ui.active.label:hover {
  background-color: #C8C8C8;
  border-color: #C8C8C8;
  background-image: none;
  color: rgba(0, 0, 0, 0.95);
}

.ui.labels a.active.label:ActiveHover:before,
a.ui.active.label:ActiveHover:before {
  background-color: #C8C8C8;
  background-image: none;
  color: rgba(0, 0, 0, 0.95);
}

/*-------------------
      Visible
--------------------*/

.ui.labels.visible .label,
.ui.label.visible:not(.dropdown) {
  display: inline-block !important;
}

/*-------------------
      Hidden
--------------------*/

.ui.labels.hidden .label,
.ui.label.hidden {
  display: none !important;
}

/*******************************
           Variations
*******************************/

/*-------------------
       Colors
--------------------*/

/*--- Red ---*/

.ui.red.labels .label,
.ui.red.label {
  background-color: #DB2828 !important;
  border-color: #DB2828 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.red.labels .label:hover,
a.ui.red.label:hover {
  background-color: #d01919 !important;
  border-color: #d01919 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.red.corner.label,
.ui.red.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.red.ribbon.label {
  border-color: #b21e1e !important;
}

/* Basic */

.ui.basic.red.label {
  background: none #FFFFFF !important;
  color: #DB2828 !important;
  border-color: #DB2828 !important;
}

.ui.basic.red.labels a.label:hover,
a.ui.basic.red.label:hover {
  background-color: #FFFFFF !important;
  color: #d01919 !important;
  border-color: #d01919 !important;
}

/*--- Orange ---*/

.ui.orange.labels .label,
.ui.orange.label {
  background-color: #F2711C !important;
  border-color: #F2711C !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.orange.labels .label:hover,
a.ui.orange.label:hover {
  background-color: #f26202 !important;
  border-color: #f26202 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.orange.corner.label,
.ui.orange.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.orange.ribbon.label {
  border-color: #cf590c !important;
}

/* Basic */

.ui.basic.orange.label {
  background: none #FFFFFF !important;
  color: #F2711C !important;
  border-color: #F2711C !important;
}

.ui.basic.orange.labels a.label:hover,
a.ui.basic.orange.label:hover {
  background-color: #FFFFFF !important;
  color: #f26202 !important;
  border-color: #f26202 !important;
}

/*--- Yellow ---*/

.ui.yellow.labels .label,
.ui.yellow.label {
  background-color: #FBBD08 !important;
  border-color: #FBBD08 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.yellow.labels .label:hover,
a.ui.yellow.label:hover {
  background-color: #eaae00 !important;
  border-color: #eaae00 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.yellow.corner.label,
.ui.yellow.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.yellow.ribbon.label {
  border-color: #cd9903 !important;
}

/* Basic */

.ui.basic.yellow.label {
  background: none #FFFFFF !important;
  color: #FBBD08 !important;
  border-color: #FBBD08 !important;
}

.ui.basic.yellow.labels a.label:hover,
a.ui.basic.yellow.label:hover {
  background-color: #FFFFFF !important;
  color: #eaae00 !important;
  border-color: #eaae00 !important;
}

/*--- Olive ---*/

.ui.olive.labels .label,
.ui.olive.label {
  background-color: #B5CC18 !important;
  border-color: #B5CC18 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.olive.labels .label:hover,
a.ui.olive.label:hover {
  background-color: #a7bd0d !important;
  border-color: #a7bd0d !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.olive.corner.label,
.ui.olive.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.olive.ribbon.label {
  border-color: #198f35 !important;
}

/* Basic */

.ui.basic.olive.label {
  background: none #FFFFFF !important;
  color: #B5CC18 !important;
  border-color: #B5CC18 !important;
}

.ui.basic.olive.labels a.label:hover,
a.ui.basic.olive.label:hover {
  background-color: #FFFFFF !important;
  color: #a7bd0d !important;
  border-color: #a7bd0d !important;
}

/*--- Green ---*/

.ui.green.labels .label,
.ui.green.label {
  background-color: #21BA45 !important;
  border-color: #21BA45 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.green.labels .label:hover,
a.ui.green.label:hover {
  background-color: #16ab39 !important;
  border-color: #16ab39 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.green.corner.label,
.ui.green.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.green.ribbon.label {
  border-color: #198f35 !important;
}

/* Basic */

.ui.basic.green.label {
  background: none #FFFFFF !important;
  color: #21BA45 !important;
  border-color: #21BA45 !important;
}

.ui.basic.green.labels a.label:hover,
a.ui.basic.green.label:hover {
  background-color: #FFFFFF !important;
  color: #16ab39 !important;
  border-color: #16ab39 !important;
}

/*--- Teal ---*/

.ui.teal.labels .label,
.ui.teal.label {
  background-color: #00B5AD !important;
  border-color: #00B5AD !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.teal.labels .label:hover,
a.ui.teal.label:hover {
  background-color: #009c95 !important;
  border-color: #009c95 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.teal.corner.label,
.ui.teal.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.teal.ribbon.label {
  border-color: #00827c !important;
}

/* Basic */

.ui.basic.teal.label {
  background: none #FFFFFF !important;
  color: #00B5AD !important;
  border-color: #00B5AD !important;
}

.ui.basic.teal.labels a.label:hover,
a.ui.basic.teal.label:hover {
  background-color: #FFFFFF !important;
  color: #009c95 !important;
  border-color: #009c95 !important;
}

/*--- Blue ---*/

.ui.blue.labels .label,
.ui.blue.label {
  background-color: #2185D0 !important;
  border-color: #2185D0 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.blue.labels .label:hover,
a.ui.blue.label:hover {
  background-color: #1678c2 !important;
  border-color: #1678c2 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.blue.corner.label,
.ui.blue.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.blue.ribbon.label {
  border-color: #1a69a4 !important;
}

/* Basic */

.ui.basic.blue.label {
  background: none #FFFFFF !important;
  color: #2185D0 !important;
  border-color: #2185D0 !important;
}

.ui.basic.blue.labels a.label:hover,
a.ui.basic.blue.label:hover {
  background-color: #FFFFFF !important;
  color: #1678c2 !important;
  border-color: #1678c2 !important;
}

/*--- Violet ---*/

.ui.violet.labels .label,
.ui.violet.label {
  background-color: #6435C9 !important;
  border-color: #6435C9 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.violet.labels .label:hover,
a.ui.violet.label:hover {
  background-color: #5829bb !important;
  border-color: #5829bb !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.violet.corner.label,
.ui.violet.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.violet.ribbon.label {
  border-color: #502aa1 !important;
}

/* Basic */

.ui.basic.violet.label {
  background: none #FFFFFF !important;
  color: #6435C9 !important;
  border-color: #6435C9 !important;
}

.ui.basic.violet.labels a.label:hover,
a.ui.basic.violet.label:hover {
  background-color: #FFFFFF !important;
  color: #5829bb !important;
  border-color: #5829bb !important;
}

/*--- Purple ---*/

.ui.purple.labels .label,
.ui.purple.label {
  background-color: #A333C8 !important;
  border-color: #A333C8 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.purple.labels .label:hover,
a.ui.purple.label:hover {
  background-color: #9627ba !important;
  border-color: #9627ba !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.purple.corner.label,
.ui.purple.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.purple.ribbon.label {
  border-color: #82299f !important;
}

/* Basic */

.ui.basic.purple.label {
  background: none #FFFFFF !important;
  color: #A333C8 !important;
  border-color: #A333C8 !important;
}

.ui.basic.purple.labels a.label:hover,
a.ui.basic.purple.label:hover {
  background-color: #FFFFFF !important;
  color: #9627ba !important;
  border-color: #9627ba !important;
}

/*--- Pink ---*/

.ui.pink.labels .label,
.ui.pink.label {
  background-color: #E03997 !important;
  border-color: #E03997 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.pink.labels .label:hover,
a.ui.pink.label:hover {
  background-color: #e61a8d !important;
  border-color: #e61a8d !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.pink.corner.label,
.ui.pink.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.pink.ribbon.label {
  border-color: #c71f7e !important;
}

/* Basic */

.ui.basic.pink.label {
  background: none #FFFFFF !important;
  color: #E03997 !important;
  border-color: #E03997 !important;
}

.ui.basic.pink.labels a.label:hover,
a.ui.basic.pink.label:hover {
  background-color: #FFFFFF !important;
  color: #e61a8d !important;
  border-color: #e61a8d !important;
}

/*--- Brown ---*/

.ui.brown.labels .label,
.ui.brown.label {
  background-color: #A5673F !important;
  border-color: #A5673F !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.brown.labels .label:hover,
a.ui.brown.label:hover {
  background-color: #975b33 !important;
  border-color: #975b33 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.brown.corner.label,
.ui.brown.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.brown.ribbon.label {
  border-color: #805031 !important;
}

/* Basic */

.ui.basic.brown.label {
  background: none #FFFFFF !important;
  color: #A5673F !important;
  border-color: #A5673F !important;
}

.ui.basic.brown.labels a.label:hover,
a.ui.basic.brown.label:hover {
  background-color: #FFFFFF !important;
  color: #975b33 !important;
  border-color: #975b33 !important;
}

/*--- Grey ---*/

.ui.grey.labels .label,
.ui.grey.label {
  background-color: #767676 !important;
  border-color: #767676 !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.grey.labels .label:hover,
a.ui.grey.label:hover {
  background-color: #838383 !important;
  border-color: #838383 !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.grey.corner.label,
.ui.grey.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.grey.ribbon.label {
  border-color: #805031 !important;
}

/* Basic */

.ui.basic.grey.label {
  background: none #FFFFFF !important;
  color: #767676 !important;
  border-color: #767676 !important;
}

.ui.basic.grey.labels a.label:hover,
a.ui.basic.grey.label:hover {
  background-color: #FFFFFF !important;
  color: #838383 !important;
  border-color: #838383 !important;
}

/*--- Black ---*/

.ui.black.labels .label,
.ui.black.label {
  background-color: #1B1C1D !important;
  border-color: #1B1C1D !important;
  color: #FFFFFF !important;
}

/* Link */

.ui.black.labels .label:hover,
a.ui.black.label:hover {
  background-color: #27292a !important;
  border-color: #27292a !important;
  color: #FFFFFF !important;
}

/* Corner */

.ui.black.corner.label,
.ui.black.corner.label:hover {
  background-color: transparent !important;
}

/* Ribbon */

.ui.black.ribbon.label {
  border-color: #805031 !important;
}

/* Basic */

.ui.basic.black.label {
  background: none #FFFFFF !important;
  color: #1B1C1D !important;
  border-color: #1B1C1D !important;
}

.ui.basic.black.labels a.label:hover,
a.ui.basic.black.label:hover {
  background-color: #FFFFFF !important;
  color: #27292a !important;
  border-color: #27292a !important;
}

/*-------------------
        Basic
--------------------*/

.ui.basic.label {
  background: none #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
}

/* Link */

a.ui.basic.label:hover {
  text-decoration: none;
  background: none #FFFFFF;
  color: #1e70bf;
  box-shadow: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: none;
}

/* Pointing */

.ui.basic.pointing.label:before {
  border-color: inherit;
}

/*-------------------
       Fluid
--------------------*/

.ui.label.fluid,
.ui.fluid.labels > .label {
  width: 100%;
  box-sizing: border-box;
}

/*-------------------
       Inverted
--------------------*/

.ui.inverted.labels .label,
.ui.inverted.label {
  color: rgba(255, 255, 255, 0.9) !important;
}

/*-------------------
     Horizontal
--------------------*/

.ui.horizontal.labels .label,
.ui.horizontal.label {
  margin: 0em 0.5em 0em 0em;
  padding: 0.4em 0.833em;
  min-width: 3em;
  text-align: center;
}

/*-------------------
       Circular
--------------------*/

.ui.circular.labels .label,
.ui.circular.label {
  min-width: 2em;
  min-height: 2em;
  padding: 0.5em !important;
  line-height: 1em;
  text-align: center;
  border-radius: 500rem;
}

.ui.empty.circular.labels .label,
.ui.empty.circular.label {
  min-width: 0em;
  min-height: 0em;
  overflow: hidden;
  width: 0.5em;
  height: 0.5em;
  vertical-align: baseline;
}

/*-------------------
       Pointing
--------------------*/

.ui.pointing.label {
  position: relative;
}

.ui.attached.pointing.label {
  position: absolute;
}

.ui.pointing.label:before {
  background-color: inherit;
  background-image: inherit;
  border-width: none;
  border-style: solid;
  border-color: inherit;
}

/* Arrow */

.ui.pointing.label:before {
  position: absolute;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background-image: none;
  z-index: 2;
  width: 0.6666em;
  height: 0.6666em;
  transition: background 0.1s ease;
}

/*--- Above ---*/

.ui.pointing.label,
.ui[class*="pointing above"].label {
  margin-top: 1em;
}

.ui.pointing.label:before,
.ui[class*="pointing above"].label:before {
  border-width: 1px 0px 0px 1px;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  top: 0%;
  left: 50%;
}

/*--- Below ---*/

.ui[class*="bottom pointing"].label,
.ui[class*="pointing below"].label {
  margin-top: 0em;
  margin-bottom: 1em;
}

.ui[class*="bottom pointing"].label:before,
.ui[class*="pointing below"].label:before {
  border-width: 0px 1px 1px 0px;
  top: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  top: 100%;
  left: 50%;
}

/*--- Left ---*/

.ui[class*="left pointing"].label {
  margin-top: 0em;
  margin-left: 0.6666em;
}

.ui[class*="left pointing"].label:before {
  border-width: 0px 0px 1px 1px;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  bottom: auto;
  right: auto;
  top: 50%;
  left: 0em;
}

/*--- Right ---*/

.ui[class*="right pointing"].label {
  margin-top: 0em;
  margin-right: 0.6666em;
}

.ui[class*="right pointing"].label:before {
  border-width: 1px 1px 0px 0px;
  -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
  transform: translateX(50%) translateY(-50%) rotate(45deg);
  top: 50%;
  right: 0%;
  bottom: auto;
  left: auto;
}

/* Basic Pointing */

/*--- Above ---*/

.ui.basic.pointing.label:before,
.ui.basic[class*="pointing above"].label:before {
  margin-top: -1px;
}

/*--- Below ---*/

.ui.basic[class*="bottom pointing"].label:before,
.ui.basic[class*="pointing below"].label:before {
  bottom: auto;
  top: 100%;
  margin-top: 1px;
}

/*--- Left ---*/

.ui.basic[class*="left pointing"].label:before {
  top: 50%;
  left: -1px;
}

/*--- Right ---*/

.ui.basic[class*="right pointing"].label:before {
  top: 50%;
  right: -1px;
}

/*------------------
   Floating Label
-------------------*/

.ui.floating.label {
  position: absolute;
  z-index: 100;
  top: -1em;
  left: 100%;
  margin: 0em 0em 0em -1.5em !important;
}

/*-------------------
        Sizes
--------------------*/

.ui.mini.labels .label,
.ui.mini.label {
  font-size: 0.64285714rem;
}

.ui.tiny.labels .label,
.ui.tiny.label {
  font-size: 0.71428571rem;
}

.ui.small.labels .label,
.ui.small.label {
  font-size: 0.78571429rem;
}

.ui.labels .label,
.ui.label {
  font-size: 0.85714286rem;
}

.ui.large.labels .label,
.ui.large.label {
  font-size: 1rem;
}

.ui.big.labels .label,
.ui.big.label {
  font-size: 1.28571429rem;
}

.ui.huge.labels .label,
.ui.huge.label {
  font-size: 1.42857143rem;
}

.ui.massive.labels .label,
.ui.massive.label {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - List
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            List
*******************************/

ul.ui.list,
ol.ui.list,
.ui.list {
  list-style-type: none;
  margin: 1em 0em;
  padding: 0em 0em;
}

ul.ui.list:first-child,
ol.ui.list:first-child,
.ui.list:first-child {
  margin-top: 0em;
  padding-top: 0em;
}

ul.ui.list:last-child,
ol.ui.list:last-child,
.ui.list:last-child {
  margin-bottom: 0em;
  padding-bottom: 0em;
}

/*******************************
            Content
*******************************/

/* List Item */

ul.ui.list li,
ol.ui.list li,
.ui.list > .item,
.ui.list .list > .item {
  display: list-item;
  table-layout: fixed;
  list-style-type: none;
  list-style-position: outside;
  padding: 0.21428571em 0em;
  line-height: 1.14285714em;
}

ul.ui.list > li:first-child:after,
ol.ui.list > li:first-child:after,
.ui.list > .list > .item,
.ui.list > .item:after {
  content: '';
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

ul.ui.list li:first-child,
ol.ui.list li:first-child,
.ui.list .list > .item:first-child,
.ui.list > .item:first-child {
  padding-top: 0em;
}

ul.ui.list li:last-child,
ol.ui.list li:last-child,
.ui.list .list > .item:last-child,
.ui.list > .item:last-child {
  padding-bottom: 0em;
}

/* Child List */

ul.ui.list ul,
ol.ui.list ol,
.ui.list .list {
  clear: both;
  margin: 0em;
  padding: 0.75em 0em 0.25em 0.5em;
}

/* Child Item */

ul.ui.list ul li,
ol.ui.list ol li,
.ui.list .list > .item {
  padding: 0.14285714em 0em;
  line-height: inherit;
}

/* Icon */

.ui.list .list > .item > i.icon,
.ui.list > .item > i.icon {
  display: table-cell;
  margin: 0em;
  padding-top: 0em;
  padding-right: 0.28571429em;
  vertical-align: top;
  transition: color 0.1s ease;
}

.ui.list .list > .item > i.icon:only-child,
.ui.list > .item > i.icon:only-child {
  display: inline-block;
  vertical-align: top;
}

/* Image */

.ui.list .list > .item > .image,
.ui.list > .item > .image {
  display: table-cell;
  background-color: transparent;
  margin: 0em;
  vertical-align: top;
}

.ui.list .list > .item > .image:not(:only-child):not(img),
.ui.list > .item > .image:not(:only-child):not(img) {
  padding-right: 0.5em;
}

.ui.list .list > .item > .image img,
.ui.list > .item > .image img {
  vertical-align: top;
}

.ui.list .list > .item > img.image,
.ui.list .list > .item > .image:only-child,
.ui.list > .item > img.image,
.ui.list > .item > .image:only-child {
  display: inline-block;
}

/* Content */

.ui.list .list > .item > .content,
.ui.list > .item > .content {
  line-height: 1.14285714em;
}

.ui.list .list > .item > .image + .content,
.ui.list .list > .item > .icon + .content,
.ui.list > .item > .image + .content,
.ui.list > .item > .icon + .content {
  display: table-cell;
  width: 100%;
  padding: 0em 0em 0em 0.5em;
  vertical-align: top;
}

.ui.list .list > .item > img.image + .content,
.ui.list > .item > img.image + .content {
  display: inline-block;
  width: auto;
}

.ui.list .list > .item > .content > .list,
.ui.list > .item > .content > .list {
  margin-left: 0em;
  padding-left: 0em;
}

/* Header */

.ui.list .list > .item .header,
.ui.list > .item .header {
  display: block;
  margin: 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.87);
}

/* Description */

.ui.list .list > .item .description,
.ui.list > .item .description {
  display: block;
  color: rgba(0, 0, 0, 0.7);
}

/* Child Link */

.ui.list > .item a,
.ui.list .list > .item a {
  cursor: pointer;
}

/* Linking Item */

.ui.list .list > a.item,
.ui.list > a.item {
  cursor: pointer;
  color: #4183C4;
}

.ui.list .list > a.item:hover,
.ui.list > a.item:hover {
  color: #1e70bf;
}

/* Linked Item Icons */

.ui.list .list > a.item i.icon,
.ui.list > a.item i.icon {
  color: rgba(0, 0, 0, 0.4);
}

/* Header Link */

.ui.list .list > .item a.header,
.ui.list > .item a.header {
  cursor: pointer;
  color: #4183C4 !important;
}

.ui.list .list > .item a.header:hover,
.ui.list > .item a.header:hover {
  color: #1e70bf !important;
}

/* Floated Content */

.ui[class*="left floated"].list {
  float: left;
}

.ui[class*="right floated"].list {
  float: right;
}

.ui.list .list > .item [class*="left floated"],
.ui.list > .item [class*="left floated"] {
  float: left;
  margin: 0em 1em 0em 0em;
}

.ui.list .list > .item [class*="right floated"],
.ui.list > .item [class*="right floated"] {
  float: right;
  margin: 0em 0em 0em 1em;
}

/*******************************
            Coupling
*******************************/

.ui.menu .ui.list > .item,
.ui.menu .ui.list .list > .item {
  display: list-item;
  table-layout: fixed;
  background-color: transparent;
  list-style-type: none;
  list-style-position: outside;
  padding: 0.21428571em 0em;
  line-height: 1.14285714em;
}

.ui.menu .ui.list .list > .item:before,
.ui.menu .ui.list > .item:before {
  border: none;
  background: none;
}

.ui.menu .ui.list .list > .item:first-child,
.ui.menu .ui.list > .item:first-child {
  padding-top: 0em;
}

.ui.menu .ui.list .list > .item:last-child,
.ui.menu .ui.list > .item:last-child {
  padding-bottom: 0em;
}

/*******************************
            Types
*******************************/

/*-------------------
      Horizontal
--------------------*/

.ui.horizontal.list {
  display: inline-block;
  font-size: 0em;
}

.ui.horizontal.list > .item {
  display: inline-block;
  margin-left: 1em;
  font-size: 1rem;
}

.ui.horizontal.list:not(.celled) > .item:first-child {
  margin-left: 0em !important;
  padding-left: 0em !important;
}

.ui.horizontal.list .list {
  padding-left: 0em;
  padding-bottom: 0em;
}

.ui.horizontal.list > .item > .image,
.ui.horizontal.list .list > .item > .image,
.ui.horizontal.list > .item > .icon,
.ui.horizontal.list .list > .item > .icon,
.ui.horizontal.list > .item > .content,
.ui.horizontal.list .list > .item > .content {
  vertical-align: middle;
}

/* Padding on all elements */

.ui.horizontal.list > .item:first-child,
.ui.horizontal.list > .item:last-child {
  padding-top: 0.21428571em;
  padding-bottom: 0.21428571em;
}

/* Horizontal List */

.ui.horizontal.list > .item > i.icon {
  margin: 0em;
  padding: 0em 0.25em 0em 0em;
}

.ui.horizontal.list > .item > .icon,
.ui.horizontal.list > .item > .icon + .content {
  float: none;
  display: inline-block;
}

/*******************************
             States
*******************************/

/*-------------------
       Disabled
--------------------*/

.ui.list .list > .disabled.item,
.ui.list > .disabled.item {
  pointer-events: none;
  color: rgba(40, 40, 40, 0.3) !important;
}

.ui.inverted.list .list > .disabled.item,
.ui.inverted.list > .disabled.item {
  color: rgba(225, 225, 225, 0.3) !important;
}

/*-------------------
        Hover
--------------------*/

.ui.list .list > a.item:hover .icon,
.ui.list > a.item:hover .icon {
  color: rgba(0, 0, 0, 0.87);
}

/*******************************
           Variations
*******************************/

/*-------------------
       Inverted
--------------------*/

.ui.inverted.list .list > a.item > .icon,
.ui.inverted.list > a.item > .icon {
  color: rgba(255, 255, 255, 0.7);
}

.ui.inverted.list .list > .item .header,
.ui.inverted.list > .item .header {
  color: rgba(255, 255, 255, 0.9);
}

.ui.inverted.list .list > .item .description,
.ui.inverted.list > .item .description {
  color: rgba(255, 255, 255, 0.7);
}

/* Item Link */

.ui.inverted.list .list > a.item,
.ui.inverted.list > a.item {
  cursor: pointer;
  color: rgba(255, 255, 255, 0.9);
}

.ui.inverted.list .list > a.item:hover,
.ui.inverted.list > a.item:hover {
  color: #1e70bf;
}

/* Linking Content */

.ui.inverted.list .item a:not(.ui) {
  color: rgba(255, 255, 255, 0.9) !important;
}

.ui.inverted.list .item a:not(.ui):hover {
  color: #1e70bf !important;
}

/*-------------------
       Aligned
--------------------*/

.ui.list[class*="top aligned"] .image,
.ui.list[class*="top aligned"] .content,
.ui.list [class*="top aligned"] {
  vertical-align: top !important;
}

.ui.list[class*="middle aligned"] .image,
.ui.list[class*="middle aligned"] .content,
.ui.list [class*="middle aligned"] {
  vertical-align: middle !important;
}

.ui.list[class*="bottom aligned"] .image,
.ui.list[class*="bottom aligned"] .content,
.ui.list [class*="bottom aligned"] {
  vertical-align: bottom !important;
}

/*-------------------
       Link
--------------------*/

.ui.link.list .item,
.ui.link.list a.item,
.ui.link.list .item a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
  transition: 0.1s color ease;
}

.ui.link.list.list a.item:hover,
.ui.link.list.list .item a:not(.ui):hover {
  color: rgba(0, 0, 0, 0.8);
}

.ui.link.list.list a.item:active,
.ui.link.list.list .item a:not(.ui):active {
  color: rgba(0, 0, 0, 0.9);
}

.ui.link.list.list .active.item,
.ui.link.list.list .active.item a:not(.ui) {
  color: rgba(0, 0, 0, 0.95);
}

/* Inverted */

.ui.inverted.link.list .item,
.ui.inverted.link.list a.item,
.ui.inverted.link.list .item a:not(.ui) {
  color: rgba(255, 255, 255, 0.5);
}

.ui.inverted.link.list.list a.item:hover,
.ui.inverted.link.list.list .item a:not(.ui):hover {
  color: #ffffff;
}

.ui.inverted.link.list.list a.item:active,
.ui.inverted.link.list.list .item a:not(.ui):active {
  color: #ffffff;
}

.ui.inverted.link.list.list a.active.item,
.ui.inverted.link.list.list .active.item a:not(.ui) {
  color: #ffffff;
}

/*-------------------
      Selection
--------------------*/

.ui.selection.list .list > .item,
.ui.selection.list > .item {
  cursor: pointer;
  background: transparent;
  padding: 0.5em 0.5em;
  margin: 0em;
  color: rgba(0, 0, 0, 0.4);
  border-radius: 0.5em;
  transition: 0.1s color ease, 0.1s padding-left ease, 0.1s background-color ease;
}

.ui.selection.list .list > .item:last-child,
.ui.selection.list > .item:last-child {
  margin-bottom: 0em;
}

.ui.selection.list.list > .item:hover,
.ui.selection.list > .item:hover {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.8);
}

.ui.selection.list .list > .item:active,
.ui.selection.list > .item:active {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.9);
}

.ui.selection.list .list > .item.active,
.ui.selection.list > .item.active {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

/* Inverted */

.ui.inverted.selection.list > .item,
.ui.inverted.selection.list > .item {
  background: transparent;
  color: rgba(255, 255, 255, 0.5);
}

.ui.inverted.selection.list > .item:hover,
.ui.inverted.selection.list > .item:hover {
  background: rgba(255, 255, 255, 0.02);
  color: #ffffff;
}

.ui.inverted.selection.list > .item:active,
.ui.inverted.selection.list > .item:active {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

.ui.inverted.selection.list > .item.active,
.ui.inverted.selection.list > .item.active {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

/* Celled / Divided Selection List */

.ui.celled.selection.list .list > .item,
.ui.divided.selection.list .list > .item,
.ui.celled.selection.list > .item,
.ui.divided.selection.list > .item {
  border-radius: 0em;
}

/*-------------------
       Animated
--------------------*/

.ui.animated.list > .item {
  transition: 0.25s color ease 0.1s, 0.25s padding-left ease 0.1s, 0.25s background-color ease 0.1s;
}

.ui.animated.list:not(.horizontal) > .item:hover {
  padding-left: 1em;
}

/*-------------------
       Fitted
--------------------*/

.ui.fitted.list:not(.selection) .list > .item,
.ui.fitted.list:not(.selection) > .item {
  padding-left: 0em;
  padding-right: 0em;
}

.ui.fitted.selection.list .list > .item,
.ui.fitted.selection.list > .item {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

/*-------------------
      Bulleted
--------------------*/

ul.ui.list,
.ui.bulleted.list {
  margin-left: 1.25rem;
}

ul.ui.list li,
.ui.bulleted.list .list > .item,
.ui.bulleted.list > .item {
  position: relative;
}

ul.ui.list li:before,
.ui.bulleted.list .list > .item:before,
.ui.bulleted.list > .item:before {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
  position: absolute;
  top: auto;
  left: auto;
  font-weight: normal;
  margin-left: -1.25rem;
  content: '•';
  opacity: 1;
  color: inherit;
  vertical-align: top;
}

ul.ui.list li:before,
.ui.bulleted.list .list > a.item:before,
.ui.bulleted.list > a.item:before {
  color: rgba(0, 0, 0, 0.87);
}

ul.ui.list ul,
.ui.bulleted.list .list {
  padding-left: 1.25rem;
}

/* Horizontal Bulleted */

ul.ui.horizontal.bulleted.list,
.ui.horizontal.bulleted.list {
  margin-left: 0em;
}

ul.ui.horizontal.bulleted.list li,
.ui.horizontal.bulleted.list > .item {
  margin-left: 1.75rem;
}

ul.ui.horizontal.bulleted.list li:first-child,
.ui.horizontal.bulleted.list > .item:first-child {
  margin-left: 0em;
}

ul.ui.horizontal.bulleted.list li::before,
.ui.horizontal.bulleted.list > .item::before {
  color: rgba(0, 0, 0, 0.87);
}

ul.ui.horizontal.bulleted.list li:first-child::before,
.ui.horizontal.bulleted.list > .item:first-child::before {
  display: none;
}

/*-------------------
       Ordered
--------------------*/

ol.ui.list,
.ui.ordered.list,
.ui.ordered.list .list,
ol.ui.list ol {
  counter-reset: ordered;
  margin-left: 1.25rem;
  list-style-type: none;
}

ol.ui.list li,
.ui.ordered.list .list > .item,
.ui.ordered.list > .item {
  list-style-type: none;
  position: relative;
}

ol.ui.list li:before,
.ui.ordered.list .list > .item:before,
.ui.ordered.list > .item:before {
  position: absolute;
  top: auto;
  left: auto;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
  margin-left: -1.25rem;
  counter-increment: ordered;
  content: counters(ordered, ".") " ";
  text-align: right;
  color: rgba(0, 0, 0, 0.87);
  vertical-align: middle;
  opacity: 0.8;
}

ol.ui.inverted.list li:before,
.ui.ordered.inverted.list .list > .item:before,
.ui.ordered.inverted.list > .item:before {
  color: rgba(255, 255, 255, 0.7);
}

/* Value */

.ui.ordered.list > .list > .item[data-value],
.ui.ordered.list > .item[data-value] {
  content: attr(data-value);
}

ol.ui.list li[value]:before {
  content: attr(value);
}

/* Child Lists */

ol.ui.list ol,
.ui.ordered.list .list {
  margin-left: 1em;
}

ol.ui.list ol li:before,
.ui.ordered.list .list > .item:before {
  margin-left: -2em;
}

/* Horizontal Ordered */

ol.ui.horizontal.list,
.ui.ordered.horizontal.list {
  margin-left: 0em;
}

ol.ui.horizontal.list li:before,
.ui.ordered.horizontal.list .list > .item:before,
.ui.ordered.horizontal.list > .item:before {
  position: static;
  margin: 0em 0.5em 0em 0em;
}

/*-------------------
       Divided
--------------------*/

.ui.divided.list > .item {
  border-top: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.divided.list .list > .item {
  border-top: none;
}

.ui.divided.list .item .list > .item {
  border-top: none;
}

.ui.divided.list .list > .item:first-child,
.ui.divided.list > .item:first-child {
  border-top: none;
}

/* Sub Menu */

.ui.divided.list:not(.horizontal) .list > .item:first-child {
  border-top-width: 1px;
}

/* Divided bulleted */

.ui.divided.bulleted.list:not(.horizontal),
.ui.divided.bulleted.list .list {
  margin-left: 0em;
  padding-left: 0em;
}

.ui.divided.bulleted.list > .item:not(.horizontal) {
  padding-left: 1.25rem;
}

/* Divided Ordered */

.ui.divided.ordered.list {
  margin-left: 0em;
}

.ui.divided.ordered.list .list > .item,
.ui.divided.ordered.list > .item {
  padding-left: 1.25rem;
}

.ui.divided.ordered.list .item .list {
  margin-left: 0em;
  margin-right: 0em;
  padding-bottom: 0.21428571em;
}

.ui.divided.ordered.list .item .list > .item {
  padding-left: 1em;
}

/* Divided Selection */

.ui.divided.selection.list .list > .item,
.ui.divided.selection.list > .item {
  margin: 0em;
  border-radius: 0em;
}

/* Divided horizontal */

.ui.divided.horizontal.list {
  margin-left: 0em;
}

.ui.divided.horizontal.list > .item:not(:first-child) {
  padding-left: 0.5em;
}

.ui.divided.horizontal.list > .item:not(:last-child) {
  padding-right: 0.5em;
}

.ui.divided.horizontal.list > .item {
  border-top: none;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  margin: 0em;
  line-height: 0.6;
}

.ui.horizontal.divided.list > .item:first-child {
  border-left: none;
}

/* Inverted */

.ui.divided.inverted.list > .item,
.ui.divided.inverted.list > .list,
.ui.divided.inverted.horizontal.list > .item {
  border-color: rgba(255, 255, 255, 0.1);
}

/*-------------------
        Celled
--------------------*/

.ui.celled.list > .item,
.ui.celled.list > .list {
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.ui.celled.list > .item:last-child {
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}

/* Padding on all elements */

.ui.celled.list > .item:first-child,
.ui.celled.list > .item:last-child {
  padding-top: 0.21428571em;
  padding-bottom: 0.21428571em;
}

/* Sub Menu */

.ui.celled.list .item .list > .item {
  border-width: 0px;
}

.ui.celled.list .list > .item:first-child {
  border-top-width: 0px;
}

/* Celled Bulleted */

.ui.celled.bulleted.list {
  margin-left: 0em;
}

.ui.celled.bulleted.list .list > .item,
.ui.celled.bulleted.list > .item {
  padding-left: 1.25rem;
}

.ui.celled.bulleted.list .item .list {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  padding-bottom: 0.21428571em;
}

/* Celled Ordered */

.ui.celled.ordered.list {
  margin-left: 0em;
}

.ui.celled.ordered.list .list > .item,
.ui.celled.ordered.list > .item {
  padding-left: 1.25rem;
}

.ui.celled.ordered.list .item .list {
  margin-left: 0em;
  margin-right: 0em;
  padding-bottom: 0.21428571em;
}

.ui.celled.ordered.list .list > .item {
  padding-left: 1em;
}

/* Celled Horizontal */

.ui.horizontal.celled.list {
  margin-left: 0em;
}

.ui.horizontal.celled.list .list > .item,
.ui.horizontal.celled.list > .item {
  border-top: none;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  margin: 0em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  line-height: 0.6;
}

.ui.horizontal.celled.list .list > .item:last-child,
.ui.horizontal.celled.list > .item:last-child {
  border-bottom: none;
  border-right: 1px solid rgba(34, 36, 38, 0.15);
}

/* Inverted */

.ui.celled.inverted.list > .item,
.ui.celled.inverted.list > .list {
  border-color: 1px solid rgba(255, 255, 255, 0.1);
}

.ui.celled.inverted.horizontal.list .list > .item,
.ui.celled.inverted.horizontal.list > .item {
  border-color: 1px solid rgba(255, 255, 255, 0.1);
}

/*-------------------
       Relaxed
--------------------*/

.ui.relaxed.list:not(.horizontal) > .item:not(:first-child) {
  padding-top: 0.42857143em;
}

.ui.relaxed.list:not(.horizontal) > .item:not(:last-child) {
  padding-bottom: 0.42857143em;
}

.ui.horizontal.relaxed.list .list > .item:not(:first-child),
.ui.horizontal.relaxed.list > .item:not(:first-child) {
  padding-left: 1rem;
}

.ui.horizontal.relaxed.list .list > .item:not(:last-child),
.ui.horizontal.relaxed.list > .item:not(:last-child) {
  padding-right: 1rem;
}

/* Very Relaxed */

.ui[class*="very relaxed"].list:not(.horizontal) > .item:not(:first-child) {
  padding-top: 0.85714286em;
}

.ui[class*="very relaxed"].list:not(.horizontal) > .item:not(:last-child) {
  padding-bottom: 0.85714286em;
}

.ui.horizontal[class*="very relaxed"].list .list > .item:not(:first-child),
.ui.horizontal[class*="very relaxed"].list > .item:not(:first-child) {
  padding-left: 1.5rem;
}

.ui.horizontal[class*="very relaxed"].list .list > .item:not(:last-child),
.ui.horizontal[class*="very relaxed"].list > .item:not(:last-child) {
  padding-right: 1.5rem;
}

/*-------------------
      Sizes
--------------------*/

.ui.mini.list {
  font-size: 0.78571429em;
}

.ui.tiny.list {
  font-size: 0.85714286em;
}

.ui.small.list {
  font-size: 0.92857143em;
}

.ui.list {
  font-size: 1em;
}

.ui.large.list {
  font-size: 1.14285714em;
}

.ui.big.list {
  font-size: 1.28571429em;
}

.ui.huge.list {
  font-size: 1.42857143em;
}

.ui.massive.list {
  font-size: 1.71428571em;
}

.ui.mini.horizontal.list .list > .item,
.ui.mini.horizontal.list > .item {
  font-size: 0.78571429rem;
}

.ui.tiny.horizontal.list .list > .item,
.ui.tiny.horizontal.list > .item {
  font-size: 0.85714286rem;
}

.ui.small.horizontal.list .list > .item,
.ui.small.horizontal.list > .item {
  font-size: 0.92857143rem;
}

.ui.horizontal.list .list > .item,
.ui.horizontal.list > .item {
  font-size: 1rem;
}

.ui.large.horizontal.list .list > .item,
.ui.large.horizontal.list > .item {
  font-size: 1.14285714rem;
}

.ui.big.horizontal.list .list > .item,
.ui.big.horizontal.list > .item {
  font-size: 1.28571429rem;
}

.ui.huge.horizontal.list .list > .item,
.ui.huge.horizontal.list > .item {
  font-size: 1.42857143rem;
}

.ui.massive.horizontal.list .list > .item,
.ui.massive.horizontal.list > .item {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Loader
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Loader
*******************************/

/* Standard Size */

.ui.loader {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0px;
  text-align: center;
  z-index: 1000;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

/* Static Shape */

.ui.loader:before {
  position: absolute;
  content: '';
  top: 0%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}

/* Active Shape */

.ui.loader:after {
  position: absolute;
  content: '';
  top: 0%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-animation: loader 0.6s linear;
  animation: loader 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}

/* Active Animation */

@-webkit-keyframes loader {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes loader {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* Sizes */

.ui.mini.loader:before,
.ui.mini.loader:after {
  width: 1rem;
  height: 1rem;
  margin: 0em 0em 0em -0.5rem;
}

.ui.tiny.loader:before,
.ui.tiny.loader:after {
  width: 1.14285714rem;
  height: 1.14285714rem;
  margin: 0em 0em 0em -0.57142857rem;
}

.ui.small.loader:before,
.ui.small.loader:after {
  width: 1.71428571rem;
  height: 1.71428571rem;
  margin: 0em 0em 0em -0.85714286rem;
}

.ui.loader:before,
.ui.loader:after {
  width: 2.28571429rem;
  height: 2.28571429rem;
  margin: 0em 0em 0em -1.14285714rem;
}

.ui.large.loader:before,
.ui.large.loader:after {
  width: 3.42857143rem;
  height: 3.42857143rem;
  margin: 0em 0em 0em -1.71428571rem;
}

.ui.big.loader:before,
.ui.big.loader:after {
  width: 3.71428571rem;
  height: 3.71428571rem;
  margin: 0em 0em 0em -1.85714286rem;
}

.ui.huge.loader:before,
.ui.huge.loader:after {
  width: 4.14285714rem;
  height: 4.14285714rem;
  margin: 0em 0em 0em -2.07142857rem;
}

.ui.massive.loader:before,
.ui.massive.loader:after {
  width: 4.57142857rem;
  height: 4.57142857rem;
  margin: 0em 0em 0em -2.28571429rem;
}

/*-------------------
      Coupling
--------------------*/

/* Show inside active dimmer */

.ui.dimmer .loader {
  display: block;
}

/* Black Dimmer */

.ui.dimmer .ui.loader {
  color: rgba(255, 255, 255, 0.9);
}

.ui.dimmer .ui.loader:before {
  border-color: rgba(255, 255, 255, 0.15);
}

.ui.dimmer .ui.loader:after {
  border-color: #FFFFFF transparent transparent;
}

/* White Dimmer (Inverted) */

.ui.inverted.dimmer .ui.loader {
  color: rgba(0, 0, 0, 0.87);
}

.ui.inverted.dimmer .ui.loader:before {
  border-color: rgba(0, 0, 0, 0.1);
}

.ui.inverted.dimmer .ui.loader:after {
  border-color: #767676 transparent transparent;
}

/*******************************
             Types
*******************************/

/*-------------------
        Text
--------------------*/

.ui.text.loader {
  width: auto !important;
  height: auto !important;
  text-align: center;
  font-style: normal;
}

/*******************************
            States
*******************************/

.ui.indeterminate.loader:after {
  animation-direction: reverse;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
}

.ui.loader.active,
.ui.loader.visible {
  display: block;
}

.ui.loader.disabled,
.ui.loader.hidden {
  display: none;
}

/*******************************
            Variations
*******************************/

/*-------------------
        Sizes
--------------------*/

/* Loader */

.ui.inverted.dimmer .ui.mini.loader,
.ui.mini.loader {
  width: 1rem;
  height: 1rem;
  font-size: 0.78571429em;
}

.ui.inverted.dimmer .ui.tiny.loader,
.ui.tiny.loader {
  width: 1.14285714rem;
  height: 1.14285714rem;
  font-size: 0.85714286em;
}

.ui.inverted.dimmer .ui.small.loader,
.ui.small.loader {
  width: 1.71428571rem;
  height: 1.71428571rem;
  font-size: 0.92857143em;
}

.ui.inverted.dimmer .ui.loader,
.ui.loader {
  width: 2.28571429rem;
  height: 2.28571429rem;
  font-size: 1em;
}

.ui.inverted.dimmer .ui.large.loader,
.ui.large.loader {
  width: 3.42857143rem;
  height: 3.42857143rem;
  font-size: 1.14285714em;
}

.ui.inverted.dimmer .ui.big.loader,
.ui.big.loader {
  width: 3.71428571rem;
  height: 3.71428571rem;
  font-size: 1.28571429em;
}

.ui.inverted.dimmer .ui.huge.loader,
.ui.huge.loader {
  width: 4.14285714rem;
  height: 4.14285714rem;
  font-size: 1.42857143em;
}

.ui.inverted.dimmer .ui.massive.loader,
.ui.massive.loader {
  width: 4.57142857rem;
  height: 4.57142857rem;
  font-size: 1.71428571em;
}

/* Text Loader */

.ui.mini.text.loader {
  min-width: 1rem;
  padding-top: 1.78571429rem;
}

.ui.tiny.text.loader {
  min-width: 1.14285714rem;
  padding-top: 1.92857143rem;
}

.ui.small.text.loader {
  min-width: 1.71428571rem;
  padding-top: 2.5rem;
}

.ui.text.loader {
  min-width: 2.28571429rem;
  padding-top: 3.07142857rem;
}

.ui.large.text.loader {
  min-width: 3.42857143rem;
  padding-top: 4.21428571rem;
}

.ui.big.text.loader {
  min-width: 3.71428571rem;
  padding-top: 4.5rem;
}

.ui.huge.text.loader {
  min-width: 4.14285714rem;
  padding-top: 4.92857143rem;
}

.ui.massive.text.loader {
  min-width: 4.57142857rem;
  padding-top: 5.35714286rem;
}

/*-------------------
       Inverted
--------------------*/

.ui.inverted.loader {
  color: rgba(255, 255, 255, 0.9);
}

.ui.inverted.loader:before {
  border-color: rgba(255, 255, 255, 0.15);
}

.ui.inverted.loader:after {
  border-top-color: #FFFFFF;
}

/*-------------------
       Inline
--------------------*/

.ui.inline.loader {
  position: relative;
  vertical-align: middle;
  margin: 0em;
  left: 0em;
  top: 0em;
  -webkit-transform: none;
  transform: none;
}

.ui.inline.loader.active,
.ui.inline.loader.visible {
  display: inline-block;
}

/* Centered Inline */

.ui.centered.inline.loader.active,
.ui.centered.inline.loader.visible {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Loader
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*-------------------
      Content
--------------------*/

.ui.placeholder {
  position: static;
  overflow: hidden;
  -webkit-animation: placeholderShimmer 2s linear;
  animation: placeholderShimmer 2s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  background-color: #FFFFFF;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.15) 15%, rgba(0, 0, 0, 0.08) 30%);
  background-size: 1200px 100%;
  max-width: 30rem;
}

@-webkit-keyframes placeholderShimmer {
  0% {
    background-position: -1200px 0;
  }

  100% {
    background-position: 1200px 0;
  }
}

@keyframes placeholderShimmer {
  0% {
    background-position: -1200px 0;
  }

  100% {
    background-position: 1200px 0;
  }
}

.ui.placeholder + .ui.placeholder {
  margin-top: 2rem;
}

.ui.placeholder + .ui.placeholder {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

.ui.placeholder + .ui.placeholder + .ui.placeholder {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.ui.placeholder + .ui.placeholder + .ui.placeholder + .ui.placeholder {
  -webkit-animation-delay: 0.45s;
  animation-delay: 0.45s;
}

.ui.placeholder + .ui.placeholder + .ui.placeholder + .ui.placeholder + .ui.placeholder {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.ui.placeholder,
.ui.placeholder > :before,
.ui.placeholder .image.header:after,
.ui.placeholder .line,
.ui.placeholder .line:after {
  background-color: #FFFFFF;
}

/* Image */

.ui.placeholder .image:not(.header):not(.ui) {
  height: 100px;
}

.ui.placeholder .square.image:not(.header) {
  height: 0px;
  overflow: hidden;
  /* 1/1 aspect ratio */
  padding-top: 100%;
}

.ui.placeholder .rectangular.image:not(.header) {
  height: 0px;
  overflow: hidden;
  /* 4/3 aspect ratio */
  padding-top: 75%;
}

/* Lines */

.ui.placeholder .line {
  position: relative;
  height: 0.85714286em;
}

.ui.placeholder .line:before,
.ui.placeholder .line:after {
  top: 100%;
  position: absolute;
  content: '';
  background-color: inherit;
}

.ui.placeholder .line:before {
  left: 0px;
}

.ui.placeholder .line:after {
  right: 0px;
}

/* Any Lines */

.ui.placeholder .line {
  margin-bottom: 0.5em;
}

.ui.placeholder .line:before,
.ui.placeholder .line:after {
  height: 0.5em;
}

.ui.placeholder .line:not(:first-child) {
  margin-top: 0.5em;
}

/* Header Image + 2 Lines */

.ui.placeholder .header {
  position: relative;
  overflow: hidden;
}

/* Line Outdent */

.ui.placeholder .line:nth-child(1):after {
  width: 0%;
}

.ui.placeholder .line:nth-child(2):after {
  width: 50%;
}

.ui.placeholder .line:nth-child(3):after {
  width: 10%;
}

.ui.placeholder .line:nth-child(4):after {
  width: 35%;
}

.ui.placeholder .line:nth-child(5):after {
  width: 65%;
}

/* Header Line 1 & 2*/

.ui.placeholder .header .line {
  margin-bottom: 0.64285714em;
}

.ui.placeholder .header .line:before,
.ui.placeholder .header .line:after {
  height: 0.64285714em;
}

.ui.placeholder .header .line:not(:first-child) {
  margin-top: 0.64285714em;
}

.ui.placeholder .header .line:after {
  width: 20%;
}

.ui.placeholder .header .line:nth-child(2):after {
  width: 60%;
}

/* Image Header */

.ui.placeholder .image.header .line {
  margin-left: 3em;
}

.ui.placeholder .image.header .line:before {
  width: 0.71428571rem;
}

.ui.placeholder .image.header:after {
  display: block;
  height: 0.85714286em;
  content: '';
  margin-left: 3em;
}

/* Spacing */

.ui.placeholder .image .line:first-child,
.ui.placeholder .paragraph .line:first-child,
.ui.placeholder .header .line:first-child {
  height: 0.01px;
}

.ui.placeholder .image:not(:first-child):before,
.ui.placeholder .paragraph:not(:first-child):before,
.ui.placeholder .header:not(:first-child):before {
  height: 1.42857143em;
  content: '';
  display: block;
}

/* Inverted Content Loader */

.ui.inverted.placeholder {
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.14) 15%, rgba(255, 255, 255, 0.08) 30%);
}

.ui.inverted.placeholder,
.ui.inverted.placeholder > :before,
.ui.inverted.placeholder .image.header:after,
.ui.inverted.placeholder .line,
.ui.inverted.placeholder .line:after {
  background-color: #1B1C1D;
}

/*******************************
            Variations
*******************************/

/*-------------------
        Sizes
--------------------*/

.ui.placeholder .full.line.line.line:after {
  width: 0%;
}

.ui.placeholder .very.long.line.line.line:after {
  width: 10%;
}

.ui.placeholder .long.line.line.line:after {
  width: 35%;
}

.ui.placeholder .medium.line.line.line:after {
  width: 50%;
}

.ui.placeholder .short.line.line.line:after {
  width: 65%;
}

.ui.placeholder .very.short.line.line.line:after {
  width: 80%;
}

/*-------------------
        Fluid
--------------------*/

.ui.fluid.placeholder {
  max-width: none;
}
/*!
 * # Semantic UI 2.4.2 - Rail
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Rails
*******************************/

.ui.rail {
  position: absolute;
  top: 0%;
  width: 300px;
  height: 100%;
}

.ui.left.rail {
  left: auto;
  right: 100%;
  padding: 0em 2rem 0em 0em;
  margin: 0em 2rem 0em 0em;
}

.ui.right.rail {
  left: 100%;
  right: auto;
  padding: 0em 0em 0em 2rem;
  margin: 0em 0em 0em 2rem;
}

/*******************************
           Variations
*******************************/

/*--------------
     Internal
---------------*/

.ui.left.internal.rail {
  left: 0%;
  right: auto;
  padding: 0em 0em 0em 2rem;
  margin: 0em 0em 0em 2rem;
}

.ui.right.internal.rail {
  left: auto;
  right: 0%;
  padding: 0em 2rem 0em 0em;
  margin: 0em 2rem 0em 0em;
}

/*--------------
    Dividing
---------------*/

.ui.dividing.rail {
  width: 302.5px;
}

.ui.left.dividing.rail {
  padding: 0em 2.5rem 0em 0em;
  margin: 0em 2.5rem 0em 0em;
  border-right: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.right.dividing.rail {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  padding: 0em 0em 0em 2.5rem;
  margin: 0em 0em 0em 2.5rem;
}

/*--------------
    Distance
---------------*/

.ui.close.rail {
  width: calc( 300px  +  1em );
}

.ui.close.left.rail {
  padding: 0em 1em 0em 0em;
  margin: 0em 1em 0em 0em;
}

.ui.close.right.rail {
  padding: 0em 0em 0em 1em;
  margin: 0em 0em 0em 1em;
}

.ui.very.close.rail {
  width: calc( 300px  +  0.5em );
}

.ui.very.close.left.rail {
  padding: 0em 0.5em 0em 0em;
  margin: 0em 0.5em 0em 0em;
}

.ui.very.close.right.rail {
  padding: 0em 0em 0em 0.5em;
  margin: 0em 0em 0em 0.5em;
}

/*--------------
    Attached
---------------*/

.ui.attached.left.rail,
.ui.attached.right.rail {
  padding: 0em;
  margin: 0em;
}

/*--------------
     Sizing
---------------*/

.ui.mini.rail {
  font-size: 0.78571429rem;
}

.ui.tiny.rail {
  font-size: 0.85714286rem;
}

.ui.small.rail {
  font-size: 0.92857143rem;
}

.ui.rail {
  font-size: 1rem;
}

.ui.large.rail {
  font-size: 1.14285714rem;
}

.ui.big.rail {
  font-size: 1.28571429rem;
}

.ui.huge.rail {
  font-size: 1.42857143rem;
}

.ui.massive.rail {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Reveal
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Reveal
*******************************/

.ui.reveal {
  display: inherit;
  position: relative !important;
  font-size: 0em !important;
}

.ui.reveal > .visible.content {
  position: absolute !important;
  top: 0em !important;
  left: 0em !important;
  z-index: 3 !important;
  transition: all 0.5s ease 0.1s;
}

.ui.reveal > .hidden.content {
  position: relative !important;
  z-index: 2 !important;
}

/* Make sure hovered element is on top of other reveal */

.ui.active.reveal .visible.content,
.ui.reveal:hover .visible.content {
  z-index: 4 !important;
}

/*******************************
              Types
*******************************/

/*--------------
      Slide
---------------*/

.ui.slide.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}

.ui.slide.reveal > .content {
  display: block;
  width: 100%;
  white-space: normal;
  float: left;
  margin: 0em;
  transition: -webkit-transform 0.5s ease 0.1s;
  transition: transform 0.5s ease 0.1s;
  transition: transform 0.5s ease 0.1s, -webkit-transform 0.5s ease 0.1s;
}

.ui.slide.reveal > .visible.content {
  position: relative !important;
}

.ui.slide.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
  -webkit-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}

.ui.slide.active.reveal > .visible.content,
.ui.slide.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}

.ui.slide.active.reveal > .hidden.content,
.ui.slide.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}

.ui.slide.right.reveal > .visible.content {
  -webkit-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}

.ui.slide.right.reveal > .hidden.content {
  -webkit-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}

.ui.slide.right.active.reveal > .visible.content,
.ui.slide.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}

.ui.slide.right.active.reveal > .hidden.content,
.ui.slide.right.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}

.ui.slide.up.reveal > .hidden.content {
  -webkit-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}

.ui.slide.up.active.reveal > .visible.content,
.ui.slide.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}

.ui.slide.up.active.reveal > .hidden.content,
.ui.slide.up.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
  transform: translateY(0%) !important;
}

.ui.slide.down.reveal > .hidden.content {
  -webkit-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}

.ui.slide.down.active.reveal > .visible.content,
.ui.slide.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}

.ui.slide.down.active.reveal > .hidden.content,
.ui.slide.down.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
  transform: translateY(0%) !important;
}

/*--------------
      Fade
---------------*/

.ui.fade.reveal > .visible.content {
  opacity: 1;
}

.ui.fade.active.reveal > .visible.content,
.ui.fade.reveal:hover > .visible.content {
  opacity: 0;
}

/*--------------
      Move
---------------*/

.ui.move.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}

.ui.move.reveal > .content {
  display: block;
  float: left;
  white-space: normal;
  margin: 0em;
  transition: -webkit-transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1) 0.1s;
  transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1) 0.1s;
  transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1) 0.1s, -webkit-transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1) 0.1s;
}

.ui.move.reveal > .visible.content {
  position: relative !important;
}

.ui.move.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
}

.ui.move.active.reveal > .visible.content,
.ui.move.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}

.ui.move.right.active.reveal > .visible.content,
.ui.move.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}

.ui.move.up.active.reveal > .visible.content,
.ui.move.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}

.ui.move.down.active.reveal > .visible.content,
.ui.move.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}

/*--------------
     Rotate
---------------*/

.ui.rotate.reveal > .visible.content {
  transition-duration: 0.5s;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.ui.rotate.reveal > .visible.content,
.ui.rotate.right.reveal > .visible.content {
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}

.ui.rotate.active.reveal > .visible.content,
.ui.rotate.reveal:hover > .visible.content,
.ui.rotate.right.active.reveal > .visible.content,
.ui.rotate.right.reveal:hover > .visible.content {
  -webkit-transform: rotate(110deg);
  transform: rotate(110deg);
}

.ui.rotate.left.reveal > .visible.content {
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.ui.rotate.left.active.reveal > .visible.content,
.ui.rotate.left.reveal:hover > .visible.content {
  -webkit-transform: rotate(-110deg);
  transform: rotate(-110deg);
}

/*******************************
              States
*******************************/

.ui.disabled.reveal:hover > .visible.visible.content {
  position: static !important;
  display: block !important;
  opacity: 1 !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.ui.disabled.reveal:hover > .hidden.hidden.content {
  display: none !important;
}

/*******************************
           Coupling
*******************************/

.ui.reveal > .ui.ribbon.label {
  z-index: 5;
}

/*******************************
           Variations
*******************************/

/*--------------
     Visible
---------------*/

.ui.visible.reveal {
  overflow: visible;
}

/*--------------
     Instant
---------------*/

.ui.instant.reveal > .content {
  transition-delay: 0s !important;
}

/*--------------
     Sizing
---------------*/

.ui.reveal > .content {
  font-size: 1rem !important;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Segment
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Segment
*******************************/

.ui.segment {
  position: relative;
  background: #FFFFFF;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
  margin: 1rem 0em;
  padding: 1em 1em;
  border-radius: 0.28571429rem;
  border: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.segment:first-child {
  margin-top: 0em;
}

.ui.segment:last-child {
  margin-bottom: 0em;
}

/* Vertical */

.ui.vertical.segment {
  margin: 0em;
  padding-left: 0em;
  padding-right: 0em;
  background: none transparent;
  border-radius: 0px;
  box-shadow: none;
  border: none;
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.vertical.segment:last-child {
  border-bottom: none;
}

/*-------------------
    Loose Coupling
--------------------*/

/* Header */

.ui.inverted.segment > .ui.header {
  color: #FFFFFF;
}

/* Label */

.ui[class*="bottom attached"].segment > [class*="top attached"].label {
  border-top-left-radius: 0em;
  border-top-right-radius: 0em;
}

.ui[class*="top attached"].segment > [class*="bottom attached"].label {
  border-bottom-left-radius: 0em;
  border-bottom-right-radius: 0em;
}

.ui.attached.segment:not(.top):not(.bottom) > [class*="top attached"].label {
  border-top-left-radius: 0em;
  border-top-right-radius: 0em;
}

.ui.attached.segment:not(.top):not(.bottom) > [class*="bottom attached"].label {
  border-bottom-left-radius: 0em;
  border-bottom-right-radius: 0em;
}

/* Grid */

.ui.page.grid.segment,
.ui.grid > .row > .ui.segment.column,
.ui.grid > .ui.segment.column {
  padding-top: 2em;
  padding-bottom: 2em;
}

.ui.grid.segment {
  margin: 1rem 0em;
  border-radius: 0.28571429rem;
}

/* Table */

.ui.basic.table.segment {
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
}

.ui[class*="very basic"].table.segment {
  padding: 1em 1em;
}

/*******************************
             Types
*******************************/

/*-------------------
     Placeholder
--------------------*/

.ui.placeholder.segment {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  max-width: initial;
  -webkit-animation: none;
  animation: none;
  overflow: visible;
  padding: 1em 1em;
  min-height: 18rem;
  background: #F9FAFB;
  border-color: rgba(34, 36, 38, 0.15);
  box-shadow: 0px 2px 25px 0 rgba(34, 36, 38, 0.05) inset;
}

.ui.placeholder.segment .button,
.ui.placeholder.segment textarea {
  display: block;
}

.ui.placeholder.segment .field,
.ui.placeholder.segment textarea,
.ui.placeholder.segment > .ui.input,
.ui.placeholder.segment .button {
  max-width: 15rem;
  margin-left: auto;
  margin-right: auto;
}

.ui.placeholder.segment .column .button,
.ui.placeholder.segment .column .field,
.ui.placeholder.segment .column textarea,
.ui.placeholder.segment .column > .ui.input {
  max-width: 15rem;
  margin-left: auto;
  margin-right: auto;
}

.ui.placeholder.segment > .inline {
  align-self: center;
}

.ui.placeholder.segment > .inline > .button {
  display: inline-block;
  width: auto;
  margin: 0px 0.35714286rem 0px 0px;
}

.ui.placeholder.segment > .inline > .button:last-child {
  margin-right: 0px;
}

/*-------------------
        Piled
--------------------*/

.ui.piled.segments,
.ui.piled.segment {
  margin: 3em 0em;
  box-shadow: '';
  z-index: auto;
}

.ui.piled.segment:first-child {
  margin-top: 0em;
}

.ui.piled.segment:last-child {
  margin-bottom: 0em;
}

.ui.piled.segments:after,
.ui.piled.segments:before,
.ui.piled.segment:after,
.ui.piled.segment:before {
  background-color: #FFFFFF;
  visibility: visible;
  content: '';
  display: block;
  height: 100%;
  left: 0px;
  position: absolute;
  width: 100%;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: '';
}

.ui.piled.segments:before,
.ui.piled.segment:before {
  -webkit-transform: rotate(-1.2deg);
  transform: rotate(-1.2deg);
  top: 0;
  z-index: -2;
}

.ui.piled.segments:after,
.ui.piled.segment:after {
  -webkit-transform: rotate(1.2deg);
  transform: rotate(1.2deg);
  top: 0;
  z-index: -1;
}

/* Piled Attached */

.ui[class*="top attached"].piled.segment {
  margin-top: 3em;
  margin-bottom: 0em;
}

.ui.piled.segment[class*="top attached"]:first-child {
  margin-top: 0em;
}

.ui.piled.segment[class*="bottom attached"] {
  margin-top: 0em;
  margin-bottom: 3em;
}

.ui.piled.segment[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}

/*-------------------
       Stacked
--------------------*/

.ui.stacked.segment {
  padding-bottom: 1.4em;
}

.ui.stacked.segments:before,
.ui.stacked.segments:after,
.ui.stacked.segment:before,
.ui.stacked.segment:after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0%;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  background: rgba(0, 0, 0, 0.03);
  width: 100%;
  height: 6px;
  visibility: visible;
}

.ui.stacked.segments:before,
.ui.stacked.segment:before {
  display: none;
}

/* Add additional page */

.ui.tall.stacked.segments:before,
.ui.tall.stacked.segment:before {
  display: block;
  bottom: 0px;
}

/* Inverted */

.ui.stacked.inverted.segments:before,
.ui.stacked.inverted.segments:after,
.ui.stacked.inverted.segment:before,
.ui.stacked.inverted.segment:after {
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(34, 36, 38, 0.35);
}

/*-------------------
       Padded
--------------------*/

.ui.padded.segment {
  padding: 1.5em;
}

.ui[class*="very padded"].segment {
  padding: 3em;
}

/* Padded vertical */

.ui.padded.segment.vertical.segment,
.ui[class*="very padded"].vertical.segment {
  padding-left: 0px;
  padding-right: 0px;
}

/*-------------------
       Compact
--------------------*/

.ui.compact.segment {
  display: table;
}

/* Compact Group */

.ui.compact.segments {
  display: inline-flex;
}

.ui.compact.segments .segment,
.ui.segments .compact.segment {
  display: block;
  flex: 0 1 auto;
}

/*-------------------
       Circular
--------------------*/

.ui.circular.segment {
  display: table-cell;
  padding: 2em;
  text-align: center;
  vertical-align: middle;
  border-radius: 500em;
}

/*-------------------
       Raised
--------------------*/

.ui.raised.segments,
.ui.raised.segment {
  box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
}

/*******************************
            Groups
*******************************/

/* Group */

.ui.segments {
  flex-direction: column;
  position: relative;
  margin: 1rem 0em;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
}

.ui.segments:first-child {
  margin-top: 0em;
}

.ui.segments:last-child {
  margin-bottom: 0em;
}

/* Nested Segment */

.ui.segments > .segment {
  top: 0px;
  bottom: 0px;
  border-radius: 0px;
  margin: 0em;
  width: auto;
  box-shadow: none;
  border: none;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.segments:not(.horizontal) > .segment:first-child {
  border-top: none;
  margin-top: 0em;
  bottom: 0px;
  margin-bottom: 0em;
  top: 0px;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

/* Bottom */

.ui.segments:not(.horizontal) > .segment:last-child {
  top: 0px;
  bottom: 0px;
  margin-top: 0em;
  margin-bottom: 0em;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

/* Only */

.ui.segments:not(.horizontal) > .segment:only-child {
  border-radius: 0.28571429rem;
}

/* Nested Group */

.ui.segments > .ui.segments {
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  margin: 1rem 1rem;
}

.ui.segments > .segments:first-child {
  border-top: none;
}

.ui.segments > .segment + .segments:not(.horizontal) {
  margin-top: 0em;
}

/* Horizontal Group */

.ui.horizontal.segments {
  display: flex;
  flex-direction: row;
  background-color: transparent;
  border-radius: 0px;
  padding: 0em;
  background-color: #FFFFFF;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
  margin: 1rem 0em;
  border-radius: 0.28571429rem;
  border: 1px solid rgba(34, 36, 38, 0.15);
}

/* Nested Horizontal Group */

.ui.segments > .horizontal.segments {
  margin: 0em;
  background-color: transparent;
  border-radius: 0px;
  border: none;
  box-shadow: none;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
}

/* Horizontal Segment */

.ui.horizontal.segments > .segment {
  flex: 1 1 auto;
  -ms-flex: 1 1 0px;
  /* Solves #2550 MS Flex */
  margin: 0em;
  min-width: 0px;
  background-color: transparent;
  border-radius: 0px;
  border: none;
  box-shadow: none;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
}

/* Border Fixes */

.ui.segments > .horizontal.segments:first-child {
  border-top: none;
}

.ui.horizontal.segments > .segment:first-child {
  border-left: none;
}

/*******************************
            States
*******************************/

/*--------------
    Disabled
---------------*/

.ui.disabled.segment {
  opacity: 0.45;
  color: rgba(40, 40, 40, 0.3);
}

/*--------------
    Loading
---------------*/

.ui.loading.segment {
  position: relative;
  cursor: default;
  pointer-events: none;
  text-shadow: none !important;
  color: transparent !important;
  transition: all 0s linear;
}

.ui.loading.segment:before {
  position: absolute;
  content: '';
  top: 0%;
  left: 0%;
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  height: 100%;
  border-radius: 0.28571429rem;
  z-index: 100;
}

.ui.loading.segment:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -1.5em 0em 0em -1.5em;
  width: 3em;
  height: 3em;
  -webkit-animation: segment-spin 0.6s linear;
  animation: segment-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1);
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
  visibility: visible;
  z-index: 101;
}

@-webkit-keyframes segment-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes segment-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*******************************
           Variations
*******************************/

/*-------------------
       Basic
--------------------*/

.ui.basic.segment {
  background: none transparent;
  box-shadow: none;
  border: none;
  border-radius: 0px;
}

/*-------------------
       Clearing
--------------------*/

.ui.clearing.segment:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/*-------------------
       Colors
--------------------*/

/* Red */

.ui.red.segment:not(.inverted) {
  border-top: 2px solid #DB2828 !important;
}

.ui.inverted.red.segment {
  background-color: #DB2828 !important;
  color: #FFFFFF !important;
}

/* Orange */

.ui.orange.segment:not(.inverted) {
  border-top: 2px solid #F2711C !important;
}

.ui.inverted.orange.segment {
  background-color: #F2711C !important;
  color: #FFFFFF !important;
}

/* Yellow */

.ui.yellow.segment:not(.inverted) {
  border-top: 2px solid #FBBD08 !important;
}

.ui.inverted.yellow.segment {
  background-color: #FBBD08 !important;
  color: #FFFFFF !important;
}

/* Olive */

.ui.olive.segment:not(.inverted) {
  border-top: 2px solid #B5CC18 !important;
}

.ui.inverted.olive.segment {
  background-color: #B5CC18 !important;
  color: #FFFFFF !important;
}

/* Green */

.ui.green.segment:not(.inverted) {
  border-top: 2px solid #21BA45 !important;
}

.ui.inverted.green.segment {
  background-color: #21BA45 !important;
  color: #FFFFFF !important;
}

/* Teal */

.ui.teal.segment:not(.inverted) {
  border-top: 2px solid #00B5AD !important;
}

.ui.inverted.teal.segment {
  background-color: #00B5AD !important;
  color: #FFFFFF !important;
}

/* Blue */

.ui.blue.segment:not(.inverted) {
  border-top: 2px solid #2185D0 !important;
}

.ui.inverted.blue.segment {
  background-color: #2185D0 !important;
  color: #FFFFFF !important;
}

/* Violet */

.ui.violet.segment:not(.inverted) {
  border-top: 2px solid #6435C9 !important;
}

.ui.inverted.violet.segment {
  background-color: #6435C9 !important;
  color: #FFFFFF !important;
}

/* Purple */

.ui.purple.segment:not(.inverted) {
  border-top: 2px solid #A333C8 !important;
}

.ui.inverted.purple.segment {
  background-color: #A333C8 !important;
  color: #FFFFFF !important;
}

/* Pink */

.ui.pink.segment:not(.inverted) {
  border-top: 2px solid #E03997 !important;
}

.ui.inverted.pink.segment {
  background-color: #E03997 !important;
  color: #FFFFFF !important;
}

/* Brown */

.ui.brown.segment:not(.inverted) {
  border-top: 2px solid #A5673F !important;
}

.ui.inverted.brown.segment {
  background-color: #A5673F !important;
  color: #FFFFFF !important;
}

/* Grey */

.ui.grey.segment:not(.inverted) {
  border-top: 2px solid #767676 !important;
}

.ui.inverted.grey.segment {
  background-color: #767676 !important;
  color: #FFFFFF !important;
}

/* Black */

.ui.black.segment:not(.inverted) {
  border-top: 2px solid #1B1C1D !important;
}

.ui.inverted.black.segment {
  background-color: #1B1C1D !important;
  color: #FFFFFF !important;
}

/*-------------------
       Aligned
--------------------*/

.ui[class*="left aligned"].segment {
  text-align: left;
}

.ui[class*="right aligned"].segment {
  text-align: right;
}

.ui[class*="center aligned"].segment {
  text-align: center;
}

/*-------------------
       Floated
--------------------*/

.ui.floated.segment,
.ui[class*="left floated"].segment {
  float: left;
  margin-right: 1em;
}

.ui[class*="right floated"].segment {
  float: right;
  margin-left: 1em;
}

/*-------------------
      Inverted
--------------------*/

.ui.inverted.segment {
  border: none;
  box-shadow: none;
}

.ui.inverted.segment,
.ui.primary.inverted.segment {
  background: #1B1C1D;
  color: rgba(255, 255, 255, 0.9);
}

/* Nested */

.ui.inverted.segment .segment {
  color: rgba(0, 0, 0, 0.87);
}

.ui.inverted.segment .inverted.segment {
  color: rgba(255, 255, 255, 0.9);
}

/* Attached */

.ui.inverted.attached.segment {
  border-color: #555555;
}

/*-------------------
     Emphasis
--------------------*/

/* Secondary */

.ui.secondary.segment {
  background: #F3F4F5;
  color: rgba(0, 0, 0, 0.6);
}

.ui.secondary.inverted.segment {
  background: #4c4f52 linear-gradient(rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
  color: rgba(255, 255, 255, 0.8);
}

/* Tertiary */

.ui.tertiary.segment {
  background: #DCDDDE;
  color: rgba(0, 0, 0, 0.6);
}

.ui.tertiary.inverted.segment {
  background: #717579 linear-gradient(rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0.35) 100%);
  color: rgba(255, 255, 255, 0.8);
}

/*-------------------
      Attached
--------------------*/

/* Middle */

.ui.attached.segment {
  top: 0px;
  bottom: 0px;
  border-radius: 0px;
  margin: 0em -1px;
  width: calc(100% - (-1px * 2));
  max-width: calc(100% - (-1px * 2));
  box-shadow: none;
  border: 1px solid #D4D4D5;
}

.ui.attached:not(.message) + .ui.attached.segment:not(.top) {
  border-top: none;
}

/* Top */

.ui[class*="top attached"].segment {
  bottom: 0px;
  margin-bottom: 0em;
  top: 0px;
  margin-top: 1rem;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.segment[class*="top attached"]:first-child {
  margin-top: 0em;
}

/* Bottom */

.ui.segment[class*="bottom attached"] {
  bottom: 0px;
  margin-top: 0em;
  top: 0px;
  margin-bottom: 1rem;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.segment[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}

/*-------------------
        Size
--------------------*/

.ui.mini.segments .segment,
.ui.mini.segment {
  font-size: 0.78571429rem;
}

.ui.tiny.segments .segment,
.ui.tiny.segment {
  font-size: 0.85714286rem;
}

.ui.small.segments .segment,
.ui.small.segment {
  font-size: 0.92857143rem;
}

.ui.segments .segment,
.ui.segment {
  font-size: 1rem;
}

.ui.large.segments .segment,
.ui.large.segment {
  font-size: 1.14285714rem;
}

.ui.big.segments .segment,
.ui.big.segment {
  font-size: 1.28571429rem;
}

.ui.huge.segments .segment,
.ui.huge.segment {
  font-size: 1.42857143rem;
}

.ui.massive.segments .segment,
.ui.massive.segment {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Step
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Plural
*******************************/

.ui.steps {
  display: inline-flex;
  flex-direction: row;
  align-items: stretch;
  margin: 1em 0em;
  background: '';
  box-shadow: none;
  line-height: 1.14285714em;
  border-radius: 0.28571429rem;
  border: 1px solid rgba(34, 36, 38, 0.15);
}

/* First Steps */

.ui.steps:first-child {
  margin-top: 0em;
}

/* Last Steps */

.ui.steps:last-child {
  margin-bottom: 0em;
}

/*******************************
           Singular
*******************************/

.ui.steps .step {
  position: relative;
  display: flex;
  flex: 1 0 auto;
  flex-wrap: wrap;
  flex-direction: row;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
  margin: 0em 0em;
  padding: 1.14285714em 2em;
  background: #FFFFFF;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
  border-radius: 0em;
  border: none;
  border-right: 1px solid rgba(34, 36, 38, 0.15);
  transition: background-color 0.1s ease, opacity 0.1s ease, color 0.1s ease, box-shadow 0.1s ease;
}

/* Arrow */

.ui.steps .step:after {
  display: none;
  position: absolute;
  z-index: 2;
  content: '';
  top: 50%;
  right: 0%;
  border: medium none;
  background-color: #FFFFFF;
  width: 1.14285714em;
  height: 1.14285714em;
  border-style: solid;
  border-color: rgba(34, 36, 38, 0.15);
  border-width: 0px 1px 1px 0px;
  transition: background-color 0.1s ease, opacity 0.1s ease, color 0.1s ease, box-shadow 0.1s ease;
  -webkit-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  transform: translateY(-50%) translateX(50%) rotate(-45deg);
}

/* First Step */

.ui.steps .step:first-child {
  padding-left: 2em;
  border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}

/* Last Step */

.ui.steps .step:last-child {
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

.ui.steps .step:last-child {
  border-right: none;
  margin-right: 0em;
}

/* Only Step */

.ui.steps .step:only-child {
  border-radius: 0.28571429rem;
}

/*******************************
            Content
*******************************/

/* Title */

.ui.steps .step .title {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1.14285714em;
  font-weight: bold;
}

.ui.steps .step > .title {
  width: 100%;
}

/* Description */

.ui.steps .step .description {
  font-weight: normal;
  font-size: 0.92857143em;
  color: rgba(0, 0, 0, 0.87);
}

.ui.steps .step > .description {
  width: 100%;
}

.ui.steps .step .title ~ .description {
  margin-top: 0.25em;
}

/* Icon */

.ui.steps .step > .icon {
  line-height: 1;
  font-size: 2.5em;
  margin: 0em 1rem 0em 0em;
}

.ui.steps .step > .icon,
.ui.steps .step > .icon ~ .content {
  display: block;
  flex: 0 1 auto;
  align-self: middle;
}

.ui.steps .step > .icon ~ .content {
  flex-grow: 1 0 auto;
}

/* Horizontal Icon */

.ui.steps:not(.vertical) .step > .icon {
  width: auto;
}

/* Link */

.ui.steps .link.step,
.ui.steps a.step {
  cursor: pointer;
}

/*******************************
            Types
*******************************/

/*--------------
     Ordered
---------------*/

.ui.ordered.steps {
  counter-reset: ordered;
}

.ui.ordered.steps .step:before {
  display: block;
  position: static;
  text-align: center;
  content: counters(ordered, ".");
  align-self: middle;
  margin-right: 1rem;
  font-size: 2.5em;
  counter-increment: ordered;
  font-family: inherit;
  font-weight: bold;
}

.ui.ordered.steps .step > * {
  display: block;
  align-self: middle;
}

/*--------------
    Vertical
---------------*/

.ui.vertical.steps {
  display: inline-flex;
  flex-direction: column;
  overflow: visible;
}

.ui.vertical.steps .step {
  justify-content: flex-start;
  border-radius: 0em;
  padding: 1.14285714em 2em;
  border-right: none;
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.vertical.steps .step:first-child {
  padding: 1.14285714em 2em;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.vertical.steps .step:last-child {
  border-bottom: none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.vertical.steps .step:only-child {
  border-radius: 0.28571429rem;
}

/* Arrow */

.ui.vertical.steps .step:after {
  display: none;
}

.ui.vertical.steps .step:after {
  top: 50%;
  right: 0%;
  border-width: 0px 1px 1px 0px;
}

.ui.vertical.steps .step:after {
  display: none;
}

.ui.vertical.steps .active.step:after {
  display: block;
}

.ui.vertical.steps .step:last-child:after {
  display: none;
}

.ui.vertical.steps .active.step:last-child:after {
  display: block;
}

/*---------------
    Responsive
----------------*/

/* Mobile (Default) */

@media only screen and (max-width: 767px) {
  .ui.steps:not(.unstackable) {
    display: inline-flex;
    overflow: visible;
    flex-direction: column;
  }

  .ui.steps:not(.unstackable) .step {
    width: 100% !important;
    flex-direction: column;
    border-radius: 0em;
    padding: 1.14285714em 2em;
  }

  .ui.steps:not(.unstackable) .step:first-child {
    padding: 1.14285714em 2em;
    border-radius: 0.28571429rem 0.28571429rem 0em 0em;
  }

  .ui.steps:not(.unstackable) .step:last-child {
    border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  }

  /* Arrow */

  .ui.steps:not(.unstackable) .step:after {
    display: none !important;
  }

  /* Content */

  .ui.steps:not(.unstackable) .step .content {
    text-align: center;
  }

  /* Icon */

  .ui.steps:not(.unstackable) .step > .icon,
  .ui.ordered.steps:not(.unstackable) .step:before {
    margin: 0em 0em 1rem 0em;
  }
}

/*******************************
             States
*******************************/

/* Link Hover */

.ui.steps .link.step:hover::after,
.ui.steps .link.step:hover,
.ui.steps a.step:hover::after,
.ui.steps a.step:hover {
  background: #F9FAFB;
  color: rgba(0, 0, 0, 0.8);
}

/* Link Down */

.ui.steps .link.step:active::after,
.ui.steps .link.step:active,
.ui.steps a.step:active::after,
.ui.steps a.step:active {
  background: #F3F4F5;
  color: rgba(0, 0, 0, 0.9);
}

/* Active */

.ui.steps .step.active {
  cursor: auto;
  background: #F3F4F5;
}

.ui.steps .step.active:after {
  background: #F3F4F5;
}

.ui.steps .step.active .title {
  color: #4183C4;
}

.ui.ordered.steps .step.active:before,
.ui.steps .active.step .icon {
  color: rgba(0, 0, 0, 0.85);
}

/* Active Arrow */

.ui.steps .step:after {
  display: block;
}

.ui.steps .active.step:after {
  display: block;
}

.ui.steps .step:last-child:after {
  display: none;
}

.ui.steps .active.step:last-child:after {
  display: none;
}

/* Active Hover */

.ui.steps .link.active.step:hover::after,
.ui.steps .link.active.step:hover,
.ui.steps a.active.step:hover::after,
.ui.steps a.active.step:hover {
  cursor: pointer;
  background: #DCDDDE;
  color: rgba(0, 0, 0, 0.87);
}

/* Completed */

.ui.steps .step.completed > .icon:before,
.ui.ordered.steps .step.completed:before {
  color: #21BA45;
}

/* Disabled */

.ui.steps .disabled.step {
  cursor: auto;
  background: #FFFFFF;
  pointer-events: none;
}

.ui.steps .disabled.step,
.ui.steps .disabled.step .title,
.ui.steps .disabled.step .description {
  color: rgba(40, 40, 40, 0.3);
}

.ui.steps .disabled.step:after {
  background: #FFFFFF;
}

/*******************************
           Variations
*******************************/

/*--------------
   Stackable
---------------*/

/* Tablet Or Below */

@media only screen and (max-width: 991px) {
  .ui[class*="tablet stackable"].steps {
    display: inline-flex;
    overflow: visible;
    flex-direction: column;
  }

  /* Steps */

  .ui[class*="tablet stackable"].steps .step {
    flex-direction: column;
    border-radius: 0em;
    padding: 1.14285714em 2em;
  }

  .ui[class*="tablet stackable"].steps .step:first-child {
    padding: 1.14285714em 2em;
    border-radius: 0.28571429rem 0.28571429rem 0em 0em;
  }

  .ui[class*="tablet stackable"].steps .step:last-child {
    border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  }

  /* Arrow */

  .ui[class*="tablet stackable"].steps .step:after {
    display: none !important;
  }

  /* Content */

  .ui[class*="tablet stackable"].steps .step .content {
    text-align: center;
  }

  /* Icon */

  .ui[class*="tablet stackable"].steps .step > .icon,
  .ui[class*="tablet stackable"].ordered.steps .step:before {
    margin: 0em 0em 1rem 0em;
  }
}

/*--------------
      Fluid
---------------*/

/* Fluid */

.ui.fluid.steps {
  display: flex;
  width: 100%;
}

/*--------------
    Attached
---------------*/

/* Top */

.ui.attached.steps {
  width: calc(100% + (--1px * 2)) !important;
  margin: 0em -1px 0;
  max-width: calc(100% + (--1px * 2));
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.attached.steps .step:first-child {
  border-radius: 0.28571429rem 0em 0em 0em;
}

.ui.attached.steps .step:last-child {
  border-radius: 0em 0.28571429rem 0em 0em;
}

/* Bottom */

.ui.bottom.attached.steps {
  margin: 0 -1px 0em;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.bottom.attached.steps .step:first-child {
  border-radius: 0em 0em 0em 0.28571429rem;
}

.ui.bottom.attached.steps .step:last-child {
  border-radius: 0em 0em 0.28571429rem 0em;
}

/*-------------------
    Evenly Divided
--------------------*/

.ui.one.steps,
.ui.two.steps,
.ui.three.steps,
.ui.four.steps,
.ui.five.steps,
.ui.six.steps,
.ui.seven.steps,
.ui.eight.steps {
  width: 100%;
}

.ui.one.steps > .step,
.ui.two.steps > .step,
.ui.three.steps > .step,
.ui.four.steps > .step,
.ui.five.steps > .step,
.ui.six.steps > .step,
.ui.seven.steps > .step,
.ui.eight.steps > .step {
  flex-wrap: nowrap;
}

.ui.one.steps > .step {
  width: 100%;
}

.ui.two.steps > .step {
  width: 50%;
}

.ui.three.steps > .step {
  width: 33.333%;
}

.ui.four.steps > .step {
  width: 25%;
}

.ui.five.steps > .step {
  width: 20%;
}

.ui.six.steps > .step {
  width: 16.666%;
}

.ui.seven.steps > .step {
  width: 14.285%;
}

.ui.eight.steps > .step {
  width: 12.5%;
}

/*-------------------
       Sizes
--------------------*/

.ui.mini.steps .step,
.ui.mini.step {
  font-size: 0.78571429rem;
}

.ui.tiny.steps .step,
.ui.tiny.step {
  font-size: 0.85714286rem;
}

.ui.small.steps .step,
.ui.small.step {
  font-size: 0.92857143rem;
}

.ui.steps .step,
.ui.step {
  font-size: 1rem;
}

.ui.large.steps .step,
.ui.large.step {
  font-size: 1.14285714rem;
}

.ui.big.steps .step,
.ui.big.step {
  font-size: 1.28571429rem;
}

.ui.huge.steps .step,
.ui.huge.step {
  font-size: 1.42857143rem;
}

.ui.massive.steps .step,
.ui.massive.step {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

@font-face {
  font-family: 'Step';
  src: url(data:application/x-font-ttf;charset=utf-8;;base64,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) format('truetype'), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAoUAA4AAAAAEPQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABRAAAAEQAAABWPeFJAWNtYXAAAAGIAAAAOgAAAUrQEhm3Y3Z0IAAAAcQAAAAUAAAAHAZJ/5RmcGdtAAAB2AAABPkAAAmRigp4O2dhc3AAAAbUAAAACAAAAAgAAAAQZ2x5ZgAABtwAAACuAAAAtt9nBHZoZWFkAAAHjAAAADUAAAA2ASs8e2hoZWEAAAfEAAAAIAAAACQHUwNNaG10eAAAB+QAAAAMAAAADAspAABsb2NhAAAH8AAAAAgAAAAIADgAW21heHAAAAf4AAAAIAAAACAApgm8bmFtZQAACBgAAAF3AAACzcydGhxwb3N0AAAJkAAAACoAAAA7rr1AmHByZXAAAAm8AAAAVgAAAFaSoZr/eJxjYGTewTiBgZWBg6mKaQ8DA0MPhGZ8wGDIyMTAwMTAysyAFQSkuaYwOLxgeMHIHPQ/iyGKmZvBHyjMCJIDAPe9C2B4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYGF4w/v8PUvCCAURLMELVAwEjG8OIBwBk5AavAAB4nGNgQANGDEbM3P83gjAAELQD4XicnVXZdtNWFJU8ZHASOmSgoA7X3DhQ68qEKRgwaSrFdiEdHAitBB2kDHTkncc+62uOQrtWH/m07n09JLR0rbYsls++R1tn2DrnRhwjKn0aiGvUoZKXA6msPZZK90lc13Uvj5UMBnFdthJPSZuonSRKat3sUC7xWOsqWSdYJ+PlIFZPVZ5noAziFB5lSUQbRBuplyZJ4onjJ4kWZxAfJUkgJaMQp9LIUEI1GsRS1aFM6dCr1xNx00DKRqMedVhU90PFJ8c1p9SsA0YqVznCFevVRr4bpwMve5DEOsGzrYcxHnisfpQqkIqR6cg/dkpOlIaBVHHUoVbi6DCTX/eRTCrNQKaMYkWl7oG43f102xYxPXQ6vi5KlUaqurnOKJrt0fGogygP2cbppNzQ2fbw5RlTVKtdcbPtQGYNXErJbHSfRAAdJlLj6QFONZwCqRn1R8XZ588BEslclKo8VTKHegOZMzt7cTHtbiersnCknwcyb3Z2452HQ6dXh3/R+hdM4cxHj+Jifj5C+lBqfiJOJKVGWMzyp4YfcVcgQrkxiAsXyuBThDl0RdrZZl3jtTH2hs/5SqlhPQna6KP4fgr9TiQrHGdRo/VInM1j13Wt3GdQS7W7Fzsyr0OVIu7vCwuuM+eEYZ4WC1VfnvneBTT/Bohn/EDeNIVL+5YpSrRvm6JMu2iKCu0SVKVdNsUU7YoppmnPmmKG9h1TzNKeMzLj/8vc55H7HN7xkJv2XeSmfQ+5ad9HbtoPkJtWITdtHblpLyA3rUZu2lWjOnYEGgZpF1IVQdA0svph3Fab9UDWjDR8aWDyLmLI+upER521tcofxX914gsHcmmip7siF5viLq/bFj483e6rj5pG3bDV+MaR8jAeRnocmtBZ+c3hv+1N3S6a7jKqMugBFUwKwABl7UAC0zrbCaT1mqf48gdgXIZ4zkpDtVSfO4am7+V5X/exOfG+x+3GLrdcd3kJWdYNcmP28N9SZKrrH+UtrVQnR6wrJ49VaxhDKrwour6SlHu0tRu/KKmy8l6U1srnk5CbPYMbQlu27mGwI0xpyiUeXlOlKD3UUo6yQyxvKco84JSLC1qGxLgOdQ9qa8TpoXoYGwshhqG0vRBwSCldFd+0ynfxHqtr2Oj4xRXh6XpyEhGf4ir7UfBU10b96A7avGbdMoMpVaqn+4xPsa/b9lFZaaSOsxe3VAfXNOsaORXTT+Rr4HRvOGjdAz1UfDRBI1U1x+jGKGM0ljXl3wR0MVZ+w2jVYvs93E+dpFWsuUuY7JsT9+C0u/0q+7WcW0bW/dcGvW3kip8jMb8tCvw7B2K3ZA3UO5OBGAvIWdAYxhYmdxiug23EbfY/Jqf/34aFRXJXOxq7eerD1ZNRJXfZ8rjLTXZZ16M2R9VOGvsIjS0PN+bY4XIstsRgQbb+wf8x7gF3aVEC4NDIZZiI2nShnurh6h6rsW04VxIBds2x43QAegAuQd8cu9bzCYD13CPnLsB9cgh2yCH4lByCz8i5BfA5OQRfkEMwIIdgl5w7AA/IIXhIDsEeOQSPyNkE+JIcgq/IIYjJIUjIuQ3wmByCJ+QQfE0OwTdGrk5k/pYH2QD6zqKbQKmdGhzaOGRGrk3Y+zxY9oFFZB9aROqRkesT6lMeLPV7i0j9wSJSfzRyY0L9iQdL/dkiUn+xiNRnxpeZIymvDp7zjg7+BJfqrV4AAAAAAQAB//8AD3icY2BkAALmJUwzGEQZZBwk+RkZGBmdGJgYmbIYgMwsoGSiiLgIs5A2owg7I5uSOqOaiT2jmZE8I5gQY17C/09BQEfg3yt+fh8gvYQxD0j68DOJiQn8U+DnZxQDcQUEljLmCwBpBgbG/3//b2SOZ+Zm4GEQcuAH2sblDLSEm8FFVJhJEGgLH6OSHpMdo5EcI3Nk0bEXJ/LYqvZ82VXHGFd6pKTkyCsQwQAAq+QkqAAAeJxjYGRgYADiw5VSsfH8Nl8ZuJlfAEUYzpvO6IXQCb7///7fyLyEmRvI5WBgAokCAFb/DJAAAAB4nGNgZGBgDvqfxRDF/IKB4f935iUMQBEUwAwAi5YFpgPoAAAD6AAAA1kAAAAAAAAAOABbAAEAAAADABYAAQAAAAAAAgAGABMAbgAAAC0JkQAAAAB4nHWQy2rCQBSG//HSi0JbWui2sypKabxgN4IgWHTTbqS4LTHGJBIzMhkFX6Pv0IfpS/RZ+puMpShNmMx3vjlz5mQAXOMbAvnzxJGzwBmjnAs4Rc9ykf7Zcon8YrmMKt4sn9C/W67gAYHlKm7wwQqidM5ogU/LAlfi0nIBF+LOcpH+0XKJ3LNcxq14tXxC71muYCJSy1Xci6+BWm11FIRG1gZ12W62OnK6lYoqStxYumsTKp3KvpyrxPhxrBxPLfc89oN17Op9uJ8nvk4jlciW09yrkZ/42jX+bFc93QRtY+ZyrtVSDm2GXGm18D3jhMasuo3G3/MwgMIKW2hEvKoQBhI12jrnNppooUOaMkMyM8+KkMBFTONizR1htpIy7nPMGSW0PjNisgOP3+WRH5MC7o9ZRR+tHsYT0u6MKPOSfTns7jBrREqyTDezs9/eU2x4WpvWcNeuS511JTE8qCF5H7u1BY1H72S3Ymi7aPD95/9+AN1fhEsAeJxjYGKAAC4G7ICZgYGRiZGZMzkjNTk7N7Eomy05syg5J5WBAQBE1QZBAABLuADIUlixAQGOWbkIAAgAYyCwASNEsAMjcLIEKAlFUkSyCgIHKrEGAUSxJAGIUViwQIhYsQYDRLEmAYhRWLgEAIhYsQYBRFlZWVm4Af+FsASNsQUARAAA) format('woff');
}

.ui.steps .step.completed > .icon:before,
.ui.ordered.steps .step.completed:before {
  font-family: 'Step';
  content: '\e800';
  /* '' */
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Breadcrumb
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           Breadcrumb
*******************************/

.ui.breadcrumb {
  line-height: 1;
  display: inline-block;
  margin: 0em 0em;
  vertical-align: middle;
}

.ui.breadcrumb:first-child {
  margin-top: 0em;
}

.ui.breadcrumb:last-child {
  margin-bottom: 0em;
}

/*******************************
          Content
*******************************/

/* Divider */

.ui.breadcrumb .divider {
  display: inline-block;
  opacity: 0.7;
  margin: 0em 0.21428571rem 0em;
  font-size: 0.92857143em;
  color: rgba(0, 0, 0, 0.4);
  vertical-align: baseline;
}

/* Link */

.ui.breadcrumb a {
  color: #4183C4;
}

.ui.breadcrumb a:hover {
  color: #1e70bf;
}

/* Icon Divider */

.ui.breadcrumb .icon.divider {
  font-size: 0.85714286em;
  vertical-align: baseline;
}

/* Section */

.ui.breadcrumb a.section {
  cursor: pointer;
}

.ui.breadcrumb .section {
  display: inline-block;
  margin: 0em;
  padding: 0em;
}

/* Loose Coupling */

.ui.breadcrumb.segment {
  display: inline-block;
  padding: 0.78571429em 1em;
}

/*******************************
            States
*******************************/

.ui.breadcrumb .active.section {
  font-weight: bold;
}

/*******************************
           Variations
*******************************/

.ui.mini.breadcrumb {
  font-size: 0.78571429rem;
}

.ui.tiny.breadcrumb {
  font-size: 0.85714286rem;
}

.ui.small.breadcrumb {
  font-size: 0.92857143rem;
}

.ui.breadcrumb {
  font-size: 1rem;
}

.ui.large.breadcrumb {
  font-size: 1.14285714rem;
}

.ui.big.breadcrumb {
  font-size: 1.28571429rem;
}

.ui.huge.breadcrumb {
  font-size: 1.42857143rem;
}

.ui.massive.breadcrumb {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Form
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Elements
*******************************/

/*--------------------
        Form
---------------------*/

.ui.form {
  position: relative;
  max-width: 100%;
}

/*--------------------
        Content
---------------------*/

.ui.form > p {
  margin: 1em 0em;
}

/*--------------------
        Field
---------------------*/

.ui.form .field {
  clear: both;
  margin: 0em 0em 1em;
}

.ui.form .field:last-child,
.ui.form .fields:last-child .field {
  margin-bottom: 0em;
}

.ui.form .fields .field {
  clear: both;
  margin: 0em;
}

/*--------------------
        Labels
---------------------*/

.ui.form .field > label {
  display: block;
  margin: 0em 0em 0.28571429rem 0em;
  color: rgba(0, 0, 0, 0.87);
  font-size: 0.92857143em;
  font-weight: bold;
  text-transform: none;
}

/*--------------------
    Standard Inputs
---------------------*/

.ui.form textarea,
.ui.form input:not([type]),
.ui.form input[type="date"],
.ui.form input[type="datetime-local"],
.ui.form input[type="email"],
.ui.form input[type="number"],
.ui.form input[type="password"],
.ui.form input[type="search"],
.ui.form input[type="tel"],
.ui.form input[type="time"],
.ui.form input[type="text"],
.ui.form input[type="file"],
.ui.form input[type="url"] {
  width: 100%;
  vertical-align: top;
}

/* Set max height on unusual input */

.ui.form ::-webkit-datetime-edit,
.ui.form ::-webkit-inner-spin-button {
  height: 1.21428571em;
}

.ui.form input:not([type]),
.ui.form input[type="date"],
.ui.form input[type="datetime-local"],
.ui.form input[type="email"],
.ui.form input[type="number"],
.ui.form input[type="password"],
.ui.form input[type="search"],
.ui.form input[type="tel"],
.ui.form input[type="time"],
.ui.form input[type="text"],
.ui.form input[type="file"],
.ui.form input[type="url"] {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  margin: 0em;
  outline: none;
  -webkit-appearance: none;
  tap-highlight-color: rgba(255, 255, 255, 0);
  line-height: 1.21428571em;
  padding: 0.67857143em 1em;
  font-size: 1em;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  transition: color 0.1s ease, border-color 0.1s ease;
}

/* Text Area */

.ui.form textarea {
  margin: 0em;
  -webkit-appearance: none;
  tap-highlight-color: rgba(255, 255, 255, 0);
  padding: 0.78571429em 1em;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  outline: none;
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  transition: color 0.1s ease, border-color 0.1s ease;
  font-size: 1em;
  line-height: 1.2857;
  resize: vertical;
}

.ui.form textarea:not([rows]) {
  height: 12em;
  min-height: 8em;
  max-height: 24em;
}

.ui.form textarea,
.ui.form input[type="checkbox"] {
  vertical-align: top;
}

/*--------------------------
  Input w/ attached Button
---------------------------*/

.ui.form input.attached {
  width: auto;
}

/*--------------------
     Basic Select
---------------------*/

.ui.form select {
  display: block;
  height: auto;
  width: 100%;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  padding: 0.62em 1em;
  color: rgba(0, 0, 0, 0.87);
  transition: color 0.1s ease, border-color 0.1s ease;
}

/*--------------------
       Dropdown
---------------------*/

/* Block */

.ui.form .field > .selection.dropdown {
  width: 100%;
}

.ui.form .field > .selection.dropdown > .dropdown.icon {
  float: right;
}

/* Inline */

.ui.form .inline.fields .field > .selection.dropdown,
.ui.form .inline.field > .selection.dropdown {
  width: auto;
}

.ui.form .inline.fields .field > .selection.dropdown > .dropdown.icon,
.ui.form .inline.field > .selection.dropdown > .dropdown.icon {
  float: none;
}

/*--------------------
       UI Input
---------------------*/

/* Block */

.ui.form .field .ui.input,
.ui.form .fields .field .ui.input,
.ui.form .wide.field .ui.input {
  width: 100%;
}

/* Inline  */

.ui.form .inline.fields .field:not(.wide) .ui.input,
.ui.form .inline.field:not(.wide) .ui.input {
  width: auto;
  vertical-align: middle;
}

/* Auto Input */

.ui.form .fields .field .ui.input input,
.ui.form .field .ui.input input {
  width: auto;
}

/* Full Width Input */

.ui.form .ten.fields .ui.input input,
.ui.form .nine.fields .ui.input input,
.ui.form .eight.fields .ui.input input,
.ui.form .seven.fields .ui.input input,
.ui.form .six.fields .ui.input input,
.ui.form .five.fields .ui.input input,
.ui.form .four.fields .ui.input input,
.ui.form .three.fields .ui.input input,
.ui.form .two.fields .ui.input input,
.ui.form .wide.field .ui.input input {
  flex: 1 0 auto;
  width: 0px;
}

/*--------------------
   Types of Messages
---------------------*/

.ui.form .success.message,
.ui.form .warning.message,
.ui.form .error.message {
  display: none;
}

/* Assumptions */

.ui.form .message:first-child {
  margin-top: 0px;
}

/*--------------------
   Validation Prompt
---------------------*/

.ui.form .field .prompt.label {
  white-space: normal;
  background: #FFFFFF !important;
  border: 1px solid #E0B4B4 !important;
  color: #9F3A38 !important;
}

.ui.form .inline.fields .field .prompt,
.ui.form .inline.field .prompt {
  vertical-align: top;
  margin: -0.25em 0em -0.5em 0.5em;
}

.ui.form .inline.fields .field .prompt:before,
.ui.form .inline.field .prompt:before {
  border-width: 0px 0px 1px 1px;
  bottom: auto;
  right: auto;
  top: 50%;
  left: 0em;
}

/*******************************
            States
*******************************/

/*--------------------
      Autofilled
---------------------*/

.ui.form .field.field input:-webkit-autofill {
  box-shadow: 0px 0px 0px 100px #FFFFF0 inset !important;
  border-color: #E5DFA1 !important;
}

/* Focus */

.ui.form .field.field input:-webkit-autofill:focus {
  box-shadow: 0px 0px 0px 100px #FFFFF0 inset !important;
  border-color: #D5C315 !important;
}

/* Error */

.ui.form .error.error input:-webkit-autofill {
  box-shadow: 0px 0px 0px 100px #FFFAF0 inset !important;
  border-color: #E0B4B4 !important;
}

/*--------------------
      Placeholder
---------------------*/

/* browsers require these rules separate */

.ui.form ::-webkit-input-placeholder {
  color: rgba(191, 191, 191, 0.87);
}

.ui.form :-ms-input-placeholder {
  color: rgba(191, 191, 191, 0.87) !important;
}

.ui.form ::-moz-placeholder {
  color: rgba(191, 191, 191, 0.87);
}

.ui.form :focus::-webkit-input-placeholder {
  color: rgba(115, 115, 115, 0.87);
}

.ui.form :focus:-ms-input-placeholder {
  color: rgba(115, 115, 115, 0.87) !important;
}

.ui.form :focus::-moz-placeholder {
  color: rgba(115, 115, 115, 0.87);
}

/* Error Placeholder */

.ui.form .error ::-webkit-input-placeholder {
  color: #e7bdbc;
}

.ui.form .error :-ms-input-placeholder {
  color: #e7bdbc !important;
}

.ui.form .error ::-moz-placeholder {
  color: #e7bdbc;
}

.ui.form .error :focus::-webkit-input-placeholder {
  color: #da9796;
}

.ui.form .error :focus:-ms-input-placeholder {
  color: #da9796 !important;
}

.ui.form .error :focus::-moz-placeholder {
  color: #da9796;
}

/*--------------------
        Focus
---------------------*/

.ui.form input:not([type]):focus,
.ui.form input[type="date"]:focus,
.ui.form input[type="datetime-local"]:focus,
.ui.form input[type="email"]:focus,
.ui.form input[type="number"]:focus,
.ui.form input[type="password"]:focus,
.ui.form input[type="search"]:focus,
.ui.form input[type="tel"]:focus,
.ui.form input[type="time"]:focus,
.ui.form input[type="text"]:focus,
.ui.form input[type="file"]:focus,
.ui.form input[type="url"]:focus {
  color: rgba(0, 0, 0, 0.95);
  border-color: #85B7D9;
  border-radius: 0.28571429rem;
  background: #FFFFFF;
  box-shadow: 0px 0em 0em 0em rgba(34, 36, 38, 0.35) inset;
}

.ui.form textarea:focus {
  color: rgba(0, 0, 0, 0.95);
  border-color: #85B7D9;
  border-radius: 0.28571429rem;
  background: #FFFFFF;
  box-shadow: 0px 0em 0em 0em rgba(34, 36, 38, 0.35) inset;
  -webkit-appearance: none;
}

/*--------------------
        Success
---------------------*/

/* On Form */

.ui.form.success .success.message:not(:empty) {
  display: block;
}

.ui.form.success .compact.success.message:not(:empty) {
  display: inline-block;
}

.ui.form.success .icon.success.message:not(:empty) {
  display: flex;
}

/*--------------------
        Warning
---------------------*/

/* On Form */

.ui.form.warning .warning.message:not(:empty) {
  display: block;
}

.ui.form.warning .compact.warning.message:not(:empty) {
  display: inline-block;
}

.ui.form.warning .icon.warning.message:not(:empty) {
  display: flex;
}

/*--------------------
        Error
---------------------*/

/* On Form */

.ui.form.error .error.message:not(:empty) {
  display: block;
}

.ui.form.error .compact.error.message:not(:empty) {
  display: inline-block;
}

.ui.form.error .icon.error.message:not(:empty) {
  display: flex;
}

/* On Field(s) */

.ui.form .fields.error .field label,
.ui.form .field.error label,
.ui.form .fields.error .field .input,
.ui.form .field.error .input {
  color: #9F3A38;
}

.ui.form .fields.error .field .corner.label,
.ui.form .field.error .corner.label {
  border-color: #9F3A38;
  color: #FFFFFF;
}

.ui.form .fields.error .field textarea,
.ui.form .fields.error .field select,
.ui.form .fields.error .field input:not([type]),
.ui.form .fields.error .field input[type="date"],
.ui.form .fields.error .field input[type="datetime-local"],
.ui.form .fields.error .field input[type="email"],
.ui.form .fields.error .field input[type="number"],
.ui.form .fields.error .field input[type="password"],
.ui.form .fields.error .field input[type="search"],
.ui.form .fields.error .field input[type="tel"],
.ui.form .fields.error .field input[type="time"],
.ui.form .fields.error .field input[type="text"],
.ui.form .fields.error .field input[type="file"],
.ui.form .fields.error .field input[type="url"],
.ui.form .field.error textarea,
.ui.form .field.error select,
.ui.form .field.error input:not([type]),
.ui.form .field.error input[type="date"],
.ui.form .field.error input[type="datetime-local"],
.ui.form .field.error input[type="email"],
.ui.form .field.error input[type="number"],
.ui.form .field.error input[type="password"],
.ui.form .field.error input[type="search"],
.ui.form .field.error input[type="tel"],
.ui.form .field.error input[type="time"],
.ui.form .field.error input[type="text"],
.ui.form .field.error input[type="file"],
.ui.form .field.error input[type="url"] {
  background: #FFF6F6;
  border-color: #E0B4B4;
  color: #9F3A38;
  border-radius: '';
  box-shadow: none;
}

.ui.form .field.error textarea:focus,
.ui.form .field.error select:focus,
.ui.form .field.error input:not([type]):focus,
.ui.form .field.error input[type="date"]:focus,
.ui.form .field.error input[type="datetime-local"]:focus,
.ui.form .field.error input[type="email"]:focus,
.ui.form .field.error input[type="number"]:focus,
.ui.form .field.error input[type="password"]:focus,
.ui.form .field.error input[type="search"]:focus,
.ui.form .field.error input[type="tel"]:focus,
.ui.form .field.error input[type="time"]:focus,
.ui.form .field.error input[type="text"]:focus,
.ui.form .field.error input[type="file"]:focus,
.ui.form .field.error input[type="url"]:focus {
  background: #FFF6F6;
  border-color: #E0B4B4;
  color: #9F3A38;
  -webkit-appearance: none;
  box-shadow: none;
}

/* Preserve Native Select Stylings */

.ui.form .field.error select {
  -webkit-appearance: menulist-button;
}

/*------------------
    Dropdown Error
--------------------*/

.ui.form .fields.error .field .ui.dropdown,
.ui.form .fields.error .field .ui.dropdown .item,
.ui.form .field.error .ui.dropdown,
.ui.form .field.error .ui.dropdown .text,
.ui.form .field.error .ui.dropdown .item {
  background: #FFF6F6;
  color: #9F3A38;
}

.ui.form .fields.error .field .ui.dropdown,
.ui.form .field.error .ui.dropdown {
  border-color: #E0B4B4 !important;
}

.ui.form .fields.error .field .ui.dropdown:hover,
.ui.form .field.error .ui.dropdown:hover {
  border-color: #E0B4B4 !important;
}

.ui.form .fields.error .field .ui.dropdown:hover .menu,
.ui.form .field.error .ui.dropdown:hover .menu {
  border-color: #E0B4B4;
}

.ui.form .fields.error .field .ui.multiple.selection.dropdown > .label,
.ui.form .field.error .ui.multiple.selection.dropdown > .label {
  background-color: #EACBCB;
  color: #9F3A38;
}

/* Hover */

.ui.form .fields.error .field .ui.dropdown .menu .item:hover,
.ui.form .field.error .ui.dropdown .menu .item:hover {
  background-color: #FBE7E7;
}

/* Selected */

.ui.form .fields.error .field .ui.dropdown .menu .selected.item,
.ui.form .field.error .ui.dropdown .menu .selected.item {
  background-color: #FBE7E7;
}

/* Active */

.ui.form .fields.error .field .ui.dropdown .menu .active.item,
.ui.form .field.error .ui.dropdown .menu .active.item {
  background-color: #FDCFCF !important;
}

/*--------------------
    Checkbox Error
---------------------*/

.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) label,
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box {
  color: #9F3A38;
}

.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before {
  background: #FFF6F6;
  border-color: #E0B4B4;
}

.ui.form .fields.error .field .checkbox label:after,
.ui.form .field.error .checkbox label:after,
.ui.form .fields.error .field .checkbox .box:after,
.ui.form .field.error .checkbox .box:after {
  color: #9F3A38;
}

/*--------------------
       Disabled
---------------------*/

.ui.form .disabled.fields .field,
.ui.form .disabled.field,
.ui.form .field :disabled {
  pointer-events: none;
  opacity: 0.45;
}

.ui.form .field.disabled > label,
.ui.form .fields.disabled > label {
  opacity: 0.45;
}

.ui.form .field.disabled :disabled {
  opacity: 1;
}

/*--------------
    Loading
---------------*/

.ui.loading.form {
  position: relative;
  cursor: default;
  pointer-events: none;
}

.ui.loading.form:before {
  position: absolute;
  content: '';
  top: 0%;
  left: 0%;
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  height: 100%;
  z-index: 100;
}

.ui.loading.form:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -1.5em 0em 0em -1.5em;
  width: 3em;
  height: 3em;
  -webkit-animation: form-spin 0.6s linear;
  animation: form-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1);
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
  visibility: visible;
  z-index: 101;
}

@-webkit-keyframes form-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes form-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*******************************
         Element Types
*******************************/

/*--------------------
     Required Field
---------------------*/

.ui.form .required.fields:not(.grouped) > .field > label:after,
.ui.form .required.fields.grouped > label:after,
.ui.form .required.field > label:after,
.ui.form .required.fields:not(.grouped) > .field > .checkbox:after,
.ui.form .required.field > .checkbox:after {
  margin: -0.2em 0em 0em 0.2em;
  content: '*';
  color: #DB2828;
}

.ui.form .required.fields:not(.grouped) > .field > label:after,
.ui.form .required.fields.grouped > label:after,
.ui.form .required.field > label:after {
  display: inline-block;
  vertical-align: top;
}

.ui.form .required.fields:not(.grouped) > .field > .checkbox:after,
.ui.form .required.field > .checkbox:after {
  position: absolute;
  top: 0%;
  left: 100%;
}

/*******************************
           Variations
*******************************/

/*--------------------
    Inverted Colors
---------------------*/

.ui.inverted.form label,
.ui.form .inverted.segment label,
.ui.form .inverted.segment .ui.checkbox label,
.ui.form .inverted.segment .ui.checkbox .box,
.ui.inverted.form .ui.checkbox label,
.ui.inverted.form .ui.checkbox .box,
.ui.inverted.form .inline.fields > label,
.ui.inverted.form .inline.fields .field > label,
.ui.inverted.form .inline.fields .field > p,
.ui.inverted.form .inline.field > label,
.ui.inverted.form .inline.field > p {
  color: rgba(255, 255, 255, 0.9);
}

/* Inverted Field */

.ui.inverted.form input:not([type]),
.ui.inverted.form input[type="date"],
.ui.inverted.form input[type="datetime-local"],
.ui.inverted.form input[type="email"],
.ui.inverted.form input[type="number"],
.ui.inverted.form input[type="password"],
.ui.inverted.form input[type="search"],
.ui.inverted.form input[type="tel"],
.ui.inverted.form input[type="time"],
.ui.inverted.form input[type="text"],
.ui.inverted.form input[type="file"],
.ui.inverted.form input[type="url"] {
  background: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.1);
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
}

/*--------------------
     Field Groups
---------------------*/

/* Grouped Vertically */

.ui.form .grouped.fields {
  display: block;
  margin: 0em 0em 1em;
}

.ui.form .grouped.fields:last-child {
  margin-bottom: 0em;
}

.ui.form .grouped.fields > label {
  margin: 0em 0em 0.28571429rem 0em;
  color: rgba(0, 0, 0, 0.87);
  font-size: 0.92857143em;
  font-weight: bold;
  text-transform: none;
}

.ui.form .grouped.fields .field,
.ui.form .grouped.inline.fields .field {
  display: block;
  margin: 0.5em 0em;
  padding: 0em;
}

/*--------------------
        Fields
---------------------*/

/* Split fields */

.ui.form .fields {
  display: flex;
  flex-direction: row;
  margin: 0em -0.5em 1em;
}

.ui.form .fields > .field {
  flex: 0 1 auto;
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.ui.form .fields > .field:first-child {
  border-left: none;
  box-shadow: none;
}

/* Other Combinations */

.ui.form .two.fields > .fields,
.ui.form .two.fields > .field {
  width: 50%;
}

.ui.form .three.fields > .fields,
.ui.form .three.fields > .field {
  width: 33.33333333%;
}

.ui.form .four.fields > .fields,
.ui.form .four.fields > .field {
  width: 25%;
}

.ui.form .five.fields > .fields,
.ui.form .five.fields > .field {
  width: 20%;
}

.ui.form .six.fields > .fields,
.ui.form .six.fields > .field {
  width: 16.66666667%;
}

.ui.form .seven.fields > .fields,
.ui.form .seven.fields > .field {
  width: 14.28571429%;
}

.ui.form .eight.fields > .fields,
.ui.form .eight.fields > .field {
  width: 12.5%;
}

.ui.form .nine.fields > .fields,
.ui.form .nine.fields > .field {
  width: 11.11111111%;
}

.ui.form .ten.fields > .fields,
.ui.form .ten.fields > .field {
  width: 10%;
}

/* Swap to full width on mobile */

@media only screen and (max-width: 767px) {
  .ui.form .fields {
    flex-wrap: wrap;
  }

  .ui[class*="equal width"].form:not(.unstackable) .fields > .field,
  .ui.form:not(.unstackable) [class*="equal width"].fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .two.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .two.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .three.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .three.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .four.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .four.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .five.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .five.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .six.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .six.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .seven.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .seven.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .eight.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .eight.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .nine.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .nine.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .ten.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .ten.fields:not(.unstackable) > .field {
    width: 100% !important;
    margin: 0em 0em 1em;
  }
}

/* Sizing Combinations */

.ui.form .fields .wide.field {
  width: 6.25%;
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.ui.form .one.wide.field {
  width: 6.25% !important;
}

.ui.form .two.wide.field {
  width: 12.5% !important;
}

.ui.form .three.wide.field {
  width: 18.75% !important;
}

.ui.form .four.wide.field {
  width: 25% !important;
}

.ui.form .five.wide.field {
  width: 31.25% !important;
}

.ui.form .six.wide.field {
  width: 37.5% !important;
}

.ui.form .seven.wide.field {
  width: 43.75% !important;
}

.ui.form .eight.wide.field {
  width: 50% !important;
}

.ui.form .nine.wide.field {
  width: 56.25% !important;
}

.ui.form .ten.wide.field {
  width: 62.5% !important;
}

.ui.form .eleven.wide.field {
  width: 68.75% !important;
}

.ui.form .twelve.wide.field {
  width: 75% !important;
}

.ui.form .thirteen.wide.field {
  width: 81.25% !important;
}

.ui.form .fourteen.wide.field {
  width: 87.5% !important;
}

.ui.form .fifteen.wide.field {
  width: 93.75% !important;
}

.ui.form .sixteen.wide.field {
  width: 100% !important;
}

/* Swap to full width on mobile */

@media only screen and (max-width: 767px) {
  .ui.form:not(.unstackable) .two.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .two.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .three.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .three.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .four.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .four.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .five.fields:not(.unstackable) > .fields,
  .ui.form:not(.unstackable) .five.fields:not(.unstackable) > .field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .two.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .three.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .four.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .five.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .six.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .seven.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .eight.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .nine.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .ten.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .eleven.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .twelve.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .thirteen.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .fourteen.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .fifteen.wide.field,
  .ui.form:not(.unstackable) .fields:not(.unstackable) > .sixteen.wide.field {
    width: 100% !important;
  }

  .ui.form .fields {
    margin-bottom: 0em;
  }
}

/*--------------------
     Equal Width
---------------------*/

.ui[class*="equal width"].form .fields > .field,
.ui.form [class*="equal width"].fields > .field {
  width: 100%;
  flex: 1 1 auto;
}

/*--------------------
    Inline Fields
---------------------*/

.ui.form .inline.fields {
  margin: 0em 0em 1em;
  align-items: center;
}

.ui.form .inline.fields .field {
  margin: 0em;
  padding: 0em 1em 0em 0em;
}

/* Inline Label */

.ui.form .inline.fields > label,
.ui.form .inline.fields .field > label,
.ui.form .inline.fields .field > p,
.ui.form .inline.field > label,
.ui.form .inline.field > p {
  display: inline-block;
  width: auto;
  margin-top: 0em;
  margin-bottom: 0em;
  vertical-align: baseline;
  font-size: 0.92857143em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.87);
  text-transform: none;
}

/* Grouped Inline Label */

.ui.form .inline.fields > label {
  margin: 0.035714em 1em 0em 0em;
}

/* Inline Input */

.ui.form .inline.fields .field > input,
.ui.form .inline.fields .field > select,
.ui.form .inline.field > input,
.ui.form .inline.field > select {
  display: inline-block;
  width: auto;
  margin-top: 0em;
  margin-bottom: 0em;
  vertical-align: middle;
  font-size: 1em;
}

/* Label */

.ui.form .inline.fields .field > :first-child,
.ui.form .inline.field > :first-child {
  margin: 0em 0.85714286em 0em 0em;
}

.ui.form .inline.fields .field > :only-child,
.ui.form .inline.field > :only-child {
  margin: 0em;
}

/* Wide */

.ui.form .inline.fields .wide.field {
  display: flex;
  align-items: center;
}

.ui.form .inline.fields .wide.field > input,
.ui.form .inline.fields .wide.field > select {
  width: 100%;
}

/*--------------------
        Sizes
---------------------*/

.ui.mini.form {
  font-size: 0.78571429rem;
}

.ui.tiny.form {
  font-size: 0.85714286rem;
}

.ui.small.form {
  font-size: 0.92857143rem;
}

.ui.form {
  font-size: 1rem;
}

.ui.large.form {
  font-size: 1.14285714rem;
}

.ui.big.form {
  font-size: 1.28571429rem;
}

.ui.huge.form {
  font-size: 1.42857143rem;
}

.ui.massive.form {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Grid
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Standard
*******************************/

.ui.grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  padding: 0em;
}

/*----------------------
      Remove Gutters
-----------------------*/

.ui.grid {
  margin-top: -1rem;
  margin-bottom: -1rem;
  margin-left: -1rem;
  margin-right: -1rem;
}

.ui.relaxed.grid {
  margin-left: -1.5rem;
  margin-right: -1.5rem;
}

.ui[class*="very relaxed"].grid {
  margin-left: -2.5rem;
  margin-right: -2.5rem;
}

/* Preserve Rows Spacing on Consecutive Grids */

.ui.grid + .grid {
  margin-top: 1rem;
}

/*-------------------
       Columns
--------------------*/

/* Standard 16 column */

.ui.grid > .column:not(.row),
.ui.grid > .row > .column {
  position: relative;
  display: inline-block;
  width: 6.25%;
  padding-left: 1rem;
  padding-right: 1rem;
  vertical-align: top;
}

.ui.grid > * {
  padding-left: 1rem;
  padding-right: 1rem;
}

/*-------------------
        Rows
--------------------*/

.ui.grid > .row {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: inherit;
  align-items: stretch;
  width: 100% !important;
  padding: 0rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/*-------------------
       Columns
--------------------*/

/* Vertical padding when no rows */

.ui.grid > .column:not(.row) {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.ui.grid > .row > .column {
  margin-top: 0em;
  margin-bottom: 0em;
}

/*-------------------
      Content
--------------------*/

.ui.grid > .row > img,
.ui.grid > .row > .column > img {
  max-width: 100%;
}

/*-------------------
    Loose Coupling
--------------------*/

/* Collapse Margin on Consecutive Grid */

.ui.grid > .ui.grid:first-child {
  margin-top: 0em;
}

.ui.grid > .ui.grid:last-child {
  margin-bottom: 0em;
}

/* Segment inside Aligned Grid */

.ui.grid .aligned.row > .column > .segment:not(.compact):not(.attached),
.ui.aligned.grid .column > .segment:not(.compact):not(.attached) {
  width: 100%;
}

/* Align Dividers with Gutter */

.ui.grid .row + .ui.divider {
  flex-grow: 1;
  margin: 1rem 1rem;
}

.ui.grid .column + .ui.vertical.divider {
  height: calc(50% - (2rem / 2));
}

/* Remove Border on Last Horizontal Segment */

.ui.grid > .row > .column:last-child > .horizontal.segment,
.ui.grid > .column:last-child > .horizontal.segment {
  box-shadow: none;
}

/*******************************
           Variations
*******************************/

/*-----------------------
       Page Grid
-------------------------*/

@media only screen and (max-width: 767px) {
  .ui.page.grid {
    width: auto;
    padding-left: 0em;
    padding-right: 0em;
    margin-left: 0em;
    margin-right: 0em;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 2em;
    padding-right: 2em;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 3%;
    padding-right: 3%;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1919px) {
  .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 15%;
    padding-right: 15%;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 23%;
    padding-right: 23%;
  }
}

/*-------------------
     Column Count
--------------------*/

/* Assume full width with one column */

.ui.grid > .column:only-child,
.ui.grid > .row > .column:only-child {
  width: 100%;
}

/* Grid Based */

.ui[class*="one column"].grid > .row > .column,
.ui[class*="one column"].grid > .column:not(.row) {
  width: 100%;
}

.ui[class*="two column"].grid > .row > .column,
.ui[class*="two column"].grid > .column:not(.row) {
  width: 50%;
}

.ui[class*="three column"].grid > .row > .column,
.ui[class*="three column"].grid > .column:not(.row) {
  width: 33.33333333%;
}

.ui[class*="four column"].grid > .row > .column,
.ui[class*="four column"].grid > .column:not(.row) {
  width: 25%;
}

.ui[class*="five column"].grid > .row > .column,
.ui[class*="five column"].grid > .column:not(.row) {
  width: 20%;
}

.ui[class*="six column"].grid > .row > .column,
.ui[class*="six column"].grid > .column:not(.row) {
  width: 16.66666667%;
}

.ui[class*="seven column"].grid > .row > .column,
.ui[class*="seven column"].grid > .column:not(.row) {
  width: 14.28571429%;
}

.ui[class*="eight column"].grid > .row > .column,
.ui[class*="eight column"].grid > .column:not(.row) {
  width: 12.5%;
}

.ui[class*="nine column"].grid > .row > .column,
.ui[class*="nine column"].grid > .column:not(.row) {
  width: 11.11111111%;
}

.ui[class*="ten column"].grid > .row > .column,
.ui[class*="ten column"].grid > .column:not(.row) {
  width: 10%;
}

.ui[class*="eleven column"].grid > .row > .column,
.ui[class*="eleven column"].grid > .column:not(.row) {
  width: 9.09090909%;
}

.ui[class*="twelve column"].grid > .row > .column,
.ui[class*="twelve column"].grid > .column:not(.row) {
  width: 8.33333333%;
}

.ui[class*="thirteen column"].grid > .row > .column,
.ui[class*="thirteen column"].grid > .column:not(.row) {
  width: 7.69230769%;
}

.ui[class*="fourteen column"].grid > .row > .column,
.ui[class*="fourteen column"].grid > .column:not(.row) {
  width: 7.14285714%;
}

.ui[class*="fifteen column"].grid > .row > .column,
.ui[class*="fifteen column"].grid > .column:not(.row) {
  width: 6.66666667%;
}

.ui[class*="sixteen column"].grid > .row > .column,
.ui[class*="sixteen column"].grid > .column:not(.row) {
  width: 6.25%;
}

/* Row Based Overrides */

.ui.grid > [class*="one column"].row > .column {
  width: 100% !important;
}

.ui.grid > [class*="two column"].row > .column {
  width: 50% !important;
}

.ui.grid > [class*="three column"].row > .column {
  width: 33.33333333% !important;
}

.ui.grid > [class*="four column"].row > .column {
  width: 25% !important;
}

.ui.grid > [class*="five column"].row > .column {
  width: 20% !important;
}

.ui.grid > [class*="six column"].row > .column {
  width: 16.66666667% !important;
}

.ui.grid > [class*="seven column"].row > .column {
  width: 14.28571429% !important;
}

.ui.grid > [class*="eight column"].row > .column {
  width: 12.5% !important;
}

.ui.grid > [class*="nine column"].row > .column {
  width: 11.11111111% !important;
}

.ui.grid > [class*="ten column"].row > .column {
  width: 10% !important;
}

.ui.grid > [class*="eleven column"].row > .column {
  width: 9.09090909% !important;
}

.ui.grid > [class*="twelve column"].row > .column {
  width: 8.33333333% !important;
}

.ui.grid > [class*="thirteen column"].row > .column {
  width: 7.69230769% !important;
}

.ui.grid > [class*="fourteen column"].row > .column {
  width: 7.14285714% !important;
}

.ui.grid > [class*="fifteen column"].row > .column {
  width: 6.66666667% !important;
}

.ui.grid > [class*="sixteen column"].row > .column {
  width: 6.25% !important;
}

/* Celled Page */

.ui.celled.page.grid {
  box-shadow: none;
}

/*-------------------
    Column Width
--------------------*/

/* Sizing Combinations */

.ui.grid > .row > [class*="one wide"].column,
.ui.grid > .column.row > [class*="one wide"].column,
.ui.grid > [class*="one wide"].column,
.ui.column.grid > [class*="one wide"].column {
  width: 6.25% !important;
}

.ui.grid > .row > [class*="two wide"].column,
.ui.grid > .column.row > [class*="two wide"].column,
.ui.grid > [class*="two wide"].column,
.ui.column.grid > [class*="two wide"].column {
  width: 12.5% !important;
}

.ui.grid > .row > [class*="three wide"].column,
.ui.grid > .column.row > [class*="three wide"].column,
.ui.grid > [class*="three wide"].column,
.ui.column.grid > [class*="three wide"].column {
  width: 18.75% !important;
}

.ui.grid > .row > [class*="four wide"].column,
.ui.grid > .column.row > [class*="four wide"].column,
.ui.grid > [class*="four wide"].column,
.ui.column.grid > [class*="four wide"].column {
  width: 25% !important;
}

.ui.grid > .row > [class*="five wide"].column,
.ui.grid > .column.row > [class*="five wide"].column,
.ui.grid > [class*="five wide"].column,
.ui.column.grid > [class*="five wide"].column {
  width: 31.25% !important;
}

.ui.grid > .row > [class*="six wide"].column,
.ui.grid > .column.row > [class*="six wide"].column,
.ui.grid > [class*="six wide"].column,
.ui.column.grid > [class*="six wide"].column {
  width: 37.5% !important;
}

.ui.grid > .row > [class*="seven wide"].column,
.ui.grid > .column.row > [class*="seven wide"].column,
.ui.grid > [class*="seven wide"].column,
.ui.column.grid > [class*="seven wide"].column {
  width: 43.75% !important;
}

.ui.grid > .row > [class*="eight wide"].column,
.ui.grid > .column.row > [class*="eight wide"].column,
.ui.grid > [class*="eight wide"].column,
.ui.column.grid > [class*="eight wide"].column {
  width: 50% !important;
}

.ui.grid > .row > [class*="nine wide"].column,
.ui.grid > .column.row > [class*="nine wide"].column,
.ui.grid > [class*="nine wide"].column,
.ui.column.grid > [class*="nine wide"].column {
  width: 56.25% !important;
}

.ui.grid > .row > [class*="ten wide"].column,
.ui.grid > .column.row > [class*="ten wide"].column,
.ui.grid > [class*="ten wide"].column,
.ui.column.grid > [class*="ten wide"].column {
  width: 62.5% !important;
}

.ui.grid > .row > [class*="eleven wide"].column,
.ui.grid > .column.row > [class*="eleven wide"].column,
.ui.grid > [class*="eleven wide"].column,
.ui.column.grid > [class*="eleven wide"].column {
  width: 68.75% !important;
}

.ui.grid > .row > [class*="twelve wide"].column,
.ui.grid > .column.row > [class*="twelve wide"].column,
.ui.grid > [class*="twelve wide"].column,
.ui.column.grid > [class*="twelve wide"].column {
  width: 75% !important;
}

.ui.grid > .row > [class*="thirteen wide"].column,
.ui.grid > .column.row > [class*="thirteen wide"].column,
.ui.grid > [class*="thirteen wide"].column,
.ui.column.grid > [class*="thirteen wide"].column {
  width: 81.25% !important;
}

.ui.grid > .row > [class*="fourteen wide"].column,
.ui.grid > .column.row > [class*="fourteen wide"].column,
.ui.grid > [class*="fourteen wide"].column,
.ui.column.grid > [class*="fourteen wide"].column {
  width: 87.5% !important;
}

.ui.grid > .row > [class*="fifteen wide"].column,
.ui.grid > .column.row > [class*="fifteen wide"].column,
.ui.grid > [class*="fifteen wide"].column,
.ui.column.grid > [class*="fifteen wide"].column {
  width: 93.75% !important;
}

.ui.grid > .row > [class*="sixteen wide"].column,
.ui.grid > .column.row > [class*="sixteen wide"].column,
.ui.grid > [class*="sixteen wide"].column,
.ui.column.grid > [class*="sixteen wide"].column {
  width: 100% !important;
}

/*----------------------
    Width per Device
-----------------------*/

/* Mobile Sizing Combinations */

@media only screen and (min-width: 320px) and (max-width: 767px) {
  .ui.grid > .row > [class*="one wide mobile"].column,
  .ui.grid > .column.row > [class*="one wide mobile"].column,
  .ui.grid > [class*="one wide mobile"].column,
  .ui.column.grid > [class*="one wide mobile"].column {
    width: 6.25% !important;
  }

  .ui.grid > .row > [class*="two wide mobile"].column,
  .ui.grid > .column.row > [class*="two wide mobile"].column,
  .ui.grid > [class*="two wide mobile"].column,
  .ui.column.grid > [class*="two wide mobile"].column {
    width: 12.5% !important;
  }

  .ui.grid > .row > [class*="three wide mobile"].column,
  .ui.grid > .column.row > [class*="three wide mobile"].column,
  .ui.grid > [class*="three wide mobile"].column,
  .ui.column.grid > [class*="three wide mobile"].column {
    width: 18.75% !important;
  }

  .ui.grid > .row > [class*="four wide mobile"].column,
  .ui.grid > .column.row > [class*="four wide mobile"].column,
  .ui.grid > [class*="four wide mobile"].column,
  .ui.column.grid > [class*="four wide mobile"].column {
    width: 25% !important;
  }

  .ui.grid > .row > [class*="five wide mobile"].column,
  .ui.grid > .column.row > [class*="five wide mobile"].column,
  .ui.grid > [class*="five wide mobile"].column,
  .ui.column.grid > [class*="five wide mobile"].column {
    width: 31.25% !important;
  }

  .ui.grid > .row > [class*="six wide mobile"].column,
  .ui.grid > .column.row > [class*="six wide mobile"].column,
  .ui.grid > [class*="six wide mobile"].column,
  .ui.column.grid > [class*="six wide mobile"].column {
    width: 37.5% !important;
  }

  .ui.grid > .row > [class*="seven wide mobile"].column,
  .ui.grid > .column.row > [class*="seven wide mobile"].column,
  .ui.grid > [class*="seven wide mobile"].column,
  .ui.column.grid > [class*="seven wide mobile"].column {
    width: 43.75% !important;
  }

  .ui.grid > .row > [class*="eight wide mobile"].column,
  .ui.grid > .column.row > [class*="eight wide mobile"].column,
  .ui.grid > [class*="eight wide mobile"].column,
  .ui.column.grid > [class*="eight wide mobile"].column {
    width: 50% !important;
  }

  .ui.grid > .row > [class*="nine wide mobile"].column,
  .ui.grid > .column.row > [class*="nine wide mobile"].column,
  .ui.grid > [class*="nine wide mobile"].column,
  .ui.column.grid > [class*="nine wide mobile"].column {
    width: 56.25% !important;
  }

  .ui.grid > .row > [class*="ten wide mobile"].column,
  .ui.grid > .column.row > [class*="ten wide mobile"].column,
  .ui.grid > [class*="ten wide mobile"].column,
  .ui.column.grid > [class*="ten wide mobile"].column {
    width: 62.5% !important;
  }

  .ui.grid > .row > [class*="eleven wide mobile"].column,
  .ui.grid > .column.row > [class*="eleven wide mobile"].column,
  .ui.grid > [class*="eleven wide mobile"].column,
  .ui.column.grid > [class*="eleven wide mobile"].column {
    width: 68.75% !important;
  }

  .ui.grid > .row > [class*="twelve wide mobile"].column,
  .ui.grid > .column.row > [class*="twelve wide mobile"].column,
  .ui.grid > [class*="twelve wide mobile"].column,
  .ui.column.grid > [class*="twelve wide mobile"].column {
    width: 75% !important;
  }

  .ui.grid > .row > [class*="thirteen wide mobile"].column,
  .ui.grid > .column.row > [class*="thirteen wide mobile"].column,
  .ui.grid > [class*="thirteen wide mobile"].column,
  .ui.column.grid > [class*="thirteen wide mobile"].column {
    width: 81.25% !important;
  }

  .ui.grid > .row > [class*="fourteen wide mobile"].column,
  .ui.grid > .column.row > [class*="fourteen wide mobile"].column,
  .ui.grid > [class*="fourteen wide mobile"].column,
  .ui.column.grid > [class*="fourteen wide mobile"].column {
    width: 87.5% !important;
  }

  .ui.grid > .row > [class*="fifteen wide mobile"].column,
  .ui.grid > .column.row > [class*="fifteen wide mobile"].column,
  .ui.grid > [class*="fifteen wide mobile"].column,
  .ui.column.grid > [class*="fifteen wide mobile"].column {
    width: 93.75% !important;
  }

  .ui.grid > .row > [class*="sixteen wide mobile"].column,
  .ui.grid > .column.row > [class*="sixteen wide mobile"].column,
  .ui.grid > [class*="sixteen wide mobile"].column,
  .ui.column.grid > [class*="sixteen wide mobile"].column {
    width: 100% !important;
  }
}

/* Tablet Sizing Combinations */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.grid > .row > [class*="one wide tablet"].column,
  .ui.grid > .column.row > [class*="one wide tablet"].column,
  .ui.grid > [class*="one wide tablet"].column,
  .ui.column.grid > [class*="one wide tablet"].column {
    width: 6.25% !important;
  }

  .ui.grid > .row > [class*="two wide tablet"].column,
  .ui.grid > .column.row > [class*="two wide tablet"].column,
  .ui.grid > [class*="two wide tablet"].column,
  .ui.column.grid > [class*="two wide tablet"].column {
    width: 12.5% !important;
  }

  .ui.grid > .row > [class*="three wide tablet"].column,
  .ui.grid > .column.row > [class*="three wide tablet"].column,
  .ui.grid > [class*="three wide tablet"].column,
  .ui.column.grid > [class*="three wide tablet"].column {
    width: 18.75% !important;
  }

  .ui.grid > .row > [class*="four wide tablet"].column,
  .ui.grid > .column.row > [class*="four wide tablet"].column,
  .ui.grid > [class*="four wide tablet"].column,
  .ui.column.grid > [class*="four wide tablet"].column {
    width: 25% !important;
  }

  .ui.grid > .row > [class*="five wide tablet"].column,
  .ui.grid > .column.row > [class*="five wide tablet"].column,
  .ui.grid > [class*="five wide tablet"].column,
  .ui.column.grid > [class*="five wide tablet"].column {
    width: 31.25% !important;
  }

  .ui.grid > .row > [class*="six wide tablet"].column,
  .ui.grid > .column.row > [class*="six wide tablet"].column,
  .ui.grid > [class*="six wide tablet"].column,
  .ui.column.grid > [class*="six wide tablet"].column {
    width: 37.5% !important;
  }

  .ui.grid > .row > [class*="seven wide tablet"].column,
  .ui.grid > .column.row > [class*="seven wide tablet"].column,
  .ui.grid > [class*="seven wide tablet"].column,
  .ui.column.grid > [class*="seven wide tablet"].column {
    width: 43.75% !important;
  }

  .ui.grid > .row > [class*="eight wide tablet"].column,
  .ui.grid > .column.row > [class*="eight wide tablet"].column,
  .ui.grid > [class*="eight wide tablet"].column,
  .ui.column.grid > [class*="eight wide tablet"].column {
    width: 50% !important;
  }

  .ui.grid > .row > [class*="nine wide tablet"].column,
  .ui.grid > .column.row > [class*="nine wide tablet"].column,
  .ui.grid > [class*="nine wide tablet"].column,
  .ui.column.grid > [class*="nine wide tablet"].column {
    width: 56.25% !important;
  }

  .ui.grid > .row > [class*="ten wide tablet"].column,
  .ui.grid > .column.row > [class*="ten wide tablet"].column,
  .ui.grid > [class*="ten wide tablet"].column,
  .ui.column.grid > [class*="ten wide tablet"].column {
    width: 62.5% !important;
  }

  .ui.grid > .row > [class*="eleven wide tablet"].column,
  .ui.grid > .column.row > [class*="eleven wide tablet"].column,
  .ui.grid > [class*="eleven wide tablet"].column,
  .ui.column.grid > [class*="eleven wide tablet"].column {
    width: 68.75% !important;
  }

  .ui.grid > .row > [class*="twelve wide tablet"].column,
  .ui.grid > .column.row > [class*="twelve wide tablet"].column,
  .ui.grid > [class*="twelve wide tablet"].column,
  .ui.column.grid > [class*="twelve wide tablet"].column {
    width: 75% !important;
  }

  .ui.grid > .row > [class*="thirteen wide tablet"].column,
  .ui.grid > .column.row > [class*="thirteen wide tablet"].column,
  .ui.grid > [class*="thirteen wide tablet"].column,
  .ui.column.grid > [class*="thirteen wide tablet"].column {
    width: 81.25% !important;
  }

  .ui.grid > .row > [class*="fourteen wide tablet"].column,
  .ui.grid > .column.row > [class*="fourteen wide tablet"].column,
  .ui.grid > [class*="fourteen wide tablet"].column,
  .ui.column.grid > [class*="fourteen wide tablet"].column {
    width: 87.5% !important;
  }

  .ui.grid > .row > [class*="fifteen wide tablet"].column,
  .ui.grid > .column.row > [class*="fifteen wide tablet"].column,
  .ui.grid > [class*="fifteen wide tablet"].column,
  .ui.column.grid > [class*="fifteen wide tablet"].column {
    width: 93.75% !important;
  }

  .ui.grid > .row > [class*="sixteen wide tablet"].column,
  .ui.grid > .column.row > [class*="sixteen wide tablet"].column,
  .ui.grid > [class*="sixteen wide tablet"].column,
  .ui.column.grid > [class*="sixteen wide tablet"].column {
    width: 100% !important;
  }
}

/* Computer/Desktop Sizing Combinations */

@media only screen and (min-width: 992px) {
  .ui.grid > .row > [class*="one wide computer"].column,
  .ui.grid > .column.row > [class*="one wide computer"].column,
  .ui.grid > [class*="one wide computer"].column,
  .ui.column.grid > [class*="one wide computer"].column {
    width: 6.25% !important;
  }

  .ui.grid > .row > [class*="two wide computer"].column,
  .ui.grid > .column.row > [class*="two wide computer"].column,
  .ui.grid > [class*="two wide computer"].column,
  .ui.column.grid > [class*="two wide computer"].column {
    width: 12.5% !important;
  }

  .ui.grid > .row > [class*="three wide computer"].column,
  .ui.grid > .column.row > [class*="three wide computer"].column,
  .ui.grid > [class*="three wide computer"].column,
  .ui.column.grid > [class*="three wide computer"].column {
    width: 18.75% !important;
  }

  .ui.grid > .row > [class*="four wide computer"].column,
  .ui.grid > .column.row > [class*="four wide computer"].column,
  .ui.grid > [class*="four wide computer"].column,
  .ui.column.grid > [class*="four wide computer"].column {
    width: 25% !important;
  }

  .ui.grid > .row > [class*="five wide computer"].column,
  .ui.grid > .column.row > [class*="five wide computer"].column,
  .ui.grid > [class*="five wide computer"].column,
  .ui.column.grid > [class*="five wide computer"].column {
    width: 31.25% !important;
  }

  .ui.grid > .row > [class*="six wide computer"].column,
  .ui.grid > .column.row > [class*="six wide computer"].column,
  .ui.grid > [class*="six wide computer"].column,
  .ui.column.grid > [class*="six wide computer"].column {
    width: 37.5% !important;
  }

  .ui.grid > .row > [class*="seven wide computer"].column,
  .ui.grid > .column.row > [class*="seven wide computer"].column,
  .ui.grid > [class*="seven wide computer"].column,
  .ui.column.grid > [class*="seven wide computer"].column {
    width: 43.75% !important;
  }

  .ui.grid > .row > [class*="eight wide computer"].column,
  .ui.grid > .column.row > [class*="eight wide computer"].column,
  .ui.grid > [class*="eight wide computer"].column,
  .ui.column.grid > [class*="eight wide computer"].column {
    width: 50% !important;
  }

  .ui.grid > .row > [class*="nine wide computer"].column,
  .ui.grid > .column.row > [class*="nine wide computer"].column,
  .ui.grid > [class*="nine wide computer"].column,
  .ui.column.grid > [class*="nine wide computer"].column {
    width: 56.25% !important;
  }

  .ui.grid > .row > [class*="ten wide computer"].column,
  .ui.grid > .column.row > [class*="ten wide computer"].column,
  .ui.grid > [class*="ten wide computer"].column,
  .ui.column.grid > [class*="ten wide computer"].column {
    width: 62.5% !important;
  }

  .ui.grid > .row > [class*="eleven wide computer"].column,
  .ui.grid > .column.row > [class*="eleven wide computer"].column,
  .ui.grid > [class*="eleven wide computer"].column,
  .ui.column.grid > [class*="eleven wide computer"].column {
    width: 68.75% !important;
  }

  .ui.grid > .row > [class*="twelve wide computer"].column,
  .ui.grid > .column.row > [class*="twelve wide computer"].column,
  .ui.grid > [class*="twelve wide computer"].column,
  .ui.column.grid > [class*="twelve wide computer"].column {
    width: 75% !important;
  }

  .ui.grid > .row > [class*="thirteen wide computer"].column,
  .ui.grid > .column.row > [class*="thirteen wide computer"].column,
  .ui.grid > [class*="thirteen wide computer"].column,
  .ui.column.grid > [class*="thirteen wide computer"].column {
    width: 81.25% !important;
  }

  .ui.grid > .row > [class*="fourteen wide computer"].column,
  .ui.grid > .column.row > [class*="fourteen wide computer"].column,
  .ui.grid > [class*="fourteen wide computer"].column,
  .ui.column.grid > [class*="fourteen wide computer"].column {
    width: 87.5% !important;
  }

  .ui.grid > .row > [class*="fifteen wide computer"].column,
  .ui.grid > .column.row > [class*="fifteen wide computer"].column,
  .ui.grid > [class*="fifteen wide computer"].column,
  .ui.column.grid > [class*="fifteen wide computer"].column {
    width: 93.75% !important;
  }

  .ui.grid > .row > [class*="sixteen wide computer"].column,
  .ui.grid > .column.row > [class*="sixteen wide computer"].column,
  .ui.grid > [class*="sixteen wide computer"].column,
  .ui.column.grid > [class*="sixteen wide computer"].column {
    width: 100% !important;
  }
}

/* Large Monitor Sizing Combinations */

@media only screen and (min-width: 1200px) and (max-width: 1919px) {
  .ui.grid > .row > [class*="one wide large screen"].column,
  .ui.grid > .column.row > [class*="one wide large screen"].column,
  .ui.grid > [class*="one wide large screen"].column,
  .ui.column.grid > [class*="one wide large screen"].column {
    width: 6.25% !important;
  }

  .ui.grid > .row > [class*="two wide large screen"].column,
  .ui.grid > .column.row > [class*="two wide large screen"].column,
  .ui.grid > [class*="two wide large screen"].column,
  .ui.column.grid > [class*="two wide large screen"].column {
    width: 12.5% !important;
  }

  .ui.grid > .row > [class*="three wide large screen"].column,
  .ui.grid > .column.row > [class*="three wide large screen"].column,
  .ui.grid > [class*="three wide large screen"].column,
  .ui.column.grid > [class*="three wide large screen"].column {
    width: 18.75% !important;
  }

  .ui.grid > .row > [class*="four wide large screen"].column,
  .ui.grid > .column.row > [class*="four wide large screen"].column,
  .ui.grid > [class*="four wide large screen"].column,
  .ui.column.grid > [class*="four wide large screen"].column {
    width: 25% !important;
  }

  .ui.grid > .row > [class*="five wide large screen"].column,
  .ui.grid > .column.row > [class*="five wide large screen"].column,
  .ui.grid > [class*="five wide large screen"].column,
  .ui.column.grid > [class*="five wide large screen"].column {
    width: 31.25% !important;
  }

  .ui.grid > .row > [class*="six wide large screen"].column,
  .ui.grid > .column.row > [class*="six wide large screen"].column,
  .ui.grid > [class*="six wide large screen"].column,
  .ui.column.grid > [class*="six wide large screen"].column {
    width: 37.5% !important;
  }

  .ui.grid > .row > [class*="seven wide large screen"].column,
  .ui.grid > .column.row > [class*="seven wide large screen"].column,
  .ui.grid > [class*="seven wide large screen"].column,
  .ui.column.grid > [class*="seven wide large screen"].column {
    width: 43.75% !important;
  }

  .ui.grid > .row > [class*="eight wide large screen"].column,
  .ui.grid > .column.row > [class*="eight wide large screen"].column,
  .ui.grid > [class*="eight wide large screen"].column,
  .ui.column.grid > [class*="eight wide large screen"].column {
    width: 50% !important;
  }

  .ui.grid > .row > [class*="nine wide large screen"].column,
  .ui.grid > .column.row > [class*="nine wide large screen"].column,
  .ui.grid > [class*="nine wide large screen"].column,
  .ui.column.grid > [class*="nine wide large screen"].column {
    width: 56.25% !important;
  }

  .ui.grid > .row > [class*="ten wide large screen"].column,
  .ui.grid > .column.row > [class*="ten wide large screen"].column,
  .ui.grid > [class*="ten wide large screen"].column,
  .ui.column.grid > [class*="ten wide large screen"].column {
    width: 62.5% !important;
  }

  .ui.grid > .row > [class*="eleven wide large screen"].column,
  .ui.grid > .column.row > [class*="eleven wide large screen"].column,
  .ui.grid > [class*="eleven wide large screen"].column,
  .ui.column.grid > [class*="eleven wide large screen"].column {
    width: 68.75% !important;
  }

  .ui.grid > .row > [class*="twelve wide large screen"].column,
  .ui.grid > .column.row > [class*="twelve wide large screen"].column,
  .ui.grid > [class*="twelve wide large screen"].column,
  .ui.column.grid > [class*="twelve wide large screen"].column {
    width: 75% !important;
  }

  .ui.grid > .row > [class*="thirteen wide large screen"].column,
  .ui.grid > .column.row > [class*="thirteen wide large screen"].column,
  .ui.grid > [class*="thirteen wide large screen"].column,
  .ui.column.grid > [class*="thirteen wide large screen"].column {
    width: 81.25% !important;
  }

  .ui.grid > .row > [class*="fourteen wide large screen"].column,
  .ui.grid > .column.row > [class*="fourteen wide large screen"].column,
  .ui.grid > [class*="fourteen wide large screen"].column,
  .ui.column.grid > [class*="fourteen wide large screen"].column {
    width: 87.5% !important;
  }

  .ui.grid > .row > [class*="fifteen wide large screen"].column,
  .ui.grid > .column.row > [class*="fifteen wide large screen"].column,
  .ui.grid > [class*="fifteen wide large screen"].column,
  .ui.column.grid > [class*="fifteen wide large screen"].column {
    width: 93.75% !important;
  }

  .ui.grid > .row > [class*="sixteen wide large screen"].column,
  .ui.grid > .column.row > [class*="sixteen wide large screen"].column,
  .ui.grid > [class*="sixteen wide large screen"].column,
  .ui.column.grid > [class*="sixteen wide large screen"].column {
    width: 100% !important;
  }
}

/* Widescreen Sizing Combinations */

@media only screen and (min-width: 1920px) {
  .ui.grid > .row > [class*="one wide widescreen"].column,
  .ui.grid > .column.row > [class*="one wide widescreen"].column,
  .ui.grid > [class*="one wide widescreen"].column,
  .ui.column.grid > [class*="one wide widescreen"].column {
    width: 6.25% !important;
  }

  .ui.grid > .row > [class*="two wide widescreen"].column,
  .ui.grid > .column.row > [class*="two wide widescreen"].column,
  .ui.grid > [class*="two wide widescreen"].column,
  .ui.column.grid > [class*="two wide widescreen"].column {
    width: 12.5% !important;
  }

  .ui.grid > .row > [class*="three wide widescreen"].column,
  .ui.grid > .column.row > [class*="three wide widescreen"].column,
  .ui.grid > [class*="three wide widescreen"].column,
  .ui.column.grid > [class*="three wide widescreen"].column {
    width: 18.75% !important;
  }

  .ui.grid > .row > [class*="four wide widescreen"].column,
  .ui.grid > .column.row > [class*="four wide widescreen"].column,
  .ui.grid > [class*="four wide widescreen"].column,
  .ui.column.grid > [class*="four wide widescreen"].column {
    width: 25% !important;
  }

  .ui.grid > .row > [class*="five wide widescreen"].column,
  .ui.grid > .column.row > [class*="five wide widescreen"].column,
  .ui.grid > [class*="five wide widescreen"].column,
  .ui.column.grid > [class*="five wide widescreen"].column {
    width: 31.25% !important;
  }

  .ui.grid > .row > [class*="six wide widescreen"].column,
  .ui.grid > .column.row > [class*="six wide widescreen"].column,
  .ui.grid > [class*="six wide widescreen"].column,
  .ui.column.grid > [class*="six wide widescreen"].column {
    width: 37.5% !important;
  }

  .ui.grid > .row > [class*="seven wide widescreen"].column,
  .ui.grid > .column.row > [class*="seven wide widescreen"].column,
  .ui.grid > [class*="seven wide widescreen"].column,
  .ui.column.grid > [class*="seven wide widescreen"].column {
    width: 43.75% !important;
  }

  .ui.grid > .row > [class*="eight wide widescreen"].column,
  .ui.grid > .column.row > [class*="eight wide widescreen"].column,
  .ui.grid > [class*="eight wide widescreen"].column,
  .ui.column.grid > [class*="eight wide widescreen"].column {
    width: 50% !important;
  }

  .ui.grid > .row > [class*="nine wide widescreen"].column,
  .ui.grid > .column.row > [class*="nine wide widescreen"].column,
  .ui.grid > [class*="nine wide widescreen"].column,
  .ui.column.grid > [class*="nine wide widescreen"].column {
    width: 56.25% !important;
  }

  .ui.grid > .row > [class*="ten wide widescreen"].column,
  .ui.grid > .column.row > [class*="ten wide widescreen"].column,
  .ui.grid > [class*="ten wide widescreen"].column,
  .ui.column.grid > [class*="ten wide widescreen"].column {
    width: 62.5% !important;
  }

  .ui.grid > .row > [class*="eleven wide widescreen"].column,
  .ui.grid > .column.row > [class*="eleven wide widescreen"].column,
  .ui.grid > [class*="eleven wide widescreen"].column,
  .ui.column.grid > [class*="eleven wide widescreen"].column {
    width: 68.75% !important;
  }

  .ui.grid > .row > [class*="twelve wide widescreen"].column,
  .ui.grid > .column.row > [class*="twelve wide widescreen"].column,
  .ui.grid > [class*="twelve wide widescreen"].column,
  .ui.column.grid > [class*="twelve wide widescreen"].column {
    width: 75% !important;
  }

  .ui.grid > .row > [class*="thirteen wide widescreen"].column,
  .ui.grid > .column.row > [class*="thirteen wide widescreen"].column,
  .ui.grid > [class*="thirteen wide widescreen"].column,
  .ui.column.grid > [class*="thirteen wide widescreen"].column {
    width: 81.25% !important;
  }

  .ui.grid > .row > [class*="fourteen wide widescreen"].column,
  .ui.grid > .column.row > [class*="fourteen wide widescreen"].column,
  .ui.grid > [class*="fourteen wide widescreen"].column,
  .ui.column.grid > [class*="fourteen wide widescreen"].column {
    width: 87.5% !important;
  }

  .ui.grid > .row > [class*="fifteen wide widescreen"].column,
  .ui.grid > .column.row > [class*="fifteen wide widescreen"].column,
  .ui.grid > [class*="fifteen wide widescreen"].column,
  .ui.column.grid > [class*="fifteen wide widescreen"].column {
    width: 93.75% !important;
  }

  .ui.grid > .row > [class*="sixteen wide widescreen"].column,
  .ui.grid > .column.row > [class*="sixteen wide widescreen"].column,
  .ui.grid > [class*="sixteen wide widescreen"].column,
  .ui.column.grid > [class*="sixteen wide widescreen"].column {
    width: 100% !important;
  }
}

/*----------------------
        Centered
-----------------------*/

.ui.centered.grid,
.ui.centered.grid > .row,
.ui.grid > .centered.row {
  text-align: center;
  justify-content: center;
}

.ui.centered.grid > .column:not(.aligned):not(.justified):not(.row),
.ui.centered.grid > .row > .column:not(.aligned):not(.justified),
.ui.grid .centered.row > .column:not(.aligned):not(.justified) {
  text-align: left;
}

.ui.grid > .centered.column,
.ui.grid > .row > .centered.column {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*----------------------
        Relaxed
-----------------------*/

.ui.relaxed.grid > .column:not(.row),
.ui.relaxed.grid > .row > .column,
.ui.grid > .relaxed.row > .column {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.ui[class*="very relaxed"].grid > .column:not(.row),
.ui[class*="very relaxed"].grid > .row > .column,
.ui.grid > [class*="very relaxed"].row > .column {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

/* Coupling with UI Divider */

.ui.relaxed.grid .row + .ui.divider,
.ui.grid .relaxed.row + .ui.divider {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.ui[class*="very relaxed"].grid .row + .ui.divider,
.ui.grid [class*="very relaxed"].row + .ui.divider {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}

/*----------------------
        Padded
-----------------------*/

.ui.padded.grid:not(.vertically):not(.horizontally) {
  margin: 0em !important;
}

[class*="horizontally padded"].ui.grid {
  margin-left: 0em !important;
  margin-right: 0em !important;
}

[class*="vertically padded"].ui.grid {
  margin-top: 0em !important;
  margin-bottom: 0em !important;
}

/*----------------------
       "Floated"
-----------------------*/

.ui.grid [class*="left floated"].column {
  margin-right: auto;
}

.ui.grid [class*="right floated"].column {
  margin-left: auto;
}

/*----------------------
        Divided
-----------------------*/

.ui.divided.grid:not([class*="vertically divided"]) > .column:not(.row),
.ui.divided.grid:not([class*="vertically divided"]) > .row > .column {
  box-shadow: -1px 0px 0px 0px rgba(34, 36, 38, 0.15);
}

/* Swap from padding to margin on columns to have dividers align */

.ui[class*="vertically divided"].grid > .column:not(.row),
.ui[class*="vertically divided"].grid > .row > .column {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-top: 0rem;
  padding-bottom: 0rem;
}

.ui[class*="vertically divided"].grid > .row {
  margin-top: 0em;
  margin-bottom: 0em;
}

/* No divider on first column on row */

.ui.divided.grid:not([class*="vertically divided"]) > .column:first-child,
.ui.divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
  box-shadow: none;
}

/* No space on top of first row */

.ui[class*="vertically divided"].grid > .row:first-child > .column {
  margin-top: 0em;
}

/* Divided Row */

.ui.grid > .divided.row > .column {
  box-shadow: -1px 0px 0px 0px rgba(34, 36, 38, 0.15);
}

.ui.grid > .divided.row > .column:first-child {
  box-shadow: none;
}

/* Vertically Divided */

.ui[class*="vertically divided"].grid > .row {
  position: relative;
}

.ui[class*="vertically divided"].grid > .row:before {
  position: absolute;
  content: "";
  top: 0em;
  left: 0px;
  width: calc(100% - 2rem);
  height: 1px;
  margin: 0% 1rem;
  box-shadow: 0px -1px 0px 0px rgba(34, 36, 38, 0.15);
}

/* Padded Horizontally Divided */

[class*="horizontally padded"].ui.divided.grid,
.ui.padded.divided.grid:not(.vertically):not(.horizontally) {
  width: 100%;
}

/* First Row Vertically Divided */

.ui[class*="vertically divided"].grid > .row:first-child:before {
  box-shadow: none;
}

/* Inverted Divided */

.ui.inverted.divided.grid:not([class*="vertically divided"]) > .column:not(.row),
.ui.inverted.divided.grid:not([class*="vertically divided"]) > .row > .column {
  box-shadow: -1px 0px 0px 0px rgba(255, 255, 255, 0.1);
}

.ui.inverted.divided.grid:not([class*="vertically divided"]) > .column:not(.row):first-child,
.ui.inverted.divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
  box-shadow: none;
}

.ui.inverted[class*="vertically divided"].grid > .row:before {
  box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.1);
}

/* Relaxed */

.ui.relaxed[class*="vertically divided"].grid > .row:before {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  width: calc(100% - 3rem);
}

.ui[class*="very relaxed"][class*="vertically divided"].grid > .row:before {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
  width: calc(100% - 5rem);
}

/*----------------------
         Celled
-----------------------*/

.ui.celled.grid {
  width: 100%;
  margin: 1em 0em;
  box-shadow: 0px 0px 0px 1px #D4D4D5;
}

.ui.celled.grid > .row {
  width: 100% !important;
  margin: 0em;
  padding: 0em;
  box-shadow: 0px -1px 0px 0px #D4D4D5;
}

.ui.celled.grid > .column:not(.row),
.ui.celled.grid > .row > .column {
  box-shadow: -1px 0px 0px 0px #D4D4D5;
}

.ui.celled.grid > .column:first-child,
.ui.celled.grid > .row > .column:first-child {
  box-shadow: none;
}

.ui.celled.grid > .column:not(.row),
.ui.celled.grid > .row > .column {
  padding: 1em;
}

.ui.relaxed.celled.grid > .column:not(.row),
.ui.relaxed.celled.grid > .row > .column {
  padding: 1.5em;
}

.ui[class*="very relaxed"].celled.grid > .column:not(.row),
.ui[class*="very relaxed"].celled.grid > .row > .column {
  padding: 2em;
}

/* Internally Celled */

.ui[class*="internally celled"].grid {
  box-shadow: none;
  margin: 0em;
}

.ui[class*="internally celled"].grid > .row:first-child {
  box-shadow: none;
}

.ui[class*="internally celled"].grid > .row > .column:first-child {
  box-shadow: none;
}

/*----------------------
   Vertically Aligned
-----------------------*/

/* Top Aligned */

.ui[class*="top aligned"].grid > .column:not(.row),
.ui[class*="top aligned"].grid > .row > .column,
.ui.grid > [class*="top aligned"].row > .column,
.ui.grid > [class*="top aligned"].column:not(.row),
.ui.grid > .row > [class*="top aligned"].column {
  flex-direction: column;
  vertical-align: top;
  align-self: flex-start !important;
}

/* Middle Aligned */

.ui[class*="middle aligned"].grid > .column:not(.row),
.ui[class*="middle aligned"].grid > .row > .column,
.ui.grid > [class*="middle aligned"].row > .column,
.ui.grid > [class*="middle aligned"].column:not(.row),
.ui.grid > .row > [class*="middle aligned"].column {
  flex-direction: column;
  vertical-align: middle;
  align-self: center !important;
}

/* Bottom Aligned */

.ui[class*="bottom aligned"].grid > .column:not(.row),
.ui[class*="bottom aligned"].grid > .row > .column,
.ui.grid > [class*="bottom aligned"].row > .column,
.ui.grid > [class*="bottom aligned"].column:not(.row),
.ui.grid > .row > [class*="bottom aligned"].column {
  flex-direction: column;
  vertical-align: bottom;
  align-self: flex-end !important;
}

/* Stretched */

.ui.stretched.grid > .row > .column,
.ui.stretched.grid > .column,
.ui.grid > .stretched.row > .column,
.ui.grid > .stretched.column:not(.row),
.ui.grid > .row > .stretched.column {
  display: inline-flex !important;
  align-self: stretch;
  flex-direction: column;
}

.ui.stretched.grid > .row > .column > *,
.ui.stretched.grid > .column > *,
.ui.grid > .stretched.row > .column > *,
.ui.grid > .stretched.column:not(.row) > *,
.ui.grid > .row > .stretched.column > * {
  flex-grow: 1;
}

/*----------------------
  Horizontally Centered
-----------------------*/

/* Left Aligned */

.ui[class*="left aligned"].grid > .column,
.ui[class*="left aligned"].grid > .row > .column,
.ui.grid > [class*="left aligned"].row > .column,
.ui.grid > [class*="left aligned"].column.column,
.ui.grid > .row > [class*="left aligned"].column.column {
  text-align: left;
  align-self: inherit;
}

/* Center Aligned */

.ui[class*="center aligned"].grid > .column,
.ui[class*="center aligned"].grid > .row > .column,
.ui.grid > [class*="center aligned"].row > .column,
.ui.grid > [class*="center aligned"].column.column,
.ui.grid > .row > [class*="center aligned"].column.column {
  text-align: center;
  align-self: inherit;
}

.ui[class*="center aligned"].grid {
  justify-content: center;
}

/* Right Aligned */

.ui[class*="right aligned"].grid > .column,
.ui[class*="right aligned"].grid > .row > .column,
.ui.grid > [class*="right aligned"].row > .column,
.ui.grid > [class*="right aligned"].column.column,
.ui.grid > .row > [class*="right aligned"].column.column {
  text-align: right;
  align-self: inherit;
}

/* Justified */

.ui.justified.grid > .column,
.ui.justified.grid > .row > .column,
.ui.grid > .justified.row > .column,
.ui.grid > .justified.column.column,
.ui.grid > .row > .justified.column.column {
  text-align: justify;
  -webkit-hyphens: auto;
  hyphens: auto;
}

/*----------------------
         Colored
-----------------------*/

.ui.grid > .row > .red.column,
.ui.grid > .row > .orange.column,
.ui.grid > .row > .yellow.column,
.ui.grid > .row > .olive.column,
.ui.grid > .row > .green.column,
.ui.grid > .row > .teal.column,
.ui.grid > .row > .blue.column,
.ui.grid > .row > .violet.column,
.ui.grid > .row > .purple.column,
.ui.grid > .row > .pink.column,
.ui.grid > .row > .brown.column,
.ui.grid > .row > .grey.column,
.ui.grid > .row > .black.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/* Red */

.ui.grid > .red.row,
.ui.grid > .red.column,
.ui.grid > .row > .red.column {
  background-color: #DB2828 !important;
  color: #FFFFFF;
}

/* Orange */

.ui.grid > .orange.row,
.ui.grid > .orange.column,
.ui.grid > .row > .orange.column {
  background-color: #F2711C !important;
  color: #FFFFFF;
}

/* Yellow */

.ui.grid > .yellow.row,
.ui.grid > .yellow.column,
.ui.grid > .row > .yellow.column {
  background-color: #FBBD08 !important;
  color: #FFFFFF;
}

/* Olive */

.ui.grid > .olive.row,
.ui.grid > .olive.column,
.ui.grid > .row > .olive.column {
  background-color: #B5CC18 !important;
  color: #FFFFFF;
}

/* Green */

.ui.grid > .green.row,
.ui.grid > .green.column,
.ui.grid > .row > .green.column {
  background-color: #21BA45 !important;
  color: #FFFFFF;
}

/* Teal */

.ui.grid > .teal.row,
.ui.grid > .teal.column,
.ui.grid > .row > .teal.column {
  background-color: #00B5AD !important;
  color: #FFFFFF;
}

/* Blue */

.ui.grid > .blue.row,
.ui.grid > .blue.column,
.ui.grid > .row > .blue.column {
  background-color: #2185D0 !important;
  color: #FFFFFF;
}

/* Violet */

.ui.grid > .violet.row,
.ui.grid > .violet.column,
.ui.grid > .row > .violet.column {
  background-color: #6435C9 !important;
  color: #FFFFFF;
}

/* Purple */

.ui.grid > .purple.row,
.ui.grid > .purple.column,
.ui.grid > .row > .purple.column {
  background-color: #A333C8 !important;
  color: #FFFFFF;
}

/* Pink */

.ui.grid > .pink.row,
.ui.grid > .pink.column,
.ui.grid > .row > .pink.column {
  background-color: #E03997 !important;
  color: #FFFFFF;
}

/* Brown */

.ui.grid > .brown.row,
.ui.grid > .brown.column,
.ui.grid > .row > .brown.column {
  background-color: #A5673F !important;
  color: #FFFFFF;
}

/* Grey */

.ui.grid > .grey.row,
.ui.grid > .grey.column,
.ui.grid > .row > .grey.column {
  background-color: #767676 !important;
  color: #FFFFFF;
}

/* Black */

.ui.grid > .black.row,
.ui.grid > .black.column,
.ui.grid > .row > .black.column {
  background-color: #1B1C1D !important;
  color: #FFFFFF;
}

/*----------------------
      Equal Width
-----------------------*/

.ui[class*="equal width"].grid > .column:not(.row),
.ui[class*="equal width"].grid > .row > .column,
.ui.grid > [class*="equal width"].row > .column {
  display: inline-block;
  flex-grow: 1;
}

.ui[class*="equal width"].grid > .wide.column,
.ui[class*="equal width"].grid > .row > .wide.column,
.ui.grid > [class*="equal width"].row > .wide.column {
  flex-grow: 0;
}

/*----------------------
        Reverse
-----------------------*/

/* Mobile */

@media only screen and (max-width: 767px) {
  .ui[class*="mobile reversed"].grid,
  .ui[class*="mobile reversed"].grid > .row,
  .ui.grid > [class*="mobile reversed"].row {
    flex-direction: row-reverse;
  }

  .ui[class*="mobile vertically reversed"].grid,
  .ui.stackable[class*="mobile reversed"] {
    flex-direction: column-reverse;
  }

  /* Divided Reversed */

  .ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"]) > .column:first-child,
  .ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"]) > .column:last-child,
  .ui[class*="mobile reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:last-child {
    box-shadow: none;
  }

  /* Vertically Divided Reversed */

  .ui.grid[class*="vertically divided"][class*="mobile vertically reversed"] > .row:first-child:before {
    box-shadow: 0px -1px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui.grid[class*="vertically divided"][class*="mobile vertically reversed"] > .row:last-child:before {
    box-shadow: none;
  }

  /* Celled Reversed */

  .ui[class*="mobile reversed"].celled.grid > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px #D4D4D5;
  }

  .ui[class*="mobile reversed"].celled.grid > .row > .column:last-child {
    box-shadow: none;
  }
}

/* Tablet */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui[class*="tablet reversed"].grid,
  .ui[class*="tablet reversed"].grid > .row,
  .ui.grid > [class*="tablet reversed"].row {
    flex-direction: row-reverse;
  }

  .ui[class*="tablet vertically reversed"].grid {
    flex-direction: column-reverse;
  }

  /* Divided Reversed */

  .ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"]) > .column:first-child,
  .ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"]) > .column:last-child,
  .ui[class*="tablet reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:last-child {
    box-shadow: none;
  }

  /* Vertically Divided Reversed */

  .ui.grid[class*="vertically divided"][class*="tablet vertically reversed"] > .row:first-child:before {
    box-shadow: 0px -1px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui.grid[class*="vertically divided"][class*="tablet vertically reversed"] > .row:last-child:before {
    box-shadow: none;
  }

  /* Celled Reversed */

  .ui[class*="tablet reversed"].celled.grid > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px #D4D4D5;
  }

  .ui[class*="tablet reversed"].celled.grid > .row > .column:last-child {
    box-shadow: none;
  }
}

/* Computer */

@media only screen and (min-width: 992px) {
  .ui[class*="computer reversed"].grid,
  .ui[class*="computer reversed"].grid > .row,
  .ui.grid > [class*="computer reversed"].row {
    flex-direction: row-reverse;
  }

  .ui[class*="computer vertically reversed"].grid {
    flex-direction: column-reverse;
  }

  /* Divided Reversed */

  .ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"]) > .column:first-child,
  .ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"]) > .column:last-child,
  .ui[class*="computer reversed"].divided.grid:not([class*="vertically divided"]) > .row > .column:last-child {
    box-shadow: none;
  }

  /* Vertically Divided Reversed */

  .ui.grid[class*="vertically divided"][class*="computer vertically reversed"] > .row:first-child:before {
    box-shadow: 0px -1px 0px 0px rgba(34, 36, 38, 0.15);
  }

  .ui.grid[class*="vertically divided"][class*="computer vertically reversed"] > .row:last-child:before {
    box-shadow: none;
  }

  /* Celled Reversed */

  .ui[class*="computer reversed"].celled.grid > .row > .column:first-child {
    box-shadow: -1px 0px 0px 0px #D4D4D5;
  }

  .ui[class*="computer reversed"].celled.grid > .row > .column:last-child {
    box-shadow: none;
  }
}

/*-------------------
      Doubling
--------------------*/

/* Tablet Only */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.doubling.grid {
    width: auto;
  }

  .ui.grid > .doubling.row,
  .ui.doubling.grid > .row {
    margin: 0em !important;
    padding: 0em !important;
  }

  .ui.grid > .doubling.row > .column,
  .ui.doubling.grid > .row > .column {
    display: inline-block !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    box-shadow: none !important;
    margin: 0em;
  }

  .ui[class*="two column"].doubling.grid > .row > .column,
  .ui[class*="two column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="two column"].doubling.row.row > .column {
    width: 100% !important;
  }

  .ui[class*="three column"].doubling.grid > .row > .column,
  .ui[class*="three column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="three column"].doubling.row.row > .column {
    width: 50% !important;
  }

  .ui[class*="four column"].doubling.grid > .row > .column,
  .ui[class*="four column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="four column"].doubling.row.row > .column {
    width: 50% !important;
  }

  .ui[class*="five column"].doubling.grid > .row > .column,
  .ui[class*="five column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="five column"].doubling.row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="six column"].doubling.grid > .row > .column,
  .ui[class*="six column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="six column"].doubling.row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="seven column"].doubling.grid > .row > .column,
  .ui[class*="seven column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="seven column"].doubling.row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="eight column"].doubling.grid > .row > .column,
  .ui[class*="eight column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="eight column"].doubling.row.row > .column {
    width: 25% !important;
  }

  .ui[class*="nine column"].doubling.grid > .row > .column,
  .ui[class*="nine column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="nine column"].doubling.row.row > .column {
    width: 25% !important;
  }

  .ui[class*="ten column"].doubling.grid > .row > .column,
  .ui[class*="ten column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="ten column"].doubling.row.row > .column {
    width: 20% !important;
  }

  .ui[class*="eleven column"].doubling.grid > .row > .column,
  .ui[class*="eleven column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="eleven column"].doubling.row.row > .column {
    width: 20% !important;
  }

  .ui[class*="twelve column"].doubling.grid > .row > .column,
  .ui[class*="twelve column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="twelve column"].doubling.row.row > .column {
    width: 16.66666667% !important;
  }

  .ui[class*="thirteen column"].doubling.grid > .row > .column,
  .ui[class*="thirteen column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="thirteen column"].doubling.row.row > .column {
    width: 16.66666667% !important;
  }

  .ui[class*="fourteen column"].doubling.grid > .row > .column,
  .ui[class*="fourteen column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="fourteen column"].doubling.row.row > .column {
    width: 14.28571429% !important;
  }

  .ui[class*="fifteen column"].doubling.grid > .row > .column,
  .ui[class*="fifteen column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="fifteen column"].doubling.row.row > .column {
    width: 14.28571429% !important;
  }

  .ui[class*="sixteen column"].doubling.grid > .row > .column,
  .ui[class*="sixteen column"].doubling.grid > .column:not(.row),
  .ui.grid > [class*="sixteen column"].doubling.row.row > .column {
    width: 12.5% !important;
  }
}

/* Mobile Only */

@media only screen and (max-width: 767px) {
  .ui.grid > .doubling.row,
  .ui.doubling.grid > .row {
    margin: 0em !important;
    padding: 0em !important;
  }

  .ui.grid > .doubling.row > .column,
  .ui.doubling.grid > .row > .column {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    margin: 0em !important;
    box-shadow: none !important;
  }

  .ui[class*="two column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="two column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="two column"].doubling:not(.stackable).row.row > .column {
    width: 100% !important;
  }

  .ui[class*="three column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="three column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="three column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="four column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="four column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="four column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="five column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="five column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="five column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="six column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="six column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="six column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="seven column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="seven column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="seven column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="eight column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="eight column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="eight column"].doubling:not(.stackable).row.row > .column {
    width: 50% !important;
  }

  .ui[class*="nine column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="nine column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="nine column"].doubling:not(.stackable).row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="ten column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="ten column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="ten column"].doubling:not(.stackable).row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="eleven column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="eleven column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="eleven column"].doubling:not(.stackable).row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="twelve column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="twelve column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="twelve column"].doubling:not(.stackable).row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="thirteen column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="thirteen column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="thirteen column"].doubling:not(.stackable).row.row > .column {
    width: 33.33333333% !important;
  }

  .ui[class*="fourteen column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="fourteen column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="fourteen column"].doubling:not(.stackable).row.row > .column {
    width: 25% !important;
  }

  .ui[class*="fifteen column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="fifteen column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="fifteen column"].doubling:not(.stackable).row.row > .column {
    width: 25% !important;
  }

  .ui[class*="sixteen column"].doubling:not(.stackable).grid > .row > .column,
  .ui[class*="sixteen column"].doubling:not(.stackable).grid > .column:not(.row),
  .ui.grid > [class*="sixteen column"].doubling:not(.stackable).row.row > .column {
    width: 25% !important;
  }
}

/*-------------------
      Stackable
--------------------*/

@media only screen and (max-width: 767px) {
  .ui.stackable.grid {
    width: auto;
    margin-left: 0em !important;
    margin-right: 0em !important;
  }

  .ui.stackable.grid > .row > .wide.column,
  .ui.stackable.grid > .wide.column,
  .ui.stackable.grid > .column.grid > .column,
  .ui.stackable.grid > .column.row > .column,
  .ui.stackable.grid > .row > .column,
  .ui.stackable.grid > .column:not(.row),
  .ui.grid > .stackable.stackable.row > .column {
    width: 100% !important;
    margin: 0em 0em !important;
    box-shadow: none !important;
    padding: 1rem 1rem !important;
  }

  .ui.stackable.grid:not(.vertically) > .row {
    margin: 0em;
    padding: 0em;
  }

  /* Coupling */

  .ui.container > .ui.stackable.grid > .column,
  .ui.container > .ui.stackable.grid > .row > .column {
    padding-left: 0em !important;
    padding-right: 0em !important;
  }

  /* Don't pad inside segment or nested grid */

  .ui.grid .ui.stackable.grid,
  .ui.segment:not(.vertical) .ui.stackable.page.grid {
    margin-left: -1rem !important;
    margin-right: -1rem !important;
  }

  /* Divided Stackable */

  .ui.stackable.divided.grid > .row:first-child > .column:first-child,
  .ui.stackable.celled.grid > .row:first-child > .column:first-child,
  .ui.stackable.divided.grid > .column:not(.row):first-child,
  .ui.stackable.celled.grid > .column:not(.row):first-child {
    border-top: none !important;
  }

  .ui.inverted.stackable.celled.grid > .column:not(.row),
  .ui.inverted.stackable.divided.grid > .column:not(.row),
  .ui.inverted.stackable.celled.grid > .row > .column,
  .ui.inverted.stackable.divided.grid > .row > .column {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .ui.stackable.celled.grid > .column:not(.row),
  .ui.stackable.divided:not(.vertically).grid > .column:not(.row),
  .ui.stackable.celled.grid > .row > .column,
  .ui.stackable.divided:not(.vertically).grid > .row > .column {
    border-top: 1px solid rgba(34, 36, 38, 0.15);
    box-shadow: none !important;
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }

  .ui.stackable.celled.grid > .row {
    box-shadow: none !important;
  }

  .ui.stackable.divided:not(.vertically).grid > .column:not(.row),
  .ui.stackable.divided:not(.vertically).grid > .row > .column {
    padding-left: 0em !important;
    padding-right: 0em !important;
  }
}

/*----------------------
     Only (Device)
-----------------------*/

/* These include arbitrary class repetitions for forced specificity */

/* Mobile Only Hide */

@media only screen and (max-width: 767px) {
  .ui[class*="tablet only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="tablet only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="tablet only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.mobile) {
    display: none !important;
  }

  .ui[class*="computer only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="computer only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="computer only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="computer only"].column:not(.mobile) {
    display: none !important;
  }

  .ui[class*="large screen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="large screen only"].column:not(.mobile) {
    display: none !important;
  }

  .ui[class*="widescreen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="widescreen only"].column:not(.mobile) {
    display: none !important;
  }
}

/* Tablet Only Hide */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui[class*="mobile only"].grid.grid.grid:not(.tablet),
  .ui.grid.grid.grid > [class*="mobile only"].row:not(.tablet),
  .ui.grid.grid.grid > [class*="mobile only"].column:not(.tablet),
  .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.tablet) {
    display: none !important;
  }

  .ui[class*="computer only"].grid.grid.grid:not(.tablet),
  .ui.grid.grid.grid > [class*="computer only"].row:not(.tablet),
  .ui.grid.grid.grid > [class*="computer only"].column:not(.tablet),
  .ui.grid.grid.grid > .row > [class*="computer only"].column:not(.tablet) {
    display: none !important;
  }

  .ui[class*="large screen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="large screen only"].column:not(.mobile) {
    display: none !important;
  }

  .ui[class*="widescreen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="widescreen only"].column:not(.mobile) {
    display: none !important;
  }
}

/* Computer Only Hide */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ui[class*="mobile only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.computer) {
    display: none !important;
  }

  .ui[class*="tablet only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.computer) {
    display: none !important;
  }

  .ui[class*="large screen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="large screen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="large screen only"].column:not(.mobile) {
    display: none !important;
  }

  .ui[class*="widescreen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="widescreen only"].column:not(.mobile) {
    display: none !important;
  }
}

/* Large Screen Only Hide */

@media only screen and (min-width: 1200px) and (max-width: 1919px) {
  .ui[class*="mobile only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.computer) {
    display: none !important;
  }

  .ui[class*="tablet only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.computer) {
    display: none !important;
  }

  .ui[class*="widescreen only"].grid.grid.grid:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].row:not(.mobile),
  .ui.grid.grid.grid > [class*="widescreen only"].column:not(.mobile),
  .ui.grid.grid.grid > .row > [class*="widescreen only"].column:not(.mobile) {
    display: none !important;
  }
}

/* Widescreen Only Hide */

@media only screen and (min-width: 1920px) {
  .ui[class*="mobile only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="mobile only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.computer) {
    display: none !important;
  }

  .ui[class*="tablet only"].grid.grid.grid:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].row:not(.computer),
  .ui.grid.grid.grid > [class*="tablet only"].column:not(.computer),
  .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.computer) {
    display: none !important;
  }
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*
 * # Semantic - Menu
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Copyright 2015 Contributor
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Standard
*******************************/

/*--------------
      Menu
---------------*/

.ui.menu {
  display: flex;
  margin: 1rem 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  background: #FFFFFF;
  font-weight: normal;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
  min-height: 2.85714286em;
}

.ui.menu:after {
  content: '';
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}

.ui.menu:first-child {
  margin-top: 0rem;
}

.ui.menu:last-child {
  margin-bottom: 0rem;
}

/*--------------
    Sub-Menu
---------------*/

.ui.menu .menu {
  margin: 0em;
}

.ui.menu:not(.vertical) > .menu {
  display: flex;
}

/*--------------
      Item
---------------*/

.ui.menu:not(.vertical) .item {
  display: flex;
  align-items: center;
}

.ui.menu .item {
  position: relative;
  vertical-align: middle;
  line-height: 1;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  flex: 0 0 auto;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background: none;
  padding: 0.92857143em 1.14285714em;
  text-transform: none;
  color: rgba(0, 0, 0, 0.87);
  font-weight: normal;
  transition: background 0.1s ease, box-shadow 0.1s ease, color 0.1s ease;
}

.ui.menu > .item:first-child {
  border-radius: 0.28571429rem 0px 0px 0.28571429rem;
}

/* Border */

.ui.menu .item:before {
  position: absolute;
  content: '';
  top: 0%;
  right: 0px;
  height: 100%;
  width: 1px;
  background: rgba(34, 36, 38, 0.1);
}

/*--------------
  Text Content
---------------*/

.ui.menu .text.item > *,
.ui.menu .item > a:not(.ui),
.ui.menu .item > p:only-child {
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
  line-height: 1.3;
}

.ui.menu .item > p:first-child {
  margin-top: 0;
}

.ui.menu .item > p:last-child {
  margin-bottom: 0;
}

/*--------------
      Icons
---------------*/

.ui.menu .item > i.icon {
  opacity: 0.9;
  float: none;
  margin: 0em 0.35714286em 0em 0em;
}

/*--------------
     Button
---------------*/

.ui.menu:not(.vertical) .item > .button {
  position: relative;
  top: 0em;
  margin: -0.5em 0em;
  padding-bottom: 0.78571429em;
  padding-top: 0.78571429em;
  font-size: 1em;
}

/*----------------
 Grid / Container
-----------------*/

.ui.menu > .grid,
.ui.menu > .container {
  display: flex;
  align-items: inherit;
  flex-direction: inherit;
}

/*--------------
     Inputs
---------------*/

.ui.menu .item > .input {
  width: 100%;
}

.ui.menu:not(.vertical) .item > .input {
  position: relative;
  top: 0em;
  margin: -0.5em 0em;
}

.ui.menu .item > .input input {
  font-size: 1em;
  padding-top: 0.57142857em;
  padding-bottom: 0.57142857em;
}

/*--------------
     Header
---------------*/

.ui.menu .header.item,
.ui.vertical.menu .header.item {
  margin: 0em;
  background: '';
  text-transform: normal;
  font-weight: bold;
}

.ui.vertical.menu .item > .header:not(.ui) {
  margin: 0em 0em 0.5em;
  font-size: 1em;
  font-weight: bold;
}

/*--------------
    Dropdowns
---------------*/

/* Dropdown Icon */

.ui.menu .item > i.dropdown.icon {
  padding: 0em;
  float: right;
  margin: 0em 0em 0em 1em;
}

/* Menu */

.ui.menu .dropdown.item .menu {
  min-width: calc(100% - 1px);
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  background: #FFFFFF;
  margin: 0em 0px 0px;
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.08);
  flex-direction: column !important;
}

/* Menu Items */

.ui.menu .ui.dropdown .menu > .item {
  margin: 0;
  text-align: left;
  font-size: 1em !important;
  padding: 0.78571429em 1.14285714em !important;
  background: transparent !important;
  color: rgba(0, 0, 0, 0.87) !important;
  text-transform: none !important;
  font-weight: normal !important;
  box-shadow: none !important;
  transition: none !important;
}

.ui.menu .ui.dropdown .menu > .item:hover {
  background: rgba(0, 0, 0, 0.05) !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.menu .ui.dropdown .menu > .selected.item {
  background: rgba(0, 0, 0, 0.05) !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.menu .ui.dropdown .menu > .active.item {
  background: rgba(0, 0, 0, 0.03) !important;
  font-weight: bold !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.menu .ui.dropdown.item .menu .item:not(.filtered) {
  display: block;
}

.ui.menu .ui.dropdown .menu > .item .icon:not(.dropdown) {
  display: inline-block;
  font-size: 1em !important;
  float: none;
  margin: 0em 0.75em 0em 0em !important;
}

/* Secondary */

.ui.secondary.menu .dropdown.item > .menu,
.ui.text.menu .dropdown.item > .menu {
  border-radius: 0.28571429rem;
  margin-top: 0.35714286em;
}

/* Pointing */

.ui.menu .pointing.dropdown.item .menu {
  margin-top: 0.75em;
}

/* Inverted */

.ui.inverted.menu .search.dropdown.item > .search,
.ui.inverted.menu .search.dropdown.item > .text {
  color: rgba(255, 255, 255, 0.9);
}

/* Vertical */

.ui.vertical.menu .dropdown.item > .icon {
  float: right;
  content: "\f0da";
  margin-left: 1em;
}

.ui.vertical.menu .dropdown.item .menu {
  left: 100%;
  min-width: 0;
  margin: 0em 0em 0em 0em;
  box-shadow: 0 1px 3px 0px rgba(0, 0, 0, 0.08);
  border-radius: 0em 0.28571429rem 0.28571429rem 0.28571429rem;
}

.ui.vertical.menu .dropdown.item.upward .menu {
  bottom: 0;
}

.ui.vertical.menu .dropdown.item:not(.upward) .menu {
  top: 0;
}

.ui.vertical.menu .active.dropdown.item {
  border-top-right-radius: 0em;
  border-bottom-right-radius: 0em;
}

.ui.vertical.menu .dropdown.active.item {
  box-shadow: none;
}

/* Evenly Divided */

.ui.item.menu .dropdown .menu .item {
  width: 100%;
}

/*--------------
     Labels
---------------*/

.ui.menu .item > .label {
  background: #999999;
  color: #FFFFFF;
  margin-left: 1em;
  padding: 0.3em 0.78571429em;
}

.ui.vertical.menu .item > .label {
  background: #999999;
  color: #FFFFFF;
  margin-top: -0.15em;
  margin-bottom: -0.15em;
  padding: 0.3em 0.78571429em;
}

.ui.menu .item > .floating.label {
  padding: 0.3em 0.78571429em;
}

/*--------------
     Images
---------------*/

.ui.menu .item > img:not(.ui) {
  display: inline-block;
  vertical-align: middle;
  margin: -0.3em 0em;
  width: 2.5em;
}

.ui.vertical.menu .item > img:not(.ui):only-child {
  display: block;
  max-width: 100%;
  width: auto;
}

/*******************************
          Coupling
*******************************/

/*--------------
     List
---------------*/

/* Menu divider shouldnt apply */

.ui.menu .list .item:before {
  background: none !important;
}

/*--------------
     Sidebar
---------------*/

/* Show vertical dividers below last */

.ui.vertical.sidebar.menu > .item:first-child:before {
  display: block !important;
}

.ui.vertical.sidebar.menu > .item::before {
  top: auto;
  bottom: 0px;
}

/*--------------
    Container
---------------*/

@media only screen and (max-width: 767px) {
  .ui.menu > .ui.container {
    width: 100% !important;
    margin-left: 0em !important;
    margin-right: 0em !important;
  }
}

@media only screen and (min-width: 768px) {
  .ui.menu:not(.secondary):not(.text):not(.tabular):not(.borderless) > .container > .item:not(.right):not(.borderless):first-child {
    border-left: 1px solid rgba(34, 36, 38, 0.1);
  }
}

/*******************************
             States
*******************************/

/*--------------
      Hover
---------------*/

.ui.link.menu .item:hover,
.ui.menu .dropdown.item:hover,
.ui.menu .link.item:hover,
.ui.menu a.item:hover {
  cursor: pointer;
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Pressed
---------------*/

.ui.link.menu .item:active,
.ui.menu .link.item:active,
.ui.menu a.item:active {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Active
---------------*/

.ui.menu .active.item {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
  font-weight: normal;
  box-shadow: none;
}

.ui.menu .active.item > i.icon {
  opacity: 1;
}

/*--------------
  Active Hover
---------------*/

.ui.menu .active.item:hover,
.ui.vertical.menu .active.item:hover {
  background-color: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Disabled
---------------*/

.ui.menu .item.disabled,
.ui.menu .item.disabled:hover {
  cursor: default !important;
  background-color: transparent !important;
  color: rgba(40, 40, 40, 0.3) !important;
}

/*******************************
             Types
*******************************/

/*------------------
Floated Menu / Item
-------------------*/

/* Left Floated */

.ui.menu:not(.vertical) .left.item,
.ui.menu:not(.vertical) :not(.dropdown) > .left.menu {
  display: flex;
  margin-right: auto !important;
}

/* Right Floated */

.ui.menu:not(.vertical) .right.item,
.ui.menu:not(.vertical) .right.menu {
  display: flex;
  margin-left: auto !important;
}

/* Swapped Borders */

.ui.menu .right.item::before,
.ui.menu .right.menu > .item::before {
  right: auto;
  left: 0;
}

/*--------------
    Vertical
---------------*/

.ui.vertical.menu {
  display: block;
  flex-direction: column;
  background: #FFFFFF;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
}

/*--- Item ---*/

.ui.vertical.menu .item {
  display: block;
  background: none;
  border-top: none;
  border-right: none;
}

.ui.vertical.menu > .item:first-child {
  border-radius: 0.28571429rem 0.28571429rem 0px 0px;
}

.ui.vertical.menu > .item:last-child {
  border-radius: 0px 0px 0.28571429rem 0.28571429rem;
}

/*--- Label ---*/

.ui.vertical.menu .item > .label {
  float: right;
  text-align: center;
}

/*--- Icon ---*/

.ui.vertical.menu .item > i.icon {
  width: 1.18em;
  float: right;
  margin: 0em 0em 0em 0.5em;
}

.ui.vertical.menu .item > .label + i.icon {
  float: none;
  margin: 0em 0.5em 0em 0em;
}

/*--- Border ---*/

.ui.vertical.menu .item:before {
  position: absolute;
  content: '';
  top: 0%;
  left: 0px;
  width: 100%;
  height: 1px;
  background: rgba(34, 36, 38, 0.1);
}

.ui.vertical.menu .item:first-child:before {
  display: none !important;
}

/*--- Sub Menu ---*/

.ui.vertical.menu .item > .menu {
  margin: 0.5em -1.14285714em 0em;
}

.ui.vertical.menu .menu .item {
  background: none;
  padding: 0.5em 1.33333333em;
  font-size: 0.85714286em;
  color: rgba(0, 0, 0, 0.5);
}

.ui.vertical.menu .item .menu a.item:hover,
.ui.vertical.menu .item .menu .link.item:hover {
  color: rgba(0, 0, 0, 0.85);
}

.ui.vertical.menu .menu .item:before {
  display: none;
}

/* Vertical Active */

.ui.vertical.menu .active.item {
  background: rgba(0, 0, 0, 0.05);
  border-radius: 0em;
  box-shadow: none;
}

.ui.vertical.menu > .active.item:first-child {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.vertical.menu > .active.item:last-child {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.vertical.menu > .active.item:only-child {
  border-radius: 0.28571429rem;
}

.ui.vertical.menu .active.item .menu .active.item {
  border-left: none;
}

.ui.vertical.menu .item .menu .active.item {
  background-color: transparent;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Tabular
---------------*/

.ui.tabular.menu {
  border-radius: 0em;
  box-shadow: none !important;
  border: none;
  background: none transparent;
  border-bottom: 1px solid #D4D4D5;
}

.ui.tabular.fluid.menu {
  width: calc(100% + (1px * 2)) !important;
}

.ui.tabular.menu .item {
  background: transparent;
  border-bottom: none;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-top: 2px solid transparent;
  padding: 0.92857143em 1.42857143em;
  color: rgba(0, 0, 0, 0.87);
}

.ui.tabular.menu .item:before {
  display: none;
}

/* Hover */

.ui.tabular.menu .item:hover {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.8);
}

/* Active */

.ui.tabular.menu .active.item {
  background: none #FFFFFF;
  color: rgba(0, 0, 0, 0.95);
  border-top-width: 1px;
  border-color: #D4D4D5;
  font-weight: bold;
  margin-bottom: -1px;
  box-shadow: none;
  border-radius: 0.28571429rem 0.28571429rem 0px 0px !important;
}

/* Coupling with segment for attachment */

.ui.tabular.menu + .attached:not(.top).segment,
.ui.tabular.menu + .attached:not(.top).segment + .attached:not(.top).segment {
  border-top: none;
  margin-left: 0px;
  margin-top: 0px;
  margin-right: 0px;
  width: 100%;
}

.top.attached.segment + .ui.bottom.tabular.menu {
  position: relative;
  width: calc(100% + (1px * 2));
  left: -1px;
}

/* Bottom Vertical Tabular */

.ui.bottom.tabular.menu {
  background: none transparent;
  border-radius: 0em;
  box-shadow: none !important;
  border-bottom: none;
  border-top: 1px solid #D4D4D5;
}

.ui.bottom.tabular.menu .item {
  background: none;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-top: none;
}

.ui.bottom.tabular.menu .active.item {
  background: none #FFFFFF;
  color: rgba(0, 0, 0, 0.95);
  border-color: #D4D4D5;
  margin: -1px 0px 0px 0px;
  border-radius: 0px 0px 0.28571429rem 0.28571429rem !important;
}

/* Vertical Tabular (Left) */

.ui.vertical.tabular.menu {
  background: none transparent;
  border-radius: 0em;
  box-shadow: none !important;
  border-bottom: none;
  border-right: 1px solid #D4D4D5;
}

.ui.vertical.tabular.menu .item {
  background: none;
  border-left: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-top: 1px solid transparent;
  border-right: none;
}

.ui.vertical.tabular.menu .active.item {
  background: none #FFFFFF;
  color: rgba(0, 0, 0, 0.95);
  border-color: #D4D4D5;
  margin: 0px -1px 0px 0px;
  border-radius: 0.28571429rem 0px 0px 0.28571429rem !important;
}

/* Vertical Right Tabular */

.ui.vertical.right.tabular.menu {
  background: none transparent;
  border-radius: 0em;
  box-shadow: none !important;
  border-bottom: none;
  border-right: none;
  border-left: 1px solid #D4D4D5;
}

.ui.vertical.right.tabular.menu .item {
  background: none;
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-top: 1px solid transparent;
  border-left: none;
}

.ui.vertical.right.tabular.menu .active.item {
  background: none #FFFFFF;
  color: rgba(0, 0, 0, 0.95);
  border-color: #D4D4D5;
  margin: 0px 0px 0px -1px;
  border-radius: 0px 0.28571429rem 0.28571429rem 0px !important;
}

/* Dropdown */

.ui.tabular.menu .active.dropdown.item {
  margin-bottom: 0px;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-top: 2px solid transparent;
  border-bottom: none;
}

/*--------------
   Pagination
---------------*/

.ui.pagination.menu {
  margin: 0em;
  display: inline-flex;
  vertical-align: middle;
}

.ui.pagination.menu .item:last-child {
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

.ui.compact.menu .item:last-child {
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

.ui.pagination.menu .item:last-child:before {
  display: none;
}

.ui.pagination.menu .item {
  min-width: 3em;
  text-align: center;
}

.ui.pagination.menu .icon.item i.icon {
  vertical-align: top;
}

/* Active */

.ui.pagination.menu .active.item {
  border-top: none;
  padding-top: 0.92857143em;
  background-color: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
  box-shadow: none;
}

/*--------------
   Secondary
---------------*/

.ui.secondary.menu {
  background: none;
  margin-left: -0.35714286em;
  margin-right: -0.35714286em;
  border-radius: 0em;
  border: none;
  box-shadow: none;
}

/* Item */

.ui.secondary.menu .item {
  align-self: center;
  box-shadow: none;
  border: none;
  padding: 0.78571429em 0.92857143em;
  margin: 0em 0.35714286em;
  background: none;
  transition: color 0.1s ease;
  border-radius: 0.28571429rem;
}

/* No Divider */

.ui.secondary.menu .item:before {
  display: none !important;
}

/* Header */

.ui.secondary.menu .header.item {
  border-radius: 0em;
  border-right: none;
  background: none transparent;
}

/* Image */

.ui.secondary.menu .item > img:not(.ui) {
  margin: 0em;
}

/* Hover */

.ui.secondary.menu .dropdown.item:hover,
.ui.secondary.menu .link.item:hover,
.ui.secondary.menu a.item:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

/* Active */

.ui.secondary.menu .active.item {
  box-shadow: none;
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
  border-radius: 0.28571429rem;
}

/* Active Hover */

.ui.secondary.menu .active.item:hover {
  box-shadow: none;
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

/* Inverted */

.ui.secondary.inverted.menu .link.item,
.ui.secondary.inverted.menu a.item {
  color: rgba(255, 255, 255, 0.7) !important;
}

.ui.secondary.inverted.menu .dropdown.item:hover,
.ui.secondary.inverted.menu .link.item:hover,
.ui.secondary.inverted.menu a.item:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff !important;
}

.ui.secondary.inverted.menu .active.item {
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff !important;
}

/* Fix item margins */

.ui.secondary.item.menu {
  margin-left: 0em;
  margin-right: 0em;
}

.ui.secondary.item.menu .item:last-child {
  margin-right: 0em;
}

.ui.secondary.attached.menu {
  box-shadow: none;
}

/* Sub Menu */

.ui.vertical.secondary.menu .item:not(.dropdown) > .menu {
  margin: 0em -0.92857143em;
}

.ui.vertical.secondary.menu .item:not(.dropdown) > .menu > .item {
  margin: 0em;
  padding: 0.5em 1.33333333em;
}

/*---------------------
   Secondary Vertical
-----------------------*/

.ui.secondary.vertical.menu > .item {
  border: none;
  margin: 0em 0em 0.35714286em;
  border-radius: 0.28571429rem !important;
}

.ui.secondary.vertical.menu > .header.item {
  border-radius: 0em;
}

/* Sub Menu */

.ui.vertical.secondary.menu .item > .menu .item {
  background-color: transparent;
}

/* Inverted */

.ui.secondary.inverted.menu {
  background-color: transparent;
}

/*---------------------
   Secondary Pointing
-----------------------*/

.ui.secondary.pointing.menu {
  margin-left: 0em;
  margin-right: 0em;
  border-bottom: 2px solid rgba(34, 36, 38, 0.15);
}

.ui.secondary.pointing.menu .item {
  border-bottom-color: transparent;
  border-bottom-style: solid;
  border-radius: 0em;
  align-self: flex-end;
  margin: 0em 0em -2px;
  padding: 0.85714286em 1.14285714em;
  border-bottom-width: 2px;
  transition: color 0.1s ease;
}

/* Item Types */

.ui.secondary.pointing.menu .header.item {
  color: rgba(0, 0, 0, 0.85) !important;
}

.ui.secondary.pointing.menu .text.item {
  box-shadow: none !important;
}

.ui.secondary.pointing.menu .item:after {
  display: none;
}

/* Hover */

.ui.secondary.pointing.menu .dropdown.item:hover,
.ui.secondary.pointing.menu .link.item:hover,
.ui.secondary.pointing.menu a.item:hover {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.87);
}

/* Pressed */

.ui.secondary.pointing.menu .dropdown.item:active,
.ui.secondary.pointing.menu .link.item:active,
.ui.secondary.pointing.menu a.item:active {
  background-color: transparent;
  border-color: rgba(34, 36, 38, 0.15);
}

/* Active */

.ui.secondary.pointing.menu .active.item {
  background-color: transparent;
  box-shadow: none;
  border-color: #1B1C1D;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.95);
}

/* Active Hover */

.ui.secondary.pointing.menu .active.item:hover {
  border-color: #1B1C1D;
  color: rgba(0, 0, 0, 0.95);
}

/* Active Dropdown */

.ui.secondary.pointing.menu .active.dropdown.item {
  border-color: transparent;
}

/* Vertical Pointing */

.ui.secondary.vertical.pointing.menu {
  border-bottom-width: 0px;
  border-right-width: 2px;
  border-right-style: solid;
  border-right-color: rgba(34, 36, 38, 0.15);
}

.ui.secondary.vertical.pointing.menu .item {
  border-bottom: none;
  border-right-style: solid;
  border-right-color: transparent;
  border-radius: 0em !important;
  margin: 0em -2px 0em 0em;
  border-right-width: 2px;
}

/* Vertical Active */

.ui.secondary.vertical.pointing.menu .active.item {
  border-color: #1B1C1D;
}

/* Inverted */

.ui.secondary.inverted.pointing.menu {
  border-color: rgba(255, 255, 255, 0.1);
}

.ui.secondary.inverted.pointing.menu {
  border-width: 2px;
  border-color: rgba(34, 36, 38, 0.15);
}

.ui.secondary.inverted.pointing.menu .item {
  color: rgba(255, 255, 255, 0.9);
}

.ui.secondary.inverted.pointing.menu .header.item {
  color: #FFFFFF !important;
}

/* Hover */

.ui.secondary.inverted.pointing.menu .link.item:hover,
.ui.secondary.inverted.pointing.menu a.item:hover {
  color: rgba(0, 0, 0, 0.95);
}

/* Active */

.ui.secondary.inverted.pointing.menu .active.item {
  border-color: #FFFFFF;
  color: #ffffff;
}

/*--------------
    Text Menu
---------------*/

.ui.text.menu {
  background: none transparent;
  border-radius: 0px;
  box-shadow: none;
  border: none;
  margin: 1em -0.5em;
}

.ui.text.menu .item {
  border-radius: 0px;
  box-shadow: none;
  align-self: center;
  margin: 0em 0em;
  padding: 0.35714286em 0.5em;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.6);
  transition: opacity 0.1s ease;
}

/* Border */

.ui.text.menu .item:before,
.ui.text.menu .menu .item:before {
  display: none !important;
}

/* Header */

.ui.text.menu .header.item {
  background-color: transparent;
  opacity: 1;
  color: rgba(0, 0, 0, 0.85);
  font-size: 0.92857143em;
  text-transform: uppercase;
  font-weight: bold;
}

/* Image */

.ui.text.menu .item > img:not(.ui) {
  margin: 0em;
}

/*--- fluid text ---*/

.ui.text.item.menu .item {
  margin: 0em;
}

/*--- vertical text ---*/

.ui.vertical.text.menu {
  margin: 1em 0em;
}

.ui.vertical.text.menu:first-child {
  margin-top: 0rem;
}

.ui.vertical.text.menu:last-child {
  margin-bottom: 0rem;
}

.ui.vertical.text.menu .item {
  margin: 0.57142857em 0em;
  padding-left: 0em;
  padding-right: 0em;
}

.ui.vertical.text.menu .item > i.icon {
  float: none;
  margin: 0em 0.35714286em 0em 0em;
}

.ui.vertical.text.menu .header.item {
  margin: 0.57142857em 0em 0.71428571em;
}

/* Vertical Sub Menu */

.ui.vertical.text.menu .item:not(.dropdown) > .menu {
  margin: 0em;
}

.ui.vertical.text.menu .item:not(.dropdown) > .menu > .item {
  margin: 0em;
  padding: 0.5em 0em;
}

/*--- hover ---*/

.ui.text.menu .item:hover {
  opacity: 1;
  background-color: transparent;
}

/*--- active ---*/

.ui.text.menu .active.item {
  background-color: transparent;
  border: none;
  box-shadow: none;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.95);
}

/*--- active hover ---*/

.ui.text.menu .active.item:hover {
  background-color: transparent;
}

/* Disable Bariations */

.ui.text.pointing.menu .active.item:after {
  box-shadow: none;
}

.ui.text.attached.menu {
  box-shadow: none;
}

/* Inverted */

.ui.inverted.text.menu,
.ui.inverted.text.menu .item,
.ui.inverted.text.menu .item:hover,
.ui.inverted.text.menu .active.item {
  background-color: transparent !important;
}

/* Fluid */

.ui.fluid.text.menu {
  margin-left: 0em;
  margin-right: 0em;
}

/*--------------
    Icon Only
---------------*/

/* Vertical Menu */

.ui.vertical.icon.menu {
  display: inline-block;
  width: auto;
}

/* Item */

.ui.icon.menu .item {
  height: auto;
  text-align: center;
  color: #1B1C1D;
}

/* Icon */

.ui.icon.menu .item > .icon:not(.dropdown) {
  margin: 0;
  opacity: 1;
}

/* Icon Gylph */

.ui.icon.menu .icon:before {
  opacity: 1;
}

/* (x) Item Icon */

.ui.menu .icon.item > .icon {
  width: auto;
  margin: 0em auto;
}

/* Vertical Icon */

.ui.vertical.icon.menu .item > .icon:not(.dropdown) {
  display: block;
  opacity: 1;
  margin: 0em auto;
  float: none;
}

/* Inverted */

.ui.inverted.icon.menu .item {
  color: #FFFFFF;
}

/*--------------
   Labeled Icon
---------------*/

/* Menu */

.ui.labeled.icon.menu {
  text-align: center;
}

/* Item */

.ui.labeled.icon.menu .item {
  min-width: 6em;
  flex-direction: column;
}

/* Icon */

.ui.labeled.icon.menu .item > .icon:not(.dropdown) {
  height: 1em;
  display: block;
  font-size: 1.71428571em !important;
  margin: 0em auto 0.5rem !important;
}

/* Fluid */

.ui.fluid.labeled.icon.menu > .item {
  min-width: 0em;
}

/*******************************
           Variations
*******************************/

/*--------------
    Stackable
---------------*/

@media only screen and (max-width: 767px) {
  .ui.stackable.menu {
    flex-direction: column;
  }

  .ui.stackable.menu .item {
    width: 100% !important;
  }

  .ui.stackable.menu .item:before {
    position: absolute;
    content: '';
    top: auto;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 1px;
    background: rgba(34, 36, 38, 0.1);
  }

  .ui.stackable.menu .left.menu,
  .ui.stackable.menu .left.item {
    margin-right: 0 !important;
  }

  .ui.stackable.menu .right.menu,
  .ui.stackable.menu .right.item {
    margin-left: 0 !important;
  }

  .ui.stackable.menu .right.menu,
  .ui.stackable.menu .left.menu {
    flex-direction: column;
  }
}

/*--------------
     Colors
---------------*/

/*--- Standard Colors  ---*/

.ui.menu .red.active.item,
.ui.red.menu .active.item {
  border-color: #DB2828 !important;
  color: #DB2828 !important;
}

.ui.menu .orange.active.item,
.ui.orange.menu .active.item {
  border-color: #F2711C !important;
  color: #F2711C !important;
}

.ui.menu .yellow.active.item,
.ui.yellow.menu .active.item {
  border-color: #FBBD08 !important;
  color: #FBBD08 !important;
}

.ui.menu .olive.active.item,
.ui.olive.menu .active.item {
  border-color: #B5CC18 !important;
  color: #B5CC18 !important;
}

.ui.menu .green.active.item,
.ui.green.menu .active.item {
  border-color: #21BA45 !important;
  color: #21BA45 !important;
}

.ui.menu .teal.active.item,
.ui.teal.menu .active.item {
  border-color: #00B5AD !important;
  color: #00B5AD !important;
}

.ui.menu .blue.active.item,
.ui.blue.menu .active.item {
  border-color: #2185D0 !important;
  color: #2185D0 !important;
}

.ui.menu .violet.active.item,
.ui.violet.menu .active.item {
  border-color: #6435C9 !important;
  color: #6435C9 !important;
}

.ui.menu .purple.active.item,
.ui.purple.menu .active.item {
  border-color: #A333C8 !important;
  color: #A333C8 !important;
}

.ui.menu .pink.active.item,
.ui.pink.menu .active.item {
  border-color: #E03997 !important;
  color: #E03997 !important;
}

.ui.menu .brown.active.item,
.ui.brown.menu .active.item {
  border-color: #A5673F !important;
  color: #A5673F !important;
}

.ui.menu .grey.active.item,
.ui.grey.menu .active.item {
  border-color: #767676 !important;
  color: #767676 !important;
}

/*--------------
    Inverted
---------------*/

.ui.inverted.menu {
  border: 0px solid transparent;
  background: #1B1C1D;
  box-shadow: none;
}

/* Menu Item */

.ui.inverted.menu .item,
.ui.inverted.menu .item > a:not(.ui) {
  background: transparent;
  color: rgba(255, 255, 255, 0.9);
}

.ui.inverted.menu .item.menu {
  background: transparent;
}

/*--- Border ---*/

.ui.inverted.menu .item:before {
  background: rgba(255, 255, 255, 0.08);
}

.ui.vertical.inverted.menu .item:before {
  background: rgba(255, 255, 255, 0.08);
}

/* Sub Menu */

.ui.vertical.inverted.menu .menu .item,
.ui.vertical.inverted.menu .menu .item a:not(.ui) {
  color: rgba(255, 255, 255, 0.5);
}

/* Header */

.ui.inverted.menu .header.item {
  margin: 0em;
  background: transparent;
  box-shadow: none;
}

/* Disabled */

.ui.inverted.menu .item.disabled,
.ui.inverted.menu .item.disabled:hover {
  color: rgba(225, 225, 225, 0.3);
}

/*--- Hover ---*/

.ui.link.inverted.menu .item:hover,
.ui.inverted.menu .dropdown.item:hover,
.ui.inverted.menu .link.item:hover,
.ui.inverted.menu a.item:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

.ui.vertical.inverted.menu .item .menu a.item:hover,
.ui.vertical.inverted.menu .item .menu .link.item:hover {
  background: transparent;
  color: #ffffff;
}

/*--- Pressed ---*/

.ui.inverted.menu a.item:active,
.ui.inverted.menu .link.item:active {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

/*--- Active ---*/

.ui.inverted.menu .active.item {
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff !important;
}

.ui.inverted.vertical.menu .item .menu .active.item {
  background: transparent;
  color: #FFFFFF;
}

.ui.inverted.pointing.menu .active.item:after {
  background: #3D3E3F !important;
  margin: 0em !important;
  box-shadow: none !important;
  border: none !important;
}

/*--- Active Hover ---*/

.ui.inverted.menu .active.item:hover {
  background: rgba(255, 255, 255, 0.15);
  color: #FFFFFF !important;
}

.ui.inverted.pointing.menu .active.item:hover:after {
  background: #3D3E3F !important;
}

/*--------------
     Floated
---------------*/

.ui.floated.menu {
  float: left;
  margin: 0rem 0.5rem 0rem 0rem;
}

.ui.floated.menu .item:last-child:before {
  display: none;
}

.ui.right.floated.menu {
  float: right;
  margin: 0rem 0rem 0rem 0.5rem;
}

/*--------------
    Inverted
---------------*/

/* Red */

.ui.inverted.menu .red.active.item,
.ui.inverted.red.menu {
  background-color: #DB2828;
}

.ui.inverted.red.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.red.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Orange */

.ui.inverted.menu .orange.active.item,
.ui.inverted.orange.menu {
  background-color: #F2711C;
}

.ui.inverted.orange.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.orange.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Yellow */

.ui.inverted.menu .yellow.active.item,
.ui.inverted.yellow.menu {
  background-color: #FBBD08;
}

.ui.inverted.yellow.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.yellow.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Olive */

.ui.inverted.menu .olive.active.item,
.ui.inverted.olive.menu {
  background-color: #B5CC18;
}

.ui.inverted.olive.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.olive.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Green */

.ui.inverted.menu .green.active.item,
.ui.inverted.green.menu {
  background-color: #21BA45;
}

.ui.inverted.green.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.green.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Teal */

.ui.inverted.menu .teal.active.item,
.ui.inverted.teal.menu {
  background-color: #00B5AD;
}

.ui.inverted.teal.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.teal.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Blue */

.ui.inverted.menu .blue.active.item,
.ui.inverted.blue.menu {
  background-color: #2185D0;
}

.ui.inverted.blue.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.blue.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Violet */

.ui.inverted.menu .violet.active.item,
.ui.inverted.violet.menu {
  background-color: #6435C9;
}

.ui.inverted.violet.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.violet.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Purple */

.ui.inverted.menu .purple.active.item,
.ui.inverted.purple.menu {
  background-color: #A333C8;
}

.ui.inverted.purple.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.purple.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Pink */

.ui.inverted.menu .pink.active.item,
.ui.inverted.pink.menu {
  background-color: #E03997;
}

.ui.inverted.pink.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.pink.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Brown */

.ui.inverted.menu .brown.active.item,
.ui.inverted.brown.menu {
  background-color: #A5673F;
}

.ui.inverted.brown.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.brown.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* Grey */

.ui.inverted.menu .grey.active.item,
.ui.inverted.grey.menu {
  background-color: #767676;
}

.ui.inverted.grey.menu .item:before {
  background-color: rgba(34, 36, 38, 0.1);
}

.ui.inverted.grey.menu .active.item {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/*--------------
     Fitted
---------------*/

.ui.fitted.menu .item,
.ui.fitted.menu .item .menu .item,
.ui.menu .fitted.item {
  padding: 0em;
}

.ui.horizontally.fitted.menu .item,
.ui.horizontally.fitted.menu .item .menu .item,
.ui.menu .horizontally.fitted.item {
  padding-top: 0.92857143em;
  padding-bottom: 0.92857143em;
}

.ui.vertically.fitted.menu .item,
.ui.vertically.fitted.menu .item .menu .item,
.ui.menu .vertically.fitted.item {
  padding-left: 1.14285714em;
  padding-right: 1.14285714em;
}

/*--------------
   Borderless
---------------*/

.ui.borderless.menu .item:before,
.ui.borderless.menu .item .menu .item:before,
.ui.menu .borderless.item:before {
  background: none !important;
}

/*-------------------
       Compact
--------------------*/

.ui.compact.menu {
  display: inline-flex;
  margin: 0em;
  vertical-align: middle;
}

.ui.compact.vertical.menu {
  display: inline-block;
}

.ui.compact.menu .item:last-child {
  border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}

.ui.compact.menu .item:last-child:before {
  display: none;
}

.ui.compact.vertical.menu {
  width: auto !important;
}

.ui.compact.vertical.menu .item:last-child::before {
  display: block;
}

/*-------------------
        Fluid
--------------------*/

.ui.menu.fluid,
.ui.vertical.menu.fluid {
  width: 100% !important;
}

/*-------------------
      Evenly Sized
--------------------*/

.ui.item.menu,
.ui.item.menu .item {
  width: 100%;
  padding-left: 0em !important;
  padding-right: 0em !important;
  margin-left: 0em !important;
  margin-right: 0em !important;
  text-align: center;
  justify-content: center;
}

.ui.attached.item.menu {
  margin: 0em -1px !important;
}

.ui.item.menu .item:last-child:before {
  display: none;
}

.ui.menu.two.item .item {
  width: 50%;
}

.ui.menu.three.item .item {
  width: 33.333%;
}

.ui.menu.four.item .item {
  width: 25%;
}

.ui.menu.five.item .item {
  width: 20%;
}

.ui.menu.six.item .item {
  width: 16.666%;
}

.ui.menu.seven.item .item {
  width: 14.285%;
}

.ui.menu.eight.item .item {
  width: 12.5%;
}

.ui.menu.nine.item .item {
  width: 11.11%;
}

.ui.menu.ten.item .item {
  width: 10%;
}

.ui.menu.eleven.item .item {
  width: 9.09%;
}

.ui.menu.twelve.item .item {
  width: 8.333%;
}

/*--------------
     Fixed
---------------*/

.ui.menu.fixed {
  position: fixed;
  z-index: 101;
  margin: 0em;
  width: 100%;
}

.ui.menu.fixed,
.ui.menu.fixed .item:first-child,
.ui.menu.fixed .item:last-child {
  border-radius: 0px !important;
}

.ui.fixed.menu,
.ui[class*="top fixed"].menu {
  top: 0px;
  left: 0px;
  right: auto;
  bottom: auto;
}

.ui[class*="top fixed"].menu {
  border-top: none;
  border-left: none;
  border-right: none;
}

.ui[class*="right fixed"].menu {
  border-top: none;
  border-bottom: none;
  border-right: none;
  top: 0px;
  right: 0px;
  left: auto;
  bottom: auto;
  width: auto;
  height: 100%;
}

.ui[class*="bottom fixed"].menu {
  border-bottom: none;
  border-left: none;
  border-right: none;
  bottom: 0px;
  left: 0px;
  top: auto;
  right: auto;
}

.ui[class*="left fixed"].menu {
  border-top: none;
  border-bottom: none;
  border-left: none;
  top: 0px;
  left: 0px;
  right: auto;
  bottom: auto;
  width: auto;
  height: 100%;
}

/* Coupling with Grid */

.ui.fixed.menu + .ui.grid {
  padding-top: 2.75rem;
}

/*-------------------
       Pointing
--------------------*/

.ui.pointing.menu .item:after {
  visibility: hidden;
  position: absolute;
  content: '';
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  background: none;
  margin: 0.5px 0em 0em;
  width: 0.57142857em;
  height: 0.57142857em;
  border: none;
  border-bottom: 1px solid #D4D4D5;
  border-right: 1px solid #D4D4D5;
  z-index: 2;
  transition: background 0.1s ease;
}

.ui.vertical.pointing.menu .item:after {
  position: absolute;
  top: 50%;
  right: 0%;
  bottom: auto;
  left: auto;
  -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
  transform: translateX(50%) translateY(-50%) rotate(45deg);
  margin: 0em -0.5px 0em 0em;
  border: none;
  border-top: 1px solid #D4D4D5;
  border-right: 1px solid #D4D4D5;
}

/* Active */

.ui.pointing.menu .active.item:after {
  visibility: visible;
}

.ui.pointing.menu .active.dropdown.item:after {
  visibility: hidden;
}

/* Don't double up pointers */

.ui.pointing.menu .dropdown.active.item:after,
.ui.pointing.menu .active.item .menu .active.item:after {
  display: none;
}

/* Colors */

.ui.pointing.menu .active.item:hover:after {
  background-color: #F2F2F2;
}

.ui.pointing.menu .active.item:after {
  background-color: #F2F2F2;
}

.ui.pointing.menu .active.item:hover:after {
  background-color: #F2F2F2;
}

.ui.vertical.pointing.menu .active.item:hover:after {
  background-color: #F2F2F2;
}

.ui.vertical.pointing.menu .active.item:after {
  background-color: #F2F2F2;
}

.ui.vertical.pointing.menu .menu .active.item:after {
  background-color: #FFFFFF;
}

/*--------------
    Attached
---------------*/

/* Middle */

.ui.attached.menu {
  top: 0px;
  bottom: 0px;
  border-radius: 0px;
  margin: 0em -1px;
  width: calc(100% - (-1px * 2));
  max-width: calc(100% - (-1px * 2));
  box-shadow: none;
}

.ui.attached + .ui.attached.menu:not(.top) {
  border-top: none;
}

/* Top */

.ui[class*="top attached"].menu {
  bottom: 0px;
  margin-bottom: 0em;
  top: 0px;
  margin-top: 1rem;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.menu[class*="top attached"]:first-child {
  margin-top: 0em;
}

/* Bottom */

.ui[class*="bottom attached"].menu {
  bottom: 0px;
  margin-top: 0em;
  top: 0px;
  margin-bottom: 1rem;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui[class*="bottom attached"].menu:last-child {
  margin-bottom: 0em;
}

/* Attached Menu Item */

.ui.top.attached.menu > .item:first-child {
  border-radius: 0.28571429rem 0em 0em 0em;
}

.ui.bottom.attached.menu > .item:first-child {
  border-radius: 0em 0em 0em 0.28571429rem;
}

/* Tabular Attached */

.ui.attached.menu:not(.tabular) {
  border: 1px solid #D4D4D5;
}

.ui.attached.inverted.menu {
  border: none;
}

.ui.attached.tabular.menu {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

/*--------------
     Sizes
---------------*/

/* Mini */

.ui.mini.menu {
  font-size: 0.78571429rem;
}

.ui.mini.vertical.menu {
  width: 9rem;
}

/* Tiny */

.ui.tiny.menu {
  font-size: 0.85714286rem;
}

.ui.tiny.vertical.menu {
  width: 11rem;
}

/* Small */

.ui.small.menu {
  font-size: 0.92857143rem;
}

.ui.small.vertical.menu {
  width: 13rem;
}

/* Medium */

.ui.menu {
  font-size: 1rem;
}

.ui.vertical.menu {
  width: 15rem;
}

/* Large */

.ui.large.menu {
  font-size: 1.07142857rem;
}

.ui.large.vertical.menu {
  width: 18rem;
}

/* Huge */

.ui.huge.menu {
  font-size: 1.21428571rem;
}

.ui.huge.vertical.menu {
  width: 22rem;
}

/* Big */

.ui.big.menu {
  font-size: 1.14285714rem;
}

.ui.big.vertical.menu {
  width: 20rem;
}

/* Massive */

.ui.massive.menu {
  font-size: 1.28571429rem;
}

.ui.massive.vertical.menu {
  width: 25rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Message
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Message
*******************************/

.ui.message {
  position: relative;
  min-height: 1em;
  margin: 1em 0em;
  background: #F8F8F9;
  padding: 1em 1.5em;
  line-height: 1.4285em;
  color: rgba(0, 0, 0, 0.87);
  transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, box-shadow 0.1s ease;
  border-radius: 0.28571429rem;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.22) inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.message:first-child {
  margin-top: 0em;
}

.ui.message:last-child {
  margin-bottom: 0em;
}

/*--------------
     Content
---------------*/

/* Header */

.ui.message .header {
  display: block;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-weight: bold;
  margin: -0.14285714em 0em 0rem 0em;
}

/* Default font size */

.ui.message .header:not(.ui) {
  font-size: 1.14285714em;
}

/* Paragraph */

.ui.message p {
  opacity: 0.85;
  margin: 0.75em 0em;
}

.ui.message p:first-child {
  margin-top: 0em;
}

.ui.message p:last-child {
  margin-bottom: 0em;
}

.ui.message .header + p {
  margin-top: 0.25em;
}

/* List */

.ui.message .list:not(.ui) {
  text-align: left;
  padding: 0em;
  opacity: 0.85;
  list-style-position: inside;
  margin: 0.5em 0em 0em;
}

.ui.message .list:not(.ui):first-child {
  margin-top: 0em;
}

.ui.message .list:not(.ui):last-child {
  margin-bottom: 0em;
}

.ui.message .list:not(.ui) li {
  position: relative;
  list-style-type: none;
  margin: 0em 0em 0.3em 1em;
  padding: 0em;
}

.ui.message .list:not(.ui) li:before {
  position: absolute;
  content: '•';
  left: -1em;
  height: 100%;
  vertical-align: baseline;
}

.ui.message .list:not(.ui) li:last-child {
  margin-bottom: 0em;
}

/* Icon */

.ui.message > .icon {
  margin-right: 0.6em;
}

/* Close Icon */

.ui.message > .close.icon {
  cursor: pointer;
  position: absolute;
  margin: 0em;
  top: 0.78575em;
  right: 0.5em;
  opacity: 0.7;
  transition: opacity 0.1s ease;
}

.ui.message > .close.icon:hover {
  opacity: 1;
}

/* First / Last Element */

.ui.message > :first-child {
  margin-top: 0em;
}

.ui.message > :last-child {
  margin-bottom: 0em;
}

/*******************************
            Coupling
*******************************/

.ui.dropdown .menu > .message {
  margin: 0px -1px;
}

/*******************************
            States
*******************************/

/*--------------
    Visible
---------------*/

.ui.visible.visible.visible.visible.message {
  display: block;
}

.ui.icon.visible.visible.visible.visible.message {
  display: flex;
}

/*--------------
     Hidden
---------------*/

.ui.hidden.hidden.hidden.hidden.message {
  display: none;
}

/*******************************
            Variations
*******************************/

/*--------------
    Compact
---------------*/

.ui.compact.message {
  display: inline-block;
}

.ui.compact.icon.message {
  display: inline-flex;
}

/*--------------
    Attached
---------------*/

.ui.attached.message {
  margin-bottom: -1px;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
  box-shadow: 0em 0em 0em 1px rgba(34, 36, 38, 0.15) inset;
  margin-left: -1px;
  margin-right: -1px;
}

.ui.attached + .ui.attached.message:not(.top):not(.bottom) {
  margin-top: -1px;
  border-radius: 0em;
}

.ui.bottom.attached.message {
  margin-top: -1px;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  box-shadow: 0em 0em 0em 1px rgba(34, 36, 38, 0.15) inset, 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
}

.ui.bottom.attached.message:not(:last-child) {
  margin-bottom: 1em;
}

.ui.attached.icon.message {
  width: auto;
}

/*--------------
      Icon
---------------*/

.ui.icon.message {
  display: flex;
  width: 100%;
  align-items: center;
}

.ui.icon.message > .icon:not(.close) {
  display: block;
  flex: 0 0 auto;
  width: auto;
  line-height: 1;
  vertical-align: middle;
  font-size: 3em;
  opacity: 0.8;
}

.ui.icon.message > .content {
  display: block;
  flex: 1 1 auto;
  vertical-align: middle;
}

.ui.icon.message .icon:not(.close) + .content {
  padding-left: 0rem;
}

.ui.icon.message .circular.icon {
  width: 1em;
}

/*--------------
    Floating
---------------*/

.ui.floating.message {
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.22) inset, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
}

/*--------------
     Colors
---------------*/

.ui.black.message {
  background-color: #1B1C1D;
  color: rgba(255, 255, 255, 0.9);
}

/*--------------
     Types
---------------*/

/* Positive */

.ui.positive.message {
  background-color: #FCFFF5;
  color: #2C662D;
}

.ui.positive.message,
.ui.attached.positive.message {
  box-shadow: 0px 0px 0px 1px #A3C293 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.positive.message .header {
  color: #1A531B;
}

/* Negative */

.ui.negative.message {
  background-color: #FFF6F6;
  color: #9F3A38;
}

.ui.negative.message,
.ui.attached.negative.message {
  box-shadow: 0px 0px 0px 1px #E0B4B4 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.negative.message .header {
  color: #912D2B;
}

/* Info */

.ui.info.message {
  background-color: #F8FFFF;
  color: #276F86;
}

.ui.info.message,
.ui.attached.info.message {
  box-shadow: 0px 0px 0px 1px #A9D5DE inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.info.message .header {
  color: #0E566C;
}

/* Warning */

.ui.warning.message {
  background-color: #FFFAF3;
  color: #573A08;
}

.ui.warning.message,
.ui.attached.warning.message {
  box-shadow: 0px 0px 0px 1px #C9BA9B inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.warning.message .header {
  color: #794B02;
}

/* Error */

.ui.error.message {
  background-color: #FFF6F6;
  color: #9F3A38;
}

.ui.error.message,
.ui.attached.error.message {
  box-shadow: 0px 0px 0px 1px #E0B4B4 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.error.message .header {
  color: #912D2B;
}

/* Success */

.ui.success.message {
  background-color: #FCFFF5;
  color: #2C662D;
}

.ui.success.message,
.ui.attached.success.message {
  box-shadow: 0px 0px 0px 1px #A3C293 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.success.message .header {
  color: #1A531B;
}

/* Colors */

.ui.inverted.message,
.ui.black.message {
  background-color: #1B1C1D;
  color: rgba(255, 255, 255, 0.9);
}

.ui.red.message {
  background-color: #FFE8E6;
  color: #DB2828;
  box-shadow: 0px 0px 0px 1px #DB2828 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.red.message .header {
  color: #c82121;
}

.ui.orange.message {
  background-color: #FFEDDE;
  color: #F2711C;
  box-shadow: 0px 0px 0px 1px #F2711C inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.orange.message .header {
  color: #e7640d;
}

.ui.yellow.message {
  background-color: #FFF8DB;
  color: #B58105;
  box-shadow: 0px 0px 0px 1px #B58105 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.yellow.message .header {
  color: #9c6f04;
}

.ui.olive.message {
  background-color: #FBFDEF;
  color: #8ABC1E;
  box-shadow: 0px 0px 0px 1px #8ABC1E inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.olive.message .header {
  color: #7aa61a;
}

.ui.green.message {
  background-color: #E5F9E7;
  color: #1EBC30;
  box-shadow: 0px 0px 0px 1px #1EBC30 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.green.message .header {
  color: #1aa62a;
}

.ui.teal.message {
  background-color: #E1F7F7;
  color: #10A3A3;
  box-shadow: 0px 0px 0px 1px #10A3A3 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.teal.message .header {
  color: #0e8c8c;
}

.ui.blue.message {
  background-color: #DFF0FF;
  color: #2185D0;
  box-shadow: 0px 0px 0px 1px #2185D0 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.blue.message .header {
  color: #1e77ba;
}

.ui.violet.message {
  background-color: #EAE7FF;
  color: #6435C9;
  box-shadow: 0px 0px 0px 1px #6435C9 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.violet.message .header {
  color: #5a30b5;
}

.ui.purple.message {
  background-color: #F6E7FF;
  color: #A333C8;
  box-shadow: 0px 0px 0px 1px #A333C8 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.purple.message .header {
  color: #922eb4;
}

.ui.pink.message {
  background-color: #FFE3FB;
  color: #E03997;
  box-shadow: 0px 0px 0px 1px #E03997 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.pink.message .header {
  color: #dd238b;
}

.ui.brown.message {
  background-color: #F1E2D3;
  color: #A5673F;
  box-shadow: 0px 0px 0px 1px #A5673F inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

.ui.brown.message .header {
  color: #935b38;
}

/*--------------
     Sizes
---------------*/

.ui.mini.message {
  font-size: 0.78571429em;
}

.ui.tiny.message {
  font-size: 0.85714286em;
}

.ui.small.message {
  font-size: 0.92857143em;
}

.ui.message {
  font-size: 1em;
}

.ui.large.message {
  font-size: 1.14285714em;
}

.ui.big.message {
  font-size: 1.28571429em;
}

.ui.huge.message {
  font-size: 1.42857143em;
}

.ui.massive.message {
  font-size: 1.71428571em;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
        Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Table
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Table
*******************************/

/* Prototype */

.ui.table {
  width: 100%;
  background: #FFFFFF;
  margin: 1em 0em;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: none;
  border-radius: 0.28571429rem;
  text-align: left;
  color: rgba(0, 0, 0, 0.87);
  border-collapse: separate;
  border-spacing: 0px;
}

.ui.table:first-child {
  margin-top: 0em;
}

.ui.table:last-child {
  margin-bottom: 0em;
}

/*******************************
             Parts
*******************************/

/* Table Content */

.ui.table th,
.ui.table td {
  transition: background 0.1s ease, color 0.1s ease;
}

/* Headers */

.ui.table thead {
  box-shadow: none;
}

.ui.table thead th {
  cursor: auto;
  background: #F9FAFB;
  text-align: inherit;
  color: rgba(0, 0, 0, 0.87);
  padding: 0.92857143em 0.78571429em;
  vertical-align: inherit;
  font-style: none;
  font-weight: bold;
  text-transform: none;
  border-bottom: 1px solid rgba(34, 36, 38, 0.1);
  border-left: none;
}

.ui.table thead tr > th:first-child {
  border-left: none;
}

.ui.table thead tr:first-child > th:first-child {
  border-radius: 0.28571429rem 0em 0em 0em;
}

.ui.table thead tr:first-child > th:last-child {
  border-radius: 0em 0.28571429rem 0em 0em;
}

.ui.table thead tr:first-child > th:only-child {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

/* Footer */

.ui.table tfoot {
  box-shadow: none;
}

.ui.table tfoot th {
  cursor: auto;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  background: #F9FAFB;
  text-align: inherit;
  color: rgba(0, 0, 0, 0.87);
  padding: 0.78571429em 0.78571429em;
  vertical-align: middle;
  font-style: normal;
  font-weight: normal;
  text-transform: none;
}

.ui.table tfoot tr > th:first-child {
  border-left: none;
}

.ui.table tfoot tr:first-child > th:first-child {
  border-radius: 0em 0em 0em 0.28571429rem;
}

.ui.table tfoot tr:first-child > th:last-child {
  border-radius: 0em 0em 0.28571429rem 0em;
}

.ui.table tfoot tr:first-child > th:only-child {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

/* Table Row */

.ui.table tr td {
  border-top: 1px solid rgba(34, 36, 38, 0.1);
}

.ui.table tr:first-child td {
  border-top: none;
}

/* Repeated tbody */

.ui.table tbody + tbody tr:first-child td {
  border-top: 1px solid rgba(34, 36, 38, 0.1);
}

/* Table Cells */

.ui.table td {
  padding: 0.78571429em 0.78571429em;
  text-align: inherit;
}

/* Icons */

.ui.table > .icon {
  vertical-align: baseline;
}

.ui.table > .icon:only-child {
  margin: 0em;
}

/* Table Segment */

.ui.table.segment {
  padding: 0em;
}

.ui.table.segment:after {
  display: none;
}

.ui.table.segment.stacked:after {
  display: block;
}

/* Responsive */

@media only screen and (max-width: 767px) {
  .ui.table:not(.unstackable) {
    width: 100%;
  }

  .ui.table:not(.unstackable) tbody,
  .ui.table:not(.unstackable) tr,
  .ui.table:not(.unstackable) tr > th,
  .ui.table:not(.unstackable) tr > td {
    width: auto !important;
    display: block !important;
  }

  .ui.table:not(.unstackable) {
    padding: 0em;
  }

  .ui.table:not(.unstackable) thead {
    display: block;
  }

  .ui.table:not(.unstackable) tfoot {
    display: block;
  }

  .ui.table:not(.unstackable) tr {
    padding-top: 1em;
    padding-bottom: 1em;
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
  }

  .ui.table:not(.unstackable) tr > th,
  .ui.table:not(.unstackable) tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em !important;
    box-shadow: none !important;
  }

  .ui.table:not(.unstackable) th:first-child,
  .ui.table:not(.unstackable) td:first-child {
    font-weight: bold;
  }

  /* Definition Table */

  .ui.definition.table:not(.unstackable) thead th:first-child {
    box-shadow: none !important;
  }
}

/*******************************
            Coupling
*******************************/

/* UI Image */

.ui.table th .image,
.ui.table th .image img,
.ui.table td .image,
.ui.table td .image img {
  max-width: none;
}

/*******************************
             Types
*******************************/

/*--------------
    Complex
---------------*/

.ui.structured.table {
  border-collapse: collapse;
}

.ui.structured.table thead th {
  border-left: none;
  border-right: none;
}

.ui.structured.sortable.table thead th {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  border-right: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.structured.basic.table th {
  border-left: none;
  border-right: none;
}

.ui.structured.celled.table tr th,
.ui.structured.celled.table tr td {
  border-left: 1px solid rgba(34, 36, 38, 0.1);
  border-right: 1px solid rgba(34, 36, 38, 0.1);
}

/*--------------
   Definition
---------------*/

.ui.definition.table thead:not(.full-width) th:first-child {
  pointer-events: none;
  background: transparent;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.4);
  box-shadow: -1px -1px 0px 1px #FFFFFF;
}

.ui.definition.table tfoot:not(.full-width) th:first-child {
  pointer-events: none;
  background: transparent;
  font-weight: rgba(0, 0, 0, 0.4);
  color: normal;
  box-shadow: 1px 1px 0px 1px #FFFFFF;
}

/* Remove Border */

.ui.celled.definition.table thead:not(.full-width) th:first-child {
  box-shadow: 0px -1px 0px 1px #FFFFFF;
}

.ui.celled.definition.table tfoot:not(.full-width) th:first-child {
  box-shadow: 0px 1px 0px 1px #FFFFFF;
}

/* Highlight Defining Column */

.ui.definition.table tr td:first-child:not(.ignored),
.ui.definition.table tr td.definition {
  background: rgba(0, 0, 0, 0.03);
  font-weight: bold;
  color: rgba(0, 0, 0, 0.95);
  text-transform: '';
  box-shadow: '';
  text-align: '';
  font-size: 1em;
  padding-left: '';
  padding-right: '';
}

/* Fix 2nd Column */

.ui.definition.table thead:not(.full-width) th:nth-child(2) {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.definition.table tfoot:not(.full-width) th:nth-child(2) {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.definition.table td:nth-child(2) {
  border-left: 1px solid rgba(34, 36, 38, 0.15);
}

/*******************************
             States
*******************************/

/*--------------
    Positive
---------------*/

.ui.table tr.positive,
.ui.table td.positive {
  box-shadow: 0px 0px 0px #A3C293 inset;
}

.ui.table tr.positive,
.ui.table td.positive {
  background: #FCFFF5 !important;
  color: #2C662D !important;
}

/*--------------
     Negative
---------------*/

.ui.table tr.negative,
.ui.table td.negative {
  box-shadow: 0px 0px 0px #E0B4B4 inset;
}

.ui.table tr.negative,
.ui.table td.negative {
  background: #FFF6F6 !important;
  color: #9F3A38 !important;
}

/*--------------
      Error
---------------*/

.ui.table tr.error,
.ui.table td.error {
  box-shadow: 0px 0px 0px #E0B4B4 inset;
}

.ui.table tr.error,
.ui.table td.error {
  background: #FFF6F6 !important;
  color: #9F3A38 !important;
}

/*--------------
     Warning
---------------*/

.ui.table tr.warning,
.ui.table td.warning {
  box-shadow: 0px 0px 0px #C9BA9B inset;
}

.ui.table tr.warning,
.ui.table td.warning {
  background: #FFFAF3 !important;
  color: #573A08 !important;
}

/*--------------
     Active
---------------*/

.ui.table tr.active,
.ui.table td.active {
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.87) inset;
}

.ui.table tr.active,
.ui.table td.active {
  background: #E0E0E0 !important;
  color: rgba(0, 0, 0, 0.87) !important;
}

/*--------------
     Disabled
---------------*/

.ui.table tr.disabled td,
.ui.table tr td.disabled,
.ui.table tr.disabled:hover,
.ui.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(40, 40, 40, 0.3);
}

/*******************************
          Variations
*******************************/

/*--------------
    Stackable
---------------*/

@media only screen and (max-width: 991px) {
  .ui[class*="tablet stackable"].table,
  .ui[class*="tablet stackable"].table tbody,
  .ui[class*="tablet stackable"].table tr,
  .ui[class*="tablet stackable"].table tr > th,
  .ui[class*="tablet stackable"].table tr > td {
    width: 100% !important;
    display: block !important;
  }

  .ui[class*="tablet stackable"].table {
    padding: 0em;
  }

  .ui[class*="tablet stackable"].table thead {
    display: block;
  }

  .ui[class*="tablet stackable"].table tfoot {
    display: block;
  }

  .ui[class*="tablet stackable"].table tr {
    padding-top: 1em;
    padding-bottom: 1em;
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
  }

  .ui[class*="tablet stackable"].table tr > th,
  .ui[class*="tablet stackable"].table tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em;
    box-shadow: none !important;
  }

  /* Definition Table */

  .ui.definition[class*="tablet stackable"].table thead th:first-child {
    box-shadow: none !important;
  }
}

/*--------------
 Text Alignment
---------------*/

.ui.table[class*="left aligned"],
.ui.table [class*="left aligned"] {
  text-align: left;
}

.ui.table[class*="center aligned"],
.ui.table [class*="center aligned"] {
  text-align: center;
}

.ui.table[class*="right aligned"],
.ui.table [class*="right aligned"] {
  text-align: right;
}

/*------------------
 Vertical Alignment
------------------*/

.ui.table[class*="top aligned"],
.ui.table [class*="top aligned"] {
  vertical-align: top;
}

.ui.table[class*="middle aligned"],
.ui.table [class*="middle aligned"] {
  vertical-align: middle;
}

.ui.table[class*="bottom aligned"],
.ui.table [class*="bottom aligned"] {
  vertical-align: bottom;
}

/*--------------
    Collapsing
---------------*/

.ui.table th.collapsing,
.ui.table td.collapsing {
  width: 1px;
  white-space: nowrap;
}

/*--------------
     Fixed
---------------*/

.ui.fixed.table {
  table-layout: fixed;
}

.ui.fixed.table th,
.ui.fixed.table td {
  overflow: hidden;
  text-overflow: ellipsis;
}

/*--------------
   Selectable
---------------*/

.ui.selectable.table tbody tr:hover,
.ui.table tbody tr td.selectable:hover {
  background: rgba(0, 0, 0, 0.05) !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.selectable.inverted.table tbody tr:hover,
.ui.inverted.table tbody tr td.selectable:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #ffffff !important;
}

/* Selectable Cell Link */

.ui.table tbody tr td.selectable {
  padding: 0em;
}

.ui.table tbody tr td.selectable > a:not(.ui) {
  display: block;
  color: inherit;
  padding: 0.78571429em 0.78571429em;
}

/* Other States */

.ui.selectable.table tr.error:hover,
.ui.table tr td.selectable.error:hover,
.ui.selectable.table tr:hover td.error {
  background: #ffe7e7 !important;
  color: #943634 !important;
}

.ui.selectable.table tr.warning:hover,
.ui.table tr td.selectable.warning:hover,
.ui.selectable.table tr:hover td.warning {
  background: #fff4e4 !important;
  color: #493107 !important;
}

.ui.selectable.table tr.active:hover,
.ui.table tr td.selectable.active:hover,
.ui.selectable.table tr:hover td.active {
  background: #E0E0E0 !important;
  color: rgba(0, 0, 0, 0.87) !important;
}

.ui.selectable.table tr.positive:hover,
.ui.table tr td.selectable.positive:hover,
.ui.selectable.table tr:hover td.positive {
  background: #f7ffe6 !important;
  color: #275b28 !important;
}

.ui.selectable.table tr.negative:hover,
.ui.table tr td.selectable.negative:hover,
.ui.selectable.table tr:hover td.negative {
  background: #ffe7e7 !important;
  color: #943634 !important;
}

/*-------------------
      Attached
--------------------*/

/* Middle */

.ui.attached.table {
  top: 0px;
  bottom: 0px;
  border-radius: 0px;
  margin: 0em -1px;
  width: calc(100% - (-1px * 2));
  max-width: calc(100% - (-1px * 2));
  box-shadow: none;
  border: 1px solid #D4D4D5;
}

.ui.attached + .ui.attached.table:not(.top) {
  border-top: none;
}

/* Top */

.ui[class*="top attached"].table {
  bottom: 0px;
  margin-bottom: 0em;
  top: 0px;
  margin-top: 1em;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.table[class*="top attached"]:first-child {
  margin-top: 0em;
}

/* Bottom */

.ui[class*="bottom attached"].table {
  bottom: 0px;
  margin-top: 0em;
  top: 0px;
  margin-bottom: 1em;
  box-shadow: none, none;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui[class*="bottom attached"].table:last-child {
  margin-bottom: 0em;
}

/*--------------
     Striped
---------------*/

/* Table Striping */

.ui.striped.table > tr:nth-child(2n),
.ui.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 50, 0.02);
}

/* Stripes */

.ui.inverted.striped.table > tr:nth-child(2n),
.ui.inverted.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(255, 255, 255, 0.05);
}

/* Allow striped active hover */

.ui.striped.selectable.selectable.selectable.table tbody tr.active:hover {
  background: #EFEFEF !important;
  color: rgba(0, 0, 0, 0.95) !important;
}

/*--------------
   Single Line
---------------*/

.ui.table[class*="single line"],
.ui.table [class*="single line"] {
  white-space: nowrap;
}

.ui.table[class*="single line"],
.ui.table [class*="single line"] {
  white-space: nowrap;
}

/*-------------------
       Colors
--------------------*/

/* Red */

.ui.red.table {
  border-top: 0.2em solid #DB2828;
}

.ui.inverted.red.table {
  background-color: #DB2828 !important;
  color: #FFFFFF !important;
}

/* Orange */

.ui.orange.table {
  border-top: 0.2em solid #F2711C;
}

.ui.inverted.orange.table {
  background-color: #F2711C !important;
  color: #FFFFFF !important;
}

/* Yellow */

.ui.yellow.table {
  border-top: 0.2em solid #FBBD08;
}

.ui.inverted.yellow.table {
  background-color: #FBBD08 !important;
  color: #FFFFFF !important;
}

/* Olive */

.ui.olive.table {
  border-top: 0.2em solid #B5CC18;
}

.ui.inverted.olive.table {
  background-color: #B5CC18 !important;
  color: #FFFFFF !important;
}

/* Green */

.ui.green.table {
  border-top: 0.2em solid #21BA45;
}

.ui.inverted.green.table {
  background-color: #21BA45 !important;
  color: #FFFFFF !important;
}

/* Teal */

.ui.teal.table {
  border-top: 0.2em solid #00B5AD;
}

.ui.inverted.teal.table {
  background-color: #00B5AD !important;
  color: #FFFFFF !important;
}

/* Blue */

.ui.blue.table {
  border-top: 0.2em solid #2185D0;
}

.ui.inverted.blue.table {
  background-color: #2185D0 !important;
  color: #FFFFFF !important;
}

/* Violet */

.ui.violet.table {
  border-top: 0.2em solid #6435C9;
}

.ui.inverted.violet.table {
  background-color: #6435C9 !important;
  color: #FFFFFF !important;
}

/* Purple */

.ui.purple.table {
  border-top: 0.2em solid #A333C8;
}

.ui.inverted.purple.table {
  background-color: #A333C8 !important;
  color: #FFFFFF !important;
}

/* Pink */

.ui.pink.table {
  border-top: 0.2em solid #E03997;
}

.ui.inverted.pink.table {
  background-color: #E03997 !important;
  color: #FFFFFF !important;
}

/* Brown */

.ui.brown.table {
  border-top: 0.2em solid #A5673F;
}

.ui.inverted.brown.table {
  background-color: #A5673F !important;
  color: #FFFFFF !important;
}

/* Grey */

.ui.grey.table {
  border-top: 0.2em solid #767676;
}

.ui.inverted.grey.table {
  background-color: #767676 !important;
  color: #FFFFFF !important;
}

/* Black */

.ui.black.table {
  border-top: 0.2em solid #1B1C1D;
}

.ui.inverted.black.table {
  background-color: #1B1C1D !important;
  color: #FFFFFF !important;
}

/*--------------
  Column Count
---------------*/

/* Grid Based */

.ui.one.column.table td {
  width: 100%;
}

.ui.two.column.table td {
  width: 50%;
}

.ui.three.column.table td {
  width: 33.33333333%;
}

.ui.four.column.table td {
  width: 25%;
}

.ui.five.column.table td {
  width: 20%;
}

.ui.six.column.table td {
  width: 16.66666667%;
}

.ui.seven.column.table td {
  width: 14.28571429%;
}

.ui.eight.column.table td {
  width: 12.5%;
}

.ui.nine.column.table td {
  width: 11.11111111%;
}

.ui.ten.column.table td {
  width: 10%;
}

.ui.eleven.column.table td {
  width: 9.09090909%;
}

.ui.twelve.column.table td {
  width: 8.33333333%;
}

.ui.thirteen.column.table td {
  width: 7.69230769%;
}

.ui.fourteen.column.table td {
  width: 7.14285714%;
}

.ui.fifteen.column.table td {
  width: 6.66666667%;
}

.ui.sixteen.column.table td {
  width: 6.25%;
}

/* Column Width */

.ui.table th.one.wide,
.ui.table td.one.wide {
  width: 6.25%;
}

.ui.table th.two.wide,
.ui.table td.two.wide {
  width: 12.5%;
}

.ui.table th.three.wide,
.ui.table td.three.wide {
  width: 18.75%;
}

.ui.table th.four.wide,
.ui.table td.four.wide {
  width: 25%;
}

.ui.table th.five.wide,
.ui.table td.five.wide {
  width: 31.25%;
}

.ui.table th.six.wide,
.ui.table td.six.wide {
  width: 37.5%;
}

.ui.table th.seven.wide,
.ui.table td.seven.wide {
  width: 43.75%;
}

.ui.table th.eight.wide,
.ui.table td.eight.wide {
  width: 50%;
}

.ui.table th.nine.wide,
.ui.table td.nine.wide {
  width: 56.25%;
}

.ui.table th.ten.wide,
.ui.table td.ten.wide {
  width: 62.5%;
}

.ui.table th.eleven.wide,
.ui.table td.eleven.wide {
  width: 68.75%;
}

.ui.table th.twelve.wide,
.ui.table td.twelve.wide {
  width: 75%;
}

.ui.table th.thirteen.wide,
.ui.table td.thirteen.wide {
  width: 81.25%;
}

.ui.table th.fourteen.wide,
.ui.table td.fourteen.wide {
  width: 87.5%;
}

.ui.table th.fifteen.wide,
.ui.table td.fifteen.wide {
  width: 93.75%;
}

.ui.table th.sixteen.wide,
.ui.table td.sixteen.wide {
  width: 100%;
}

/*--------------
    Sortable
---------------*/

.ui.sortable.table thead th {
  cursor: pointer;
  white-space: nowrap;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
}

.ui.sortable.table thead th:first-child {
  border-left: none;
}

.ui.sortable.table thead th.sorted,
.ui.sortable.table thead th.sorted:hover {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.ui.sortable.table thead th:after {
  display: none;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  content: '';
  height: 1em;
  width: auto;
  opacity: 0.8;
  margin: 0em 0em 0em 0.5em;
  font-family: 'Icons';
}

.ui.sortable.table thead th.ascending:after {
  content: '\f0d8';
}

.ui.sortable.table thead th.descending:after {
  content: '\f0d7';
}

/* Hover */

.ui.sortable.table th.disabled:hover {
  cursor: auto;
  color: rgba(40, 40, 40, 0.3);
}

.ui.sortable.table thead th:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}

/* Sorted */

.ui.sortable.table thead th.sorted {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

.ui.sortable.table thead th.sorted:after {
  display: inline-block;
}

/* Sorted Hover */

.ui.sortable.table thead th.sorted:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
}

/* Inverted */

.ui.inverted.sortable.table thead th.sorted {
  background: rgba(255, 255, 255, 0.15) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}

.ui.inverted.sortable.table thead th:hover {
  background: rgba(255, 255, 255, 0.08) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}

.ui.inverted.sortable.table thead th {
  border-left-color: transparent;
  border-right-color: transparent;
}

/*--------------
    Inverted
---------------*/

/* Text Color */

.ui.inverted.table {
  background: #333333;
  color: rgba(255, 255, 255, 0.9);
  border: none;
}

.ui.inverted.table th {
  background-color: rgba(0, 0, 0, 0.15);
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: rgba(255, 255, 255, 0.9) !important;
}

.ui.inverted.table tr td {
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.ui.inverted.table tr.disabled td,
.ui.inverted.table tr td.disabled,
.ui.inverted.table tr.disabled:hover td,
.ui.inverted.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(225, 225, 225, 0.3);
}

/* Definition */

.ui.inverted.definition.table tfoot:not(.full-width) th:first-child,
.ui.inverted.definition.table thead:not(.full-width) th:first-child {
  background: #FFFFFF;
}

.ui.inverted.definition.table tr td:first-child {
  background: rgba(255, 255, 255, 0.02);
  color: #ffffff;
}

/*--------------
   Collapsing
---------------*/

.ui.collapsing.table {
  width: auto;
}

/*--------------
      Basic
---------------*/

.ui.basic.table {
  background: transparent;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: none;
}

.ui.basic.table thead,
.ui.basic.table tfoot {
  box-shadow: none;
}

.ui.basic.table th {
  background: transparent;
  border-left: none;
}

.ui.basic.table tbody tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.ui.basic.table td {
  background: transparent;
}

.ui.basic.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 0, 0.05) !important;
}

/* Very Basic */

.ui[class*="very basic"].table {
  border: none;
}

.ui[class*="very basic"].table:not(.sortable):not(.striped) th,
.ui[class*="very basic"].table:not(.sortable):not(.striped) td {
  padding: '';
}

.ui[class*="very basic"].table:not(.sortable):not(.striped) th:first-child,
.ui[class*="very basic"].table:not(.sortable):not(.striped) td:first-child {
  padding-left: 0em;
}

.ui[class*="very basic"].table:not(.sortable):not(.striped) th:last-child,
.ui[class*="very basic"].table:not(.sortable):not(.striped) td:last-child {
  padding-right: 0em;
}

.ui[class*="very basic"].table:not(.sortable):not(.striped) thead tr:first-child th {
  padding-top: 0em;
}

/*--------------
     Celled
---------------*/

.ui.celled.table tr th,
.ui.celled.table tr td {
  border-left: 1px solid rgba(34, 36, 38, 0.1);
}

.ui.celled.table tr th:first-child,
.ui.celled.table tr td:first-child {
  border-left: none;
}

/*--------------
     Padded
---------------*/

.ui.padded.table th {
  padding-left: 1em;
  padding-right: 1em;
}

.ui.padded.table th,
.ui.padded.table td {
  padding: 1em 1em;
}

/* Very */

.ui[class*="very padded"].table th {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.ui[class*="very padded"].table td {
  padding: 1.5em 1.5em;
}

/*--------------
     Compact
---------------*/

.ui.compact.table th {
  padding-left: 0.7em;
  padding-right: 0.7em;
}

.ui.compact.table td {
  padding: 0.5em 0.7em;
}

/* Very */

.ui[class*="very compact"].table th {
  padding-left: 0.6em;
  padding-right: 0.6em;
}

.ui[class*="very compact"].table td {
  padding: 0.4em 0.6em;
}

/*--------------
      Sizes
---------------*/

/* Small */

.ui.small.table {
  font-size: 0.9em;
}

/* Standard */

.ui.table {
  font-size: 1em;
}

/* Large */

.ui.large.table {
  font-size: 1.1em;
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Ad
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Copyright 2013 Contributors
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
         Advertisement
*******************************/

.ui.ad {
  display: block;
  overflow: hidden;
  margin: 1em 0em;
}

.ui.ad:first-child {
  margin: 0em;
}

.ui.ad:last-child {
  margin: 0em;
}

.ui.ad iframe {
  margin: 0em;
  padding: 0em;
  border: none;
  overflow: hidden;
}

/*--------------
     Common
---------------*/

/* Leaderboard */

.ui.leaderboard.ad {
  width: 728px;
  height: 90px;
}

/* Medium Rectangle */

.ui[class*="medium rectangle"].ad {
  width: 300px;
  height: 250px;
}

/* Large Rectangle */

.ui[class*="large rectangle"].ad {
  width: 336px;
  height: 280px;
}

/* Half Page */

.ui[class*="half page"].ad {
  width: 300px;
  height: 600px;
}

/*--------------
     Square
---------------*/

/* Square */

.ui.square.ad {
  width: 250px;
  height: 250px;
}

/* Small Square */

.ui[class*="small square"].ad {
  width: 200px;
  height: 200px;
}

/*--------------
    Rectangle
---------------*/

/* Small Rectangle */

.ui[class*="small rectangle"].ad {
  width: 180px;
  height: 150px;
}

/* Vertical Rectangle */

.ui[class*="vertical rectangle"].ad {
  width: 240px;
  height: 400px;
}

/*--------------
     Button
---------------*/

.ui.button.ad {
  width: 120px;
  height: 90px;
}

.ui[class*="square button"].ad {
  width: 125px;
  height: 125px;
}

.ui[class*="small button"].ad {
  width: 120px;
  height: 60px;
}

/*--------------
   Skyscrapers
---------------*/

/* Skyscraper */

.ui.skyscraper.ad {
  width: 120px;
  height: 600px;
}

/* Wide Skyscraper */

.ui[class*="wide skyscraper"].ad {
  width: 160px;
}

/*--------------
     Banners
---------------*/

/* Banner */

.ui.banner.ad {
  width: 468px;
  height: 60px;
}

/* Vertical Banner */

.ui[class*="vertical banner"].ad {
  width: 120px;
  height: 240px;
}

/* Top Banner */

.ui[class*="top banner"].ad {
  width: 930px;
  height: 180px;
}

/* Half Banner */

.ui[class*="half banner"].ad {
  width: 234px;
  height: 60px;
}

/*--------------
    Boards
---------------*/

/* Leaderboard */

.ui[class*="large leaderboard"].ad {
  width: 970px;
  height: 90px;
}

/* Billboard */

.ui.billboard.ad {
  width: 970px;
  height: 250px;
}

/*--------------
    Panorama
---------------*/

/* Panorama */

.ui.panorama.ad {
  width: 980px;
  height: 120px;
}

/*--------------
     Netboard
---------------*/

/* Netboard */

.ui.netboard.ad {
  width: 580px;
  height: 400px;
}

/*--------------
     Mobile
---------------*/

/* Large Mobile Banner */

.ui[class*="large mobile banner"].ad {
  width: 320px;
  height: 100px;
}

/* Mobile Leaderboard */

.ui[class*="mobile leaderboard"].ad {
  width: 320px;
  height: 50px;
}

/*******************************
             Types
*******************************/

/* Mobile Sizes */

.ui.mobile.ad {
  display: none;
}

@media only screen and (max-width: 767px) {
  .ui.mobile.ad {
    display: block;
  }
}

/*******************************
           Variations
*******************************/

.ui.centered.ad {
  margin-left: auto;
  margin-right: auto;
}

.ui.test.ad {
  position: relative;
  background: #545454;
}

.ui.test.ad:after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  text-align: center;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  content: 'Ad';
  color: #FFFFFF;
  font-size: 1em;
  font-weight: bold;
}

.ui.mobile.test.ad:after {
  font-size: 0.85714286em;
}

.ui.test.ad[data-text]:after {
  content: attr(data-text);
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Item
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Standard
*******************************/

/*--------------
      Card
---------------*/

.ui.cards > .card,
.ui.card {
  max-width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 290px;
  min-height: 0px;
  background: #FFFFFF;
  padding: 0em;
  border: none;
  border-radius: 0.28571429rem;
  box-shadow: 0px 1px 3px 0px #D4D4D5, 0px 0px 0px 1px #D4D4D5;
  transition: box-shadow 0.1s ease, -webkit-transform 0.1s ease;
  transition: box-shadow 0.1s ease, transform 0.1s ease;
  transition: box-shadow 0.1s ease, transform 0.1s ease, -webkit-transform 0.1s ease;
  z-index: '';
}

.ui.card {
  margin: 1em 0em;
}

.ui.cards > .card a,
.ui.card a {
  cursor: pointer;
}

.ui.card:first-child {
  margin-top: 0em;
}

.ui.card:last-child {
  margin-bottom: 0em;
}

/*--------------
      Cards
---------------*/

.ui.cards {
  display: flex;
  margin: -0.875em -0.5em;
  flex-wrap: wrap;
}

.ui.cards > .card {
  display: flex;
  margin: 0.875em 0.5em;
  float: none;
}

/* Clearing */

.ui.cards:after,
.ui.card:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

/* Consecutive Card Groups Preserve Row Spacing */

.ui.cards ~ .ui.cards {
  margin-top: 0.875em;
}

/*--------------
  Rounded Edges
---------------*/

.ui.cards > .card > :first-child,
.ui.card > :first-child {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em !important;
  border-top: none !important;
}

.ui.cards > .card > :last-child,
.ui.card > :last-child {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem !important;
}

.ui.cards > .card > :only-child,
.ui.card > :only-child {
  border-radius: 0.28571429rem !important;
}

/*--------------
     Images
---------------*/

.ui.cards > .card > .image,
.ui.card > .image {
  position: relative;
  display: block;
  flex: 0 0 auto;
  padding: 0em;
  background: rgba(0, 0, 0, 0.05);
}

.ui.cards > .card > .image > img,
.ui.card > .image > img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
}

.ui.cards > .card > .image:not(.ui) > img,
.ui.card > .image:not(.ui) > img {
  border: none;
}

/*--------------
     Content
---------------*/

.ui.cards > .card > .content,
.ui.card > .content {
  flex-grow: 1;
  border: none;
  border-top: 1px solid rgba(34, 36, 38, 0.1);
  background: none;
  margin: 0em;
  padding: 1em 1em;
  box-shadow: none;
  font-size: 1em;
  border-radius: 0em;
}

.ui.cards > .card > .content:after,
.ui.card > .content:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

.ui.cards > .card > .content > .header,
.ui.card > .content > .header {
  display: block;
  margin: '';
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  color: rgba(0, 0, 0, 0.85);
}

/* Default Header Size */

.ui.cards > .card > .content > .header:not(.ui),
.ui.card > .content > .header:not(.ui) {
  font-weight: bold;
  font-size: 1.28571429em;
  margin-top: -0.21425em;
  line-height: 1.28571429em;
}

.ui.cards > .card > .content > .meta + .description,
.ui.cards > .card > .content > .header + .description,
.ui.card > .content > .meta + .description,
.ui.card > .content > .header + .description {
  margin-top: 0.5em;
}

/*----------------
 Floated Content
-----------------*/

.ui.cards > .card [class*="left floated"],
.ui.card [class*="left floated"] {
  float: left;
}

.ui.cards > .card [class*="right floated"],
.ui.card [class*="right floated"] {
  float: right;
}

/*--------------
     Aligned
---------------*/

.ui.cards > .card [class*="left aligned"],
.ui.card [class*="left aligned"] {
  text-align: left;
}

.ui.cards > .card [class*="center aligned"],
.ui.card [class*="center aligned"] {
  text-align: center;
}

.ui.cards > .card [class*="right aligned"],
.ui.card [class*="right aligned"] {
  text-align: right;
}

/*--------------
  Content Image
---------------*/

.ui.cards > .card .content img,
.ui.card .content img {
  display: inline-block;
  vertical-align: middle;
  width: '';
}

.ui.cards > .card img.avatar,
.ui.cards > .card .avatar img,
.ui.card img.avatar,
.ui.card .avatar img {
  width: 2em;
  height: 2em;
  border-radius: 500rem;
}

/*--------------
   Description
---------------*/

.ui.cards > .card > .content > .description,
.ui.card > .content > .description {
  clear: both;
  color: rgba(0, 0, 0, 0.68);
}

/*--------------
    Paragraph
---------------*/

.ui.cards > .card > .content p,
.ui.card > .content p {
  margin: 0em 0em 0.5em;
}

.ui.cards > .card > .content p:last-child,
.ui.card > .content p:last-child {
  margin-bottom: 0em;
}

/*--------------
      Meta
---------------*/

.ui.cards > .card .meta,
.ui.card .meta {
  font-size: 1em;
  color: rgba(0, 0, 0, 0.4);
}

.ui.cards > .card .meta *,
.ui.card .meta * {
  margin-right: 0.3em;
}

.ui.cards > .card .meta :last-child,
.ui.card .meta :last-child {
  margin-right: 0em;
}

.ui.cards > .card .meta [class*="right floated"],
.ui.card .meta [class*="right floated"] {
  margin-right: 0em;
  margin-left: 0.3em;
}

/*--------------
      Links
---------------*/

/* Generic */

.ui.cards > .card > .content a:not(.ui),
.ui.card > .content a:not(.ui) {
  color: '';
  transition: color 0.1s ease;
}

.ui.cards > .card > .content a:not(.ui):hover,
.ui.card > .content a:not(.ui):hover {
  color: '';
}

/* Header */

.ui.cards > .card > .content > a.header,
.ui.card > .content > a.header {
  color: rgba(0, 0, 0, 0.85);
}

.ui.cards > .card > .content > a.header:hover,
.ui.card > .content > a.header:hover {
  color: #1e70bf;
}

/* Meta */

.ui.cards > .card .meta > a:not(.ui),
.ui.card .meta > a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}

.ui.cards > .card .meta > a:not(.ui):hover,
.ui.card .meta > a:not(.ui):hover {
  color: rgba(0, 0, 0, 0.87);
}

/*--------------
     Buttons
---------------*/

.ui.cards > .card > .buttons,
.ui.card > .buttons,
.ui.cards > .card > .button,
.ui.card > .button {
  margin: 0px -1px;
  width: calc(100% +  2px );
}

/*--------------
      Dimmer
---------------*/

.ui.cards > .card .dimmer,
.ui.card .dimmer {
  background-color: '';
  z-index: 10;
}

/*--------------
     Labels
---------------*/

/*-----Star----- */

/* Icon */

.ui.cards > .card > .content .star.icon,
.ui.card > .content .star.icon {
  cursor: pointer;
  opacity: 0.75;
  transition: color 0.1s ease;
}

.ui.cards > .card > .content .star.icon:hover,
.ui.card > .content .star.icon:hover {
  opacity: 1;
  color: #FFB70A;
}

.ui.cards > .card > .content .active.star.icon,
.ui.card > .content .active.star.icon {
  color: #FFE623;
}

/*-----Like----- */

/* Icon */

.ui.cards > .card > .content .like.icon,
.ui.card > .content .like.icon {
  cursor: pointer;
  opacity: 0.75;
  transition: color 0.1s ease;
}

.ui.cards > .card > .content .like.icon:hover,
.ui.card > .content .like.icon:hover {
  opacity: 1;
  color: #FF2733;
}

.ui.cards > .card > .content .active.like.icon,
.ui.card > .content .active.like.icon {
  color: #FF2733;
}

/*----------------
  Extra Content
-----------------*/

.ui.cards > .card > .extra,
.ui.card > .extra {
  max-width: 100%;
  min-height: 0em !important;
  flex-grow: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
  position: static;
  background: none;
  width: auto;
  margin: 0em 0em;
  padding: 0.75em 1em;
  top: 0em;
  left: 0em;
  color: rgba(0, 0, 0, 0.4);
  box-shadow: none;
  transition: color 0.1s ease;
}

.ui.cards > .card > .extra a:not(.ui),
.ui.card > .extra a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}

.ui.cards > .card > .extra a:not(.ui):hover,
.ui.card > .extra a:not(.ui):hover {
  color: #1e70bf;
}

/*******************************
           Variations
*******************************/

/*-------------------
       Raised
--------------------*/

.ui.raised.cards > .card,
.ui.raised.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
}

.ui.raised.cards a.card:hover,
.ui.link.cards .raised.card:hover,
a.ui.raised.card:hover,
.ui.link.raised.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.15), 0px 2px 10px 0px rgba(34, 36, 38, 0.25);
}

.ui.raised.cards > .card,
.ui.raised.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
}

/*-------------------
       Centered
--------------------*/

.ui.centered.cards {
  justify-content: center;
}

.ui.centered.card {
  margin-left: auto;
  margin-right: auto;
}

/*-------------------
        Fluid
--------------------*/

.ui.fluid.card {
  width: 100%;
  max-width: 9999px;
}

/*-------------------
        Link
--------------------*/

.ui.cards a.card,
.ui.link.cards .card,
a.ui.card,
.ui.link.card {
  -webkit-transform: none;
  transform: none;
}

.ui.cards a.card:hover,
.ui.link.cards .card:hover,
a.ui.card:hover,
.ui.link.card:hover {
  cursor: pointer;
  z-index: 5;
  background: #FFFFFF;
  border: none;
  box-shadow: 0px 1px 3px 0px #BCBDBD, 0px 0px 0px 1px #D4D4D5;
  -webkit-transform: translateY(-3px);
  transform: translateY(-3px);
}

/*-------------------
       Colors
--------------------*/

/* Red */

.ui.red.cards > .card,
.ui.cards > .red.card,
.ui.red.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #DB2828, 0px 1px 3px 0px #D4D4D5;
}

.ui.red.cards > .card:hover,
.ui.cards > .red.card:hover,
.ui.red.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #d01919, 0px 1px 3px 0px #BCBDBD;
}

/* Orange */

.ui.orange.cards > .card,
.ui.cards > .orange.card,
.ui.orange.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #F2711C, 0px 1px 3px 0px #D4D4D5;
}

.ui.orange.cards > .card:hover,
.ui.cards > .orange.card:hover,
.ui.orange.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #f26202, 0px 1px 3px 0px #BCBDBD;
}

/* Yellow */

.ui.yellow.cards > .card,
.ui.cards > .yellow.card,
.ui.yellow.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #FBBD08, 0px 1px 3px 0px #D4D4D5;
}

.ui.yellow.cards > .card:hover,
.ui.cards > .yellow.card:hover,
.ui.yellow.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #eaae00, 0px 1px 3px 0px #BCBDBD;
}

/* Olive */

.ui.olive.cards > .card,
.ui.cards > .olive.card,
.ui.olive.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #B5CC18, 0px 1px 3px 0px #D4D4D5;
}

.ui.olive.cards > .card:hover,
.ui.cards > .olive.card:hover,
.ui.olive.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #a7bd0d, 0px 1px 3px 0px #BCBDBD;
}

/* Green */

.ui.green.cards > .card,
.ui.cards > .green.card,
.ui.green.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #21BA45, 0px 1px 3px 0px #D4D4D5;
}

.ui.green.cards > .card:hover,
.ui.cards > .green.card:hover,
.ui.green.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #16ab39, 0px 1px 3px 0px #BCBDBD;
}

/* Teal */

.ui.teal.cards > .card,
.ui.cards > .teal.card,
.ui.teal.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #00B5AD, 0px 1px 3px 0px #D4D4D5;
}

.ui.teal.cards > .card:hover,
.ui.cards > .teal.card:hover,
.ui.teal.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #009c95, 0px 1px 3px 0px #BCBDBD;
}

/* Blue */

.ui.blue.cards > .card,
.ui.cards > .blue.card,
.ui.blue.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #2185D0, 0px 1px 3px 0px #D4D4D5;
}

.ui.blue.cards > .card:hover,
.ui.cards > .blue.card:hover,
.ui.blue.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1678c2, 0px 1px 3px 0px #BCBDBD;
}

/* Violet */

.ui.violet.cards > .card,
.ui.cards > .violet.card,
.ui.violet.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #6435C9, 0px 1px 3px 0px #D4D4D5;
}

.ui.violet.cards > .card:hover,
.ui.cards > .violet.card:hover,
.ui.violet.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #5829bb, 0px 1px 3px 0px #BCBDBD;
}

/* Purple */

.ui.purple.cards > .card,
.ui.cards > .purple.card,
.ui.purple.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A333C8, 0px 1px 3px 0px #D4D4D5;
}

.ui.purple.cards > .card:hover,
.ui.cards > .purple.card:hover,
.ui.purple.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #9627ba, 0px 1px 3px 0px #BCBDBD;
}

/* Pink */

.ui.pink.cards > .card,
.ui.cards > .pink.card,
.ui.pink.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #E03997, 0px 1px 3px 0px #D4D4D5;
}

.ui.pink.cards > .card:hover,
.ui.cards > .pink.card:hover,
.ui.pink.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #e61a8d, 0px 1px 3px 0px #BCBDBD;
}

/* Brown */

.ui.brown.cards > .card,
.ui.cards > .brown.card,
.ui.brown.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A5673F, 0px 1px 3px 0px #D4D4D5;
}

.ui.brown.cards > .card:hover,
.ui.cards > .brown.card:hover,
.ui.brown.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #975b33, 0px 1px 3px 0px #BCBDBD;
}

/* Grey */

.ui.grey.cards > .card,
.ui.cards > .grey.card,
.ui.grey.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #767676, 0px 1px 3px 0px #D4D4D5;
}

.ui.grey.cards > .card:hover,
.ui.cards > .grey.card:hover,
.ui.grey.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #838383, 0px 1px 3px 0px #BCBDBD;
}

/* Black */

.ui.black.cards > .card,
.ui.cards > .black.card,
.ui.black.card {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1B1C1D, 0px 1px 3px 0px #D4D4D5;
}

.ui.black.cards > .card:hover,
.ui.cards > .black.card:hover,
.ui.black.card:hover {
  box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #27292a, 0px 1px 3px 0px #BCBDBD;
}

/*--------------
   Card Count
---------------*/

.ui.one.cards {
  margin-left: 0em;
  margin-right: 0em;
}

.ui.one.cards > .card {
  width: 100%;
}

.ui.two.cards {
  margin-left: -1em;
  margin-right: -1em;
}

.ui.two.cards > .card {
  width: calc( 50%  -  2em );
  margin-left: 1em;
  margin-right: 1em;
}

.ui.three.cards {
  margin-left: -1em;
  margin-right: -1em;
}

.ui.three.cards > .card {
  width: calc( 33.33333333%  -  2em );
  margin-left: 1em;
  margin-right: 1em;
}

.ui.four.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}

.ui.four.cards > .card {
  width: calc( 25%  -  1.5em );
  margin-left: 0.75em;
  margin-right: 0.75em;
}

.ui.five.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}

.ui.five.cards > .card {
  width: calc( 20%  -  1.5em );
  margin-left: 0.75em;
  margin-right: 0.75em;
}

.ui.six.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}

.ui.six.cards > .card {
  width: calc( 16.66666667%  -  1.5em );
  margin-left: 0.75em;
  margin-right: 0.75em;
}

.ui.seven.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

.ui.seven.cards > .card {
  width: calc( 14.28571429%  -  1em );
  margin-left: 0.5em;
  margin-right: 0.5em;
}

.ui.eight.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

.ui.eight.cards > .card {
  width: calc( 12.5%  -  1em );
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 11px;
}

.ui.nine.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

.ui.nine.cards > .card {
  width: calc( 11.11111111%  -  1em );
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 10px;
}

.ui.ten.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}

.ui.ten.cards > .card {
  width: calc( 10%  -  1em );
  margin-left: 0.5em;
  margin-right: 0.5em;
}

/*-------------------
      Doubling
--------------------*/

/* Mobile Only */

@media only screen and (max-width: 767px) {
  .ui.two.doubling.cards {
    margin-left: 0em;
    margin-right: 0em;
  }

  .ui.two.doubling.cards > .card {
    width: 100%;
    margin-left: 0em;
    margin-right: 0em;
  }

  .ui.three.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.three.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.four.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.four.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.five.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.five.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.six.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.six.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.seven.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.seven.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.eight.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.eight.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.nine.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.nine.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.ten.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.ten.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }
}

/* Tablet Only */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.two.doubling.cards {
    margin-left: 0em;
    margin-right: 0em;
  }

  .ui.two.doubling.cards > .card {
    width: 100%;
    margin-left: 0em;
    margin-right: 0em;
  }

  .ui.three.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.three.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.four.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.four.doubling.cards > .card {
    width: calc( 50%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.five.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.five.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.six.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.six.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.eight.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }

  .ui.eight.doubling.cards > .card {
    width: calc( 33.33333333%  -  2em );
    margin-left: 1em;
    margin-right: 1em;
  }

  .ui.eight.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }

  .ui.eight.doubling.cards > .card {
    width: calc( 25%  -  1.5em );
    margin-left: 0.75em;
    margin-right: 0.75em;
  }

  .ui.nine.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }

  .ui.nine.doubling.cards > .card {
    width: calc( 25%  -  1.5em );
    margin-left: 0.75em;
    margin-right: 0.75em;
  }

  .ui.ten.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }

  .ui.ten.doubling.cards > .card {
    width: calc( 20%  -  1.5em );
    margin-left: 0.75em;
    margin-right: 0.75em;
  }
}

/*-------------------
      Stackable
--------------------*/

@media only screen and (max-width: 767px) {
  .ui.stackable.cards {
    display: block !important;
  }

  .ui.stackable.cards .card:first-child {
    margin-top: 0em !important;
  }

  .ui.stackable.cards > .card {
    display: block !important;
    height: auto !important;
    margin: 1em 1em;
    padding: 0 !important;
    width: calc( 100%  -  2em ) !important;
  }
}

/*--------------
      Size
---------------*/

.ui.cards > .card {
  font-size: 1em;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Comment
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Standard
*******************************/

/*--------------
    Comments
---------------*/

.ui.comments {
  margin: 1.5em 0em;
  max-width: 650px;
}

.ui.comments:first-child {
  margin-top: 0em;
}

.ui.comments:last-child {
  margin-bottom: 0em;
}

/*--------------
     Comment
---------------*/

.ui.comments .comment {
  position: relative;
  background: none;
  margin: 0.5em 0em 0em;
  padding: 0.5em 0em 0em;
  border: none;
  border-top: none;
  line-height: 1.2;
}

.ui.comments .comment:first-child {
  margin-top: 0em;
  padding-top: 0em;
}

/*--------------------
    Nested Comments
---------------------*/

.ui.comments .comment .comments {
  margin: 0em 0em 0.5em 0.5em;
  padding: 1em 0em 1em 1em;
}

.ui.comments .comment .comments:before {
  position: absolute;
  top: 0px;
  left: 0px;
}

.ui.comments .comment .comments .comment {
  border: none;
  border-top: none;
  background: none;
}

/*--------------
     Avatar
---------------*/

.ui.comments .comment .avatar {
  display: block;
  width: 2.5em;
  height: auto;
  float: left;
  margin: 0.2em 0em 0em;
}

.ui.comments .comment img.avatar,
.ui.comments .comment .avatar img {
  display: block;
  margin: 0em auto;
  width: 100%;
  height: 100%;
  border-radius: 0.25rem;
}

/*--------------
     Content
---------------*/

.ui.comments .comment > .content {
  display: block;
}

/* If there is an avatar move content over */

.ui.comments .comment > .avatar ~ .content {
  margin-left: 3.5em;
}

/*--------------
     Author
---------------*/

.ui.comments .comment .author {
  font-size: 1em;
  color: rgba(0, 0, 0, 0.87);
  font-weight: bold;
}

.ui.comments .comment a.author {
  cursor: pointer;
}

.ui.comments .comment a.author:hover {
  color: #1e70bf;
}

/*--------------
     Metadata
---------------*/

.ui.comments .comment .metadata {
  display: inline-block;
  margin-left: 0.5em;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.875em;
}

.ui.comments .comment .metadata > * {
  display: inline-block;
  margin: 0em 0.5em 0em 0em;
}

.ui.comments .comment .metadata > :last-child {
  margin-right: 0em;
}

/*--------------------
     Comment Text
---------------------*/

.ui.comments .comment .text {
  margin: 0.25em 0em 0.5em;
  font-size: 1em;
  word-wrap: break-word;
  color: rgba(0, 0, 0, 0.87);
  line-height: 1.3;
}

/*--------------------
     User Actions
---------------------*/

.ui.comments .comment .actions {
  font-size: 0.875em;
}

.ui.comments .comment .actions a {
  cursor: pointer;
  display: inline-block;
  margin: 0em 0.75em 0em 0em;
  color: rgba(0, 0, 0, 0.4);
}

.ui.comments .comment .actions a:last-child {
  margin-right: 0em;
}

.ui.comments .comment .actions a.active,
.ui.comments .comment .actions a:hover {
  color: rgba(0, 0, 0, 0.8);
}

/*--------------------
      Reply Form
---------------------*/

.ui.comments > .reply.form {
  margin-top: 1em;
}

.ui.comments .comment .reply.form {
  width: 100%;
  margin-top: 1em;
}

.ui.comments .reply.form textarea {
  font-size: 1em;
  height: 12em;
}

/*******************************
            State
*******************************/

.ui.collapsed.comments,
.ui.comments .collapsed.comments,
.ui.comments .collapsed.comment {
  display: none;
}

/*******************************
           Variations
*******************************/

/*--------------------
        Threaded
---------------------*/

.ui.threaded.comments .comment .comments {
  margin: -1.5em 0 -1em 1.25em;
  padding: 3em 0em 2em 2.25em;
  box-shadow: -1px 0px 0px rgba(34, 36, 38, 0.15);
}

/*--------------------
        Minimal
---------------------*/

.ui.minimal.comments .comment .actions {
  opacity: 0;
  position: absolute;
  top: 0px;
  right: 0px;
  left: auto;
  transition: opacity 0.2s ease;
  transition-delay: 0.1s;
}

.ui.minimal.comments .comment > .content:hover > .actions {
  opacity: 1;
}

/*-------------------
        Sizes
--------------------*/

.ui.mini.comments {
  font-size: 0.78571429rem;
}

.ui.tiny.comments {
  font-size: 0.85714286rem;
}

.ui.small.comments {
  font-size: 0.92857143rem;
}

.ui.comments {
  font-size: 1rem;
}

.ui.large.comments {
  font-size: 1.14285714rem;
}

.ui.big.comments {
  font-size: 1.28571429rem;
}

.ui.huge.comments {
  font-size: 1.42857143rem;
}

.ui.massive.comments {
  font-size: 1.71428571rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Feed
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
         Activity Feed
*******************************/

.ui.feed {
  margin: 1em 0em;
}

.ui.feed:first-child {
  margin-top: 0em;
}

.ui.feed:last-child {
  margin-bottom: 0em;
}

/*******************************
            Content
*******************************/

/* Event */

.ui.feed > .event {
  display: flex;
  flex-direction: row;
  width: 100%;
  padding: 0.21428571rem 0em;
  margin: 0em;
  background: none;
  border-top: none;
}

.ui.feed > .event:first-child {
  border-top: 0px;
  padding-top: 0em;
}

.ui.feed > .event:last-child {
  padding-bottom: 0em;
}

/* Event Label */

.ui.feed > .event > .label {
  display: block;
  flex: 0 0 auto;
  width: 2.5em;
  height: auto;
  align-self: stretch;
  text-align: left;
}

.ui.feed > .event > .label .icon {
  opacity: 1;
  font-size: 1.5em;
  width: 100%;
  padding: 0.25em;
  background: none;
  border: none;
  border-radius: none;
  color: rgba(0, 0, 0, 0.6);
}

.ui.feed > .event > .label img {
  width: 100%;
  height: auto;
  border-radius: 500rem;
}

.ui.feed > .event > .label + .content {
  margin: 0.5em 0em 0.35714286em 1.14285714em;
}

/*--------------
     Content
---------------*/

/* Content */

.ui.feed > .event > .content {
  display: block;
  flex: 1 1 auto;
  align-self: stretch;
  text-align: left;
  word-wrap: break-word;
}

.ui.feed > .event:last-child > .content {
  padding-bottom: 0em;
}

/* Link */

.ui.feed > .event > .content a {
  cursor: pointer;
}

/*--------------
      Date
---------------*/

.ui.feed > .event > .content .date {
  margin: -0.5rem 0em 0em;
  padding: 0em;
  font-weight: normal;
  font-size: 1em;
  font-style: normal;
  color: rgba(0, 0, 0, 0.4);
}

/*--------------
     Summary
---------------*/

.ui.feed > .event > .content .summary {
  margin: 0em;
  font-size: 1em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.87);
}

/* Summary Image */

.ui.feed > .event > .content .summary img {
  display: inline-block;
  width: auto;
  height: 10em;
  margin: -0.25em 0.25em 0em 0em;
  border-radius: 0.25em;
  vertical-align: middle;
}

/*--------------
      User
---------------*/

.ui.feed > .event > .content .user {
  display: inline-block;
  font-weight: bold;
  margin-right: 0em;
  vertical-align: baseline;
}

.ui.feed > .event > .content .user img {
  margin: -0.25em 0.25em 0em 0em;
  width: auto;
  height: 10em;
  vertical-align: middle;
}

/*--------------
   Inline Date
---------------*/

/* Date inside Summary */

.ui.feed > .event > .content .summary > .date {
  display: inline-block;
  float: none;
  font-weight: normal;
  font-size: 0.85714286em;
  font-style: normal;
  margin: 0em 0em 0em 0.5em;
  padding: 0em;
  color: rgba(0, 0, 0, 0.4);
}

/*--------------
  Extra Summary
---------------*/

.ui.feed > .event > .content .extra {
  margin: 0.5em 0em 0em;
  background: none;
  padding: 0em;
  color: rgba(0, 0, 0, 0.87);
}

/* Images */

.ui.feed > .event > .content .extra.images img {
  display: inline-block;
  margin: 0em 0.25em 0em 0em;
  width: 6em;
}

/* Text */

.ui.feed > .event > .content .extra.text {
  padding: 0em;
  border-left: none;
  font-size: 1em;
  max-width: 500px;
  line-height: 1.4285em;
}

/*--------------
      Meta
---------------*/

.ui.feed > .event > .content .meta {
  display: inline-block;
  font-size: 0.85714286em;
  margin: 0.5em 0em 0em;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0em;
  color: rgba(0, 0, 0, 0.6);
}

.ui.feed > .event > .content .meta > * {
  position: relative;
  margin-left: 0.75em;
}

.ui.feed > .event > .content .meta > *:after {
  content: '';
  color: rgba(0, 0, 0, 0.2);
  top: 0em;
  left: -1em;
  opacity: 1;
  position: absolute;
  vertical-align: top;
}

.ui.feed > .event > .content .meta .like {
  color: '';
  transition: 0.2s color ease;
}

.ui.feed > .event > .content .meta .like:hover .icon {
  color: #FF2733;
}

.ui.feed > .event > .content .meta .active.like .icon {
  color: #EF404A;
}

/* First element */

.ui.feed > .event > .content .meta > :first-child {
  margin-left: 0em;
}

.ui.feed > .event > .content .meta > :first-child::after {
  display: none;
}

/* Action */

.ui.feed > .event > .content .meta a,
.ui.feed > .event > .content .meta > .icon {
  cursor: pointer;
  opacity: 1;
  color: rgba(0, 0, 0, 0.5);
  transition: color 0.1s ease;
}

.ui.feed > .event > .content .meta a:hover,
.ui.feed > .event > .content .meta a:hover .icon,
.ui.feed > .event > .content .meta > .icon:hover {
  color: rgba(0, 0, 0, 0.95);
}

/*******************************
            Variations
*******************************/

.ui.small.feed {
  font-size: 0.92857143rem;
}

.ui.feed {
  font-size: 1rem;
}

.ui.large.feed {
  font-size: 1.14285714rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Item
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Standard
*******************************/

/*--------------
      Item
---------------*/

.ui.items > .item {
  display: flex;
  margin: 1em 0em;
  width: 100%;
  min-height: 0px;
  background: transparent;
  padding: 0em;
  border: none;
  border-radius: 0rem;
  box-shadow: none;
  transition: box-shadow 0.1s ease;
  z-index: '';
}

.ui.items > .item a {
  cursor: pointer;
}

/*--------------
      Items
---------------*/

.ui.items {
  margin: 1.5em 0em;
}

.ui.items:first-child {
  margin-top: 0em !important;
}

.ui.items:last-child {
  margin-bottom: 0em !important;
}

/*--------------
      Item
---------------*/

.ui.items > .item:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

.ui.items > .item:first-child {
  margin-top: 0em;
}

.ui.items > .item:last-child {
  margin-bottom: 0em;
}

/*--------------
     Images
---------------*/

.ui.items > .item > .image {
  position: relative;
  flex: 0 0 auto;
  display: block;
  float: none;
  margin: 0em;
  padding: 0em;
  max-height: '';
  align-self: top;
}

.ui.items > .item > .image > img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.125rem;
  border: none;
}

.ui.items > .item > .image:only-child > img {
  border-radius: 0rem;
}

/*--------------
     Content
---------------*/

.ui.items > .item > .content {
  display: block;
  flex: 1 1 auto;
  background: none;
  margin: 0em;
  padding: 0em;
  box-shadow: none;
  font-size: 1em;
  border: none;
  border-radius: 0em;
}

.ui.items > .item > .content:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

.ui.items > .item > .image + .content {
  min-width: 0;
  width: auto;
  display: block;
  margin-left: 0em;
  align-self: top;
  padding-left: 1.5em;
}

.ui.items > .item > .content > .header {
  display: inline-block;
  margin: -0.21425em 0em 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.85);
}

/* Default Header Size */

.ui.items > .item > .content > .header:not(.ui) {
  font-size: 1.28571429em;
}

/*--------------
     Floated
---------------*/

.ui.items > .item [class*="left floated"] {
  float: left;
}

.ui.items > .item [class*="right floated"] {
  float: right;
}

/*--------------
  Content Image
---------------*/

.ui.items > .item .content img {
  align-self: middle;
  width: '';
}

.ui.items > .item img.avatar,
.ui.items > .item .avatar img {
  width: '';
  height: '';
  border-radius: 500rem;
}

/*--------------
   Description
---------------*/

.ui.items > .item > .content > .description {
  margin-top: 0.6em;
  max-width: auto;
  font-size: 1em;
  line-height: 1.4285em;
  color: rgba(0, 0, 0, 0.87);
}

/*--------------
    Paragraph
---------------*/

.ui.items > .item > .content p {
  margin: 0em 0em 0.5em;
}

.ui.items > .item > .content p:last-child {
  margin-bottom: 0em;
}

/*--------------
      Meta
---------------*/

.ui.items > .item .meta {
  margin: 0.5em 0em 0.5em;
  font-size: 1em;
  line-height: 1em;
  color: rgba(0, 0, 0, 0.6);
}

.ui.items > .item .meta * {
  margin-right: 0.3em;
}

.ui.items > .item .meta :last-child {
  margin-right: 0em;
}

.ui.items > .item .meta [class*="right floated"] {
  margin-right: 0em;
  margin-left: 0.3em;
}

/*--------------
      Links
---------------*/

/* Generic */

.ui.items > .item > .content a:not(.ui) {
  color: '';
  transition: color 0.1s ease;
}

.ui.items > .item > .content a:not(.ui):hover {
  color: '';
}

/* Header */

.ui.items > .item > .content > a.header {
  color: rgba(0, 0, 0, 0.85);
}

.ui.items > .item > .content > a.header:hover {
  color: #1e70bf;
}

/* Meta */

.ui.items > .item .meta > a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}

.ui.items > .item .meta > a:not(.ui):hover {
  color: rgba(0, 0, 0, 0.87);
}

/*--------------
     Labels
---------------*/

/*-----Star----- */

/* Icon */

.ui.items > .item > .content .favorite.icon {
  cursor: pointer;
  opacity: 0.75;
  transition: color 0.1s ease;
}

.ui.items > .item > .content .favorite.icon:hover {
  opacity: 1;
  color: #FFB70A;
}

.ui.items > .item > .content .active.favorite.icon {
  color: #FFE623;
}

/*-----Like----- */

/* Icon */

.ui.items > .item > .content .like.icon {
  cursor: pointer;
  opacity: 0.75;
  transition: color 0.1s ease;
}

.ui.items > .item > .content .like.icon:hover {
  opacity: 1;
  color: #FF2733;
}

.ui.items > .item > .content .active.like.icon {
  color: #FF2733;
}

/*----------------
  Extra Content
-----------------*/

.ui.items > .item .extra {
  display: block;
  position: relative;
  background: none;
  margin: 0.5rem 0em 0em;
  width: 100%;
  padding: 0em 0em 0em;
  top: 0em;
  left: 0em;
  color: rgba(0, 0, 0, 0.4);
  box-shadow: none;
  transition: color 0.1s ease;
  border-top: none;
}

.ui.items > .item .extra > * {
  margin: 0.25rem 0.5rem 0.25rem 0em;
}

.ui.items > .item .extra > [class*="right floated"] {
  margin: 0.25rem 0em 0.25rem 0.5rem;
}

.ui.items > .item .extra:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

/*******************************
          Responsive
*******************************/

/* Default Image Width */

.ui.items > .item > .image:not(.ui) {
  width: 175px;
}

/* Tablet Only */

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ui.items > .item {
    margin: 1em 0em;
  }

  .ui.items > .item > .image:not(.ui) {
    width: 150px;
  }

  .ui.items > .item > .image + .content {
    display: block;
    padding: 0em 0em 0em 1em;
  }
}

/* Mobile Only */

@media only screen and (max-width: 767px) {
  .ui.items:not(.unstackable) > .item {
    flex-direction: column;
    margin: 2em 0em;
  }

  .ui.items:not(.unstackable) > .item > .image {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  .ui.items:not(.unstackable) > .item > .image,
  .ui.items:not(.unstackable) > .item > .image > img {
    max-width: 100% !important;
    width: auto !important;
    max-height: 250px !important;
  }

  .ui.items:not(.unstackable) > .item > .image + .content {
    display: block;
    padding: 1.5em 0em 0em;
  }
}

/*******************************
           Variations
*******************************/

/*-------------------
       Aligned
--------------------*/

.ui.items > .item > .image + [class*="top aligned"].content {
  align-self: flex-start;
}

.ui.items > .item > .image + [class*="middle aligned"].content {
  align-self: center;
}

.ui.items > .item > .image + [class*="bottom aligned"].content {
  align-self: flex-end;
}

/*--------------
     Relaxed
---------------*/

.ui.relaxed.items > .item {
  margin: 1.5em 0em;
}

.ui[class*="very relaxed"].items > .item {
  margin: 2em 0em;
}

/*-------------------
      Divided
--------------------*/

.ui.divided.items > .item {
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  margin: 0em;
  padding: 1em 0em;
}

.ui.divided.items > .item:first-child {
  border-top: none;
  margin-top: 0em !important;
  padding-top: 0em !important;
}

.ui.divided.items > .item:last-child {
  margin-bottom: 0em !important;
  padding-bottom: 0em !important;
}

/* Relaxed Divided */

.ui.relaxed.divided.items > .item {
  margin: 0em;
  padding: 1.5em 0em;
}

.ui[class*="very relaxed"].divided.items > .item {
  margin: 0em;
  padding: 2em 0em;
}

/*-------------------
        Link
--------------------*/

.ui.items a.item:hover,
.ui.link.items > .item:hover {
  cursor: pointer;
}

.ui.items a.item:hover .content .header,
.ui.link.items > .item:hover .content .header {
  color: #1e70bf;
}

/*--------------
      Size
---------------*/

.ui.items > .item {
  font-size: 1em;
}

/*---------------
   Unstackable
----------------*/

@media only screen and (max-width: 767px) {
  .ui.unstackable.items > .item > .image,
  .ui.unstackable.items > .item > .image > img {
    width: 125px !important;
  }
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Statistic
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           Statistic
*******************************/

/* Standalone */

.ui.statistic {
  display: inline-flex;
  flex-direction: column;
  margin: 1em 0em;
  max-width: auto;
}

.ui.statistic + .ui.statistic {
  margin: 0em 0em 0em 1.5em;
}

.ui.statistic:first-child {
  margin-top: 0em;
}

.ui.statistic:last-child {
  margin-bottom: 0em;
}

/*******************************
            Group
*******************************/

/* Grouped */

.ui.statistics {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.ui.statistics > .statistic {
  display: inline-flex;
  flex: 0 1 auto;
  flex-direction: column;
  margin: 0em 1.5em 1em;
  max-width: auto;
}

.ui.statistics {
  display: flex;
  margin: 1em -1.5em -1em;
}

/* Clearing */

.ui.statistics:after {
  display: block;
  content: ' ';
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}

.ui.statistics:first-child {
  margin-top: 0em;
}

/*******************************
            Content
*******************************/

/*--------------
      Value
---------------*/

.ui.statistics .statistic > .value,
.ui.statistic > .value {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 4rem;
  font-weight: normal;
  line-height: 1em;
  color: #1B1C1D;
  text-transform: uppercase;
  text-align: center;
}

/*--------------
     Label
---------------*/

.ui.statistics .statistic > .label,
.ui.statistic > .label {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.87);
  text-transform: uppercase;
  text-align: center;
}

/* Top Label */

.ui.statistics .statistic > .label ~ .value,
.ui.statistic > .label ~ .value {
  margin-top: 0rem;
}

/* Bottom Label */

.ui.statistics .statistic > .value ~ .label,
.ui.statistic > .value ~ .label {
  margin-top: 0rem;
}

/*******************************
             Types
*******************************/

/*--------------
   Icon Value
---------------*/

.ui.statistics .statistic > .value .icon,
.ui.statistic > .value .icon {
  opacity: 1;
  width: auto;
  margin: 0em;
}

/*--------------
   Text Value
---------------*/

.ui.statistics .statistic > .text.value,
.ui.statistic > .text.value {
  line-height: 1em;
  min-height: 2em;
  font-weight: bold;
  text-align: center;
}

.ui.statistics .statistic > .text.value + .label,
.ui.statistic > .text.value + .label {
  text-align: center;
}

/*--------------
   Image Value
---------------*/

.ui.statistics .statistic > .value img,
.ui.statistic > .value img {
  max-height: 3rem;
  vertical-align: baseline;
}

/*******************************
            Variations
*******************************/

/*--------------
      Count
---------------*/

.ui.ten.statistics {
  margin: 0em 0em -1em;
}

.ui.ten.statistics .statistic {
  min-width: 10%;
  margin: 0em 0em 1em;
}

.ui.nine.statistics {
  margin: 0em 0em -1em;
}

.ui.nine.statistics .statistic {
  min-width: 11.11111111%;
  margin: 0em 0em 1em;
}

.ui.eight.statistics {
  margin: 0em 0em -1em;
}

.ui.eight.statistics .statistic {
  min-width: 12.5%;
  margin: 0em 0em 1em;
}

.ui.seven.statistics {
  margin: 0em 0em -1em;
}

.ui.seven.statistics .statistic {
  min-width: 14.28571429%;
  margin: 0em 0em 1em;
}

.ui.six.statistics {
  margin: 0em 0em -1em;
}

.ui.six.statistics .statistic {
  min-width: 16.66666667%;
  margin: 0em 0em 1em;
}

.ui.five.statistics {
  margin: 0em 0em -1em;
}

.ui.five.statistics .statistic {
  min-width: 20%;
  margin: 0em 0em 1em;
}

.ui.four.statistics {
  margin: 0em 0em -1em;
}

.ui.four.statistics .statistic {
  min-width: 25%;
  margin: 0em 0em 1em;
}

.ui.three.statistics {
  margin: 0em 0em -1em;
}

.ui.three.statistics .statistic {
  min-width: 33.33333333%;
  margin: 0em 0em 1em;
}

.ui.two.statistics {
  margin: 0em 0em -1em;
}

.ui.two.statistics .statistic {
  min-width: 50%;
  margin: 0em 0em 1em;
}

.ui.one.statistics {
  margin: 0em 0em -1em;
}

.ui.one.statistics .statistic {
  min-width: 100%;
  margin: 0em 0em 1em;
}

/*--------------
   Horizontal
---------------*/

.ui.horizontal.statistic {
  flex-direction: row;
  align-items: center;
}

.ui.horizontal.statistics {
  flex-direction: column;
  margin: 0em;
  max-width: none;
}

.ui.horizontal.statistics .statistic {
  flex-direction: row;
  align-items: center;
  max-width: none;
  margin: 1em 0em;
}

.ui.horizontal.statistic > .text.value,
.ui.horizontal.statistics > .statistic > .text.value {
  min-height: 0em !important;
}

.ui.horizontal.statistics .statistic > .value .icon,
.ui.horizontal.statistic > .value .icon {
  width: 1.18em;
}

.ui.horizontal.statistics .statistic > .value,
.ui.horizontal.statistic > .value {
  display: inline-block;
  vertical-align: middle;
}

.ui.horizontal.statistics .statistic > .label,
.ui.horizontal.statistic > .label {
  display: inline-block;
  vertical-align: middle;
  margin: 0em 0em 0em 0.75em;
}

/*--------------
     Colors
---------------*/

.ui.red.statistics .statistic > .value,
.ui.statistics .red.statistic > .value,
.ui.red.statistic > .value {
  color: #DB2828;
}

.ui.orange.statistics .statistic > .value,
.ui.statistics .orange.statistic > .value,
.ui.orange.statistic > .value {
  color: #F2711C;
}

.ui.yellow.statistics .statistic > .value,
.ui.statistics .yellow.statistic > .value,
.ui.yellow.statistic > .value {
  color: #FBBD08;
}

.ui.olive.statistics .statistic > .value,
.ui.statistics .olive.statistic > .value,
.ui.olive.statistic > .value {
  color: #B5CC18;
}

.ui.green.statistics .statistic > .value,
.ui.statistics .green.statistic > .value,
.ui.green.statistic > .value {
  color: #21BA45;
}

.ui.teal.statistics .statistic > .value,
.ui.statistics .teal.statistic > .value,
.ui.teal.statistic > .value {
  color: #00B5AD;
}

.ui.blue.statistics .statistic > .value,
.ui.statistics .blue.statistic > .value,
.ui.blue.statistic > .value {
  color: #2185D0;
}

.ui.violet.statistics .statistic > .value,
.ui.statistics .violet.statistic > .value,
.ui.violet.statistic > .value {
  color: #6435C9;
}

.ui.purple.statistics .statistic > .value,
.ui.statistics .purple.statistic > .value,
.ui.purple.statistic > .value {
  color: #A333C8;
}

.ui.pink.statistics .statistic > .value,
.ui.statistics .pink.statistic > .value,
.ui.pink.statistic > .value {
  color: #E03997;
}

.ui.brown.statistics .statistic > .value,
.ui.statistics .brown.statistic > .value,
.ui.brown.statistic > .value {
  color: #A5673F;
}

.ui.grey.statistics .statistic > .value,
.ui.statistics .grey.statistic > .value,
.ui.grey.statistic > .value {
  color: #767676;
}

/*--------------
    Inverted
---------------*/

.ui.inverted.statistics .statistic > .value,
.ui.inverted.statistic .value {
  color: #FFFFFF;
}

.ui.inverted.statistics .statistic > .label,
.ui.inverted.statistic .label {
  color: rgba(255, 255, 255, 0.9);
}

.ui.inverted.red.statistics .statistic > .value,
.ui.statistics .inverted.red.statistic > .value,
.ui.inverted.red.statistic > .value {
  color: #FF695E;
}

.ui.inverted.orange.statistics .statistic > .value,
.ui.statistics .inverted.orange.statistic > .value,
.ui.inverted.orange.statistic > .value {
  color: #FF851B;
}

.ui.inverted.yellow.statistics .statistic > .value,
.ui.statistics .inverted.yellow.statistic > .value,
.ui.inverted.yellow.statistic > .value {
  color: #FFE21F;
}

.ui.inverted.olive.statistics .statistic > .value,
.ui.statistics .inverted.olive.statistic > .value,
.ui.inverted.olive.statistic > .value {
  color: #D9E778;
}

.ui.inverted.green.statistics .statistic > .value,
.ui.statistics .inverted.green.statistic > .value,
.ui.inverted.green.statistic > .value {
  color: #2ECC40;
}

.ui.inverted.teal.statistics .statistic > .value,
.ui.statistics .inverted.teal.statistic > .value,
.ui.inverted.teal.statistic > .value {
  color: #6DFFFF;
}

.ui.inverted.blue.statistics .statistic > .value,
.ui.statistics .inverted.blue.statistic > .value,
.ui.inverted.blue.statistic > .value {
  color: #54C8FF;
}

.ui.inverted.violet.statistics .statistic > .value,
.ui.statistics .inverted.violet.statistic > .value,
.ui.inverted.violet.statistic > .value {
  color: #A291FB;
}

.ui.inverted.purple.statistics .statistic > .value,
.ui.statistics .inverted.purple.statistic > .value,
.ui.inverted.purple.statistic > .value {
  color: #DC73FF;
}

.ui.inverted.pink.statistics .statistic > .value,
.ui.statistics .inverted.pink.statistic > .value,
.ui.inverted.pink.statistic > .value {
  color: #FF8EDF;
}

.ui.inverted.brown.statistics .statistic > .value,
.ui.statistics .inverted.brown.statistic > .value,
.ui.inverted.brown.statistic > .value {
  color: #D67C1C;
}

.ui.inverted.grey.statistics .statistic > .value,
.ui.statistics .inverted.grey.statistic > .value,
.ui.inverted.grey.statistic > .value {
  color: #DCDDDE;
}

/*--------------
    Floated
---------------*/

.ui[class*="left floated"].statistic {
  float: left;
  margin: 0em 2em 1em 0em;
}

.ui[class*="right floated"].statistic {
  float: right;
  margin: 0em 0em 1em 2em;
}

.ui.floated.statistic:last-child {
  margin-bottom: 0em;
}

/*--------------
     Sizes
---------------*/

/* Mini */

.ui.mini.statistics .statistic > .value,
.ui.mini.statistic > .value {
  font-size: 1.5rem !important;
}

.ui.mini.horizontal.statistics .statistic > .value,
.ui.mini.horizontal.statistic > .value {
  font-size: 1.5rem !important;
}

.ui.mini.statistics .statistic > .text.value,
.ui.mini.statistic > .text.value {
  font-size: 1rem !important;
}

/* Tiny */

.ui.tiny.statistics .statistic > .value,
.ui.tiny.statistic > .value {
  font-size: 2rem !important;
}

.ui.tiny.horizontal.statistics .statistic > .value,
.ui.tiny.horizontal.statistic > .value {
  font-size: 2rem !important;
}

.ui.tiny.statistics .statistic > .text.value,
.ui.tiny.statistic > .text.value {
  font-size: 1rem !important;
}

/* Small */

.ui.small.statistics .statistic > .value,
.ui.small.statistic > .value {
  font-size: 3rem !important;
}

.ui.small.horizontal.statistics .statistic > .value,
.ui.small.horizontal.statistic > .value {
  font-size: 2rem !important;
}

.ui.small.statistics .statistic > .text.value,
.ui.small.statistic > .text.value {
  font-size: 1rem !important;
}

/* Medium */

.ui.statistics .statistic > .value,
.ui.statistic > .value {
  font-size: 4rem !important;
}

.ui.horizontal.statistics .statistic > .value,
.ui.horizontal.statistic > .value {
  font-size: 3rem !important;
}

.ui.statistics .statistic > .text.value,
.ui.statistic > .text.value {
  font-size: 2rem !important;
}

/* Large */

.ui.large.statistics .statistic > .value,
.ui.large.statistic > .value {
  font-size: 5rem !important;
}

.ui.large.horizontal.statistics .statistic > .value,
.ui.large.horizontal.statistic > .value {
  font-size: 4rem !important;
}

.ui.large.statistics .statistic > .text.value,
.ui.large.statistic > .text.value {
  font-size: 2.5rem !important;
}

/* Huge */

.ui.huge.statistics .statistic > .value,
.ui.huge.statistic > .value {
  font-size: 6rem !important;
}

.ui.huge.horizontal.statistics .statistic > .value,
.ui.huge.horizontal.statistic > .value {
  font-size: 5rem !important;
}

.ui.huge.statistics .statistic > .text.value,
.ui.huge.statistic > .text.value {
  font-size: 2.5rem !important;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
    User Variable Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Accordion
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Accordion
*******************************/

.ui.accordion,
.ui.accordion .accordion {
  max-width: 100%;
}

.ui.accordion .accordion {
  margin: 1em 0em 0em;
  padding: 0em;
}

/* Title */

.ui.accordion .title,
.ui.accordion .accordion .title {
  cursor: pointer;
}

/* Default Styling */

.ui.accordion .title:not(.ui) {
  padding: 0.5em 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1em;
  color: rgba(0, 0, 0, 0.87);
}

/* Content */

.ui.accordion .title ~ .content,
.ui.accordion .accordion .title ~ .content {
  display: none;
}

/* Default Styling */

.ui.accordion:not(.styled) .title ~ .content:not(.ui),
.ui.accordion:not(.styled) .accordion .title ~ .content:not(.ui) {
  margin: '';
  padding: 0.5em 0em 1em;
}

.ui.accordion:not(.styled) .title ~ .content:not(.ui):last-child {
  padding-bottom: 0em;
}

/* Arrow */

.ui.accordion .title .dropdown.icon,
.ui.accordion .accordion .title .dropdown.icon {
  display: inline-block;
  float: none;
  opacity: 1;
  width: 1.25em;
  height: 1em;
  margin: 0em 0.25rem 0em 0rem;
  padding: 0em;
  font-size: 1em;
  transition: opacity 0.1s ease, -webkit-transform 0.1s ease;
  transition: transform 0.1s ease, opacity 0.1s ease;
  transition: transform 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease;
  vertical-align: baseline;
  -webkit-transform: none;
  transform: none;
}

/*--------------
    Coupling
---------------*/

/* Menu */

.ui.accordion.menu .item .title {
  display: block;
  padding: 0em;
}

.ui.accordion.menu .item .title > .dropdown.icon {
  float: right;
  margin: 0.21425em 0em 0em 1em;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/* Header */

.ui.accordion .ui.header .dropdown.icon {
  font-size: 1em;
  margin: 0em 0.25rem 0em 0rem;
}

/*******************************
            States
*******************************/

.ui.accordion .active.title .dropdown.icon,
.ui.accordion .accordion .active.title .dropdown.icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.ui.accordion.menu .item .active.title > .dropdown.icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

/*******************************
            Types
*******************************/

/*--------------
     Styled
---------------*/

.ui.styled.accordion {
  width: 600px;
}

.ui.styled.accordion,
.ui.styled.accordion .accordion {
  border-radius: 0.28571429rem;
  background: #FFFFFF;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15);
}

.ui.styled.accordion .title,
.ui.styled.accordion .accordion .title {
  margin: 0em;
  padding: 0.75em 1em;
  color: rgba(0, 0, 0, 0.4);
  font-weight: bold;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  transition: background 0.1s ease, color 0.1s ease;
}

.ui.styled.accordion > .title:first-child,
.ui.styled.accordion .accordion .title:first-child {
  border-top: none;
}

/* Content */

.ui.styled.accordion .content,
.ui.styled.accordion .accordion .content {
  margin: 0em;
  padding: 0.5em 1em 1.5em;
}

.ui.styled.accordion .accordion .content {
  padding: 0em;
  padding: 0.5em 1em 1.5em;
}

/* Hover */

.ui.styled.accordion .title:hover,
.ui.styled.accordion .active.title,
.ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.87);
}

.ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.87);
}

/* Active */

.ui.styled.accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.95);
}

.ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.95);
}

/*******************************
            States
*******************************/

/*--------------
     Active
---------------*/

.ui.accordion .active.content,
.ui.accordion .accordion .active.content {
  display: block;
}

/*******************************
           Variations
*******************************/

/*--------------
     Fluid
---------------*/

.ui.fluid.accordion,
.ui.fluid.accordion .accordion {
  width: 100%;
}

/*--------------
     Inverted
---------------*/

.ui.inverted.accordion .title:not(.ui) {
  color: rgba(255, 255, 255, 0.9);
}

/*******************************
         Theme Overrides
*******************************/

@font-face {
  font-family: 'Accordion';
  src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfOIKAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zryj6HgAAAFwAAAAyGhlYWT/0IhHAAACOAAAADZoaGVhApkB5wAAAnAAAAAkaG10eAJuABIAAAKUAAAAGGxvY2EAjABWAAACrAAAAA5tYXhwAAgAFgAAArwAAAAgbmFtZfC1n04AAALcAAABPHBvc3QAAwAAAAAEGAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQASAEkAtwFuABMAADc0PwE2FzYXFh0BFAcGJwYvASY1EgaABQgHBQYGBQcIBYAG2wcGfwcBAQcECf8IBAcBAQd/BgYAAAAAAQAAAEkApQFuABMAADcRNDc2MzIfARYVFA8BBiMiJyY1AAUGBwgFgAYGgAUIBwYFWwEACAUGBoAFCAcFgAYGBQcAAAABAAAAAQAAqWYls18PPPUACwIAAAAAAM/9o+4AAAAAz/2j7gAAAAAAtwFuAAAACAACAAAAAAAAAAEAAAHg/+AAAAIAAAAAAAC3AAEAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAQAAAAC3ABIAtwAAAAAAAAAKABQAHgBCAGQAAAABAAAABgAUAAEAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype'), url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAASwAAoAAAAABGgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAS0AAAEtFpovuE9TLzIAAAIkAAAAYAAAAGAIIweQY21hcAAAAoQAAABMAAAATA984gpnYXNwAAAC0AAAAAgAAAAIAAAAEGhlYWQAAALYAAAANgAAADb/0IhHaGhlYQAAAxAAAAAkAAAAJAKZAedobXR4AAADNAAAABgAAAAYAm4AEm1heHAAAANMAAAABgAAAAYABlAAbmFtZQAAA1QAAAE8AAABPPC1n05wb3N0AAAEkAAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLa/iU+HQFHQAAAHkPHQAAAH4RHQAAAAkdAAABJBIABwEBBw0PERQZHnJhdGluZ3JhdGluZ3UwdTF1MjB1RjBEOXVGMERBAAACAYkABAAGAQEEBwoNVp38lA78lA78lA77lA773Z33bxWLkI2Qj44I9xT3FAWOj5CNkIuQi4+JjoePiI2Gi4YIi/uUBYuGiYeHiIiHh4mGi4aLho2Ijwj7FPcUBYeOiY+LkAgO+92L5hWL95QFi5CNkI6Oj4+PjZCLkIuQiY6HCPcU+xQFj4iNhouGi4aJh4eICPsU+xQFiIeGiYaLhouHjYePiI6Jj4uQCA74lBT4lBWLDAoAAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAADfYOJZfDzz1AAsCAAAAAADP/aPuAAAAAM/9o+4AAAAAALcBbgAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAAAtwABAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAEAAAAAtwASALcAAAAAUAAABgAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('woff');
  font-weight: normal;
  font-style: normal;
}

/* Dropdown Icon */

.ui.accordion .title .dropdown.icon,
.ui.accordion .accordion .title .dropdown.icon {
  font-family: Accordion;
  line-height: 1;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-weight: normal;
  font-style: normal;
  text-align: center;
}

.ui.accordion .title .dropdown.icon:before,
.ui.accordion .accordion .title .dropdown.icon:before {
  content: '\f0da' ;
}

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Checkbox
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           Checkbox
*******************************/

/*--------------
    Content
---------------*/

.ui.checkbox {
  position: relative;
  display: inline-block;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  outline: none;
  vertical-align: baseline;
  font-style: normal;
  min-height: 17px;
  font-size: 1rem;
  line-height: 17px;
  min-width: 17px;
}

/* HTML Checkbox */

.ui.checkbox input[type="checkbox"],
.ui.checkbox input[type="radio"] {
  cursor: pointer;
  position: absolute;
  top: 0px;
  left: 0px;
  opacity: 0 !important;
  outline: none;
  z-index: 3;
  width: 17px;
  height: 17px;
}

/*--------------
      Box
---------------*/

.ui.checkbox .box,
.ui.checkbox label {
  cursor: auto;
  position: relative;
  display: block;
  padding-left: 1.85714em;
  outline: none;
  font-size: 1em;
}

.ui.checkbox .box:before,
.ui.checkbox label:before {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 17px;
  height: 17px;
  content: '';
  background: #FFFFFF;
  border-radius: 0.21428571rem;
  transition: border 0.1s ease, opacity 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease;
  transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease;
  transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease;
  border: 1px solid #D4D4D5;
}

/*--------------
    Checkmark
---------------*/

.ui.checkbox .box:after,
.ui.checkbox label:after {
  position: absolute;
  font-size: 14px;
  top: 0px;
  left: 0px;
  width: 17px;
  height: 17px;
  text-align: center;
  opacity: 0;
  color: rgba(0, 0, 0, 0.87);
  transition: border 0.1s ease, opacity 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease;
  transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease;
  transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease;
}

/*--------------
      Label
---------------*/

/* Inside */

.ui.checkbox label,
.ui.checkbox + label {
  color: rgba(0, 0, 0, 0.87);
  transition: color 0.1s ease;
}

/* Outside */

.ui.checkbox + label {
  vertical-align: middle;
}

/*******************************
           States
*******************************/

/*--------------
      Hover
---------------*/

.ui.checkbox .box:hover::before,
.ui.checkbox label:hover::before {
  background: #FFFFFF;
  border-color: rgba(34, 36, 38, 0.35);
}

.ui.checkbox label:hover,
.ui.checkbox + label:hover {
  color: rgba(0, 0, 0, 0.8);
}

/*--------------
      Down
---------------*/

.ui.checkbox .box:active::before,
.ui.checkbox label:active::before {
  background: #F9FAFB;
  border-color: rgba(34, 36, 38, 0.35);
}

.ui.checkbox .box:active::after,
.ui.checkbox label:active::after {
  color: rgba(0, 0, 0, 0.95);
}

.ui.checkbox input:active ~ label {
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Focus
---------------*/

.ui.checkbox input:focus ~ .box:before,
.ui.checkbox input:focus ~ label:before {
  background: #FFFFFF;
  border-color: #96C8DA;
}

.ui.checkbox input:focus ~ .box:after,
.ui.checkbox input:focus ~ label:after {
  color: rgba(0, 0, 0, 0.95);
}

.ui.checkbox input:focus ~ label {
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Active
---------------*/

.ui.checkbox input:checked ~ .box:before,
.ui.checkbox input:checked ~ label:before {
  background: #FFFFFF;
  border-color: rgba(34, 36, 38, 0.35);
}

.ui.checkbox input:checked ~ .box:after,
.ui.checkbox input:checked ~ label:after {
  opacity: 1;
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
  Indeterminate
---------------*/

.ui.checkbox input:not([type=radio]):indeterminate ~ .box:before,
.ui.checkbox input:not([type=radio]):indeterminate ~ label:before {
  background: #FFFFFF;
  border-color: rgba(34, 36, 38, 0.35);
}

.ui.checkbox input:not([type=radio]):indeterminate ~ .box:after,
.ui.checkbox input:not([type=radio]):indeterminate ~ label:after {
  opacity: 1;
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
  Active Focus
---------------*/

.ui.checkbox input:not([type=radio]):indeterminate:focus ~ .box:before,
.ui.checkbox input:not([type=radio]):indeterminate:focus ~ label:before,
.ui.checkbox input:checked:focus ~ .box:before,
.ui.checkbox input:checked:focus ~ label:before {
  background: #FFFFFF;
  border-color: #96C8DA;
}

.ui.checkbox input:not([type=radio]):indeterminate:focus ~ .box:after,
.ui.checkbox input:not([type=radio]):indeterminate:focus ~ label:after,
.ui.checkbox input:checked:focus ~ .box:after,
.ui.checkbox input:checked:focus ~ label:after {
  color: rgba(0, 0, 0, 0.95);
}

/*--------------
    Read-Only
---------------*/

.ui.read-only.checkbox,
.ui.read-only.checkbox label {
  cursor: default;
}

/*--------------
     Disabled
---------------*/

.ui.disabled.checkbox .box:after,
.ui.disabled.checkbox label,
.ui.checkbox input[disabled] ~ .box:after,
.ui.checkbox input[disabled] ~ label {
  cursor: default !important;
  opacity: 0.5;
  color: #000000;
}

/*--------------
     Hidden
---------------*/

/* Initialized checkbox moves input below element
 to prevent manually triggering */

.ui.checkbox input.hidden {
  z-index: -1;
}

/* Selectable Label */

.ui.checkbox input.hidden + label {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

/*******************************
             Types
*******************************/

/*--------------
     Radio
---------------*/

.ui.radio.checkbox {
  min-height: 15px;
}

.ui.radio.checkbox .box,
.ui.radio.checkbox label {
  padding-left: 1.85714em;
}

/* Box */

.ui.radio.checkbox .box:before,
.ui.radio.checkbox label:before {
  content: '';
  -webkit-transform: none;
  transform: none;
  width: 15px;
  height: 15px;
  border-radius: 500rem;
  top: 1px;
  left: 0px;
}

/* Bullet */

.ui.radio.checkbox .box:after,
.ui.radio.checkbox label:after {
  border: none;
  content: '' !important;
  width: 15px;
  height: 15px;
  line-height: 15px;
}

/* Radio Checkbox */

.ui.radio.checkbox .box:after,
.ui.radio.checkbox label:after {
  top: 1px;
  left: 0px;
  width: 15px;
  height: 15px;
  border-radius: 500rem;
  -webkit-transform: scale(0.46666667);
  transform: scale(0.46666667);
  background-color: rgba(0, 0, 0, 0.87);
}

/* Focus */

.ui.radio.checkbox input:focus ~ .box:before,
.ui.radio.checkbox input:focus ~ label:before {
  background-color: #FFFFFF;
}

.ui.radio.checkbox input:focus ~ .box:after,
.ui.radio.checkbox input:focus ~ label:after {
  background-color: rgba(0, 0, 0, 0.95);
}

/* Indeterminate */

.ui.radio.checkbox input:indeterminate ~ .box:after,
.ui.radio.checkbox input:indeterminate ~ label:after {
  opacity: 0;
}

/* Active */

.ui.radio.checkbox input:checked ~ .box:before,
.ui.radio.checkbox input:checked ~ label:before {
  background-color: #FFFFFF;
}

.ui.radio.checkbox input:checked ~ .box:after,
.ui.radio.checkbox input:checked ~ label:after {
  background-color: rgba(0, 0, 0, 0.95);
}

/* Active Focus */

.ui.radio.checkbox input:focus:checked ~ .box:before,
.ui.radio.checkbox input:focus:checked ~ label:before {
  background-color: #FFFFFF;
}

.ui.radio.checkbox input:focus:checked ~ .box:after,
.ui.radio.checkbox input:focus:checked ~ label:after {
  background-color: rgba(0, 0, 0, 0.95);
}

/*--------------
     Slider
---------------*/

.ui.slider.checkbox {
  min-height: 1.25rem;
}

/* Input */

.ui.slider.checkbox input {
  width: 3.5rem;
  height: 1.25rem;
}

/* Label */

.ui.slider.checkbox .box,
.ui.slider.checkbox label {
  padding-left: 4.5rem;
  line-height: 1rem;
  color: rgba(0, 0, 0, 0.4);
}

/* Line */

.ui.slider.checkbox .box:before,
.ui.slider.checkbox label:before {
  display: block;
  position: absolute;
  content: '';
  border: none !important;
  left: 0em;
  z-index: 1;
  top: 0.4rem;
  background-color: rgba(0, 0, 0, 0.05);
  width: 3.5rem;
  height: 0.21428571rem;
  -webkit-transform: none;
  transform: none;
  border-radius: 500rem;
  transition: background 0.3s ease;
}

/* Handle */

.ui.slider.checkbox .box:after,
.ui.slider.checkbox label:after {
  background: #FFFFFF linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  position: absolute;
  content: '' !important;
  opacity: 1;
  z-index: 2;
  border: none;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
  width: 1.5rem;
  height: 1.5rem;
  top: -0.25rem;
  left: 0em;
  -webkit-transform: none;
  transform: none;
  border-radius: 500rem;
  transition: left 0.3s ease;
}

/* Focus */

.ui.slider.checkbox input:focus ~ .box:before,
.ui.slider.checkbox input:focus ~ label:before {
  background-color: rgba(0, 0, 0, 0.15);
  border: none;
}

/* Hover */

.ui.slider.checkbox .box:hover,
.ui.slider.checkbox label:hover {
  color: rgba(0, 0, 0, 0.8);
}

.ui.slider.checkbox .box:hover::before,
.ui.slider.checkbox label:hover::before {
  background: rgba(0, 0, 0, 0.15);
}

/* Active */

.ui.slider.checkbox input:checked ~ .box,
.ui.slider.checkbox input:checked ~ label {
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.slider.checkbox input:checked ~ .box:before,
.ui.slider.checkbox input:checked ~ label:before {
  background-color: #545454 !important;
}

.ui.slider.checkbox input:checked ~ .box:after,
.ui.slider.checkbox input:checked ~ label:after {
  left: 2rem;
}

/* Active Focus */

.ui.slider.checkbox input:focus:checked ~ .box,
.ui.slider.checkbox input:focus:checked ~ label {
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.slider.checkbox input:focus:checked ~ .box:before,
.ui.slider.checkbox input:focus:checked ~ label:before {
  background-color: #000000 !important;
}

/*--------------
     Toggle
---------------*/

.ui.toggle.checkbox {
  min-height: 1.5rem;
}

/* Input */

.ui.toggle.checkbox input {
  width: 3.5rem;
  height: 1.5rem;
}

/* Label */

.ui.toggle.checkbox .box,
.ui.toggle.checkbox label {
  min-height: 1.5rem;
  padding-left: 4.5rem;
  color: rgba(0, 0, 0, 0.87);
}

.ui.toggle.checkbox label {
  padding-top: 0.15em;
}

/* Switch */

.ui.toggle.checkbox .box:before,
.ui.toggle.checkbox label:before {
  display: block;
  position: absolute;
  content: '';
  z-index: 1;
  -webkit-transform: none;
  transform: none;
  border: none;
  top: 0rem;
  background: rgba(0, 0, 0, 0.05);
  box-shadow: none;
  width: 3.5rem;
  height: 1.5rem;
  border-radius: 500rem;
}

/* Handle */

.ui.toggle.checkbox .box:after,
.ui.toggle.checkbox label:after {
  background: #FFFFFF linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  position: absolute;
  content: '' !important;
  opacity: 1;
  z-index: 2;
  border: none;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
  width: 1.5rem;
  height: 1.5rem;
  top: 0rem;
  left: 0em;
  border-radius: 500rem;
  transition: background 0.3s ease, left 0.3s ease;
}

.ui.toggle.checkbox input ~ .box:after,
.ui.toggle.checkbox input ~ label:after {
  left: -0.05rem;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
}

/* Focus */

.ui.toggle.checkbox input:focus ~ .box:before,
.ui.toggle.checkbox input:focus ~ label:before {
  background-color: rgba(0, 0, 0, 0.15);
  border: none;
}

/* Hover */

.ui.toggle.checkbox .box:hover::before,
.ui.toggle.checkbox label:hover::before {
  background-color: rgba(0, 0, 0, 0.15);
  border: none;
}

/* Active */

.ui.toggle.checkbox input:checked ~ .box,
.ui.toggle.checkbox input:checked ~ label {
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.toggle.checkbox input:checked ~ .box:before,
.ui.toggle.checkbox input:checked ~ label:before {
  background-color: #2185D0 !important;
}

.ui.toggle.checkbox input:checked ~ .box:after,
.ui.toggle.checkbox input:checked ~ label:after {
  left: 2.15rem;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
}

/* Active Focus */

.ui.toggle.checkbox input:focus:checked ~ .box,
.ui.toggle.checkbox input:focus:checked ~ label {
  color: rgba(0, 0, 0, 0.95) !important;
}

.ui.toggle.checkbox input:focus:checked ~ .box:before,
.ui.toggle.checkbox input:focus:checked ~ label:before {
  background-color: #0d71bb !important;
}

/*******************************
            Variations
*******************************/

/*--------------
     Fitted
---------------*/

.ui.fitted.checkbox .box,
.ui.fitted.checkbox label {
  padding-left: 0em !important;
}

.ui.fitted.toggle.checkbox,
.ui.fitted.toggle.checkbox {
  width: 3.5rem;
}

.ui.fitted.slider.checkbox,
.ui.fitted.slider.checkbox {
  width: 3.5rem;
}

/*******************************
         Theme Overrides
*******************************/

@font-face {
  font-family: 'Checkbox';
  src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBD8AAAC8AAAAYGNtYXAYVtCJAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5Zn4huwUAAAF4AAABYGhlYWQGPe1ZAAAC2AAAADZoaGVhB30DyAAAAxAAAAAkaG10eBBKAEUAAAM0AAAAHGxvY2EAmgESAAADUAAAABBtYXhwAAkALwAAA2AAAAAgbmFtZSC8IugAAAOAAAABknBvc3QAAwAAAAAFFAAAACAAAwMTAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADoAgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6AL//f//AAAAAAAg6AD//f//AAH/4xgEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAEUAUQO7AvgAGgAAARQHAQYjIicBJjU0PwE2MzIfAQE2MzIfARYVA7sQ/hQQFhcQ/uMQEE4QFxcQqAF2EBcXEE4QAnMWEP4UEBABHRAXFhBOEBCoAXcQEE4QFwAAAAABAAABbgMlAkkAFAAAARUUBwYjISInJj0BNDc2MyEyFxYVAyUQEBf9SRcQEBAQFwK3FxAQAhJtFxAQEBAXbRcQEBAQFwAAAAABAAAASQMlA24ALAAAARUUBwYrARUUBwYrASInJj0BIyInJj0BNDc2OwE1NDc2OwEyFxYdATMyFxYVAyUQEBfuEBAXbhYQEO4XEBAQEBfuEBAWbhcQEO4XEBACEm0XEBDuFxAQEBAX7hAQF20XEBDuFxAQEBAX7hAQFwAAAQAAAAIAAHRSzT9fDzz1AAsEAAAAAADRsdR3AAAAANGx1HcAAAAAA7sDbgAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAADuwABAAAAAAAAAAAAAAAAAAAABwQAAAAAAAAAAAAAAAIAAAAEAABFAyUAAAMlAAAAAAAAAAoAFAAeAE4AcgCwAAEAAAAHAC0AAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAIAAAAAQAAAAAAAgAHAGkAAQAAAAAAAwAIADkAAQAAAAAABAAIAH4AAQAAAAAABQALABgAAQAAAAAABgAIAFEAAQAAAAAACgAaAJYAAwABBAkAAQAQAAgAAwABBAkAAgAOAHAAAwABBAkAAwAQAEEAAwABBAkABAAQAIYAAwABBAkABQAWACMAAwABBAkABgAQAFkAAwABBAkACgA0ALBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhWZXJzaW9uIDIuMABWAGUAcgBzAGkAbwBuACAAMgAuADBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhDaGVja2JveABDAGgAZQBjAGsAYgBvAHhSZWd1bGFyAFIAZQBnAHUAbABhAHJDaGVja2JveABDAGgAZQBjAGsAYgBvAHhGb250IGdlbmVyYXRlZCBieSBJY29Nb29uLgBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype');
}

/* Checkmark */

.ui.checkbox label:after,
.ui.checkbox .box:after {
  font-family: 'Checkbox';
}

/* Checked */

.ui.checkbox input:checked ~ .box:after,
.ui.checkbox input:checked ~ label:after {
  content: '\e800';
}

/* Indeterminate */

.ui.checkbox input:indeterminate ~ .box:after,
.ui.checkbox input:indeterminate ~ label:after {
  font-size: 12px;
  content: '\e801';
}

/*  UTF Reference
.check:before { content: '\e800'; }
.dash:before  { content: '\e801'; }
.plus:before { content: '\e802'; }
*/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Dimmer
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Dimmer
*******************************/

.dimmable:not(body) {
  position: relative;
}

.ui.dimmer {
  display: none;
  position: absolute;
  top: 0em !important;
  left: 0em !important;
  width: 100%;
  height: 100%;
  text-align: center;
  vertical-align: middle;
  padding: 1em;
  background-color: rgba(0, 0, 0, 0.85);
  opacity: 0;
  line-height: 1;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  transition: background-color 0.5s linear;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  will-change: opacity;
  z-index: 1000;
}

/* Dimmer Content */

.ui.dimmer > .content {
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
  color: #FFFFFF;
}

/* Loose Coupling */

.ui.segment > .ui.dimmer {
  border-radius: inherit !important;
}

/* Scrollbars */

.ui.dimmer:not(.inverted)::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.1);
}

.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.25);
}

.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb:window-inactive {
  background: rgba(255, 255, 255, 0.15);
}

.ui.dimmer:not(.inverted)::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.35);
}

/*******************************
            States
*******************************/

/* Animating */

.animating.dimmable:not(body),
.dimmed.dimmable:not(body) {
  overflow: hidden;
}

/* Animating / Active / Visible */

.dimmed.dimmable > .ui.animating.dimmer,
.dimmed.dimmable > .ui.visible.dimmer,
.ui.active.dimmer {
  display: flex;
  opacity: 1;
}

/* Disabled */

.ui.disabled.dimmer {
  width: 0 !important;
  height: 0 !important;
}

/*******************************
           Variations
*******************************/

/*--------------
    Legacy
---------------*/

/* Animating / Active / Visible */

.dimmed.dimmable > .ui.animating.legacy.dimmer,
.dimmed.dimmable > .ui.visible.legacy.dimmer,
.ui.active.legacy.dimmer {
  display: block;
}

/*--------------
    Alignment
---------------*/

.ui[class*="top aligned"].dimmer {
  justify-content: flex-start;
}

.ui[class*="bottom aligned"].dimmer {
  justify-content: flex-end;
}

/*--------------
      Page
---------------*/

.ui.page.dimmer {
  position: fixed;
  -webkit-transform-style: '';
  transform-style: '';
  -webkit-perspective: 2000px;
  perspective: 2000px;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

body.animating.in.dimmable,
body.dimmed.dimmable {
  overflow: hidden;
}

body.dimmable > .dimmer {
  position: fixed;
}

/*--------------
    Blurring
---------------*/

.blurring.dimmable > :not(.dimmer) {
  -webkit-filter: blur(0px) grayscale(0);
  filter: blur(0px) grayscale(0);
  transition: 800ms -webkit-filter ease;
  transition: 800ms filter ease;
  transition: 800ms filter ease, 800ms -webkit-filter ease;
}

.blurring.dimmed.dimmable > :not(.dimmer) {
  -webkit-filter: blur(5px) grayscale(0.7);
  filter: blur(5px) grayscale(0.7);
}

/* Dimmer Color */

.blurring.dimmable > .dimmer {
  background-color: rgba(0, 0, 0, 0.6);
}

.blurring.dimmable > .inverted.dimmer {
  background-color: rgba(255, 255, 255, 0.6);
}

/*--------------
    Aligned
---------------*/

.ui.dimmer > .top.aligned.content > * {
  vertical-align: top;
}

.ui.dimmer > .bottom.aligned.content > * {
  vertical-align: bottom;
}

/*--------------
    Inverted
---------------*/

.ui.inverted.dimmer {
  background-color: rgba(255, 255, 255, 0.85);
}

.ui.inverted.dimmer > .content > * {
  color: #FFFFFF;
}

/*--------------
     Simple
---------------*/

/* Displays without javascript */

.ui.simple.dimmer {
  display: block;
  overflow: hidden;
  opacity: 1;
  width: 0%;
  height: 0%;
  z-index: -100;
  background-color: rgba(0, 0, 0, 0);
}

.dimmed.dimmable > .ui.simple.dimmer {
  overflow: visible;
  opacity: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.85);
  z-index: 1;
}

.ui.simple.inverted.dimmer {
  background-color: rgba(255, 255, 255, 0);
}

.dimmed.dimmable > .ui.simple.inverted.dimmer {
  background-color: rgba(255, 255, 255, 0.85);
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Dropdown
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Dropdown
*******************************/

.ui.dropdown {
  cursor: pointer;
  position: relative;
  display: inline-block;
  outline: none;
  text-align: left;
  transition: box-shadow 0.1s ease, width 0.1s ease;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/*******************************
            Content
*******************************/

/*--------------
      Menu
---------------*/

.ui.dropdown .menu {
  cursor: auto;
  position: absolute;
  display: none;
  outline: none;
  top: 100%;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  margin: 0em;
  padding: 0em 0em;
  background: #FFFFFF;
  font-size: 1em;
  text-shadow: none;
  text-align: left;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
  transition: opacity 0.1s ease;
  z-index: 11;
  will-change: transform, opacity;
}

.ui.dropdown .menu > * {
  white-space: nowrap;
}

/*--------------
  Hidden Input
---------------*/

.ui.dropdown > input:not(.search):first-child,
.ui.dropdown > select {
  display: none !important;
}

/*--------------
 Dropdown Icon
---------------*/

.ui.dropdown > .dropdown.icon {
  position: relative;
  width: auto;
  font-size: 0.85714286em;
  margin: 0em 0em 0em 1em;
}

.ui.dropdown .menu > .item .dropdown.icon {
  width: auto;
  float: right;
  margin: 0em 0em 0em 1em;
}

.ui.dropdown .menu > .item .dropdown.icon + .text {
  margin-right: 1em;
}

/*--------------
      Text
---------------*/

.ui.dropdown > .text {
  display: inline-block;
  transition: none;
}

/*--------------
    Menu Item
---------------*/

.ui.dropdown .menu > .item {
  position: relative;
  cursor: pointer;
  display: block;
  border: none;
  height: auto;
  text-align: left;
  border-top: none;
  line-height: 1em;
  color: rgba(0, 0, 0, 0.87);
  padding: 0.78571429rem 1.14285714rem !important;
  font-size: 1rem;
  text-transform: none;
  font-weight: normal;
  box-shadow: none;
  -webkit-touch-callout: none;
}

.ui.dropdown .menu > .item:first-child {
  border-top-width: 0px;
}

/*--------------
  Floated Content
---------------*/

.ui.dropdown > .text > [class*="right floated"],
.ui.dropdown .menu .item > [class*="right floated"] {
  float: right !important;
  margin-right: 0em !important;
  margin-left: 1em !important;
}

.ui.dropdown > .text > [class*="left floated"],
.ui.dropdown .menu .item > [class*="left floated"] {
  float: left !important;
  margin-left: 0em !important;
  margin-right: 1em !important;
}

.ui.dropdown .menu .item > .icon.floated,
.ui.dropdown .menu .item > .flag.floated,
.ui.dropdown .menu .item > .image.floated,
.ui.dropdown .menu .item > img.floated {
  margin-top: 0em;
}

/*--------------
  Menu Divider
---------------*/

.ui.dropdown .menu > .header {
  margin: 1rem 0rem 0.75rem;
  padding: 0em 1.14285714rem;
  color: rgba(0, 0, 0, 0.85);
  font-size: 0.78571429em;
  font-weight: bold;
  text-transform: uppercase;
}

.ui.dropdown .menu > .divider {
  border-top: 1px solid rgba(34, 36, 38, 0.1);
  height: 0em;
  margin: 0.5em 0em;
}

.ui.dropdown.dropdown .menu > .input {
  width: auto;
  display: flex;
  margin: 1.14285714rem 0.78571429rem;
  min-width: 10rem;
}

.ui.dropdown .menu > .header + .input {
  margin-top: 0em;
}

.ui.dropdown .menu > .input:not(.transparent) input {
  padding: 0.5em 1em;
}

.ui.dropdown .menu > .input:not(.transparent) .button,
.ui.dropdown .menu > .input:not(.transparent) .icon,
.ui.dropdown .menu > .input:not(.transparent) .label {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

/*-----------------
  Item Description
-------------------*/

.ui.dropdown > .text > .description,
.ui.dropdown .menu > .item > .description {
  float: right;
  margin: 0em 0em 0em 1em;
  color: rgba(0, 0, 0, 0.4);
}

/*-----------------
       Message
-------------------*/

.ui.dropdown .menu > .message {
  padding: 0.78571429rem 1.14285714rem;
  font-weight: normal;
}

.ui.dropdown .menu > .message:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}

/*--------------
    Sub Menu
---------------*/

.ui.dropdown .menu .menu {
  top: 0% !important;
  left: 100%;
  right: auto;
  margin: 0em 0em 0em -0.5em !important;
  border-radius: 0.28571429rem !important;
  z-index: 21 !important;
}

/* Hide Arrow */

.ui.dropdown .menu .menu:after {
  display: none;
}

/*--------------
   Sub Elements
---------------*/

/* Icons / Flags / Labels / Image */

.ui.dropdown > .text > .icon,
.ui.dropdown > .text > .label,
.ui.dropdown > .text > .flag,
.ui.dropdown > .text > img,
.ui.dropdown > .text > .image {
  margin-top: 0em;
}

.ui.dropdown .menu > .item > .icon,
.ui.dropdown .menu > .item > .label,
.ui.dropdown .menu > .item > .flag,
.ui.dropdown .menu > .item > .image,
.ui.dropdown .menu > .item > img {
  margin-top: 0em;
}

.ui.dropdown > .text > .icon,
.ui.dropdown > .text > .label,
.ui.dropdown > .text > .flag,
.ui.dropdown > .text > img,
.ui.dropdown > .text > .image,
.ui.dropdown .menu > .item > .icon,
.ui.dropdown .menu > .item > .label,
.ui.dropdown .menu > .item > .flag,
.ui.dropdown .menu > .item > .image,
.ui.dropdown .menu > .item > img {
  margin-left: 0em;
  float: none;
  margin-right: 0.78571429rem;
}

/*--------------
     Image
---------------*/

.ui.dropdown > .text > img,
.ui.dropdown > .text > .image,
.ui.dropdown .menu > .item > .image,
.ui.dropdown .menu > .item > img {
  display: inline-block;
  vertical-align: top;
  width: auto;
  margin-top: -0.5em;
  margin-bottom: -0.5em;
  max-height: 2em;
}

/*******************************
            Coupling
*******************************/

/*--------------
      Menu
---------------*/

/* Remove Menu Item Divider */

.ui.dropdown .ui.menu > .item:before,
.ui.menu .ui.dropdown .menu > .item:before {
  display: none;
}

/* Prevent Menu Item Border */

.ui.menu .ui.dropdown .menu .active.item {
  border-left: none;
}

/* Automatically float dropdown menu right on last menu item */

.ui.menu .right.menu .dropdown:last-child .menu,
.ui.menu .right.dropdown.item .menu,
.ui.buttons > .ui.dropdown:last-child .menu {
  left: auto;
  right: 0em;
}

/*--------------
      Label
---------------*/

/* Dropdown Menu */

.ui.label.dropdown .menu {
  min-width: 100%;
}

/*--------------
     Button
---------------*/

/* No Margin On Icon Button */

.ui.dropdown.icon.button > .dropdown.icon {
  margin: 0em;
}

.ui.button.dropdown .menu {
  min-width: 100%;
}

/*******************************
              Types
*******************************/

/*--------------
    Selection
---------------*/

/* Displays like a select box */

.ui.selection.dropdown {
  cursor: pointer;
  word-wrap: break-word;
  line-height: 1em;
  white-space: normal;
  outline: 0;
  -webkit-transform: rotateZ(0deg);
  transform: rotateZ(0deg);
  min-width: 14em;
  min-height: 2.71428571em;
  background: #FFFFFF;
  display: inline-block;
  padding: 0.78571429em 2.1em 0.78571429em 1em;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: 0.28571429rem;
  transition: box-shadow 0.1s ease, width 0.1s ease;
}

.ui.selection.dropdown.visible,
.ui.selection.dropdown.active {
  z-index: 10;
}

select.ui.dropdown {
  height: 38px;
  padding: 0.5em;
  border: 1px solid rgba(34, 36, 38, 0.15);
  visibility: visible;
}

.ui.selection.dropdown > .search.icon,
.ui.selection.dropdown > .delete.icon,
.ui.selection.dropdown > .dropdown.icon {
  cursor: pointer;
  position: absolute;
  width: auto;
  height: auto;
  line-height: 1.21428571em;
  top: 0.78571429em;
  right: 1em;
  z-index: 3;
  margin: -0.78571429em;
  padding: 0.91666667em;
  opacity: 0.8;
  transition: opacity 0.1s ease;
}

/* Compact */

.ui.compact.selection.dropdown {
  min-width: 0px;
}

/*  Selection Menu */

.ui.selection.dropdown .menu {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  border-top-width: 0px !important;
  width: auto;
  outline: none;
  margin: 0px -1px;
  min-width: calc(100% +  2px );
  width: calc(100% +  2px );
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
  transition: opacity 0.1s ease;
}

.ui.selection.dropdown .menu:after,
.ui.selection.dropdown .menu:before {
  display: none;
}

/*--------------
    Message
---------------*/

.ui.selection.dropdown .menu > .message {
  padding: 0.78571429rem 1.14285714rem;
}

@media only screen and (max-width: 767px) {
  .ui.selection.dropdown .menu {
    max-height: 8.01428571rem;
  }
}

@media only screen and (min-width: 768px) {
  .ui.selection.dropdown .menu {
    max-height: 10.68571429rem;
  }
}

@media only screen and (min-width: 992px) {
  .ui.selection.dropdown .menu {
    max-height: 16.02857143rem;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.selection.dropdown .menu {
    max-height: 21.37142857rem;
  }
}

/* Menu Item */

.ui.selection.dropdown .menu > .item {
  border-top: 1px solid #FAFAFA;
  padding: 0.78571429rem 1.14285714rem !important;
  white-space: normal;
  word-wrap: normal;
}

/* User Item */

.ui.selection.dropdown .menu > .hidden.addition.item {
  display: none;
}

/* Hover */

.ui.selection.dropdown:hover {
  border-color: rgba(34, 36, 38, 0.35);
  box-shadow: none;
}

/* Active */

.ui.selection.active.dropdown {
  border-color: #96C8DA;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
}

.ui.selection.active.dropdown .menu {
  border-color: #96C8DA;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
}

/* Focus */

.ui.selection.dropdown:focus {
  border-color: #96C8DA;
  box-shadow: none;
}

.ui.selection.dropdown:focus .menu {
  border-color: #96C8DA;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
}

/* Visible */

.ui.selection.visible.dropdown > .text:not(.default) {
  font-weight: normal;
  color: rgba(0, 0, 0, 0.8);
}

/* Visible Hover */

.ui.selection.active.dropdown:hover {
  border-color: #96C8DA;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
}

.ui.selection.active.dropdown:hover .menu {
  border-color: #96C8DA;
  box-shadow: 0px 2px 3px 0px rgba(34, 36, 38, 0.15);
}

/* Dropdown Icon */

.ui.active.selection.dropdown > .dropdown.icon,
.ui.visible.selection.dropdown > .dropdown.icon {
  opacity: '';
  z-index: 3;
}

/* Connecting Border */

.ui.active.selection.dropdown {
  border-bottom-left-radius: 0em !important;
  border-bottom-right-radius: 0em !important;
}

/* Empty Connecting Border */

.ui.active.empty.selection.dropdown {
  border-radius: 0.28571429rem !important;
  box-shadow: none !important;
}

.ui.active.empty.selection.dropdown .menu {
  border: none !important;
  box-shadow: none !important;
}

/*--------------
   Searchable
---------------*/

/* Search Selection */

.ui.search.dropdown {
  min-width: '';
}

/* Search Dropdown */

.ui.search.dropdown > input.search {
  background: none transparent !important;
  border: none !important;
  box-shadow: none !important;
  cursor: text;
  top: 0em;
  left: 1px;
  width: 100%;
  outline: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  padding: inherit;
}

/* Text Layering */

.ui.search.dropdown > input.search {
  position: absolute;
  z-index: 2;
}

.ui.search.dropdown > .text {
  cursor: text;
  position: relative;
  left: 1px;
  z-index: 3;
}

/* Search Selection */

.ui.search.selection.dropdown > input.search {
  line-height: 1.21428571em;
  padding: 0.67857143em 2.1em 0.67857143em 1em;
}

/* Used to size multi select input to character width */

.ui.search.selection.dropdown > span.sizer {
  line-height: 1.21428571em;
  padding: 0.67857143em 2.1em 0.67857143em 1em;
  display: none;
  white-space: pre;
}

/* Active/Visible Search */

.ui.search.dropdown.active > input.search,
.ui.search.dropdown.visible > input.search {
  cursor: auto;
}

.ui.search.dropdown.active > .text,
.ui.search.dropdown.visible > .text {
  pointer-events: none;
}

/* Filtered Text */

.ui.active.search.dropdown input.search:focus + .text .icon,
.ui.active.search.dropdown input.search:focus + .text .flag {
  opacity: 0.45;
}

.ui.active.search.dropdown input.search:focus + .text {
  color: rgba(115, 115, 115, 0.87) !important;
}

/* Search Menu */

.ui.search.dropdown .menu {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
}

@media only screen and (max-width: 767px) {
  .ui.search.dropdown .menu {
    max-height: 8.01428571rem;
  }
}

@media only screen and (min-width: 768px) {
  .ui.search.dropdown .menu {
    max-height: 10.68571429rem;
  }
}

@media only screen and (min-width: 992px) {
  .ui.search.dropdown .menu {
    max-height: 16.02857143rem;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.search.dropdown .menu {
    max-height: 21.37142857rem;
  }
}

/*--------------
    Multiple
---------------*/

/* Multiple Selection */

.ui.multiple.dropdown {
  padding: 0.22619048em 2.1em 0.22619048em 0.35714286em;
}

.ui.multiple.dropdown .menu {
  cursor: auto;
}

/* Multiple Search Selection */

.ui.multiple.search.dropdown,
.ui.multiple.search.dropdown > input.search {
  cursor: text;
}

/* Selection Label */

.ui.multiple.dropdown > .label {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: inline-block;
  vertical-align: top;
  white-space: normal;
  font-size: 1em;
  padding: 0.35714286em 0.78571429em;
  margin: 0.14285714rem 0.28571429rem 0.14285714rem 0em;
  box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
}

/* Dropdown Icon */

.ui.multiple.dropdown .dropdown.icon {
  margin: '';
  padding: '';
}

/* Text */

.ui.multiple.dropdown > .text {
  position: static;
  padding: 0;
  max-width: 100%;
  margin: 0.45238095em 0em 0.45238095em 0.64285714em;
  line-height: 1.21428571em;
}

.ui.multiple.dropdown > .label ~ input.search {
  margin-left: 0.14285714em !important;
}

.ui.multiple.dropdown > .label ~ .text {
  display: none;
}

/*-----------------
  Multiple Search
-----------------*/

/* Prompt Text */

.ui.multiple.search.dropdown > .text {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  padding: inherit;
  margin: 0.45238095em 0em 0.45238095em 0.64285714em;
  line-height: 1.21428571em;
}

.ui.multiple.search.dropdown > .label ~ .text {
  display: none;
}

/* Search */

.ui.multiple.search.dropdown > input.search {
  position: static;
  padding: 0;
  max-width: 100%;
  margin: 0.45238095em 0em 0.45238095em 0.64285714em;
  width: 2.2em;
  line-height: 1.21428571em;
}

/*--------------
     Inline
---------------*/

.ui.inline.dropdown {
  cursor: pointer;
  display: inline-block;
  color: inherit;
}

.ui.inline.dropdown .dropdown.icon {
  margin: 0em 0.21428571em 0em 0.21428571em;
  vertical-align: baseline;
}

.ui.inline.dropdown > .text {
  font-weight: bold;
}

.ui.inline.dropdown .menu {
  cursor: auto;
  margin-top: 0.21428571em;
  border-radius: 0.28571429rem;
}

/*******************************
            States
*******************************/

/*--------------------
        Active
----------------------*/

/* Menu Item Active */

.ui.dropdown .menu .active.item {
  background: transparent;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.95);
  box-shadow: none;
  z-index: 12;
}

/*--------------------
        Hover
----------------------*/

/* Menu Item Hover */

.ui.dropdown .menu > .item:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.95);
  z-index: 13;
}

/*--------------------
       Loading
---------------------*/

.ui.loading.dropdown > i.icon {
  height: 1em !important;
}

.ui.loading.selection.dropdown > i.icon {
  padding: 1.5em 1.28571429em !important;
}

.ui.loading.dropdown > i.icon:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}

.ui.loading.dropdown > i.icon:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  box-shadow: 0px 0px 0px 1px transparent;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  -webkit-animation: dropdown-spin 0.6s linear;
  animation: dropdown-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 transparent transparent;
  border-style: solid;
  border-width: 0.2em;
}

/* Coupling */

.ui.loading.dropdown.button > i.icon:before,
.ui.loading.dropdown.button > i.icon:after {
  display: none;
}

@-webkit-keyframes dropdown-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes dropdown-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*--------------------
     Default Text
----------------------*/

.ui.dropdown:not(.button) > .default.text,
.ui.default.dropdown:not(.button) > .text {
  color: rgba(191, 191, 191, 0.87);
}

.ui.dropdown:not(.button) > input:focus ~ .default.text,
.ui.default.dropdown:not(.button) > input:focus ~ .text {
  color: rgba(115, 115, 115, 0.87);
}

/*--------------------
        Loading
----------------------*/

.ui.loading.dropdown > .text {
  transition: none;
}

/* Used To Check Position */

.ui.dropdown .loading.menu {
  display: block;
  visibility: hidden;
  z-index: -1;
}

.ui.dropdown > .loading.menu {
  left: 0px !important;
  right: auto !important;
}

.ui.dropdown > .menu .loading.menu {
  left: 100% !important;
  right: auto !important;
}

/*--------------------
    Keyboard Select
----------------------*/

/* Selected Item */

.ui.dropdown.selected,
.ui.dropdown .menu .selected.item {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.95);
}

/*--------------------
    Search Filtered
----------------------*/

/* Filtered Item */

.ui.dropdown > .filtered.text {
  visibility: hidden;
}

.ui.dropdown .filtered.item {
  display: none !important;
}

/*--------------------
        Error
----------------------*/

.ui.dropdown.error,
.ui.dropdown.error > .text,
.ui.dropdown.error > .default.text {
  color: #9F3A38;
}

.ui.selection.dropdown.error {
  background: #FFF6F6;
  border-color: #E0B4B4;
}

.ui.selection.dropdown.error:hover {
  border-color: #E0B4B4;
}

.ui.dropdown.error > .menu,
.ui.dropdown.error > .menu .menu {
  border-color: #E0B4B4;
}

.ui.dropdown.error > .menu > .item {
  color: #9F3A38;
}

.ui.multiple.selection.error.dropdown > .label {
  border-color: #E0B4B4;
}

/* Item Hover */

.ui.dropdown.error > .menu > .item:hover {
  background-color: #FFF2F2;
}

/* Item Active */

.ui.dropdown.error > .menu .active.item {
  background-color: #FDCFCF;
}

/*--------------------
        Clear
----------------------*/

.ui.dropdown > .clear.dropdown.icon {
  opacity: 0.8;
  transition: opacity 0.1s ease;
}

.ui.dropdown > .clear.dropdown.icon:hover {
  opacity: 1;
}

/*--------------------
        Disabled
----------------------*/

/* Disabled */

.ui.disabled.dropdown,
.ui.dropdown .menu > .disabled.item {
  cursor: default;
  pointer-events: none;
  opacity: 0.45;
}

/*******************************
           Variations
*******************************/

/*--------------
    Direction
---------------*/

/* Flyout Direction */

.ui.dropdown .menu {
  left: 0px;
}

/* Default Side (Right) */

.ui.dropdown .right.menu > .menu,
.ui.dropdown .menu .right.menu {
  left: 100% !important;
  right: auto !important;
  border-radius: 0.28571429rem !important;
}

/* Leftward Opening Menu */

.ui.dropdown > .left.menu {
  left: auto !important;
  right: 0px !important;
}

.ui.dropdown > .left.menu .menu,
.ui.dropdown .menu .left.menu {
  left: auto;
  right: 100%;
  margin: 0em -0.5em 0em 0em !important;
  border-radius: 0.28571429rem !important;
}

.ui.dropdown .item .left.dropdown.icon,
.ui.dropdown .left.menu .item .dropdown.icon {
  width: auto;
  float: left;
  margin: 0em 0em 0em 0em;
}

.ui.dropdown .item .left.dropdown.icon,
.ui.dropdown .left.menu .item .dropdown.icon {
  width: auto;
  float: left;
  margin: 0em 0em 0em 0em;
}

.ui.dropdown .item .left.dropdown.icon + .text,
.ui.dropdown .left.menu .item .dropdown.icon + .text {
  margin-left: 1em;
  margin-right: 0em;
}

/*--------------
     Upward
---------------*/

/* Upward Main Menu */

.ui.upward.dropdown > .menu {
  top: auto;
  bottom: 100%;
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.08);
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

/* Upward Sub Menu */

.ui.dropdown .upward.menu {
  top: auto !important;
  bottom: 0 !important;
}

/* Active Upward */

.ui.simple.upward.active.dropdown,
.ui.simple.upward.dropdown:hover {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em !important;
}

.ui.upward.dropdown.button:not(.pointing):not(.floating).active {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

/* Selection */

.ui.upward.selection.dropdown .menu {
  border-top-width: 1px !important;
  border-bottom-width: 0px !important;
  box-shadow: 0px -2px 3px 0px rgba(0, 0, 0, 0.08);
}

.ui.upward.selection.dropdown:hover {
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.05);
}

/* Active Upward */

.ui.active.upward.selection.dropdown {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem !important;
}

/* Visible Upward */

.ui.upward.selection.dropdown.visible {
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.08);
  border-radius: 0em 0em 0.28571429rem 0.28571429rem !important;
}

/* Visible Hover Upward */

.ui.upward.active.selection.dropdown:hover {
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.05);
}

.ui.upward.active.selection.dropdown:hover .menu {
  box-shadow: 0px -2px 3px 0px rgba(0, 0, 0, 0.08);
}

/*--------------
     Simple
---------------*/

/*  Selection Menu */

.ui.scrolling.dropdown .menu,
.ui.dropdown .scrolling.menu {
  overflow-x: hidden;
  overflow-y: auto;
}

.ui.scrolling.dropdown .menu {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  min-width: 100% !important;
  width: auto !important;
}

.ui.dropdown .scrolling.menu {
  position: static;
  overflow-y: auto;
  border: none;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  min-width: 100% !important;
  width: auto !important;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.scrolling.dropdown .menu .item.item.item,
.ui.dropdown .scrolling.menu > .item.item.item {
  border-top: none;
}

.ui.scrolling.dropdown .menu .item:first-child,
.ui.dropdown .scrolling.menu .item:first-child {
  border-top: none;
}

.ui.dropdown > .animating.menu .scrolling.menu,
.ui.dropdown > .visible.menu .scrolling.menu {
  display: block;
}

/* Scrollbar in IE */

@media all and (-ms-high-contrast: none) {
  .ui.scrolling.dropdown .menu,
  .ui.dropdown .scrolling.menu {
    min-width: calc(100% - 17px);
  }
}

@media only screen and (max-width: 767px) {
  .ui.scrolling.dropdown .menu,
  .ui.dropdown .scrolling.menu {
    max-height: 10.28571429rem;
  }
}

@media only screen and (min-width: 768px) {
  .ui.scrolling.dropdown .menu,
  .ui.dropdown .scrolling.menu {
    max-height: 15.42857143rem;
  }
}

@media only screen and (min-width: 992px) {
  .ui.scrolling.dropdown .menu,
  .ui.dropdown .scrolling.menu {
    max-height: 20.57142857rem;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.scrolling.dropdown .menu,
  .ui.dropdown .scrolling.menu {
    max-height: 20.57142857rem;
  }
}

/*--------------
     Simple
---------------*/

/* Displays without javascript */

.ui.simple.dropdown .menu:before,
.ui.simple.dropdown .menu:after {
  display: none;
}

.ui.simple.dropdown .menu {
  position: absolute;
  display: block;
  overflow: hidden;
  top: -9999px !important;
  opacity: 0;
  width: 0;
  height: 0;
  transition: opacity 0.1s ease;
}

.ui.simple.active.dropdown,
.ui.simple.dropdown:hover {
  border-bottom-left-radius: 0em !important;
  border-bottom-right-radius: 0em !important;
}

.ui.simple.active.dropdown > .menu,
.ui.simple.dropdown:hover > .menu {
  overflow: visible;
  width: auto;
  height: auto;
  top: 100% !important;
  opacity: 1;
}

.ui.simple.dropdown > .menu > .item:active > .menu,
.ui.simple.dropdown:hover > .menu > .item:hover > .menu {
  overflow: visible;
  width: auto;
  height: auto;
  top: 0% !important;
  left: 100% !important;
  opacity: 1;
}

.ui.simple.disabled.dropdown:hover .menu {
  display: none;
  height: 0px;
  width: 0px;
  overflow: hidden;
}

/* Visible */

.ui.simple.visible.dropdown > .menu {
  display: block;
}

/*--------------
      Fluid
---------------*/

.ui.fluid.dropdown {
  display: block;
  width: 100%;
  min-width: 0em;
}

.ui.fluid.dropdown > .dropdown.icon {
  float: right;
}

/*--------------
    Floating
---------------*/

.ui.floating.dropdown .menu {
  left: 0;
  right: auto;
  box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15) !important;
  border-radius: 0.28571429rem !important;
}

.ui.floating.dropdown > .menu {
  margin-top: 0.5em !important;
  border-radius: 0.28571429rem !important;
}

/*--------------
     Pointing
---------------*/

.ui.pointing.dropdown > .menu {
  top: 100%;
  margin-top: 0.78571429rem;
  border-radius: 0.28571429rem;
}

.ui.pointing.dropdown > .menu:after {
  display: block;
  position: absolute;
  pointer-events: none;
  content: '';
  visibility: visible;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 0.5em;
  height: 0.5em;
  box-shadow: -1px -1px 0px 0px rgba(34, 36, 38, 0.15);
  background: #FFFFFF;
  z-index: 2;
}

.ui.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: 50%;
  margin: 0em 0em 0em -0.25em;
}

/* Top Left Pointing */

.ui.top.left.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  left: 0%;
  right: auto;
  margin: 1em 0em 0em;
}

.ui.top.left.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  left: 0%;
  right: auto;
  margin: 1em 0em 0em;
}

.ui.top.left.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: 1em;
  right: auto;
  margin: 0em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* Top Right Pointing */

.ui.top.right.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  right: 0%;
  left: auto;
  margin: 1em 0em 0em;
}

.ui.top.pointing.dropdown > .left.menu:after,
.ui.top.right.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: auto !important;
  right: 1em !important;
  margin: 0em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* Left Pointing */

.ui.left.pointing.dropdown > .menu {
  top: 0%;
  left: 100%;
  right: auto;
  margin: 0em 0em 0em 1em;
}

.ui.left.pointing.dropdown > .menu:after {
  top: 1em;
  left: -0.25em;
  margin: 0em 0em 0em 0em;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.ui.left:not(.top):not(.bottom).pointing.dropdown > .left.menu {
  left: auto !important;
  right: 100% !important;
  margin: 0em 1em 0em 0em;
}

.ui.left:not(.top):not(.bottom).pointing.dropdown > .left.menu:after {
  top: 1em;
  left: auto;
  right: -0.25em;
  margin: 0em 0em 0em 0em;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

/* Right Pointing */

.ui.right.pointing.dropdown > .menu {
  top: 0%;
  left: auto;
  right: 100%;
  margin: 0em 1em 0em 0em;
}

.ui.right.pointing.dropdown > .menu:after {
  top: 1em;
  left: auto;
  right: -0.25em;
  margin: 0em 0em 0em 0em;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

/* Bottom Pointing */

.ui.bottom.pointing.dropdown > .menu {
  top: auto;
  bottom: 100%;
  left: 0%;
  right: auto;
  margin: 0em 0em 1em;
}

.ui.bottom.pointing.dropdown > .menu:after {
  top: auto;
  bottom: -0.25em;
  right: auto;
  margin: 0em;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

/* Reverse Sub-Menu Direction */

.ui.bottom.pointing.dropdown > .menu .menu {
  top: auto !important;
  bottom: 0px !important;
}

/* Bottom Left */

.ui.bottom.left.pointing.dropdown > .menu {
  left: 0%;
  right: auto;
}

.ui.bottom.left.pointing.dropdown > .menu:after {
  left: 1em;
  right: auto;
}

/* Bottom Right */

.ui.bottom.right.pointing.dropdown > .menu {
  right: 0%;
  left: auto;
}

.ui.bottom.right.pointing.dropdown > .menu:after {
  left: auto;
  right: 1em;
}

/* Upward pointing */

.ui.pointing.upward.dropdown .menu,
.ui.top.pointing.upward.dropdown .menu {
  top: auto !important;
  bottom: 100% !important;
  margin: 0em 0em 0.78571429rem;
  border-radius: 0.28571429rem;
}

.ui.pointing.upward.dropdown .menu:after,
.ui.top.pointing.upward.dropdown .menu:after {
  top: 100% !important;
  bottom: auto !important;
  box-shadow: 1px 1px 0px 0px rgba(34, 36, 38, 0.15);
  margin: -0.25em 0em 0em;
}

/* Right Pointing Upward */

.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu {
  top: auto !important;
  bottom: 0 !important;
  margin: 0em 1em 0em 0em;
}

.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after {
  top: auto !important;
  bottom: 0 !important;
  margin: 0em 0em 1em 0em;
  box-shadow: -1px -1px 0px 0px rgba(34, 36, 38, 0.15);
}

/* Left Pointing Upward */

.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu {
  top: auto !important;
  bottom: 0 !important;
  margin: 0em 0em 0em 1em;
}

.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after {
  top: auto !important;
  bottom: 0 !important;
  margin: 0em 0em 1em 0em;
  box-shadow: -1px -1px 0px 0px rgba(34, 36, 38, 0.15);
}

/*******************************
         Theme Overrides
*******************************/

/* Dropdown Carets */

@font-face {
  font-family: 'Dropdown';
  src: url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAVgAA8AAAAACFAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABWAAAABwAAAAchGgaq0dERUYAAAF0AAAAHAAAAB4AJwAPT1MvMgAAAZAAAABDAAAAVnW4TJdjbWFwAAAB1AAAAEsAAAFS8CcaqmN2dCAAAAIgAAAABAAAAAQAEQFEZ2FzcAAAAiQAAAAIAAAACP//AANnbHlmAAACLAAAAQoAAAGkrRHP9WhlYWQAAAM4AAAAMAAAADYPK8YyaGhlYQAAA2gAAAAdAAAAJANCAb1obXR4AAADiAAAACIAAAAiCBkAOGxvY2EAAAOsAAAAFAAAABQBnAIybWF4cAAAA8AAAAAfAAAAIAEVAF5uYW1lAAAD4AAAATAAAAKMFGlj5HBvc3QAAAUQAAAARgAAAHJoedjqd2ViZgAABVgAAAAGAAAABrO7W5UAAAABAAAAANXulPUAAAAA1r4hgAAAAADXu2Q1eNpjYGRgYOABYjEgZmJgBEIOIGYB8xgAA/YAN3jaY2BktGOcwMDKwMI4jTGNgYHBHUp/ZZBkaGFgYGJgZWbACgLSXFMYHFT/fLjFeOD/AQY9xjMMbkBhRpAcAN48DQYAeNpjYGBgZoBgGQZGBhDwAfIYwXwWBgMgzQGETAwMqn8+8H649f8/lHX9//9b7Pzf+fWgusCAkY0BzmUE6gHpQwGMDMMeAACbxg7SAAARAUQAAAAB//8AAnjadZBPSsNAGMXfS+yMqYgOhpSuSlKadmUhiVEhEMQzFF22m17BbbvzCh5BXCUn6EG8gjeQ4DepwYo4i+/ffL95j4EDA+CFC7jQuKyIeVHrI3wkleq9F7XrSInKteOeHdda8bOoaeepSc00NWPz/LRec9G8GabyGtEdF7h19z033GAMTK7zbM42xNEZpzYof0RtQ5CUHAQJ73OtVyutc+3b7Ou//b8XNlsPx3jgjUifABdhEohKJJL5iM5p39uqc7X1+sRQSqmGrUVhlsJ4lpmEUVwyT8SUYtg0P9DyNzPADDs+tjrGV6KRCRfsui3eHcL4/p8ZXvfMlcnEU+CLv7hDykOP+AKTPTxbAAB42mNgZGBgAGKuf5KP4vltvjLIMzGAwLV9ig0g+vruFFMQzdjACOJzMIClARh0CTJ42mNgZGBgPPD/AJD8wgAEjA0MjAyogAMAbOQEAQAAAAC7ABEAAAAAAKoAAAH0AAABgAAAAUAACAFAAAgAwAAXAAAAAAAAACoAKgAqADIAbACGAKAAugDSeNpjYGRgYOBkUGFgYgABEMkFhAwM/xn0QAIADdUBdAB42qWQvUoDQRSFv3GjaISUQaymSmGxJoGAsRC0iPYLsU50Y6IxrvlRtPCJJKUPIBb+PIHv4EN4djKuKAqCDHfmu+feOdwZoMCUAJNbAlYUMzaUlM14jjxbngOq7HnOia89z1Pk1vMCa9x7ztPkzfMyJbPj+ZGi6Xp+omxuPD+zaD7meaFg7mb8GrBqHmhwxoAxlm0uiRkpP9X5m26pKRoMxTGR1D49Dv/Yb/91o6l8qL6eu5n2hZQzn68utR9m3FU2cB4t9cdSLG2utI+44Eh/P9bqKO+oJ/WxmXssj77YkrjasZQD6SFddythk3Wtzrf+UF2p076Udla1VNzsERP3kkjVRKel7mp1udXYcHtZSlV7RfmJe1GiFWveluaeKD5/MuJcSk8Tpm/vvwPIbmJleNpjYGKAAFYG7ICTgYGRiZGZkYWRlZGNkZ2Rg5GTLT2nsiDDEEIZsZfmZRqZujmDaDcDAxcI7WIOpS2gtCWUdgQAZkcSmQAAAAFblbO6AAA=) format('woff');
  font-weight: normal;
  font-style: normal;
}

.ui.dropdown > .dropdown.icon {
  font-family: 'Dropdown';
  line-height: 1;
  height: 1em;
  width: 1.23em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-weight: normal;
  font-style: normal;
  text-align: center;
}

.ui.dropdown > .dropdown.icon {
  width: auto;
}

.ui.dropdown > .dropdown.icon:before {
  content: '\f0d7';
}

/* Sub Menu */

.ui.dropdown .menu .item .dropdown.icon:before {
  content: '\f0da' ;
}

.ui.dropdown .item .left.dropdown.icon:before,
.ui.dropdown .left.menu .item .dropdown.icon:before {
  content: "\f0d9" ;
}

/* Vertical Menu Dropdown */

.ui.vertical.menu .dropdown.item > .dropdown.icon:before {
  content: "\f0da" ;
}

.ui.dropdown > .clear.icon:before {
  content: "\f00d";
}

/* Icons for Reference (Subsetted in 2.4.0)
  .dropdown.down:before { content: "\f0d7"; }
  .dropdown.up:before { content: "\f0d8"; }
  .dropdown.left:before { content: "\f0d9"; }
  .dropdown.right:before { content: "\f0da"; }
  .dropdown.close:before { content: "\f00d"; }
*/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Video
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Types
*******************************/

.ui.embed {
  position: relative;
  max-width: 100%;
  height: 0px;
  overflow: hidden;
  background: #DCDDDE;
  padding-bottom: 56.25%;
}

/*-----------------
  Embedded Content
------------------*/

.ui.embed iframe,
.ui.embed embed,
.ui.embed object {
  position: absolute;
  border: none;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  margin: 0em;
  padding: 0em;
}

/*-----------------
      Embed
------------------*/

.ui.embed > .embed {
  display: none;
}

/*--------------
   Placeholder
---------------*/

.ui.embed > .placeholder {
  position: absolute;
  cursor: pointer;
  top: 0px;
  left: 0px;
  display: block;
  width: 100%;
  height: 100%;
  background-color: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
}

/*--------------
      Icon
---------------*/

.ui.embed > .icon {
  cursor: pointer;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.ui.embed > .icon:after {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  z-index: 3;
  content: '';
  background: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
  opacity: 0.5;
  transition: opacity 0.5s ease;
}

.ui.embed > .icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 4;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  color: #FFFFFF;
  font-size: 6rem;
  text-shadow: 0px 2px 10px rgba(34, 36, 38, 0.2);
  transition: opacity 0.5s ease, color 0.5s ease;
  z-index: 10;
}

/*******************************
            States
*******************************/

/*--------------
     Hover
---------------*/

.ui.embed .icon:hover:after {
  background: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
  opacity: 1;
}

.ui.embed .icon:hover:before {
  color: #FFFFFF;
}

/*--------------
     Active
---------------*/

.ui.active.embed > .icon,
.ui.active.embed > .placeholder {
  display: none;
}

.ui.active.embed > .embed {
  display: block;
}

/*******************************
        Video Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/

/*******************************
          Variations
*******************************/

.ui.square.embed {
  padding-bottom: 100%;
}

.ui[class*="4:3"].embed {
  padding-bottom: 75%;
}

.ui[class*="16:9"].embed {
  padding-bottom: 56.25%;
}

.ui[class*="21:9"].embed {
  padding-bottom: 42.85714286%;
}
/*!
 * # Semantic UI 2.4.2 - Modal
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Modal
*******************************/

.ui.modal {
  position: absolute;
  display: none;
  z-index: 1001;
  text-align: left;
  background: #FFFFFF;
  border: none;
  box-shadow: 1px 3px 3px 0px rgba(0, 0, 0, 0.2), 1px 3px 15px 2px rgba(0, 0, 0, 0.2);
  -webkit-transform-origin: 50% 25%;
  transform-origin: 50% 25%;
  flex: 0 0 auto;
  border-radius: 0.28571429rem;
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
  will-change: top, left, margin, transform, opacity;
}

.ui.modal > :first-child:not(.icon),
.ui.modal > .icon:first-child + * {
  border-top-left-radius: 0.28571429rem;
  border-top-right-radius: 0.28571429rem;
}

.ui.modal > :last-child {
  border-bottom-left-radius: 0.28571429rem;
  border-bottom-right-radius: 0.28571429rem;
}

/*******************************
            Content
*******************************/

/*--------------
     Close
---------------*/

.ui.modal > .close {
  cursor: pointer;
  position: absolute;
  top: -2.5rem;
  right: -2.5rem;
  z-index: 1;
  opacity: 0.8;
  font-size: 1.25em;
  color: #FFFFFF;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0.625rem 0rem 0rem 0rem;
}

.ui.modal > .close:hover {
  opacity: 1;
}

/*--------------
     Header
---------------*/

.ui.modal > .header {
  display: block;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  background: #FFFFFF;
  margin: 0em;
  padding: 1.25rem 1.5rem;
  box-shadow: none;
  color: rgba(0, 0, 0, 0.85);
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}

.ui.modal > .header:not(.ui) {
  font-size: 1.42857143rem;
  line-height: 1.28571429em;
  font-weight: bold;
}

/*--------------
     Content
---------------*/

.ui.modal > .content {
  display: block;
  width: 100%;
  font-size: 1em;
  line-height: 1.4;
  padding: 1.5rem;
  background: #FFFFFF;
}

.ui.modal > .image.content {
  display: flex;
  flex-direction: row;
}

/* Image */

.ui.modal > .content > .image {
  display: block;
  flex: 0 1 auto;
  width: '';
  align-self: top;
}

.ui.modal > [class*="top aligned"] {
  align-self: top;
}

.ui.modal > [class*="middle aligned"] {
  align-self: middle;
}

.ui.modal > [class*="stretched"] {
  align-self: stretch;
}

/* Description */

.ui.modal > .content > .description {
  display: block;
  flex: 1 0 auto;
  min-width: 0px;
  align-self: top;
}

.ui.modal > .content > .icon + .description,
.ui.modal > .content > .image + .description {
  flex: 0 1 auto;
  min-width: '';
  width: auto;
  padding-left: 2em;
}

/*rtl:ignore*/

.ui.modal > .content > .image > i.icon {
  margin: 0em;
  opacity: 1;
  width: auto;
  line-height: 1;
  font-size: 8rem;
}

/*--------------
     Actions
---------------*/

.ui.modal > .actions {
  background: #F9FAFB;
  padding: 1rem 1rem;
  border-top: 1px solid rgba(34, 36, 38, 0.15);
  text-align: right;
}

.ui.modal .actions > .button {
  margin-left: 0.75em;
}

/*-------------------
       Responsive
--------------------*/

/* Modal Width */

@media only screen and (max-width: 767px) {
  .ui.modal {
    width: 95%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 768px) {
  .ui.modal {
    width: 88%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 992px) {
  .ui.modal {
    width: 850px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1200px) {
  .ui.modal {
    width: 900px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.modal {
    width: 950px;
    margin: 0em 0em 0em 0em;
  }
}

/* Tablet and Mobile */

@media only screen and (max-width: 991px) {
  .ui.modal > .header {
    padding-right: 2.25rem;
  }

  .ui.modal > .close {
    top: 1.0535rem;
    right: 1rem;
    color: rgba(0, 0, 0, 0.87);
  }
}

/* Mobile */

@media only screen and (max-width: 767px) {
  .ui.modal > .header {
    padding: 0.75rem 1rem !important;
    padding-right: 2.25rem !important;
  }

  .ui.modal > .content {
    display: block;
    padding: 1rem !important;
  }

  .ui.modal > .close {
    top: 0.5rem !important;
    right: 0.5rem !important;
  }

  /*rtl:ignore*/

  .ui.modal .image.content {
    flex-direction: column;
  }

  .ui.modal .content > .image {
    display: block;
    max-width: 100%;
    margin: 0em auto !important;
    text-align: center;
    padding: 0rem 0rem 1rem !important;
  }

  .ui.modal > .content > .image > i.icon {
    font-size: 5rem;
    text-align: center;
  }

  /*rtl:ignore*/

  .ui.modal .content > .description {
    display: block;
    width: 100% !important;
    margin: 0em !important;
    padding: 1rem 0rem !important;
    box-shadow: none;
  }

  /* Let Buttons Stack */

  .ui.modal > .actions {
    padding: 1rem 1rem 0rem !important;
  }

  .ui.modal .actions > .buttons,
  .ui.modal .actions > .button {
    margin-bottom: 1rem;
  }
}

/*--------------
    Coupling
---------------*/

.ui.inverted.dimmer > .ui.modal {
  box-shadow: 1px 3px 10px 2px rgba(0, 0, 0, 0.2);
}

/*******************************
             Types
*******************************/

.ui.basic.modal {
  background-color: transparent;
  border: none;
  border-radius: 0em;
  box-shadow: none !important;
  color: #FFFFFF;
}

.ui.basic.modal > .header,
.ui.basic.modal > .content,
.ui.basic.modal > .actions {
  background-color: transparent;
}

.ui.basic.modal > .header {
  color: #FFFFFF;
}

.ui.basic.modal > .close {
  top: 1rem;
  right: 1.5rem;
}

.ui.inverted.dimmer > .basic.modal {
  color: rgba(0, 0, 0, 0.87);
}

.ui.inverted.dimmer > .ui.basic.modal > .header {
  color: rgba(0, 0, 0, 0.85);
}

/* Resort to margin positioning if legacy */

.ui.legacy.modal,
.ui.legacy.page.dimmer > .ui.modal {
  top: 50%;
  left: 50%;
}

.ui.legacy.page.dimmer > .ui.scrolling.modal,
.ui.page.dimmer > .ui.scrolling.legacy.modal,
.ui.top.aligned.legacy.page.dimmer > .ui.modal,
.ui.top.aligned.dimmer > .ui.legacy.modal {
  top: auto;
}

/* Tablet and Mobile */

@media only screen and (max-width: 991px) {
  .ui.basic.modal > .close {
    color: #FFFFFF;
  }
}

/*******************************
             States
*******************************/

.ui.loading.modal {
  display: block;
  visibility: hidden;
  z-index: -1;
}

.ui.active.modal {
  display: block;
}

/*******************************
           Variations
*******************************/

/*--------------
   Top Aligned
---------------*/

/* Top Aligned Modal */

.modals.dimmer[class*="top aligned"] .modal {
  margin: 5vh auto;
}

@media only screen and (max-width: 767px) {
  .modals.dimmer[class*="top aligned"] .modal {
    margin: 1rem auto;
  }
}

/* Legacy Top Aligned */

.legacy.modals.dimmer[class*="top aligned"] {
  padding-top: 5vh;
}

@media only screen and (max-width: 767px) {
  .legacy.modals.dimmer[class*="top aligned"] {
    padding-top: 1rem;
  }
}

/*--------------
    Scrolling
---------------*/

/* Scrolling Dimmer */

.scrolling.dimmable.dimmed {
  overflow: hidden;
}

.scrolling.dimmable > .dimmer {
  justify-content: flex-start;
}

.scrolling.dimmable.dimmed > .dimmer {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.scrolling.dimmable > .dimmer {
  position: fixed;
}

.modals.dimmer .ui.scrolling.modal {
  margin: 1rem auto;
}

/* Undetached Scrolling */

.scrolling.undetached.dimmable.dimmed {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.scrolling.undetached.dimmable.dimmed > .dimmer {
  overflow: hidden;
}

.scrolling.undetached.dimmable .ui.scrolling.modal {
  position: absolute;
  left: 50%;
  margin-top: 1rem !important;
}

/* Scrolling Content */

.ui.modal .scrolling.content {
  max-height: calc(80vh - 10em);
  overflow: auto;
}

/*--------------
   Full Screen
---------------*/

.ui.fullscreen.modal {
  width: 95% !important;
  margin: 1em auto;
}

.ui.fullscreen.modal > .header {
  padding-right: 2.25rem;
}

.ui.fullscreen.modal > .close {
  top: 1.0535rem;
  right: 1rem;
  color: rgba(0, 0, 0, 0.87);
}

/*--------------
      Size
---------------*/

.ui.modal {
  font-size: 1rem;
}

/* Mini */

.ui.mini.modal > .header:not(.ui) {
  font-size: 1.3em;
}

/* Mini Modal Width */

@media only screen and (max-width: 767px) {
  .ui.mini.modal {
    width: 95%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 768px) {
  .ui.mini.modal {
    width: 35.2%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 992px) {
  .ui.mini.modal {
    width: 340px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1200px) {
  .ui.mini.modal {
    width: 360px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.mini.modal {
    width: 380px;
    margin: 0em 0em 0em 0em;
  }
}

/* mini */

.ui.small.modal > .header:not(.ui) {
  font-size: 1.3em;
}

/* Tiny Modal Width */

@media only screen and (max-width: 767px) {
  .ui.tiny.modal {
    width: 95%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 768px) {
  .ui.tiny.modal {
    width: 52.8%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 992px) {
  .ui.tiny.modal {
    width: 510px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1200px) {
  .ui.tiny.modal {
    width: 540px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.tiny.modal {
    width: 570px;
    margin: 0em 0em 0em 0em;
  }
}

/* Small */

.ui.small.modal > .header:not(.ui) {
  font-size: 1.3em;
}

/* Small Modal Width */

@media only screen and (max-width: 767px) {
  .ui.small.modal {
    width: 95%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 768px) {
  .ui.small.modal {
    width: 70.4%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 992px) {
  .ui.small.modal {
    width: 680px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1200px) {
  .ui.small.modal {
    width: 720px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.small.modal {
    width: 760px;
    margin: 0em 0em 0em 0em;
  }
}

/* Large Modal Width */

.ui.large.modal > .header {
  font-size: 1.6em;
}

@media only screen and (max-width: 767px) {
  .ui.large.modal {
    width: 95%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 768px) {
  .ui.large.modal {
    width: 88%;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 992px) {
  .ui.large.modal {
    width: 1020px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1200px) {
  .ui.large.modal {
    width: 1080px;
    margin: 0em 0em 0em 0em;
  }
}

@media only screen and (min-width: 1920px) {
  .ui.large.modal {
    width: 1140px;
    margin: 0em 0em 0em 0em;
  }
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Nag
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Nag
*******************************/

.ui.nag {
  display: none;
  opacity: 0.95;
  position: relative;
  top: 0em;
  left: 0px;
  z-index: 999;
  min-height: 0em;
  width: 100%;
  margin: 0em;
  padding: 0.75em 1em;
  background: #555555;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
  font-size: 1rem;
  text-align: center;
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
  transition: 0.2s background ease;
}

a.ui.nag {
  cursor: pointer;
}

.ui.nag > .title {
  display: inline-block;
  margin: 0em 0.5em;
  color: #FFFFFF;
}

.ui.nag > .close.icon {
  cursor: pointer;
  opacity: 0.4;
  position: absolute;
  top: 50%;
  right: 1em;
  font-size: 1em;
  margin: -0.5em 0em 0em;
  color: #FFFFFF;
  transition: opacity 0.2s ease;
}

/*******************************
             States
*******************************/

/* Hover */

.ui.nag:hover {
  background: #555555;
  opacity: 1;
}

.ui.nag .close:hover {
  opacity: 1;
}

/*******************************
           Variations
*******************************/

/*--------------
     Static
---------------*/

.ui.overlay.nag {
  position: absolute;
  display: block;
}

/*--------------
     Fixed
---------------*/

.ui.fixed.nag {
  position: fixed;
}

/*--------------
     Bottom
---------------*/

.ui.bottom.nags,
.ui.bottom.nag {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
  top: auto;
  bottom: 0em;
}

/*--------------
     White
---------------*/

.ui.inverted.nags .nag,
.ui.inverted.nag {
  background-color: #F3F4F5;
  color: rgba(0, 0, 0, 0.85);
}

.ui.inverted.nags .nag .close,
.ui.inverted.nags .nag .title,
.ui.inverted.nag .close,
.ui.inverted.nag .title {
  color: rgba(0, 0, 0, 0.4);
}

/*******************************
           Groups
*******************************/

.ui.nags .nag {
  border-radius: 0em !important;
}

.ui.nags .nag:last-child {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.bottom.nags .nag:last-child {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Popup
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Popup
*******************************/

.ui.popup {
  display: none;
  position: absolute;
  top: 0px;
  right: 0px;
  /* Fixes content being squished when inline (moz only) */
  min-width: -webkit-min-content;
  min-width: -moz-min-content;
  min-width: min-content;
  z-index: 1900;
  border: 1px solid #D4D4D5;
  line-height: 1.4285em;
  max-width: 250px;
  background: #FFFFFF;
  padding: 0.833em 1em;
  font-weight: normal;
  font-style: normal;
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
}

.ui.popup > .header {
  padding: 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1.14285714em;
  line-height: 1.2;
  font-weight: bold;
}

.ui.popup > .header + .content {
  padding-top: 0.5em;
}

.ui.popup:before {
  position: absolute;
  content: '';
  width: 0.71428571em;
  height: 0.71428571em;
  background: #FFFFFF;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  box-shadow: 1px 1px 0px 0px #bababc;
}

/*******************************
            Types
*******************************/

/*--------------
    Tooltip
---------------*/

/* Content */

[data-tooltip] {
  position: relative;
}

/* Arrow */

[data-tooltip]:before {
  pointer-events: none;
  position: absolute;
  content: '';
  font-size: 1rem;
  width: 0.71428571em;
  height: 0.71428571em;
  background: #FFFFFF;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  box-shadow: 1px 1px 0px 0px #bababc;
}

/* Popup */

[data-tooltip]:after {
  pointer-events: none;
  content: attr(data-tooltip);
  position: absolute;
  text-transform: none;
  text-align: left;
  white-space: nowrap;
  font-size: 1rem;
  border: 1px solid #D4D4D5;
  line-height: 1.4285em;
  max-width: none;
  background: #FFFFFF;
  padding: 0.833em 1em;
  font-weight: normal;
  font-style: normal;
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
  z-index: 1;
}

/* Default Position (Top Center) */

[data-tooltip]:not([data-position]):before {
  top: auto;
  right: auto;
  bottom: 100%;
  left: 50%;
  background: #FFFFFF;
  margin-left: -0.07142857rem;
  margin-bottom: 0.14285714rem;
}

[data-tooltip]:not([data-position]):after {
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 100%;
  margin-bottom: 0.5em;
}

/* Animation */

[data-tooltip]:before,
[data-tooltip]:after {
  pointer-events: none;
  visibility: hidden;
}

[data-tooltip]:before {
  opacity: 0;
  -webkit-transform: rotate(45deg) scale(0) !important;
  transform: rotate(45deg) scale(0) !important;
  -webkit-transform-origin: center top;
  transform-origin: center top;
  transition: all 0.1s ease;
}

[data-tooltip]:after {
  opacity: 1;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
  transition: all 0.1s ease;
}

[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
  visibility: visible;
  pointer-events: auto;
}

[data-tooltip]:hover:before {
  -webkit-transform: rotate(45deg) scale(1) !important;
  transform: rotate(45deg) scale(1) !important;
  opacity: 1;
}

/* Animation Position */

[data-tooltip]:after,
[data-tooltip][data-position="top center"]:after,
[data-tooltip][data-position="bottom center"]:after {
  -webkit-transform: translateX(-50%) scale(0) !important;
  transform: translateX(-50%) scale(0) !important;
}

[data-tooltip]:hover:after,
[data-tooltip][data-position="bottom center"]:hover:after {
  -webkit-transform: translateX(-50%) scale(1) !important;
  transform: translateX(-50%) scale(1) !important;
}

[data-tooltip][data-position="left center"]:after,
[data-tooltip][data-position="right center"]:after {
  -webkit-transform: translateY(-50%) scale(0) !important;
  transform: translateY(-50%) scale(0) !important;
}

[data-tooltip][data-position="left center"]:hover:after,
[data-tooltip][data-position="right center"]:hover:after {
  -webkit-transform: translateY(-50%) scale(1) !important;
  transform: translateY(-50%) scale(1) !important;
}

[data-tooltip][data-position="top left"]:after,
[data-tooltip][data-position="top right"]:after,
[data-tooltip][data-position="bottom left"]:after,
[data-tooltip][data-position="bottom right"]:after {
  -webkit-transform: scale(0) !important;
  transform: scale(0) !important;
}

[data-tooltip][data-position="top left"]:hover:after,
[data-tooltip][data-position="top right"]:hover:after,
[data-tooltip][data-position="bottom left"]:hover:after,
[data-tooltip][data-position="bottom right"]:hover:after {
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}

/*--------------
    Inverted
---------------*/

/* Arrow */

[data-tooltip][data-inverted]:before {
  box-shadow: none !important;
}

/* Arrow Position */

[data-tooltip][data-inverted]:before {
  background: #1B1C1D;
}

/* Popup  */

[data-tooltip][data-inverted]:after {
  background: #1B1C1D;
  color: #FFFFFF;
  border: none;
  box-shadow: none;
}

[data-tooltip][data-inverted]:after .header {
  background-color: none;
  color: #FFFFFF;
}

/*--------------
    Position
---------------*/

/* Top Center */

[data-position="top center"][data-tooltip]:after {
  top: auto;
  right: auto;
  left: 50%;
  bottom: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  margin-bottom: 0.5em;
}

[data-position="top center"][data-tooltip]:before {
  top: auto;
  right: auto;
  bottom: 100%;
  left: 50%;
  background: #FFFFFF;
  margin-left: -0.07142857rem;
  margin-bottom: 0.14285714rem;
}

/* Top Left */

[data-position="top left"][data-tooltip]:after {
  top: auto;
  right: auto;
  left: 0;
  bottom: 100%;
  margin-bottom: 0.5em;
}

[data-position="top left"][data-tooltip]:before {
  top: auto;
  right: auto;
  bottom: 100%;
  left: 1em;
  margin-left: -0.07142857rem;
  margin-bottom: 0.14285714rem;
}

/* Top Right */

[data-position="top right"][data-tooltip]:after {
  top: auto;
  left: auto;
  right: 0;
  bottom: 100%;
  margin-bottom: 0.5em;
}

[data-position="top right"][data-tooltip]:before {
  top: auto;
  left: auto;
  bottom: 100%;
  right: 1em;
  margin-left: -0.07142857rem;
  margin-bottom: 0.14285714rem;
}

/* Bottom Center */

[data-position="bottom center"][data-tooltip]:after {
  bottom: auto;
  right: auto;
  left: 50%;
  top: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  margin-top: 0.5em;
}

[data-position="bottom center"][data-tooltip]:before {
  bottom: auto;
  right: auto;
  top: 100%;
  left: 50%;
  margin-left: -0.07142857rem;
  margin-top: 0.14285714rem;
}

/* Bottom Left */

[data-position="bottom left"][data-tooltip]:after {
  left: 0;
  top: 100%;
  margin-top: 0.5em;
}

[data-position="bottom left"][data-tooltip]:before {
  bottom: auto;
  right: auto;
  top: 100%;
  left: 1em;
  margin-left: -0.07142857rem;
  margin-top: 0.14285714rem;
}

/* Bottom Right */

[data-position="bottom right"][data-tooltip]:after {
  right: 0;
  top: 100%;
  margin-top: 0.5em;
}

[data-position="bottom right"][data-tooltip]:before {
  bottom: auto;
  left: auto;
  top: 100%;
  right: 1em;
  margin-left: -0.14285714rem;
  margin-top: 0.07142857rem;
}

/* Left Center */

[data-position="left center"][data-tooltip]:after {
  right: 100%;
  top: 50%;
  margin-right: 0.5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

[data-position="left center"][data-tooltip]:before {
  right: 100%;
  top: 50%;
  margin-top: -0.14285714rem;
  margin-right: -0.07142857rem;
}

/* Right Center */

[data-position="right center"][data-tooltip]:after {
  left: 100%;
  top: 50%;
  margin-left: 0.5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

[data-position="right center"][data-tooltip]:before {
  left: 100%;
  top: 50%;
  margin-top: -0.07142857rem;
  margin-left: 0.14285714rem;
}

/* Arrow */

[data-position~="bottom"][data-tooltip]:before {
  background: #FFFFFF;
  box-shadow: -1px -1px 0px 0px #bababc;
}

[data-position="left center"][data-tooltip]:before {
  background: #FFFFFF;
  box-shadow: 1px -1px 0px 0px #bababc;
}

[data-position="right center"][data-tooltip]:before {
  background: #FFFFFF;
  box-shadow: -1px 1px 0px 0px #bababc;
}

[data-position~="top"][data-tooltip]:before {
  background: #FFFFFF;
}

/* Inverted Arrow Color */

[data-inverted][data-position~="bottom"][data-tooltip]:before {
  background: #1B1C1D;
  box-shadow: -1px -1px 0px 0px #bababc;
}

[data-inverted][data-position="left center"][data-tooltip]:before {
  background: #1B1C1D;
  box-shadow: 1px -1px 0px 0px #bababc;
}

[data-inverted][data-position="right center"][data-tooltip]:before {
  background: #1B1C1D;
  box-shadow: -1px 1px 0px 0px #bababc;
}

[data-inverted][data-position~="top"][data-tooltip]:before {
  background: #1B1C1D;
}

[data-position~="bottom"][data-tooltip]:before {
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

[data-position~="bottom"][data-tooltip]:after {
  -webkit-transform-origin: center top;
  transform-origin: center top;
}

[data-position="left center"][data-tooltip]:before {
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

[data-position="left center"][data-tooltip]:after {
  -webkit-transform-origin: right center;
  transform-origin: right center;
}

[data-position="right center"][data-tooltip]:before {
  -webkit-transform-origin: right center;
  transform-origin: right center;
}

[data-position="right center"][data-tooltip]:after {
  -webkit-transform-origin: left center;
  transform-origin: left center;
}

/*--------------
     Spacing
---------------*/

.ui.popup {
  margin: 0em;
}

/* Extending from Top */

.ui.top.popup {
  margin: 0em 0em 0.71428571em;
}

.ui.top.left.popup {
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
}

.ui.top.center.popup {
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

.ui.top.right.popup {
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
}

/* Extending from Vertical Center */

.ui.left.center.popup {
  margin: 0em 0.71428571em 0em 0em;
  -webkit-transform-origin: right 50%;
  transform-origin: right 50%;
}

.ui.right.center.popup {
  margin: 0em 0em 0em 0.71428571em;
  -webkit-transform-origin: left 50%;
  transform-origin: left 50%;
}

/* Extending from Bottom */

.ui.bottom.popup {
  margin: 0.71428571em 0em 0em;
}

.ui.bottom.left.popup {
  -webkit-transform-origin: left top;
  transform-origin: left top;
}

.ui.bottom.center.popup {
  -webkit-transform-origin: center top;
  transform-origin: center top;
}

.ui.bottom.right.popup {
  -webkit-transform-origin: right top;
  transform-origin: right top;
}

/*--------------
     Pointer
---------------*/

/*--- Below ---*/

.ui.bottom.center.popup:before {
  margin-left: -0.30714286em;
  top: -0.30714286em;
  left: 50%;
  right: auto;
  bottom: auto;
  box-shadow: -1px -1px 0px 0px #bababc;
}

.ui.bottom.left.popup {
  margin-left: 0em;
}

/*rtl:rename*/

.ui.bottom.left.popup:before {
  top: -0.30714286em;
  left: 1em;
  right: auto;
  bottom: auto;
  margin-left: 0em;
  box-shadow: -1px -1px 0px 0px #bababc;
}

.ui.bottom.right.popup {
  margin-right: 0em;
}

/*rtl:rename*/

.ui.bottom.right.popup:before {
  top: -0.30714286em;
  right: 1em;
  bottom: auto;
  left: auto;
  margin-left: 0em;
  box-shadow: -1px -1px 0px 0px #bababc;
}

/*--- Above ---*/

.ui.top.center.popup:before {
  top: auto;
  right: auto;
  bottom: -0.30714286em;
  left: 50%;
  margin-left: -0.30714286em;
}

.ui.top.left.popup {
  margin-left: 0em;
}

/*rtl:rename*/

.ui.top.left.popup:before {
  bottom: -0.30714286em;
  left: 1em;
  top: auto;
  right: auto;
  margin-left: 0em;
}

.ui.top.right.popup {
  margin-right: 0em;
}

/*rtl:rename*/

.ui.top.right.popup:before {
  bottom: -0.30714286em;
  right: 1em;
  top: auto;
  left: auto;
  margin-left: 0em;
}

/*--- Left Center ---*/

/*rtl:rename*/

.ui.left.center.popup:before {
  top: 50%;
  right: -0.30714286em;
  bottom: auto;
  left: auto;
  margin-top: -0.30714286em;
  box-shadow: 1px -1px 0px 0px #bababc;
}

/*--- Right Center  ---*/

/*rtl:rename*/

.ui.right.center.popup:before {
  top: 50%;
  left: -0.30714286em;
  bottom: auto;
  right: auto;
  margin-top: -0.30714286em;
  box-shadow: -1px 1px 0px 0px #bababc;
}

/* Arrow Color By Location */

.ui.bottom.popup:before {
  background: #FFFFFF;
}

.ui.right.center.popup:before,
.ui.left.center.popup:before {
  background: #FFFFFF;
}

.ui.top.popup:before {
  background: #FFFFFF;
}

/* Inverted Arrow Color */

.ui.inverted.bottom.popup:before {
  background: #1B1C1D;
}

.ui.inverted.right.center.popup:before,
.ui.inverted.left.center.popup:before {
  background: #1B1C1D;
}

.ui.inverted.top.popup:before {
  background: #1B1C1D;
}

/*******************************
            Coupling
*******************************/

/* Immediate Nested Grid */

.ui.popup > .ui.grid:not(.padded) {
  width: calc(100% + 1.75rem);
  margin: -0.7rem -0.875rem;
}

/*******************************
            States
*******************************/

.ui.loading.popup {
  display: block;
  visibility: hidden;
  z-index: -1;
}

.ui.animating.popup,
.ui.visible.popup {
  display: block;
}

.ui.visible.popup {
  -webkit-transform: translateZ(0px);
  transform: translateZ(0px);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/*******************************
            Variations
*******************************/

/*--------------
     Basic
---------------*/

.ui.basic.popup:before {
  display: none;
}

/*--------------
     Wide
---------------*/

.ui.wide.popup {
  max-width: 350px;
}

.ui[class*="very wide"].popup {
  max-width: 550px;
}

@media only screen and (max-width: 767px) {
  .ui.wide.popup,
  .ui[class*="very wide"].popup {
    max-width: 250px;
  }
}

/*--------------
     Fluid
---------------*/

.ui.fluid.popup {
  width: 100%;
  max-width: none;
}

/*--------------
     Colors
---------------*/

/* Inverted colors  */

.ui.inverted.popup {
  background: #1B1C1D;
  color: #FFFFFF;
  border: none;
  box-shadow: none;
}

.ui.inverted.popup .header {
  background-color: none;
  color: #FFFFFF;
}

.ui.inverted.popup:before {
  background-color: #1B1C1D;
  box-shadow: none !important;
}

/*--------------
     Flowing
---------------*/

.ui.flowing.popup {
  max-width: none;
}

/*--------------
     Sizes
---------------*/

.ui.mini.popup {
  font-size: 0.78571429rem;
}

.ui.tiny.popup {
  font-size: 0.85714286rem;
}

.ui.small.popup {
  font-size: 0.92857143rem;
}

.ui.popup {
  font-size: 1rem;
}

.ui.large.popup {
  font-size: 1.14285714rem;
}

.ui.huge.popup {
  font-size: 1.42857143rem;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Progress Bar
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Progress
*******************************/

.ui.progress {
  position: relative;
  display: block;
  max-width: 100%;
  border: none;
  margin: 1em 0em 2.5em;
  box-shadow: none;
  background: rgba(0, 0, 0, 0.1);
  padding: 0em;
  border-radius: 0.28571429rem;
}

.ui.progress:first-child {
  margin: 0em 0em 2.5em;
}

.ui.progress:last-child {
  margin: 0em 0em 1.5em;
}

/*******************************
            Content
*******************************/

/* Activity Bar */

.ui.progress .bar {
  display: block;
  line-height: 1;
  position: relative;
  width: 0%;
  min-width: 2em;
  background: #888888;
  border-radius: 0.28571429rem;
  transition: width 0.1s ease, background-color 0.1s ease;
}

/* Percent Complete */

.ui.progress .bar > .progress {
  white-space: nowrap;
  position: absolute;
  width: auto;
  font-size: 0.92857143em;
  top: 50%;
  right: 0.5em;
  left: auto;
  bottom: auto;
  color: rgba(255, 255, 255, 0.7);
  text-shadow: none;
  margin-top: -0.5em;
  font-weight: bold;
  text-align: left;
}

/* Label */

.ui.progress > .label {
  position: absolute;
  width: 100%;
  font-size: 1em;
  top: 100%;
  right: auto;
  left: 0%;
  bottom: auto;
  color: rgba(0, 0, 0, 0.87);
  font-weight: bold;
  text-shadow: none;
  margin-top: 0.2em;
  text-align: center;
  transition: color 0.4s ease;
}

/*******************************
            Types
*******************************/

/* Indicating */

.ui.indicating.progress[data-percent^="1"] .bar,
.ui.indicating.progress[data-percent^="2"] .bar {
  background-color: #D95C5C;
}

.ui.indicating.progress[data-percent^="3"] .bar {
  background-color: #EFBC72;
}

.ui.indicating.progress[data-percent^="4"] .bar,
.ui.indicating.progress[data-percent^="5"] .bar {
  background-color: #E6BB48;
}

.ui.indicating.progress[data-percent^="6"] .bar {
  background-color: #DDC928;
}

.ui.indicating.progress[data-percent^="7"] .bar,
.ui.indicating.progress[data-percent^="8"] .bar {
  background-color: #B4D95C;
}

.ui.indicating.progress[data-percent^="9"] .bar,
.ui.indicating.progress[data-percent^="100"] .bar {
  background-color: #66DA81;
}

/* Indicating Label */

.ui.indicating.progress[data-percent^="1"] .label,
.ui.indicating.progress[data-percent^="2"] .label {
  color: rgba(0, 0, 0, 0.87);
}

.ui.indicating.progress[data-percent^="3"] .label {
  color: rgba(0, 0, 0, 0.87);
}

.ui.indicating.progress[data-percent^="4"] .label,
.ui.indicating.progress[data-percent^="5"] .label {
  color: rgba(0, 0, 0, 0.87);
}

.ui.indicating.progress[data-percent^="6"] .label {
  color: rgba(0, 0, 0, 0.87);
}

.ui.indicating.progress[data-percent^="7"] .label,
.ui.indicating.progress[data-percent^="8"] .label {
  color: rgba(0, 0, 0, 0.87);
}

.ui.indicating.progress[data-percent^="9"] .label,
.ui.indicating.progress[data-percent^="100"] .label {
  color: rgba(0, 0, 0, 0.87);
}

/* Single Digits */

.ui.indicating.progress[data-percent="1"] .bar,
.ui.indicating.progress[data-percent="2"] .bar,
.ui.indicating.progress[data-percent="3"] .bar,
.ui.indicating.progress[data-percent="4"] .bar,
.ui.indicating.progress[data-percent="5"] .bar,
.ui.indicating.progress[data-percent="6"] .bar,
.ui.indicating.progress[data-percent="7"] .bar,
.ui.indicating.progress[data-percent="8"] .bar,
.ui.indicating.progress[data-percent="9"] .bar {
  background-color: #D95C5C;
}

.ui.indicating.progress[data-percent="1"] .label,
.ui.indicating.progress[data-percent="2"] .label,
.ui.indicating.progress[data-percent="3"] .label,
.ui.indicating.progress[data-percent="4"] .label,
.ui.indicating.progress[data-percent="5"] .label,
.ui.indicating.progress[data-percent="6"] .label,
.ui.indicating.progress[data-percent="7"] .label,
.ui.indicating.progress[data-percent="8"] .label,
.ui.indicating.progress[data-percent="9"] .label {
  color: rgba(0, 0, 0, 0.87);
}

/* Indicating Success */

.ui.indicating.progress.success .label {
  color: #1A531B;
}

/*******************************
             States
*******************************/

/*--------------
     Success
---------------*/

.ui.progress.success .bar {
  background-color: #21BA45 !important;
}

.ui.progress.success .bar,
.ui.progress.success .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}

.ui.progress.success > .label {
  color: #1A531B;
}

/*--------------
     Warning
---------------*/

.ui.progress.warning .bar {
  background-color: #F2C037 !important;
}

.ui.progress.warning .bar,
.ui.progress.warning .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}

.ui.progress.warning > .label {
  color: #794B02;
}

/*--------------
     Error
---------------*/

.ui.progress.error .bar {
  background-color: #DB2828 !important;
}

.ui.progress.error .bar,
.ui.progress.error .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}

.ui.progress.error > .label {
  color: #912D2B;
}

/*--------------
     Active
---------------*/

.ui.active.progress .bar {
  position: relative;
  min-width: 2em;
}

.ui.active.progress .bar::after {
  content: '';
  opacity: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: #FFFFFF;
  border-radius: 0.28571429rem;
  -webkit-animation: progress-active 2s ease infinite;
  animation: progress-active 2s ease infinite;
}

@-webkit-keyframes progress-active {
  0% {
    opacity: 0.3;
    width: 0;
  }

  100% {
    opacity: 0;
    width: 100%;
  }
}

@keyframes progress-active {
  0% {
    opacity: 0.3;
    width: 0;
  }

  100% {
    opacity: 0;
    width: 100%;
  }
}

/*--------------
    Disabled
---------------*/

.ui.disabled.progress {
  opacity: 0.35;
}

.ui.disabled.progress .bar,
.ui.disabled.progress .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}

/*******************************
           Variations
*******************************/

/*--------------
    Inverted
---------------*/

.ui.inverted.progress {
  background: rgba(255, 255, 255, 0.08);
  border: none;
}

.ui.inverted.progress .bar {
  background: #888888;
}

.ui.inverted.progress .bar > .progress {
  color: #F9FAFB;
}

.ui.inverted.progress > .label {
  color: #FFFFFF;
}

.ui.inverted.progress.success > .label {
  color: #21BA45;
}

.ui.inverted.progress.warning > .label {
  color: #F2C037;
}

.ui.inverted.progress.error > .label {
  color: #DB2828;
}

/*--------------
    Attached
---------------*/

/* bottom attached */

.ui.progress.attached {
  background: transparent;
  position: relative;
  border: none;
  margin: 0em;
}

.ui.progress.attached,
.ui.progress.attached .bar {
  display: block;
  height: 0.2rem;
  padding: 0px;
  overflow: hidden;
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

.ui.progress.attached .bar {
  border-radius: 0em;
}

/* top attached */

.ui.progress.top.attached,
.ui.progress.top.attached .bar {
  top: 0px;
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.progress.top.attached .bar {
  border-radius: 0em;
}

/* Coupling */

.ui.segment > .ui.attached.progress,
.ui.card > .ui.attached.progress {
  position: absolute;
  top: auto;
  left: 0;
  bottom: 100%;
  width: 100%;
}

.ui.segment > .ui.bottom.attached.progress,
.ui.card > .ui.bottom.attached.progress {
  top: 100%;
  bottom: auto;
}

/*--------------
     Colors
---------------*/

/* Red */

.ui.red.progress .bar {
  background-color: #DB2828;
}

.ui.red.inverted.progress .bar {
  background-color: #FF695E;
}

/* Orange */

.ui.orange.progress .bar {
  background-color: #F2711C;
}

.ui.orange.inverted.progress .bar {
  background-color: #FF851B;
}

/* Yellow */

.ui.yellow.progress .bar {
  background-color: #FBBD08;
}

.ui.yellow.inverted.progress .bar {
  background-color: #FFE21F;
}

/* Olive */

.ui.olive.progress .bar {
  background-color: #B5CC18;
}

.ui.olive.inverted.progress .bar {
  background-color: #D9E778;
}

/* Green */

.ui.green.progress .bar {
  background-color: #21BA45;
}

.ui.green.inverted.progress .bar {
  background-color: #2ECC40;
}

/* Teal */

.ui.teal.progress .bar {
  background-color: #00B5AD;
}

.ui.teal.inverted.progress .bar {
  background-color: #6DFFFF;
}

/* Blue */

.ui.blue.progress .bar {
  background-color: #2185D0;
}

.ui.blue.inverted.progress .bar {
  background-color: #54C8FF;
}

/* Violet */

.ui.violet.progress .bar {
  background-color: #6435C9;
}

.ui.violet.inverted.progress .bar {
  background-color: #A291FB;
}

/* Purple */

.ui.purple.progress .bar {
  background-color: #A333C8;
}

.ui.purple.inverted.progress .bar {
  background-color: #DC73FF;
}

/* Pink */

.ui.pink.progress .bar {
  background-color: #E03997;
}

.ui.pink.inverted.progress .bar {
  background-color: #FF8EDF;
}

/* Brown */

.ui.brown.progress .bar {
  background-color: #A5673F;
}

.ui.brown.inverted.progress .bar {
  background-color: #D67C1C;
}

/* Grey */

.ui.grey.progress .bar {
  background-color: #767676;
}

.ui.grey.inverted.progress .bar {
  background-color: #DCDDDE;
}

/* Black */

.ui.black.progress .bar {
  background-color: #1B1C1D;
}

.ui.black.inverted.progress .bar {
  background-color: #545454;
}

/*--------------
     Sizes
---------------*/

.ui.tiny.progress {
  font-size: 0.85714286rem;
}

.ui.tiny.progress .bar {
  height: 0.5em;
}

.ui.small.progress {
  font-size: 0.92857143rem;
}

.ui.small.progress .bar {
  height: 1em;
}

.ui.progress {
  font-size: 1rem;
}

.ui.progress .bar {
  height: 1.75em;
}

.ui.large.progress {
  font-size: 1.14285714rem;
}

.ui.large.progress .bar {
  height: 2.5em;
}

.ui.big.progress {
  font-size: 1.28571429rem;
}

.ui.big.progress .bar {
  height: 3.5em;
}

/*******************************
            Progress
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Rating
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           Rating
*******************************/

.ui.rating {
  display: inline-flex;
  white-space: nowrap;
  vertical-align: baseline;
}

.ui.rating:last-child {
  margin-right: 0em;
}

/* Icon */

.ui.rating .icon {
  padding: 0em;
  margin: 0em;
  text-align: center;
  font-weight: normal;
  font-style: normal;
  flex: 1 0 auto;
  cursor: pointer;
  width: 1.25em;
  height: auto;
  transition: opacity 0.1s ease, background 0.1s ease, text-shadow 0.1s ease, color 0.1s ease;
}

/*******************************
             Types
*******************************/

/*-------------------
      Standard
--------------------*/

/* Inactive Icon */

.ui.rating .icon {
  background: transparent;
  color: rgba(0, 0, 0, 0.15);
}

/* Active Icon */

.ui.rating .active.icon {
  background: transparent;
  color: rgba(0, 0, 0, 0.85);
}

/* Selected Icon */

.ui.rating .icon.selected,
.ui.rating .icon.selected.active {
  background: transparent;
  color: rgba(0, 0, 0, 0.87);
}

/*-------------------
        Star
--------------------*/

/* Inactive */

.ui.star.rating .icon {
  width: 1.25em;
  height: auto;
  background: transparent;
  color: rgba(0, 0, 0, 0.15);
  text-shadow: none;
}

/* Active Star */

.ui.star.rating .active.icon {
  background: transparent !important;
  color: #FFE623 !important;
  text-shadow: 0px -1px 0px #DDC507, -1px 0px 0px #DDC507, 0px 1px 0px #DDC507, 1px 0px 0px #DDC507 !important;
}

/* Selected Star */

.ui.star.rating .icon.selected,
.ui.star.rating .icon.selected.active {
  background: transparent !important;
  color: #FFCC00 !important;
  text-shadow: 0px -1px 0px #E6A200, -1px 0px 0px #E6A200, 0px 1px 0px #E6A200, 1px 0px 0px #E6A200 !important;
}

/*-------------------
        Heart
--------------------*/

.ui.heart.rating .icon {
  width: 1.4em;
  height: auto;
  background: transparent;
  color: rgba(0, 0, 0, 0.15);
  text-shadow: none !important;
}

/* Active Heart */

.ui.heart.rating .active.icon {
  background: transparent !important;
  color: #FF6D75 !important;
  text-shadow: 0px -1px 0px #CD0707, -1px 0px 0px #CD0707, 0px 1px 0px #CD0707, 1px 0px 0px #CD0707 !important;
}

/* Selected Heart */

.ui.heart.rating .icon.selected,
.ui.heart.rating .icon.selected.active {
  background: transparent !important;
  color: #FF3000 !important;
  text-shadow: 0px -1px 0px #AA0101, -1px 0px 0px #AA0101, 0px 1px 0px #AA0101, 1px 0px 0px #AA0101 !important;
}

/*******************************
             States
*******************************/

/*-------------------
       Disabled
--------------------*/

/* disabled rating */

.ui.disabled.rating .icon {
  cursor: default;
}

/*-------------------
   User Interactive
--------------------*/

/* Selected Rating */

.ui.rating.selected .active.icon {
  opacity: 1;
}

.ui.rating.selected .icon.selected,
.ui.rating .icon.selected {
  opacity: 1;
}

/*******************************
          Variations
*******************************/

.ui.mini.rating {
  font-size: 0.78571429rem;
}

.ui.tiny.rating {
  font-size: 0.85714286rem;
}

.ui.small.rating {
  font-size: 0.92857143rem;
}

.ui.rating {
  font-size: 1rem;
}

.ui.large.rating {
  font-size: 1.14285714rem;
}

.ui.huge.rating {
  font-size: 1.42857143rem;
}

.ui.massive.rating {
  font-size: 2rem;
}

/*******************************
         Theme Overrides
*******************************/

@font-face {
  font-family: 'Rating';
  src: url(data:application/x-font-ttf;charset=utf-8;base64,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) format('truetype'), url(data:application/font-woff;charset=utf-8;base64,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kIiRi5MI5vdUFfcni4vCBYufhJx8mn2ZepJ3i3aLeoR9fX18g3qLdwiLVAUO+yaLshWL+AQFi5GNkY+RjpCQj5KNj42PjI+LCPfAiwWPi4+Kj4mRiZCHj4aPhY2Fi4UIi/wEBYuEiYWHhoeGhoeFiIiKhoqHi4GLhI6EkQj7EvcN+xL7DQWEhYOIgouHi4eLh42EjoaPiJCHkImRi5IIDov3XRWLko2Rj5Kltq+vuKW4pbuZvYu9i7t9uHG4ca9npWCPhI2Fi4SLhYmEh4RxYGdoXnAIXnFbflmLWYtbmF6lXqZnrnG2h5KJkouRCLCLFaRkq2yxdLF0tH+4i7iLtJexorGiq6qksm64Z61goZZ3kXaLdItnfm1ycnJybX9oiwhoi22XcqRypH6pi6+LopGglp9gdWdpbl4I9xiwFYuHjIiOiI6IjoqPi4+LjoyOjo2OjY6Lj4ubkJmXl5eWmZGbi4+LjoyOjo2OjY6LjwiLj4mOiY6IjYiNh4tzi3eCenp6eoJ3i3MIDov3XRWLko2Sj5GouK+utqW3pbqYvouci5yJnIgIm6cFjY6NjI+LjIuNi42JjYqOio+JjomOiY6KjomOiY6JjoqNioyKjomMiYuHi4qLiouLCHdnbVVjQ2NDbVV3Zwh9cgWJiIiJiIuJi36SdJiIjYmOi46LjY+UlJlvl3KcdJ90oHeie6WHkYmSi5IIsIsVqlq0Z711CKGzBXqXfpqCnoKdhp6LoIuikaCWn2B1Z2luXgj3GLAVi4eMiI6IjoiOio+Lj4uOjI6OjY6NjouPi5uQmZeXl5aZkZuLj4uOjI6OjY6NjouPCIuPiY6JjoiNiI2Hi3OLd4J6enp6gneLcwji+10VoLAFtI+wmK2hrqKnqKKvdq1wp2uhCJ2rBZ1/nHycepx6mHqWeY+EjYWLhIuEiYWHhIR/gH1+fG9qaXJmeWV5Y4Jhiwi53BXb9yQFjIKMg4uEi3CDc3x1fHV3fHOBCA6L1BWL90sFi5WPlJKSkpKTj5aLCNmLBZKPmJqepJaZlZeVlY+Qj5ONl42WjpeOmI+YkZWTk5OSk46Vi5uLmYiYhZiFlIGSfgiSfo55i3WLeYd5gXgIvosFn4uchJl8mn2Seot3i3qGfIJ9jYSLhYuEi3yIfoR+i4eLh4uHi3eGen99i3CDdnt8CHt8dYNwiwhmiwV5i3mNeY95kHeRc5N1k36Ph4sIOYsFgIuDjoSShJKHlIuVCLCdFYuGjIePiI+Hj4mQi5CLj42Pj46OjY+LkIuQiZCIjoePh42Gi4aLh4mHh4eIioaLhgjUeRWUiwWNi46Lj4qOi4+KjYqOi4+Kj4mQio6KjYqNio+Kj4mQio6KjIqzfquEpIsIrosFr4uemouri5CKkYqQkY6QkI6SjpKNkouSi5KJkoiRlZWQlouYi5CKkImRiZGJj4iOCJGMkI+PlI+UjZKLkouViJODk4SSgo+CiwgmiwWLlpCalJ6UnpCbi5aLnoiYhJSFlH+QeYuGhoeDiYCJf4h/h3+IfoWBg4KHh4SCgH4Ii4qIiYiGh4aIh4mIiIiIh4eGh4aHh4eHiIiHiIeHiIiHiIeKh4mIioiLCIKLi/tLBQ6L90sVi/dLBYuVj5OSk5KSk46WiwjdiwWPi5iPoZOkk6CRnZCdj56Nn4sIq4sFpougg5x8m3yTd4txCIuJBZd8kHuLd4uHi4eLh5J+jn6LfIuEi4SJhZR9kHyLeot3hHp8fH19eoR3iwhYiwWVeI95i3mLdIh6hH6EfoKBfoV+hX2He4uBi4OPg5KFkYaTh5SHlYiTipOKk4qTiJMIiZSIkYiPgZSBl4CaeKR+moSPCD2LBYCLg4+EkoSSh5SLlQiw9zgVi4aMh4+Ij4ePiZCLkIuPjY+Pjo6Nj4uQi5CJkIiOh4+HjYaLhouHiYeHh4iKhouGCNT7OBWUiwWOi46Kj4mPio+IjoiPh4+IjoePiI+Hj4aPho6HjoiNiI6Hj4aOho6Ii4qWfpKDj4YIk4ORgY5+j36OgI1/jYCPg5CGnYuXj5GUkpSOmYuei5aGmoKfgp6GmouWCPCLBZSLlI+SkpOTjpOLlYuSiZKHlIeUho+Fi46PjY+NkY2RjJCLkIuYhpaBlY6RjZKLkgiLkomSiJKIkoaQhY6MkIyRi5CLm4aXgpOBkn6Pe4sIZosFcotrhGN9iouIioaJh4qHiomKiYqIioaKh4mHioiKiYuHioiLh4qIi4mLCIKLi/tLBQ77lIv3txWLkpCPlo0I9yOgzPcWBY6SkI+RiwiL/BL7FUcFh4mHioiLh4uIjImOiY6KjouPi4yLjYyOCKP3IyPwBYaQiZCLjwgOi/fFFYu1l6yjoqOjrZe2i5aLl4mYh5eHloWWhJaElIWShZOEkoWShJKSkpGTkpKRlJGWkgiWkpaRl4+Yj5eNlou2i61/o3OjdJdqi2GLYXVgYGAI+0b7QAWHiIeJhouGi4eNh44I+0b3QAWJjYmNh4+IjoaRg5SElIWVhZSFlYaWh5mGmImYi5gIsIsVi2ucaa9oCPc6+zT3OvczBa+vnK2Lq4ubiZiHl4eXhpSFkoSSg5GCj4KQgo2CjYONgYuBi4KLgIl/hoCGgIWChAiBg4OFhISEhYaFhoaIhoaJhYuFi4aNiJCGkIaRhJGEkoORgZOCkoCRgJB/kICNgosIgYuBi4OJgomCiYKGgoeDhYSEhYSGgod/h3+Jfot7CA77JouyFYv4BAWLkY2Rj5GOkJCPko2PjY+Mj4sI98CLBY+Lj4qPiZGJkIePho+FjYWLhQiL/AQFi4SJhYeGh4aGh4WIiIqGioeLgYuEjoSRCPsS9w37EvsNBYSFg4iCi4eLh4uHjYSOho+IkIeQiZGLkgiwkxX3JvchpHL3DfsIi/f3+7iLi/v3BQ5ni8sVi/c5BYuSjpKQkJCQko6Siwj3VIuLwgWLrpippKSkpKmYrouvi6l+pHKkcpdti2gIi0IFi4aKhoeIh4eHiYaLCHmLBYaLh42Hj4eOipCLkAiL1AWLn4OcfZp9mXqSdot3i3qEfX18fIR6i3cIi1SniwWSi5KIkIaQho6Ei4QIi/s5BYuDiIWGhoaFhImEiwj7p4sFhIuEjYaRhpCIkYuTCA5njPe6FYyQkI6UjQj3I6DM9xYFj5KPj5GLkIuQh4+ECMv7FvcjdgWUiZCIjYaNhoiFhYUIIyak+yMFjIWKhomHiYiIiYaLiIuHjIeNCPsUz/sVRwWHiYeKiIuHi4eNiY6Jj4uQjJEIo/cjI/AFhZGJkY2QCPeB+z0VnILlW3rxiJ6ZmNTS+wydgpxe54v7pwUOZ4vCFYv3SwWLkI2Pjo+Pjo+NkIsI3osFkIuPiY6Ij4eNh4uGCIv7SwWLhomHh4eIh4eKhosIOIsFhouHjIePiI+Jj4uQCLCvFYuGjIePh46IkImQi5CLj42Pjo6PjY+LkIuQiZCIjoePh42Gi4aLhomIh4eIioaLhgjvZxWL90sFi5CNj46Oj4+PjZCLj4ySkJWWlZaVl5SXmJuVl5GRjo6OkI6RjZCNkIyPjI6MkY2TCIySjJGMj4yPjZCOkY6RjpCPjo6Pj42Qi5SLk4qSiZKJkYiPiJCIjoiPho6GjYeMhwiNh4yGjIaMhYuHi4iLiIuHi4eLg4uEiYSJhImFiYeJh4mFh4WLioqJiomJiIqJiokIi4qKiIqJCNqLBZqLmIWWgJaAkH+LfIt6hn2Af46DjYSLhIt9h36Cf4+Bi3+HgImAhYKEhI12hnmAfgh/fXiDcosIZosFfot+jHyOfI5/joOOg41/j32Qc5N8j4SMhouHjYiOh4+Jj4uQCA5ni/c5FYuGjYaOiI+Hj4mQiwjeiwWQi4+Njo+Pjo2Qi5AIi/dKBYuQiZCHjoiPh42Giwg4iwWGi4eJh4eIiImGi4YIi/tKBbD3JhWLkIyPj4+OjpCNkIuQi4+Jj4iOh42Hi4aLhomHiIeHh4eKhouGi4aMiI+Hj4qPi5AI7/snFYv3SwWLkI2Qj46Oj4+NkIuSi5qPo5OZkJePk46TjZeOmo6ajpiMmIsIsIsFpIueg5d9ln6Qeol1koSRgo2Aj4CLgIeAlH+Pfot9i4WJhIiCloCQfIt7i3yFfoGACICAfoZ8iwg8iwWMiIyJi4mMiYyJjYmMiIyKi4mPhI2GjYeNh42GjYOMhIyEi4SLhouHi4iLiYuGioYIioWKhomHioeJh4iGh4eIh4aIh4iFiISJhImDioKLhouHjYiPh4+Ij4iRiJGJkIqPCIqPipGKkomTipGKj4qOiZCJkYiQiJCIjoWSgZZ+nIKXgZaBloGWhJGHi4aLh42HjwiIjomQi48IDviUFPiUFYsMCgAAAAADAgABkAAFAAABTAFmAAAARwFMAWYAAAD1ABkAhAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAAAAAAAAAAAAAEAAAPFlAeD/4P/gAeAAIAAAAAEAAAAAAAAAAAAAACAAAAAAAAIAAAADAAAAFAADAAEAAAAUAAQAkAAAACAAIAAEAAAAAQAg5gXwBvAN8CPwLvBu8HDwivCX8JzxI/Fl//3//wAAAAAAIOYA8ATwDPAj8C7wbvBw8Ifwl/Cc8SPxZP/9//8AAf/jGgQQBhABD+wP4g+jD6IPjA+AD3wO9g62AAMAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAAJrVlLJfDzz1AAsCAAAAAADP/GODAAAAAM/8Y4MAAP/bAgAB2wAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAACAAABAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAdwAAAHcAAACAAAjAZMAHwFJAAABbgAAAgAAAAIAAAACAAAAAgAAAAEAAAACAAAAAW4AAAHcAAAB3AABAdwAAAHcAAAAAFAAABwAAAAAAA4ArgABAAAAAAABAAwAAAABAAAAAAACAA4AQAABAAAAAAADAAwAIgABAAAAAAAEAAwATgABAAAAAAAFABYADAABAAAAAAAGAAYALgABAAAAAAAKADQAWgADAAEECQABAAwAAAADAAEECQACAA4AQAADAAEECQADAAwAIgADAAEECQAEAAwATgADAAEECQAFABYADAADAAEECQAGAAwANAADAAEECQAKADQAWgByAGEAdABpAG4AZwBWAGUAcgBzAGkAbwBuACAAMQAuADAAcgBhAHQAaQBuAGdyYXRpbmcAcgBhAHQAaQBuAGcAUgBlAGcAdQBsAGEAcgByAGEAdABpAG4AZwBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==) format('woff');
  font-weight: normal;
  font-style: normal;
}

.ui.rating .icon {
  font-family: 'Rating';
  line-height: 1;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-weight: normal;
  font-style: normal;
  text-align: center;
}

/* Empty Star */

.ui.rating .icon:before {
  content: '\f005';
}

/* Active Star */

.ui.rating .active.icon:before {
  content: '\f005';
}

/*-------------------
        Star
--------------------*/

/* Unfilled Star */

.ui.star.rating .icon:before {
  content: '\f005';
}

/* Active Star */

.ui.star.rating .active.icon:before {
  content: '\f005';
}

/* Partial */

.ui.star.rating .partial.icon:before {
  content: '\f006';
}

.ui.star.rating .partial.icon {
  content: '\f005';
}

/*-------------------
        Heart
--------------------*/

/* Empty Heart
.ui.heart.rating .icon:before {
  content: '\f08a';
}
*/

.ui.heart.rating .icon:before {
  content: '\f004';
}

/* Active */

.ui.heart.rating .active.icon:before {
  content: '\f004';
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Search
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
             Search
*******************************/

.ui.search {
  position: relative;
}

.ui.search > .prompt {
  margin: 0em;
  outline: none;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  text-shadow: none;
  font-style: normal;
  font-weight: normal;
  line-height: 1.21428571em;
  padding: 0.67857143em 1em;
  font-size: 1em;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
  box-shadow: 0em 0em 0em 0em transparent inset;
  transition: background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, border-color 0.1s ease;
}

.ui.search .prompt {
  border-radius: 500rem;
}

/*--------------
     Icon
---------------*/

.ui.search .prompt ~ .search.icon {
  cursor: pointer;
}

/*--------------
    Results
---------------*/

.ui.search > .results {
  display: none;
  position: absolute;
  top: 100%;
  left: 0%;
  -webkit-transform-origin: center top;
  transform-origin: center top;
  white-space: normal;
  text-align: left;
  text-transform: none;
  background: #FFFFFF;
  margin-top: 0.5em;
  width: 18em;
  border-radius: 0.28571429rem;
  box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15);
  border: 1px solid #D4D4D5;
  z-index: 998;
}

.ui.search > .results > :first-child {
  border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}

.ui.search > .results > :last-child {
  border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}

/*--------------
    Result
---------------*/

.ui.search > .results .result {
  cursor: pointer;
  display: block;
  overflow: hidden;
  font-size: 1em;
  padding: 0.85714286em 1.14285714em;
  color: rgba(0, 0, 0, 0.87);
  line-height: 1.33;
  border-bottom: 1px solid rgba(34, 36, 38, 0.1);
}

.ui.search > .results .result:last-child {
  border-bottom: none !important;
}

/* Image */

.ui.search > .results .result .image {
  float: right;
  overflow: hidden;
  background: none;
  width: 5em;
  height: 3em;
  border-radius: 0.25em;
}

.ui.search > .results .result .image img {
  display: block;
  width: auto;
  height: 100%;
}

/*--------------
      Info
---------------*/

.ui.search > .results .result .image + .content {
  margin: 0em 6em 0em 0em;
}

.ui.search > .results .result .title {
  margin: -0.14285714em 0em 0em;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-weight: bold;
  font-size: 1em;
  color: rgba(0, 0, 0, 0.85);
}

.ui.search > .results .result .description {
  margin-top: 0;
  font-size: 0.92857143em;
  color: rgba(0, 0, 0, 0.4);
}

.ui.search > .results .result .price {
  float: right;
  color: #21BA45;
}

/*--------------
    Message
---------------*/

.ui.search > .results > .message {
  padding: 1em 1em;
}

.ui.search > .results > .message .header {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.87);
}

.ui.search > .results > .message .description {
  margin-top: 0.25rem;
  font-size: 1em;
  color: rgba(0, 0, 0, 0.87);
}

/* View All Results */

.ui.search > .results > .action {
  display: block;
  border-top: none;
  background: #F3F4F5;
  padding: 0.92857143em 1em;
  color: rgba(0, 0, 0, 0.87);
  font-weight: bold;
  text-align: center;
}

/*******************************
            States
*******************************/

/*--------------------
       Focus
---------------------*/

.ui.search > .prompt:focus {
  border-color: rgba(34, 36, 38, 0.35);
  background: #FFFFFF;
  color: rgba(0, 0, 0, 0.95);
}

/*--------------------
       Loading
---------------------*/

.ui.loading.search .input > i.icon:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}

.ui.loading.search .input > i.icon:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  margin: -0.64285714em 0em 0em -0.64285714em;
  width: 1.28571429em;
  height: 1.28571429em;
  -webkit-animation: button-spin 0.6s linear;
  animation: button-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}

/*--------------
      Hover
---------------*/

.ui.search > .results .result:hover,
.ui.category.search > .results .category .result:hover {
  background: #F9FAFB;
}

.ui.search .action:hover {
  background: #E0E0E0;
}

/*--------------
      Active
---------------*/

.ui.category.search > .results .category.active {
  background: #F3F4F5;
}

.ui.category.search > .results .category.active > .name {
  color: rgba(0, 0, 0, 0.87);
}

.ui.search > .results .result.active,
.ui.category.search > .results .category .result.active {
  position: relative;
  border-left-color: rgba(34, 36, 38, 0.1);
  background: #F3F4F5;
  box-shadow: none;
}

.ui.search > .results .result.active .title {
  color: rgba(0, 0, 0, 0.85);
}

.ui.search > .results .result.active .description {
  color: rgba(0, 0, 0, 0.85);
}

/*--------------------
        Disabled
----------------------*/

/* Disabled */

.ui.disabled.search {
  cursor: default;
  pointer-events: none;
  opacity: 0.45;
}

/*******************************
           Types
*******************************/

/*--------------
    Selection
---------------*/

.ui.search.selection .prompt {
  border-radius: 0.28571429rem;
}

/* Remove input */

.ui.search.selection > .icon.input > .remove.icon {
  pointer-events: none;
  position: absolute;
  left: auto;
  opacity: 0;
  color: '';
  top: 0em;
  right: 0em;
  transition: color 0.1s ease, opacity 0.1s ease;
}

.ui.search.selection > .icon.input > .active.remove.icon {
  cursor: pointer;
  opacity: 0.8;
  pointer-events: auto;
}

.ui.search.selection > .icon.input:not([class*="left icon"]) > .icon ~ .remove.icon {
  right: 1.85714em;
}

.ui.search.selection > .icon.input > .remove.icon:hover {
  opacity: 1;
  color: #DB2828;
}

/*--------------
    Category
---------------*/

.ui.category.search .results {
  width: 28em;
}

.ui.category.search .results.animating,
.ui.category.search .results.visible {
  display: table;
}

/* Category */

.ui.category.search > .results .category {
  display: table-row;
  background: #F3F4F5;
  box-shadow: none;
  transition: background 0.1s ease, border-color 0.1s ease;
}

/* Last Category */

.ui.category.search > .results .category:last-child {
  border-bottom: none;
}

/* First / Last */

.ui.category.search > .results .category:first-child .name + .result {
  border-radius: 0em 0.28571429rem 0em 0em;
}

.ui.category.search > .results .category:last-child .result:last-child {
  border-radius: 0em 0em 0.28571429rem 0em;
}

/* Category Result Name */

.ui.category.search > .results .category > .name {
  display: table-cell;
  text-overflow: ellipsis;
  width: 100px;
  white-space: nowrap;
  background: transparent;
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  font-size: 1em;
  padding: 0.4em 1em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.4);
  border-bottom: 1px solid rgba(34, 36, 38, 0.1);
}

/* Category Result */

.ui.category.search > .results .category .results {
  display: table-cell;
  background: #FFFFFF;
  border-left: 1px solid rgba(34, 36, 38, 0.15);
  border-bottom: 1px solid rgba(34, 36, 38, 0.1);
}

.ui.category.search > .results .category .result {
  border-bottom: 1px solid rgba(34, 36, 38, 0.1);
  transition: background 0.1s ease, border-color 0.1s ease;
  padding: 0.85714286em 1.14285714em;
}

/*******************************
           Variations
*******************************/

/*-------------------
     Left / Right
--------------------*/

.ui[class*="left aligned"].search > .results {
  right: auto;
  left: 0%;
}

.ui[class*="right aligned"].search > .results {
  right: 0%;
  left: auto;
}

/*--------------
    Fluid
---------------*/

.ui.fluid.search .results {
  width: 100%;
}

/*--------------
      Sizes
---------------*/

.ui.mini.search {
  font-size: 0.78571429em;
}

.ui.small.search {
  font-size: 0.92857143em;
}

.ui.search {
  font-size: 1em;
}

.ui.large.search {
  font-size: 1.14285714em;
}

.ui.big.search {
  font-size: 1.28571429em;
}

.ui.huge.search {
  font-size: 1.42857143em;
}

.ui.massive.search {
  font-size: 1.71428571em;
}

/*--------------
      Mobile
---------------*/

@media only screen and (max-width: 767px) {
  .ui.search .results {
    max-width: calc(100vw - 2rem);
  }
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Shape
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
              Shape
*******************************/

.ui.shape {
  position: relative;
  vertical-align: top;
  display: inline-block;
  -webkit-perspective: 2000px;
  perspective: 2000px;
  transition: left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
}

.ui.shape .sides {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.ui.shape .side {
  opacity: 1;
  width: 100%;
  margin: 0em !important;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.ui.shape .side {
  display: none;
}

.ui.shape .side * {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

/*******************************
             Types
*******************************/

.ui.cube.shape .side {
  min-width: 15em;
  height: 15em;
  padding: 2em;
  background-color: #E6E6E6;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3);
}

.ui.cube.shape .side > .content {
  width: 100%;
  height: 100%;
  display: table;
  text-align: center;
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
}

.ui.cube.shape .side > .content > div {
  display: table-cell;
  vertical-align: middle;
  font-size: 2em;
}

/*******************************
          Variations
*******************************/

.ui.text.shape.animating .sides {
  position: static;
}

.ui.text.shape .side {
  white-space: nowrap;
}

.ui.text.shape .side > * {
  white-space: normal;
}

/*******************************
             States
*******************************/

/*--------------
    Loading
---------------*/

.ui.loading.shape {
  position: absolute;
  top: -9999px;
  left: -9999px;
}

/*--------------
    Animating
---------------*/

.ui.shape .animating.side {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  z-index: 100;
}

.ui.shape .hidden.side {
  opacity: 0.6;
}

/*--------------
      CSS
---------------*/

.ui.shape.animating .sides {
  position: absolute;
}

.ui.shape.animating .sides {
  transition: left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, left 0.6s ease-in-out, width 0.6s ease-in-out, height 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
}

.ui.shape.animating .side {
  transition: opacity 0.6s ease-in-out;
}

/*--------------
     Active
---------------*/

.ui.shape .active.side {
  display: block;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Sidebar
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Sidebar
*******************************/

/* Sidebar Menu */

.ui.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: none;
  will-change: transform;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  visibility: hidden;
  -webkit-overflow-scrolling: touch;
  height: 100% !important;
  max-height: 100%;
  border-radius: 0em !important;
  margin: 0em !important;
  overflow-y: auto !important;
  z-index: 102;
}

/* GPU Layers for Child Elements */

.ui.sidebar > * {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/*--------------
   Direction
---------------*/

.ui.left.sidebar {
  right: auto;
  left: 0px;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.ui.right.sidebar {
  right: 0px !important;
  left: auto !important;
  -webkit-transform: translate3d(100%, 0%, 0);
  transform: translate3d(100%, 0%, 0);
}

.ui.top.sidebar,
.ui.bottom.sidebar {
  width: 100% !important;
  height: auto !important;
}

.ui.top.sidebar {
  top: 0px !important;
  bottom: auto !important;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}

.ui.bottom.sidebar {
  top: auto !important;
  bottom: 0px !important;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}

/*--------------
     Pushable
---------------*/

.pushable {
  height: 100%;
  overflow-x: hidden;
  padding: 0em !important;
}

/* Whole Page */

body.pushable {
  background: #545454 !important;
}

/* Page Context */

.pushable:not(body) {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.pushable:not(body) > .ui.sidebar,
.pushable:not(body) > .fixed,
.pushable:not(body) > .pusher:after {
  position: absolute;
}

/*--------------
     Fixed
---------------*/

.pushable > .fixed {
  position: fixed;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
  will-change: transform;
  z-index: 101;
}

/*--------------
     Page
---------------*/

.pushable > .pusher {
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  min-height: 100%;
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
  z-index: 2;
}

body.pushable > .pusher {
  background: #FFFFFF;
}

/* Pusher should inherit background from context */

.pushable > .pusher {
  background: inherit;
}

/*--------------
     Dimmer
---------------*/

.pushable > .pusher:after {
  position: fixed;
  top: 0px;
  right: 0px;
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
  overflow: hidden;
  opacity: 0;
  transition: opacity 500ms;
  will-change: opacity;
  z-index: 1000;
}

/*--------------
    Coupling
---------------*/

.ui.sidebar.menu .item {
  border-radius: 0em !important;
}

/*******************************
            States
*******************************/

/*--------------
     Dimmed
---------------*/

.pushable > .pusher.dimmed:after {
  width: 100% !important;
  height: 100% !important;
  opacity: 1 !important;
}

/*--------------
    Animating
---------------*/

.ui.animating.sidebar {
  visibility: visible;
}

/*--------------
     Visible
---------------*/

.ui.visible.sidebar {
  visibility: visible;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* Shadow Direction */

.ui.left.visible.sidebar,
.ui.right.visible.sidebar {
  box-shadow: 0px 0px 20px rgba(34, 36, 38, 0.15);
}

.ui.top.visible.sidebar,
.ui.bottom.visible.sidebar {
  box-shadow: 0px 0px 20px rgba(34, 36, 38, 0.15);
}

/* Visible On Load */

.ui.visible.left.sidebar ~ .fixed,
.ui.visible.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(260px, 0, 0);
  transform: translate3d(260px, 0, 0);
}

.ui.visible.right.sidebar ~ .fixed,
.ui.visible.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-260px, 0, 0);
  transform: translate3d(-260px, 0, 0);
}

.ui.visible.top.sidebar ~ .fixed,
.ui.visible.top.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, 36px, 0);
  transform: translate3d(0, 36px, 0);
}

.ui.visible.bottom.sidebar ~ .fixed,
.ui.visible.bottom.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, -36px, 0);
  transform: translate3d(0, -36px, 0);
}

/* opposite sides visible forces content overlay */

.ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .fixed,
.ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher,
.ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .fixed,
.ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/*--------------
       iOS
---------------*/

/*******************************
          Variations
*******************************/

/*--------------
     Width
---------------*/

/* Left / Right */

.ui.thin.left.sidebar,
.ui.thin.right.sidebar {
  width: 150px;
}

.ui[class*="very thin"].left.sidebar,
.ui[class*="very thin"].right.sidebar {
  width: 60px;
}

.ui.left.sidebar,
.ui.right.sidebar {
  width: 260px;
}

.ui.wide.left.sidebar,
.ui.wide.right.sidebar {
  width: 350px;
}

.ui[class*="very wide"].left.sidebar,
.ui[class*="very wide"].right.sidebar {
  width: 475px;
}

/* Left Visible */

.ui.visible.thin.left.sidebar ~ .fixed,
.ui.visible.thin.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(150px, 0, 0);
  transform: translate3d(150px, 0, 0);
}

.ui.visible[class*="very thin"].left.sidebar ~ .fixed,
.ui.visible[class*="very thin"].left.sidebar ~ .pusher {
  -webkit-transform: translate3d(60px, 0, 0);
  transform: translate3d(60px, 0, 0);
}

.ui.visible.wide.left.sidebar ~ .fixed,
.ui.visible.wide.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(350px, 0, 0);
  transform: translate3d(350px, 0, 0);
}

.ui.visible[class*="very wide"].left.sidebar ~ .fixed,
.ui.visible[class*="very wide"].left.sidebar ~ .pusher {
  -webkit-transform: translate3d(475px, 0, 0);
  transform: translate3d(475px, 0, 0);
}

/* Right Visible */

.ui.visible.thin.right.sidebar ~ .fixed,
.ui.visible.thin.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-150px, 0, 0);
  transform: translate3d(-150px, 0, 0);
}

.ui.visible[class*="very thin"].right.sidebar ~ .fixed,
.ui.visible[class*="very thin"].right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-60px, 0, 0);
  transform: translate3d(-60px, 0, 0);
}

.ui.visible.wide.right.sidebar ~ .fixed,
.ui.visible.wide.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-350px, 0, 0);
  transform: translate3d(-350px, 0, 0);
}

.ui.visible[class*="very wide"].right.sidebar ~ .fixed,
.ui.visible[class*="very wide"].right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-475px, 0, 0);
  transform: translate3d(-475px, 0, 0);
}

/*******************************
          Animations
*******************************/

/*--------------
    Overlay
---------------*/

/* Set-up */

.ui.overlay.sidebar {
  z-index: 102;
}

/* Initial */

.ui.left.overlay.sidebar {
  -webkit-transform: translate3d(-100%, 0%, 0);
  transform: translate3d(-100%, 0%, 0);
}

.ui.right.overlay.sidebar {
  -webkit-transform: translate3d(100%, 0%, 0);
  transform: translate3d(100%, 0%, 0);
}

.ui.top.overlay.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}

.ui.bottom.overlay.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}

/* Animation */

.animating.ui.overlay.sidebar,
.ui.visible.overlay.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
}

/* End - Sidebar */

.ui.visible.left.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}

.ui.visible.right.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}

.ui.visible.top.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}

.ui.visible.bottom.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}

/* End - Pusher */

.ui.visible.overlay.sidebar ~ .fixed,
.ui.visible.overlay.sidebar ~ .pusher {
  -webkit-transform: none !important;
  transform: none !important;
}

/*--------------
      Push
---------------*/

/* Initial */

.ui.push.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
  z-index: 102;
}

/* Sidebar - Initial */

.ui.left.push.sidebar {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.ui.right.push.sidebar {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.ui.top.push.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}

.ui.bottom.push.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}

/* End */

.ui.visible.push.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}

/*--------------
    Uncover
---------------*/

/* Initial */

.ui.uncover.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 1;
}

/* End */

.ui.visible.uncover.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
}

/*--------------
   Slide Along
---------------*/

/* Initial */

.ui.slide.along.sidebar {
  z-index: 1;
}

/* Sidebar - Initial */

.ui.left.slide.along.sidebar {
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
}

.ui.right.slide.along.sidebar {
  -webkit-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
}

.ui.top.slide.along.sidebar {
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
}

.ui.bottom.slide.along.sidebar {
  -webkit-transform: translate3d(0%, 50%, 0);
  transform: translate3d(0%, 50%, 0);
}

/* Animation */

.ui.animating.slide.along.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
}

/* End */

.ui.visible.slide.along.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}

/*--------------
   Slide Out
---------------*/

/* Initial */

.ui.slide.out.sidebar {
  z-index: 1;
}

/* Sidebar - Initial */

.ui.left.slide.out.sidebar {
  -webkit-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
}

.ui.right.slide.out.sidebar {
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
}

.ui.top.slide.out.sidebar {
  -webkit-transform: translate3d(0%, 50%, 0);
  transform: translate3d(0%, 50%, 0);
}

.ui.bottom.slide.out.sidebar {
  -webkit-transform: translate3d(0%, -50%, 0);
  transform: translate3d(0%, -50%, 0);
}

/* Animation */

.ui.animating.slide.out.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
}

/* End */

.ui.visible.slide.out.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}

/*--------------
   Scale Down
---------------*/

/* Initial */

.ui.scale.down.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
  z-index: 102;
}

/* Sidebar - Initial  */

.ui.left.scale.down.sidebar {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.ui.right.scale.down.sidebar {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.ui.top.scale.down.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}

.ui.bottom.scale.down.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}

/* Pusher - Initial */

.ui.scale.down.left.sidebar ~ .pusher {
  -webkit-transform-origin: 75% 50%;
  transform-origin: 75% 50%;
}

.ui.scale.down.right.sidebar ~ .pusher {
  -webkit-transform-origin: 25% 50%;
  transform-origin: 25% 50%;
}

.ui.scale.down.top.sidebar ~ .pusher {
  -webkit-transform-origin: 50% 75%;
  transform-origin: 50% 75%;
}

.ui.scale.down.bottom.sidebar ~ .pusher {
  -webkit-transform-origin: 50% 25%;
  transform-origin: 50% 25%;
}

/* Animation */

.ui.animating.scale.down > .visible.ui.sidebar {
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease;
}

.ui.visible.scale.down.sidebar ~ .pusher,
.ui.animating.scale.down.sidebar ~ .pusher {
  display: block !important;
  width: 100%;
  height: 100%;
  overflow: hidden !important;
}

/* End */

.ui.visible.scale.down.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.ui.visible.scale.down.sidebar ~ .pusher {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Sticky
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
            Sticky
*******************************/

.ui.sticky {
  position: static;
  transition: none;
  z-index: 800;
}

/*******************************
            States
*******************************/

/* Bound */

.ui.sticky.bound {
  position: absolute;
  left: auto;
  right: auto;
}

/* Fixed */

.ui.sticky.fixed {
  position: fixed;
  left: auto;
  right: auto;
}

/* Bound/Fixed Position */

.ui.sticky.bound.top,
.ui.sticky.fixed.top {
  top: 0px;
  bottom: auto;
}

.ui.sticky.bound.bottom,
.ui.sticky.fixed.bottom {
  top: auto;
  bottom: 0px;
}

/*******************************
            Types
*******************************/

.ui.native.sticky {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -ms-sticky;
  position: -o-sticky;
  position: sticky;
}

/*******************************
         Theme Overrides
*******************************/

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Tab
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
           UI Tabs
*******************************/

.ui.tab {
  display: none;
}

/*******************************
             States
*******************************/

/*--------------------
       Active
---------------------*/

.ui.tab.active,
.ui.tab.open {
  display: block;
}

/*--------------------
       Loading
---------------------*/

.ui.tab.loading {
  position: relative;
  overflow: hidden;
  display: block;
  min-height: 250px;
}

.ui.tab.loading * {
  position: relative !important;
  left: -10000px !important;
}

.ui.tab.loading:before,
.ui.tab.loading.segment:before {
  position: absolute;
  content: '';
  top: 100px;
  left: 50%;
  margin: -1.25em 0em 0em -1.25em;
  width: 2.5em;
  height: 2.5em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}

.ui.tab.loading:after,
.ui.tab.loading.segment:after {
  position: absolute;
  content: '';
  top: 100px;
  left: 50%;
  margin: -1.25em 0em 0em -1.25em;
  width: 2.5em;
  height: 2.5em;
  -webkit-animation: button-spin 0.6s linear;
  animation: button-spin 0.6s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  border-radius: 500rem;
  border-color: #767676 transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}

/*******************************
         Tab Overrides
*******************************/

/*******************************
        User Overrides
*******************************/
/*!
 * # Semantic UI 2.4.2 - Transition
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */

/*******************************
          Transitions
*******************************/

.transition {
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/*******************************
            States
*******************************/

/* Animating */

.animating.transition {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  visibility: visible !important;
}

/* Loading */

.loading.transition {
  position: absolute;
  top: -99999px;
  left: -99999px;
}

/* Hidden */

.hidden.transition {
  display: none;
  visibility: hidden;
}

/* Visible */

.visible.transition {
  display: block !important;
  visibility: visible !important;
  /*  backface-visibility: @backfaceVisibility;
  transform: @use3DAcceleration;*/
}

/* Disabled */

.disabled.transition {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

/*******************************
          Variations
*******************************/

.looping.transition {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/*******************************
          Transitions
*******************************/

/*
  Some transitions adapted from Animate CSS
  https://github.com/daneden/animate.css

  Additional transitions adapted from Glide
  by Nick Pettit - https://github.com/nickpettit/glide
*/

/*--------------
     Browse
---------------*/

.transition.browse {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.transition.browse.in {
  -webkit-animation-name: browseIn;
  animation-name: browseIn;
}

.transition.browse.out,
.transition.browse.left.out {
  -webkit-animation-name: browseOutLeft;
  animation-name: browseOutLeft;
}

.transition.browse.right.out {
  -webkit-animation-name: browseOutRight;
  animation-name: browseOutRight;
}

/* In */

@-webkit-keyframes browseIn {
  0% {
    -webkit-transform: scale(0.8) translateZ(0px);
    transform: scale(0.8) translateZ(0px);
    z-index: -1;
  }

  10% {
    -webkit-transform: scale(0.8) translateZ(0px);
    transform: scale(0.8) translateZ(0px);
    z-index: -1;
    opacity: 0.7;
  }

  80% {
    -webkit-transform: scale(1.05) translateZ(0px);
    transform: scale(1.05) translateZ(0px);
    opacity: 1;
    z-index: 999;
  }

  100% {
    -webkit-transform: scale(1) translateZ(0px);
    transform: scale(1) translateZ(0px);
    z-index: 999;
  }
}

@keyframes browseIn {
  0% {
    -webkit-transform: scale(0.8) translateZ(0px);
    transform: scale(0.8) translateZ(0px);
    z-index: -1;
  }

  10% {
    -webkit-transform: scale(0.8) translateZ(0px);
    transform: scale(0.8) translateZ(0px);
    z-index: -1;
    opacity: 0.7;
  }

  80% {
    -webkit-transform: scale(1.05) translateZ(0px);
    transform: scale(1.05) translateZ(0px);
    opacity: 1;
    z-index: 999;
  }

  100% {
    -webkit-transform: scale(1) translateZ(0px);
    transform: scale(1) translateZ(0px);
    z-index: 999;
  }
}

/* Out */

@-webkit-keyframes browseOutLeft {
  0% {
    z-index: 999;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg);
  }

  50% {
    z-index: -1;
    -webkit-transform: translateX(-105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
    transform: translateX(-105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
  }

  80% {
    opacity: 1;
  }

  100% {
    z-index: -1;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    opacity: 0;
  }
}

@keyframes browseOutLeft {
  0% {
    z-index: 999;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg);
  }

  50% {
    z-index: -1;
    -webkit-transform: translateX(-105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
    transform: translateX(-105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
  }

  80% {
    opacity: 1;
  }

  100% {
    z-index: -1;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    opacity: 0;
  }
}

@-webkit-keyframes browseOutRight {
  0% {
    z-index: 999;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg);
  }

  50% {
    z-index: 1;
    -webkit-transform: translateX(105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
    transform: translateX(105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
  }

  80% {
    opacity: 1;
  }

  100% {
    z-index: 1;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    opacity: 0;
  }
}

@keyframes browseOutRight {
  0% {
    z-index: 999;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg);
  }

  50% {
    z-index: 1;
    -webkit-transform: translateX(105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
    transform: translateX(105%) rotateY(35deg) rotateX(10deg) translateZ(-10px);
  }

  80% {
    opacity: 1;
  }

  100% {
    z-index: 1;
    -webkit-transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    transform: translateX(0%) rotateY(0deg) rotateX(0deg) translateZ(-10px);
    opacity: 0;
  }
}

/*--------------
     Drop
---------------*/

.drop.transition {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-duration: 400ms;
  animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.34, 1.61, 0.7, 1);
  animation-timing-function: cubic-bezier(0.34, 1.61, 0.7, 1);
}

.drop.transition.in {
  -webkit-animation-name: dropIn;
  animation-name: dropIn;
}

.drop.transition.out {
  -webkit-animation-name: dropOut;
  animation-name: dropOut;
}

/* Drop */

@-webkit-keyframes dropIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes dropIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes dropOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@keyframes dropOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

/*--------------
      Fade
---------------*/

.transition.fade.in {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.transition[class*="fade up"].in {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

.transition[class*="fade down"].in {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

.transition[class*="fade left"].in {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

.transition[class*="fade right"].in {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

.transition.fade.out {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

.transition[class*="fade up"].out {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

.transition[class*="fade down"].out {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

.transition[class*="fade left"].out {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

.transition[class*="fade right"].out {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

/* In */

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(10%);
    transform: translateY(10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(10%);
    transform: translateY(10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(10%);
    transform: translateX(10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(10%);
    transform: translateX(10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

/* Out */

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
  }
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-5%);
    transform: translateY(-5%);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-5%);
    transform: translateY(-5%);
  }
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(5%);
    transform: translateX(5%);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(5%);
    transform: translateX(5%);
  }
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-5%);
    transform: translateX(-5%);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-5%);
    transform: translateX(-5%);
  }
}

/*--------------
     Flips
---------------*/

.flip.transition.in,
.flip.transition.out {
  -webkit-animation-duration: 600ms;
  animation-duration: 600ms;
}

.horizontal.flip.transition.in {
  -webkit-animation-name: horizontalFlipIn;
  animation-name: horizontalFlipIn;
}

.horizontal.flip.transition.out {
  -webkit-animation-name: horizontalFlipOut;
  animation-name: horizontalFlipOut;
}

.vertical.flip.transition.in {
  -webkit-animation-name: verticalFlipIn;
  animation-name: verticalFlipIn;
}

.vertical.flip.transition.out {
  -webkit-animation-name: verticalFlipOut;
  animation-name: verticalFlipOut;
}

/* In */

@-webkit-keyframes horizontalFlipIn {
  0% {
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateY(0deg);
    transform: perspective(2000px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes horizontalFlipIn {
  0% {
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateY(0deg);
    transform: perspective(2000px) rotateY(0deg);
    opacity: 1;
  }
}

@-webkit-keyframes verticalFlipIn {
  0% {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateX(0deg);
    transform: perspective(2000px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes verticalFlipIn {
  0% {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateX(0deg);
    transform: perspective(2000px) rotateX(0deg);
    opacity: 1;
  }
}

/* Out */

@-webkit-keyframes horizontalFlipOut {
  0% {
    -webkit-transform: perspective(2000px) rotateY(0deg);
    transform: perspective(2000px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateY(90deg);
    transform: perspective(2000px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes horizontalFlipOut {
  0% {
    -webkit-transform: perspective(2000px) rotateY(0deg);
    transform: perspective(2000px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateY(90deg);
    transform: perspective(2000px) rotateY(90deg);
    opacity: 0;
  }
}

@-webkit-keyframes verticalFlipOut {
  0% {
    -webkit-transform: perspective(2000px) rotateX(0deg);
    transform: perspective(2000px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0;
  }
}

@keyframes verticalFlipOut {
  0% {
    -webkit-transform: perspective(2000px) rotateX(0deg);
    transform: perspective(2000px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0;
  }
}

/*--------------
      Scale
---------------*/

.scale.transition.in {
  -webkit-animation-name: scaleIn;
  animation-name: scaleIn;
}

.scale.transition.out {
  -webkit-animation-name: scaleOut;
  animation-name: scaleOut;
}

@-webkit-keyframes scaleIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes scaleIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

/* Out */

@-webkit-keyframes scaleOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

@keyframes scaleOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

/*--------------
      Fly
---------------*/

/* Inward */

.transition.fly {
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.transition.fly.in {
  -webkit-animation-name: flyIn;
  animation-name: flyIn;
}

.transition[class*="fly up"].in {
  -webkit-animation-name: flyInUp;
  animation-name: flyInUp;
}

.transition[class*="fly down"].in {
  -webkit-animation-name: flyInDown;
  animation-name: flyInDown;
}

.transition[class*="fly left"].in {
  -webkit-animation-name: flyInLeft;
  animation-name: flyInLeft;
}

.transition[class*="fly right"].in {
  -webkit-animation-name: flyInRight;
  animation-name: flyInRight;
}

/* Outward */

.transition.fly.out {
  -webkit-animation-name: flyOut;
  animation-name: flyOut;
}

.transition[class*="fly up"].out {
  -webkit-animation-name: flyOutUp;
  animation-name: flyOutUp;
}

.transition[class*="fly down"].out {
  -webkit-animation-name: flyOutDown;
  animation-name: flyOutDown;
}

.transition[class*="fly left"].out {
  -webkit-animation-name: flyOutLeft;
  animation-name: flyOutLeft;
}

.transition[class*="fly right"].out {
  -webkit-animation-name: flyOutRight;
  animation-name: flyOutRight;
}

/* In */

@-webkit-keyframes flyIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes flyIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes flyInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1500px, 0);
    transform: translate3d(0, 1500px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes flyInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1500px, 0);
    transform: translate3d(0, 1500px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes flyInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -1500px, 0);
    transform: translate3d(0, -1500px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes flyInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -1500px, 0);
    transform: translate3d(0, -1500px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@-webkit-keyframes flyInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(1500px, 0, 0);
    transform: translate3d(1500px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes flyInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(1500px, 0, 0);
    transform: translate3d(1500px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@-webkit-keyframes flyInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-1500px, 0, 0);
    transform: translate3d(-1500px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes flyInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-1500px, 0, 0);
    transform: translate3d(-1500px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

/* Out */

@-webkit-keyframes flyOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes flyOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@-webkit-keyframes flyOutUp {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes flyOutUp {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@-webkit-keyframes flyOutDown {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes flyOutDown {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@-webkit-keyframes flyOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes flyOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@-webkit-keyframes flyOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes flyOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

/*--------------
     Slide
---------------*/

.transition.slide.in,
.transition[class*="slide down"].in {
  -webkit-animation-name: slideInY;
  animation-name: slideInY;
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

.transition[class*="slide up"].in {
  -webkit-animation-name: slideInY;
  animation-name: slideInY;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
}

.transition[class*="slide left"].in {
  -webkit-animation-name: slideInX;
  animation-name: slideInX;
  -webkit-transform-origin: center right;
  transform-origin: center right;
}

.transition[class*="slide right"].in {
  -webkit-animation-name: slideInX;
  animation-name: slideInX;
  -webkit-transform-origin: center left;
  transform-origin: center left;
}

.transition.slide.out,
.transition[class*="slide down"].out {
  -webkit-animation-name: slideOutY;
  animation-name: slideOutY;
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

.transition[class*="slide up"].out {
  -webkit-animation-name: slideOutY;
  animation-name: slideOutY;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
}

.transition[class*="slide left"].out {
  -webkit-animation-name: slideOutX;
  animation-name: slideOutX;
  -webkit-transform-origin: center right;
  transform-origin: center right;
}

.transition[class*="slide right"].out {
  -webkit-animation-name: slideOutX;
  animation-name: slideOutX;
  -webkit-transform-origin: center left;
  transform-origin: center left;
}

/* In */

@-webkit-keyframes slideInY {
  0% {
    opacity: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}

@keyframes slideInY {
  0% {
    opacity: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}

@-webkit-keyframes slideInX {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@keyframes slideInX {
  0% {
    opacity: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

/* Out */

@-webkit-keyframes slideOutY {
  0% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}

@keyframes slideOutY {
  0% {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}

@-webkit-keyframes slideOutX {
  0% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }
}

@keyframes slideOutX {
  0% {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
  }
}

/*--------------
     Swing
---------------*/

.transition.swing {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.transition[class*="swing down"].in {
  -webkit-animation-name: swingInX;
  animation-name: swingInX;
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

.transition[class*="swing up"].in {
  -webkit-animation-name: swingInX;
  animation-name: swingInX;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
}

.transition[class*="swing left"].in {
  -webkit-animation-name: swingInY;
  animation-name: swingInY;
  -webkit-transform-origin: center right;
  transform-origin: center right;
}

.transition[class*="swing right"].in {
  -webkit-animation-name: swingInY;
  animation-name: swingInY;
  -webkit-transform-origin: center left;
  transform-origin: center left;
}

.transition.swing.out,
.transition[class*="swing down"].out {
  -webkit-animation-name: swingOutX;
  animation-name: swingOutX;
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

.transition[class*="swing up"].out {
  -webkit-animation-name: swingOutX;
  animation-name: swingOutX;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
}

.transition[class*="swing left"].out {
  -webkit-animation-name: swingOutY;
  animation-name: swingOutY;
  -webkit-transform-origin: center right;
  transform-origin: center right;
}

.transition[class*="swing right"].out {
  -webkit-animation-name: swingOutY;
  animation-name: swingOutY;
  -webkit-transform-origin: center left;
  transform-origin: center left;
}

/* In */

@-webkit-keyframes swingInX {
  0% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(1000px) rotateX(-30deg);
    transform: perspective(1000px) rotateX(-30deg);
    opacity: 1;
  }

  60% {
    -webkit-transform: perspective(1000px) rotateX(15deg);
    transform: perspective(1000px) rotateX(15deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateX(-7.5deg);
    transform: perspective(1000px) rotateX(-7.5deg);
  }

  100% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
  }
}

@keyframes swingInX {
  0% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(1000px) rotateX(-30deg);
    transform: perspective(1000px) rotateX(-30deg);
    opacity: 1;
  }

  60% {
    -webkit-transform: perspective(1000px) rotateX(15deg);
    transform: perspective(1000px) rotateX(15deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateX(-7.5deg);
    transform: perspective(1000px) rotateX(-7.5deg);
  }

  100% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
  }
}

@-webkit-keyframes swingInY {
  0% {
    -webkit-transform: perspective(1000px) rotateY(-90deg);
    transform: perspective(1000px) rotateY(-90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(1000px) rotateY(30deg);
    transform: perspective(1000px) rotateY(30deg);
    opacity: 1;
  }

  60% {
    -webkit-transform: perspective(1000px) rotateY(-17.5deg);
    transform: perspective(1000px) rotateY(-17.5deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateY(7.5deg);
    transform: perspective(1000px) rotateY(7.5deg);
  }

  100% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
  }
}

@keyframes swingInY {
  0% {
    -webkit-transform: perspective(1000px) rotateY(-90deg);
    transform: perspective(1000px) rotateY(-90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(1000px) rotateY(30deg);
    transform: perspective(1000px) rotateY(30deg);
    opacity: 1;
  }

  60% {
    -webkit-transform: perspective(1000px) rotateY(-17.5deg);
    transform: perspective(1000px) rotateY(-17.5deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateY(7.5deg);
    transform: perspective(1000px) rotateY(7.5deg);
  }

  100% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
  }
}

/* Out */

@-webkit-keyframes swingOutX {
  0% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
  }

  40% {
    -webkit-transform: perspective(1000px) rotateX(-7.5deg);
    transform: perspective(1000px) rotateX(-7.5deg);
  }

  60% {
    -webkit-transform: perspective(1000px) rotateX(17.5deg);
    transform: perspective(1000px) rotateX(17.5deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateX(-30deg);
    transform: perspective(1000px) rotateX(-30deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes swingOutX {
  0% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
  }

  40% {
    -webkit-transform: perspective(1000px) rotateX(-7.5deg);
    transform: perspective(1000px) rotateX(-7.5deg);
  }

  60% {
    -webkit-transform: perspective(1000px) rotateX(17.5deg);
    transform: perspective(1000px) rotateX(17.5deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateX(-30deg);
    transform: perspective(1000px) rotateX(-30deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
}

@-webkit-keyframes swingOutY {
  0% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
  }

  40% {
    -webkit-transform: perspective(1000px) rotateY(7.5deg);
    transform: perspective(1000px) rotateY(7.5deg);
  }

  60% {
    -webkit-transform: perspective(1000px) rotateY(-10deg);
    transform: perspective(1000px) rotateY(-10deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateY(30deg);
    transform: perspective(1000px) rotateY(30deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(1000px) rotateY(-90deg);
    transform: perspective(1000px) rotateY(-90deg);
    opacity: 0;
  }
}

@keyframes swingOutY {
  0% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
  }

  40% {
    -webkit-transform: perspective(1000px) rotateY(7.5deg);
    transform: perspective(1000px) rotateY(7.5deg);
  }

  60% {
    -webkit-transform: perspective(1000px) rotateY(-10deg);
    transform: perspective(1000px) rotateY(-10deg);
  }

  80% {
    -webkit-transform: perspective(1000px) rotateY(30deg);
    transform: perspective(1000px) rotateY(30deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(1000px) rotateY(-90deg);
    transform: perspective(1000px) rotateY(-90deg);
    opacity: 0;
  }
}

/*--------------
      Zoom
---------------*/

.transition.zoom.in {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

.transition.zoom.out {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes zoomIn {
  0% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

/*******************************
       Static Animations
*******************************/

/*--------------
    Emphasis
---------------*/

.flash.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: flash;
  animation-name: flash;
}

.shake.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: shake;
  animation-name: shake;
}

.bounce.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: bounce;
  animation-name: bounce;
}

.tada.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: tada;
  animation-name: tada;
}

.pulse.transition {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

.jiggle.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: jiggle;
  animation-name: jiggle;
}

.transition.glow {
  -webkit-animation-duration: 2000ms;
  animation-duration: 2000ms;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.transition.glow {
  -webkit-animation-name: glow;
  animation-name: glow;
}

/* Flash */

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

/* Shake */

@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

@keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

/* Bounce */

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

/* Tada */

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

@keyframes tada {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

/* Pulse */

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

  50% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    opacity: 0.7;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}

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

  50% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    opacity: 0.7;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}

/* Jiggle */

@-webkit-keyframes jiggle {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes jiggle {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

/* Glow */

@-webkit-keyframes glow {
  0% {
    background-color: #FCFCFD;
  }

  30% {
    background-color: #FFF6CD;
  }

  100% {
    background-color: #FCFCFD;
  }
}

@keyframes glow {
  0% {
    background-color: #FCFCFD;
  }

  30% {
    background-color: #FFF6CD;
  }

  100% {
    background-color: #FCFCFD;
  }
}

/*******************************
         Site Overrides
*******************************/
/*!
 * # Semantic UI 0.0.8 - Calendar
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */.ui.calendar .ui.popup{max-width:none;padding:0;border:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui.calendar .calendar:focus{outline:0}.ui.calendar .ui.popup .ui.grid{display:block;white-space:nowrap}.ui.calendar .ui.popup .ui.grid>.column{width:auto}.ui.calendar .ui.table.minute,.ui.calendar .ui.table.month,.ui.calendar .ui.table.year{min-width:15em}.ui.calendar .ui.table.day{min-width:18em}.ui.calendar .ui.table.hour{min-width:20em}.ui.calendar .ui.table tr td,.ui.calendar .ui.table tr th{padding:.5em;white-space:nowrap}.ui.calendar .ui.table tr th{border-left:none}.ui.calendar .ui.table tr th .icon{margin:0}.ui.calendar .ui.table tr:first-child th{position:relative;padding-left:0;padding-right:0}.ui.calendar .ui.table.day tr:first-child th{border:none}.ui.calendar .ui.table.day tr:nth-child(2) th{padding-top:.2em;padding-bottom:.3em}.ui.calendar .ui.table tr td{padding-left:.1em;padding-right:.1em}.ui.calendar .ui.table tr .link{cursor:pointer}.ui.calendar .ui.table tr .prev.link{width:14.28571429%;position:absolute;left:0}.ui.calendar .ui.table tr .next.link{width:14.28571429%;position:absolute;right:0}.ui.calendar .ui.table tr .disabled{pointer-events:none;color:rgba(40,40,40,.3)}.ui.calendar .ui.table tr td.today{font-weight:700}.ui.calendar .ui.table tr td.range{background:rgba(0,0,0,.05);color:rgba(0,0,0,.95);box-shadow:none}.ui.calendar .ui.table.inverted tr td.range{background:rgba(255,255,255,.08);color:#fff;box-shadow:none}.ui.calendar .calendar.active .ui.table tbody tr td.focus,.ui.calendar .calendar.active .ui.table.inverted tbody tr td.focus,.ui.calendar .calendar:focus .ui.table tbody tr td.focus,.ui.calendar .calendar:focus .ui.table.inverted tbody tr td.focus{box-shadow:inset 0 0 0 1px #85B7D9}
.occluded-content {
  display: block;
  position: relative;
  width: 100%;

  /* prevents margin overflow on item container */
  min-height: 0.01px;

  /* hides text visually while still being readable by screen readers */
  color: rgba(0,0,0,0);
}

table .occluded-content,
tbody .occluded-content,
thead .occluded-content,
tfoot .occluded-content, {
  display: table-row;
  position: relative;
  width: 100%;
}

ul .occluded-content,
ol .occluded-content {
  display: list-item;
  position: relative;
  width: 100%;
  list-style-type: none;
  height: 0;
}

.ember-table {
  position: relative;
  overflow: auto;
  max-height: 100%;
  max-width: 100%;
  box-sizing: border-box; }
  .ember-table table {
    border-spacing: 0;
    table-layout: fixed;
    box-sizing: border-box; }
  .ember-table td,
  .ember-table th {
    box-sizing: border-box; }
    .ember-table td.is-fixed-left, .ember-table td.is-fixed-right,
    .ember-table th.is-fixed-left,
    .ember-table th.is-fixed-right {
      position: -webkit-sticky;
      position: sticky;
      left: 0; }
    .ember-table td.ember-table__text-align-left,
    .ember-table th.ember-table__text-align-left {
      text-align: left; }
    .ember-table td.ember-table__text-align-center,
    .ember-table th.ember-table__text-align-center {
      text-align: center; }
    .ember-table td.ember-table__text-align-right,
    .ember-table th.ember-table__text-align-right {
      text-align: right; }
  .ember-table th {
    z-index: 2; }
    .ember-table th:not(.is-fixed-right) .et-header-resize-area {
      right: 0; }
    .ember-table th.is-fixed-right .et-header-resize-area {
      left: 0; }
  .ember-table td.is-fixed-left,
  .ember-table td.is-fixed-right {
    z-index: 3; }
  .ember-table th.is-fixed-left,
  .ember-table th.is-fixed-right {
    z-index: 4; }
  .ember-table th.is-sortable {
    cursor: pointer; }
  .ember-table thead {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    box-sizing: border-box; }
  .ember-table tbody {
    box-sizing: border-box; }
  .ember-table tfoot {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 2;
    box-sizing: border-box; }
  .ember-table.et-unselectable {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none; }
  .ember-table .et-header-resize-area {
    cursor: col-resize;
    width: 10px;
    height: 100%;
    position: absolute;
    top: 0; }
  .ember-table .et-speech-only {
    display: none !important; }
  @media speech {
    .ember-table .et-speech-only {
      display: block !important; } }
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi92YXIvd3d3L3Zhci93d3cvZW1zLWZyb250ZW5kL25vZGVfbW9kdWxlcy9lbWJlci10YWJsZS9hZGRvbi9zdHlsZXMvYWRkb24uc2NzcyIsInZlbmRvci5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0NBQWE7QUNDYiw0QkRBb0IsMEJBQUEsQ0FBQSx1Q0FBQSxDQUFBLHdCQUFBLENBQUEsaUJBQUEsQ0FBQSxxQkFBQSxDQUFBLGdCQUFBLENBQUEscUJBQUEsQ0FBQSxhQUFBLGlCQUFBLENBQUEsMEJBQUEsVUFBQSxDQUFBLFdBQUEsQ0FBQSxpQkFBQSxDQUFBLFNBQUEsQ0FBQSxlQUFBLGVBQUEsQ0FBQSxTQUFBLENBQUEsMkJBQUEscUJBQUEsQ0FBQSxpQkFBQSxDQUFBLFNBQUEsQ0FBQSxLQUFBLENBQUEsT0FBQSxDQUFBLHdCQUFBLENBQUEsNEJBQUEsQ0FBQSxtQ0FBQSxDQUFBLG9CQUFBLENBQUEsNEJBQUEsQ0FBQSxvQkFBQSxDQUFBLGNBQUEsV0FBQSxDQUFBLFVBQUEsQ0FBQSxhQUFBLFVBQUEsQ0FBQSxTQUFBLENBQUEsK0NBQUEsTUFBQSxDQUFBLFVBQUEsQ0FBQSw0QkFBQSxPQUFBLENBQUEsOEJBQUEsUUFBQSxDQUFBLGFBQUEsa0NBQUEsQ0FBQSwwQkFBQSxDQUFBLGlCQUFBLENBQUEsaUJBQUEsV0FBQSxDQUFBLFVBQUEsQ0FBQSwyREFBQSxnQ0FBQSxDQUFBLHdCQUFBLENBQUEsK0NBQUEsQ0FBQSxtQkFBQSx3QkFBQSxDQUFBLGlCQUFBLFdBQUEsQ0FBQSw4QkFBQSxVQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxRQUFBLENBQUEsZUFBQSxVQUFBLENBQUEsNEJBQUEsVUFBQSxDQUFBLFdBQUEsQ0FBQSxVQUFBLENBQUEsU0FBQSxDQUFBLCtDQUFBLFVBQUEsQ0FBQSxVQUFBLENBQUEsYUFBQSxrQkFBQSxDQUFBLGlCQUFBLENBQUEsd0JBQUEsQ0FBQSxzREFBQSxDQUFBLGVBQUEsaUJBQUEsQ0FBQSxjQUFB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K0JBQStCO0FBQ2pDOztBQUVBOztFQUVFLCtCQUErQjtBQUNqQzs7QUFFQTs7RUFFRSwrQkFBK0I7QUFDakM7O0FBRUE7O0VBRUUsK0JBQStCO0FBQ2pDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSw4QkFBOEI7QUFDaEM7O0FBRUE7OztFQUdFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7OztFQUdFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsOEJBQThCO0FBQ2hDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7OztFQUdFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOzs7RUFHRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLCtCQUErQjtBQUNqQzs7QUFFQTs7RUFFRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O0VBRUUsaUNBQWlDO0FBQ25DOztBQUVBOztFQUVFLGlDQUFpQztBQUNuQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSxrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLGtDQUFrQztBQUNwQzs7QUFFQTs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CLGFBQWE7O0FBRWI7RUFDRSxZQUFZO0VBQ1osNENBQTRDO0VBQzVDLGdCQUFnQjtFQUNoQixtRUFBbUU7RUFDbkUsaUJBQWlCO0VBQ2pCLHlCQUF5QjtFQUN6QixvQkFBb0I7RUFDcEIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osV0FBVztFQUNYLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtBQUN4Qjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UscUJBQXFCO0VBQ3JCLFlBQVk7RUFDWixxQkFBcUI7QUFDdkI7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUscUJBQXFCO0VBQ3JCLHdCQUF3QjtFQUN4QixZQUFZO0VBQ1osWUFBWTtFQUNaLHNCQUFzQjtBQUN4Qjs7QUFFQTs7RUFFRSxxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxxQkFBcUI7RUFDckIsbUJBQW1CO0FBQ3JCOztBQUVBLGdCQUFnQjs7QUFFaEI7O0VBRUUscUJBQXFCO0VBQ3JCLHNCQUFzQjtBQUN4Qjs7QUFFQSxlQUFlOztBQUVmO0VBQ0UscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixzQkFBc0I7QUFDeEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHNCQUFzQjtBQUN4Qjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGVBQWU7RUFDZixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQSxlQUFlOztBQUVmO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxZQUFZO0VBQ1osNEJBQTRCO0VBQzVCLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLFNBQVM7QUFDWDs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxjQUFjO0VBQ2QsV0FBVztFQUNYLFdBQVc7RUFDWCxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGNBQWM7RUFDZCxXQUFXO0VBQ1gsWUFBWTtFQUNaLGNBQWM7RUFDZCxZQUFZO0VBQ1osY0FBYztFQUNkLHVCQUF1QjtFQUN2QixVQUFVO0FBQ1o7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3FCQUVxQjs7QUFFckI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBO0VBR0UscUVBQXFFO0VBRXJFLGdCQUFnQjtFQUNoQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFHRSxxRUFBcUU7RUFFckUsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztxQkFFcUI7O0FBRXJCLGNBQWM7O0FBRWQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxhQUFhOztBQUViO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxhQUFhOztBQUViO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxhQUFhOztBQUViO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxhQUFhOztBQUViO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBOztFQUVFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsV0FBVztBQUNiOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLFdBQVc7RUFDWCxlQUFlO0VBQ2YsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixrQkFBa0I7QUFDcEI7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSw2QkFBNkI7RUFDN0IsK0NBQStDO0FBQ2pEOztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsNkNBQTZDO0FBQy9DOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsbUJBQW1CO0VBQ25CLDJCQUEyQjtFQUUzQixnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxtQkFBbUI7RUFDbkIsMkJBQTJCO0VBQzNCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFFbEIsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGtEQUFrRDtBQUNwRDs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0Usb0JBQW9CO0VBQ3BCLG1EQUFtRDtFQUNuRCwrVkFBK1Y7RUFDL1Ysa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsd0JBQXdCO0VBQ3hCLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixVQUFVO0VBQ1YsMkJBQTJCO0VBQzNCLGFBQWE7RUFDYixXQUFXO0VBQ1gsb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsd0JBQXdCO0VBQ3hCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsMkJBQTJCO0VBQzNCLGtDQUFrQztFQUNsQyxtQ0FBbUM7RUFDbkMsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLDJCQUEyQjtBQUM3Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLFdBQVc7RUFDWCxjQUFjO0VBQ2Qsa0RBQWtEO0VBQ2xELDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFO0lBQ0UsK0JBQStCO0lBQy9CLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsK0JBQStCO0lBQy9CLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjtFQUNFLFdBQVc7RUFDWCxzQkFBc0I7QUFDeEI7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsZUFBZTtFQUNmLFlBQVk7RUFFWiw2QkFBNkI7QUFDL0I7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsK0JBQStCO0VBQy9CLHlCQUF5QjtFQUN6Qiw2QkFBNkI7RUFFN0Isc0RBQXNEO0VBQ3RELHFCQUFxQjtFQUNyQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxZQUFZO0VBRVosZ0JBQWdCO0FBQ2xCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLCtCQUErQjtFQUMvQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IsdUJBQXVCO0FBQ3pCOztBQUVBOztxQkFFcUI7O0FBRXJCOzs7RUFHRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxjQUFjO0VBQ2Qsd0JBQXdCO0VBQ3hCLFVBQVU7RUFDVixXQUFXO0VBQ1gsNkJBQTZCO0VBRTdCLHNEQUFzRDtBQUN4RDs7QUFFQTtFQUNFLFlBQVk7RUFFWixnQkFBZ0I7QUFDbEI7O0FBRUE7O3FCQUVxQjs7QUFFckIsb0JBQW9COztBQUVwQjs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7cUJBRXFCOztBQUVyQixRQUFROztBQUVSO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7QUFDM0I7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7QUFDM0I7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7QUFDM0I7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsY0FBYztFQUNkLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxjQUFjO0VBQ2QsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxpQkFBaUI7QUFDbkI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTs7RUFFRSxjQUFjO0VBQ2Qsc0JBQXNCO0VBQ3RCLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxjQUFjO0VBQ2Qsc0JBQXNCO0VBQ3RCLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsY0FBYztFQUNkLHNCQUFzQjtFQUN0QixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIsY0FBYztBQUNoQjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULG9EQUFvRDtFQUNwRCw0Q0FBNEM7RUFDNUMsV0FBVztFQUNYLFNBQVM7QUFDWDs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsU0FBUztFQUNULFVBQVU7RUFDVixRQUFRO0VBQ1IsU0FBUztFQUNULHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLDJGQUEyRjtBQUM3Rjs7QUFFQTtFQUNFLE1BQU07RUFDTixVQUFVO0VBQ1YsUUFBUTtFQUNSLFlBQVk7QUFDZDs7QUFFQTtFQUNFLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFNBQVM7QUFDWDs7QUFFQTtFQUNFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsUUFBUTtFQUNSLFNBQVM7QUFDWDs7QUFFQTtFQUNFLDJGQUEyRjtBQUM3Rjs7QUFFQTs7O0VBR0U7O0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsrQkFxQitCOztBQUUvQjs7K0JBRStCOztBQUUvQix3Q0FBd0M7O0FBRXhDO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsWUFBWTs7QUFFWjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7K0JBRStCOztBQUUvQixpQkFBaUI7O0FBRWpCLDRCQUE0Qjs7QUFFNUI7RUFDRSw0QkFBNEI7RUFDNUIsMkRBQTJEO0VBQzNELHVZQUF1WTtFQUN2WSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQix3QkFBd0I7RUFDeEIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7OytCQUUrQjs7QUFFL0IsNkJBQTZCOztBQUU3QjtFQUNFLDBCQUEwQjtFQUMxQix5REFBeUQ7RUFDekQsNlhBQTZYO0VBQzdYLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQUN4QixvQkFBb0I7QUFDdEI7O0FBRUEsMkJBQTJCOztBQUUzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE0VUUsMEJBQTBCO0FBQzVCOztBQUVBLDhDQUE4Qzs7QUFFOUM7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxlQUFlO0VBQ2YsWUFBWTtBQUNkOztBQUVBOzsrQkFFK0I7O0FBRS9COztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxjQUFjO0VBQ2Qsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxlQUFlO0VBQ2YsYUFBYTtBQUNmOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCOzs7RUFHRSxxQkFBcUI7QUFDdkI7O0FBRUE7O29CQUVvQjs7QUFFcEI7Ozs7RUFJRSxxQkFBcUI7RUFDckIsbUJBQW1CO0FBQ3JCOztBQUVBOzs7O0VBSUUscUJBQXFCO0VBQ3JCLHNCQUFzQjtBQUN4Qjs7QUFFQTs7OztFQUlFLHFCQUFxQjtFQUNyQixzQkFBc0I7QUFDeEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7Ozs7RUFJRSx1QkFBdUI7QUFDekI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7Ozs7OztFQU1FLG9DQUFvQztBQUN0Qzs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7Ozs7RUFJRSxxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7Ozs7OztFQU1FLGNBQWM7RUFDZCxXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCOzs7Ozs7RUFNRSxvQkFBb0I7RUFDcEIscUJBQXFCO0VBQ3JCLFVBQVU7RUFDVixXQUFXO0VBQ1gscUJBQXFCO0FBQ3ZCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsZ0NBQWdDO0VBQ2hDLGtCQUFrQjtFQUNsQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBQUNyQjs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSxXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7Ozs7RUFJRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLHdCQUF3QjtBQUMxQjs7QUFFQTs7OztFQUlFLFdBQVc7RUFDWCxZQUFZO0VBQ1osd0JBQXdCO0FBQzFCOztBQUVBOzs7O0VBSUUsWUFBWTtFQUNaLFlBQVk7RUFDWix3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSxZQUFZO0VBQ1osWUFBWTtFQUNaLGVBQWU7QUFDakI7O0FBRUE7Ozs7RUFJRSxZQUFZO0VBQ1osWUFBWTtFQUNaLHdCQUF3QjtBQUMxQjs7QUFFQTs7OztFQUlFLFlBQVk7RUFDWixZQUFZO0VBQ1osd0JBQXdCO0FBQzFCOztBQUVBOzs7O0VBSUUsWUFBWTtFQUNaLFlBQVk7RUFDWix3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSxZQUFZO0VBQ1osWUFBWTtFQUNaLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLGNBQWM7RUFDZCx5QkFBeUI7QUFDM0I7O0FBRUE7OztFQUdFLHFCQUFxQjtFQUNyQiwwQkFBMEI7QUFDNUI7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjs7c0JBRXNCOztBQUV0QjtFQUNFLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBR2xCLG9CQUFvQjtFQUNwQiwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsZUFBZTtFQUdmLGNBQWM7RUFDZCxhQUFhO0VBQ2IsbURBQW1EO0VBQ25ELGdCQUFnQjtFQUNoQix5QkFBeUI7RUFDekIsbUVBQW1FO0VBQ25FLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsd0NBQXdDO0VBQ3hDLDBCQUEwQjtFQUMxQiw0QkFBNEI7RUFHNUIsd0RBQXdEO0VBR3hELGdCQUFnQjtBQUNsQjs7QUFFQTs7c0JBRXNCOztBQUV0QiwwQ0FBMEM7O0FBRTFDO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBOzsrQkFFK0I7O0FBRS9COztzQkFFc0I7O0FBRXRCOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxvQkFBb0I7QUFDdEI7O0FBRUE7O3NCQUVzQjs7QUFFdEI7O0VBRUUsZ0NBQWdDO0VBQ2hDLG1CQUFtQjtFQUNuQiwwQkFBMEI7RUFFMUIsZ0JBQWdCO0FBQ2xCOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxRQUFRO0VBQ1IsU0FBUztFQUNULDJDQUEyQztFQUMzQyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixzQ0FBc0M7QUFDeEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUixTQUFTO0VBQ1QsMkNBQTJDO0VBQzNDLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQywyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLHFCQUFxQjtFQUNyQiw2Q0FBNkM7RUFDN0MsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQix1Q0FBdUM7QUFDekM7O0FBRUE7O3NCQUVzQjs7QUFFdEI7O0VBRUUscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFFekIsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0UseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixjQUFjO0VBRWQsZ0JBQWdCO0FBQ2xCOztBQUVBLHNCQUFzQjs7QUFFdEI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSw4QkFBOEI7O0FBRTlCO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3NCQUVzQjs7QUFFdEI7RUFDRSxvQ0FBb0M7RUFDcEMsd0NBQXdDO0VBQ3hDLHVCQUF1QjtFQUV2QiwyQkFBMkI7RUFDM0IsNkJBQTZCO0FBQy9COztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSw0QkFBNEI7RUFDNUIsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLDZCQUE2QjtBQUMvQjs7QUFFQSx5QkFBeUI7O0FBRXpCO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7O3NCQUVzQjs7QUFFdEI7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osa0RBQWtEO0VBRWxELDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLHNDQUFzQztBQUN4Qzs7QUFFQTs7RUFFRSxPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsV0FBVztFQUNYLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxXQUFXO0VBQ1gsU0FBUztFQUNULGtEQUFrRDtBQUNwRDs7QUFFQTtFQUNFLFdBQVc7RUFDWCxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxxQ0FBcUM7RUFDckMsNkJBQTZCO0FBQy9COztBQUVBLFVBQVU7O0FBRVY7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O3NCQUVzQjs7QUFFdEIsbUJBQW1COztBQUVuQjtFQUdFLGNBQWM7RUFDZCxTQUFTO0VBQ1QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6Qiw0QkFBNEI7QUFDOUI7O0FBRUEsMEJBQTBCOztBQUUxQjtFQUNFLDRCQUE0QjtFQUM1QiwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsOEJBQThCO0VBQzlCLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQSwyQkFBMkI7O0FBRTNCO0VBQ0UsdUNBQXVDO0VBQ3ZDLDBDQUEwQztFQUMxQywwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0Usc0NBQXNDO0FBQ3hDOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSxRQUFRO0VBQ1IsVUFBVTtFQUNWLHVCQUF1QjtFQUN2Qix3Q0FBd0M7QUFDMUM7O0FBRUEsOEJBQThCOztBQUU5QjtFQUNFLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLDJCQUEyQjs7QUFFM0I7RUFDRSxRQUFRO0VBQ1IsVUFBVTtBQUNaOztBQUVBO0VBQ0UsV0FBVztFQUNYLFNBQVM7QUFDWDs7QUFFQTs7c0JBRXNCOztBQUV0Qjs7RUFJRSxhQUFhO0VBR2IsbUJBQW1CO0VBR25CLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUseUJBQXlCO0VBQ3pCLDRCQUE0QjtFQUM1QixTQUFTO0FBQ1g7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFLHVDQUF1QztFQUN2QywwQ0FBMEM7RUFDMUMsMENBQTBDO0FBQzVDOztBQUVBOzs7RUFHRSxrQkFBa0I7QUFDcEI7O0FBRUE7OztFQUdFLGtEQUFrRDtBQUNwRDs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0Usc0NBQXNDO0FBQ3hDOztBQUVBLG1CQUFtQjs7QUFFbkI7RUFDRSxzQ0FBc0M7RUFDdEMseUNBQXlDO0VBQ3pDLHlDQUF5QztBQUMzQzs7QUFFQTs7O0VBR0Usa0JBQWtCO0FBQ3BCOztBQUVBOzs7RUFHRSxrREFBa0Q7QUFDcEQ7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUNFLHFDQUFxQztBQUN2Qzs7QUFFQTs7c0JBRXNCOztBQUV0QixhQUFhOztBQUViO0VBQ0UsWUFBWTtBQUNkOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBR0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0UscUJBQXFCO0VBQ3JCLGNBQWM7RUFDZCx3QkFBd0I7RUFDeEIsd0JBQXdCO0VBQ3hCLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6QixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLDZCQUE2QjtFQUM3Qiw0QkFBNEI7RUFFNUIsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBLFNBQVM7O0FBRVQ7RUFDRSxlQUFlO0FBQ2pCOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLFlBQVk7RUFFWiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHNCQUFzQjtFQUN0QixzQkFBc0I7RUFDdEIsMkJBQTJCO0FBQzdCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSxXQUFXO0VBQ1gsMEJBQTBCO0FBQzVCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsWUFBWTtBQUNkOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBLG9CQUFvQjs7QUFFcEI7O0VBRUUsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsdUJBQXVCO0VBQ3ZCLFlBQVk7RUFFWixnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSwyQkFBMkI7QUFDN0I7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUEsNkNBQTZDOztBQUU3Qzs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBLDBDQUEwQzs7QUFFMUM7O0VBRUUsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLDhCQUE4QjtBQUNoQzs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQix3QkFBd0I7RUFDeEIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQix3Q0FBd0M7RUFDeEMsNEJBQTRCO0VBRTVCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLHdDQUF3QztFQUN4QyxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsMENBQTBDO0VBQzFDLHlCQUF5QjtFQUN6QixrREFBa0Q7QUFDcEQ7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGtEQUFrRDtFQUVsRCxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsa0JBQWtCO0VBQ2xCLGtFQUFrRTtFQUNsRSwwREFBMEQ7RUFDMUQsUUFBUTtFQUNSLFdBQVc7RUFDWCxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixhQUFhO0VBQ2IsY0FBYztFQUVkLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLG9DQUFvQztFQUNwQyxZQUFZO0VBQ1osYUFBYTtFQUViLDJDQUEyQztFQUMzQyxxQkFBcUI7QUFDdkI7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBRVYsa0NBQWtDO0FBQ3BDOztBQUVBLGVBQWU7O0FBRWY7RUFDRSx3Q0FBd0M7QUFDMUM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFVBQVU7RUFDVixRQUFRO0VBQ1IsV0FBVztFQUNYLFVBQVU7RUFDVixXQUFXO0VBQ1gsd0NBQXdDO0VBQ3hDLGlDQUFpQztFQUNqQyxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLGtDQUFrQztFQUNsQywyQkFBMkI7RUFFM0Isa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHVCQUF1QjtFQUN2QixXQUFXO0FBQ2I7O0FBRUEsZ0JBQWdCOztBQUVoQjs7RUFFRSxXQUFXO0VBQ1gsU0FBUztBQUNYOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLG1DQUFtQztFQUNuQyxvQ0FBb0M7RUFDcEMsa0NBQWtDO0VBQ2xDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQSxZQUFZOztBQUVaO0VBQ0UsU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxVQUFVO0FBQ1o7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLDhCQUE4QjtFQUM5QiwyQkFBMkI7RUFDM0Isc0JBQXNCO0VBQ3RCLGtEQUFrRDtFQUNsRCxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFNBQVM7RUFDVCxRQUFRO0VBQ1Isd0NBQXdDO0VBQ3hDLG1CQUFtQjtFQUNuQixpQ0FBaUM7RUFDakMseUJBQXlCO0VBQ3pCLDJCQUEyQjtFQUMzQixVQUFVO0VBQ1YsV0FBVztBQUNiOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSx5QkFBeUI7RUFDekIsb0JBQW9CO0VBQ3BCLGdDQUFnQztFQUNoQyxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IsbUJBQW1CO0VBQ25CLGlDQUFpQztBQUNuQzs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsZ0JBQWdCO0VBQ2hCLG9DQUFvQztFQUNwQyw0QkFBNEI7RUFDNUIsa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qix5QkFBeUI7QUFDM0I7O0FBRUEsaUJBQWlCOztBQUVqQjs7RUFFRSxrQkFBa0I7RUFDbEIsU0FBUztBQUNYOztBQUVBOztFQUVFLDZCQUE2QjtBQUMvQjs7QUFFQTs7RUFFRSxtQ0FBbUM7RUFDbkMscUJBQXFCO0FBQ3ZCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSx1Q0FBdUM7RUFDdkMscUJBQXFCO0FBQ3ZCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUixTQUFTO0VBQ1QsbUJBQW1CO0VBQ25CLGtEQUFrRDtBQUNwRDs7QUFFQTtFQUNFLFNBQVM7RUFDVCxXQUFXO0VBQ1gsa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0UsV0FBVztFQUNYLDBCQUEwQjtFQUMxQixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsVUFBVTtFQUNWLFVBQVU7RUFDVixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsU0FBUztFQUNULFdBQVc7RUFDWCxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsV0FBVztFQUNYLFVBQVU7RUFDVixVQUFVO0VBQ1YsV0FBVztFQUNYLGtEQUFrRDtBQUNwRDs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjtFQUNFLFlBQVk7QUFDZDs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSx5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0Qix5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUseUJBQXlCO0FBQzNCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QiwwQkFBMEI7QUFDNUI7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIsMEJBQTBCO0FBQzVCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3FCQUVxQjs7QUFFckIsY0FBYzs7QUFFZDs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0NBQXdDO0FBQzFDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLG1DQUFtQztFQUNuQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBLGlCQUFpQjs7QUFFakI7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLHdDQUF3QztBQUMxQzs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxtQ0FBbUM7RUFDbkMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQSxpQkFBaUI7O0FBRWpCOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx3Q0FBd0M7QUFDMUM7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsbUNBQW1DO0VBQ25DLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUEsZ0JBQWdCOztBQUVoQjs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0NBQXdDO0FBQzFDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLG1DQUFtQztFQUNuQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBLGdCQUFnQjs7QUFFaEI7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLHdDQUF3QztBQUMxQzs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxtQ0FBbUM7RUFDbkMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQSxlQUFlOztBQUVmOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx3Q0FBd0M7QUFDMUM7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsbUNBQW1DO0VBQ25DLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUEsZUFBZTs7QUFFZjs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0NBQXdDO0FBQzFDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLG1DQUFtQztFQUNuQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBLGlCQUFpQjs7QUFFakI7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLHdDQUF3QztBQUMxQzs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxtQ0FBbUM7RUFDbkMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQSxpQkFBaUI7O0FBRWpCOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx3Q0FBd0M7QUFDMUM7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsbUNBQW1DO0VBQ25DLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUEsZUFBZTs7QUFFZjs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0NBQXdDO0FBQzFDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLG1DQUFtQztFQUNuQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBLGdCQUFnQjs7QUFFaEI7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLHdDQUF3QztBQUMxQzs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZ0NBQWdDO0FBQ2xDOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxtQ0FBbUM7RUFDbkMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQTs7RUFFRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLGdDQUFnQztBQUNsQzs7QUFFQSxlQUFlOztBQUVmOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsb0NBQW9DO0VBQ3BDLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx3Q0FBd0M7QUFDMUM7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsbUNBQW1DO0VBQ25DLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUE7O0VBRUUsb0NBQW9DO0VBQ3BDLHlCQUF5QjtFQUN6QixnQ0FBZ0M7QUFDbEM7O0FBRUEsZ0JBQWdCOztBQUVoQjs7RUFFRSxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0NBQXdDO0FBQzFDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLG1DQUFtQztFQUNuQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0FBQ2xDOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0Usd0JBQXdCO0VBQ3hCLHdDQUF3QztFQUN4QywwQkFBMEI7RUFFMUIsZ0JBQWdCO0FBQ2xCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSxxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLGNBQWM7RUFFZCw0Q0FBNEM7RUFFNUMsZ0JBQWdCO0FBQ2xCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsV0FBVztFQUVYLHNCQUFzQjtBQUN4Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSwwQ0FBMEM7QUFDNUM7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2Qsa0JBQWtCO0FBQ3BCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLGNBQWM7RUFDZCxlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIscUJBQXFCO0FBQ3ZCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixhQUFhO0VBQ2Isd0JBQXdCO0FBQzFCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHFCQUFxQjtBQUN2Qjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1YsZUFBZTtFQUNmLGdCQUFnQjtFQUVoQixnQ0FBZ0M7QUFDbEM7O0FBRUEsZ0JBQWdCOztBQUVoQjs7RUFFRSxlQUFlO0FBQ2pCOztBQUVBOztFQUVFLDZCQUE2QjtFQUM3QixrRUFBa0U7RUFDbEUsMERBQTBEO0VBQzFELE9BQU87RUFDUCxTQUFTO0FBQ1g7O0FBRUEsZ0JBQWdCOztBQUVoQjs7RUFFRSxlQUFlO0VBQ2Ysa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1QsV0FBVztFQUNYLGtFQUFrRTtFQUNsRSwwREFBMEQ7RUFDMUQsU0FBUztFQUNULFNBQVM7QUFDWDs7QUFFQSxlQUFlOztBQUVmO0VBQ0UsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixrRUFBa0U7RUFDbEUsMERBQTBEO0VBQzFELFlBQVk7RUFDWixXQUFXO0VBQ1gsUUFBUTtFQUNSLFNBQVM7QUFDWDs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsZUFBZTtFQUNmLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixpRUFBaUU7RUFDakUseURBQXlEO0VBQ3pELFFBQVE7RUFDUixTQUFTO0VBQ1QsWUFBWTtFQUNaLFVBQVU7QUFDWjs7QUFFQSxtQkFBbUI7O0FBRW5CLGdCQUFnQjs7QUFFaEI7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBLGdCQUFnQjs7QUFFaEI7O0VBRUUsWUFBWTtFQUNaLFNBQVM7RUFDVCxlQUFlO0FBQ2pCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxRQUFRO0VBQ1IsVUFBVTtBQUNaOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxRQUFRO0VBQ1IsV0FBVztBQUNiOztBQUVBOztvQkFFb0I7O0FBRXBCO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixTQUFTO0VBQ1QsVUFBVTtFQUNWLHFDQUFxQztBQUN2Qzs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUUsZUFBZTtBQUNqQjs7QUFFQTs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9COzs7RUFHRSxxQkFBcUI7RUFDckIsZUFBZTtFQUNmLGdCQUFnQjtBQUNsQjs7QUFFQTs7O0VBR0UsZUFBZTtFQUNmLGdCQUFnQjtBQUNsQjs7QUFFQTs7O0VBR0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtBQUNyQjs7QUFFQTs7K0JBRStCOztBQUUvQixjQUFjOztBQUVkOzs7O0VBSUUsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsNEJBQTRCO0VBQzVCLHlCQUF5QjtFQUN6Qix5QkFBeUI7QUFDM0I7O0FBRUE7Ozs7RUFJRSxXQUFXO0VBQ1gsY0FBYztFQUNkLFNBQVM7RUFDVCxXQUFXO0VBQ1gsa0JBQWtCO0FBQ3BCOztBQUVBOzs7O0VBSUUsZ0JBQWdCO0FBQ2xCOztBQUVBOzs7O0VBSUUsbUJBQW1CO0FBQ3JCOztBQUVBLGVBQWU7O0FBRWY7OztFQUdFLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZ0NBQWdDO0FBQ2xDOztBQUVBLGVBQWU7O0FBRWY7OztFQUdFLHlCQUF5QjtFQUN6QixvQkFBb0I7QUFDdEI7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBRW5CLDJCQUEyQjtBQUM3Qjs7QUFFQTs7RUFFRSxxQkFBcUI7RUFDckIsbUJBQW1CO0FBQ3JCOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUsbUJBQW1CO0VBQ25CLDZCQUE2QjtFQUM3QixXQUFXO0VBQ1gsbUJBQW1CO0FBQ3JCOztBQUVBOztFQUVFLG9CQUFvQjtBQUN0Qjs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7Ozs7RUFJRSxxQkFBcUI7QUFDdkI7O0FBRUEsWUFBWTs7QUFFWjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7Ozs7RUFJRSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLDBCQUEwQjtFQUMxQixtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUscUJBQXFCO0VBQ3JCLFdBQVc7QUFDYjs7QUFFQTs7RUFFRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsY0FBYztFQUNkLFdBQVc7RUFDWCxtRUFBbUU7RUFDbkUsaUJBQWlCO0VBQ2pCLDBCQUEwQjtBQUM1Qjs7QUFFQSxnQkFBZ0I7O0FBRWhCOztFQUVFLGNBQWM7RUFDZCx5QkFBeUI7QUFDM0I7O0FBRUEsZUFBZTs7QUFFZjs7RUFFRSxlQUFlO0FBQ2pCOztBQUVBLGlCQUFpQjs7QUFFakI7O0VBRUUsZUFBZTtFQUNmLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQSxzQkFBc0I7O0FBRXRCOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQSxnQkFBZ0I7O0FBRWhCOztFQUVFLGVBQWU7RUFDZix5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUseUJBQXlCO0FBQzNCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsV0FBVztFQUNYLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSxZQUFZO0VBQ1osdUJBQXVCO0FBQ3pCOztBQUVBOzsrQkFFK0I7O0FBRS9COztFQUVFLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsNkJBQTZCO0VBQzdCLHFCQUFxQjtFQUNyQiw0QkFBNEI7RUFDNUIseUJBQXlCO0VBQ3pCLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxZQUFZO0VBQ1osZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3FCQUVxQjs7QUFFckI7RUFDRSxxQkFBcUI7RUFDckIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsbUJBQW1CO0FBQ3JCOztBQUVBOzs7Ozs7RUFNRSxzQkFBc0I7QUFDeEI7O0FBRUEsNEJBQTRCOztBQUU1Qjs7RUFFRSx5QkFBeUI7RUFDekIsNEJBQTRCO0FBQzlCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxXQUFXO0VBQ1gsMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLFdBQVc7RUFDWCxxQkFBcUI7QUFDdkI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3FCQUVxQjs7QUFFckI7O0VBRUUsb0JBQW9CO0VBQ3BCLHVDQUF1QztBQUN6Qzs7QUFFQTs7RUFFRSwwQ0FBMEM7QUFDNUM7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBOzsrQkFFK0I7O0FBRS9COztxQkFFcUI7O0FBRXJCOztFQUVFLCtCQUErQjtBQUNqQzs7QUFFQTs7RUFFRSwrQkFBK0I7QUFDakM7O0FBRUE7O0VBRUUsK0JBQStCO0FBQ2pDOztBQUVBLGNBQWM7O0FBRWQ7O0VBRUUsZUFBZTtFQUNmLCtCQUErQjtBQUNqQzs7QUFFQTs7RUFFRSxjQUFjO0FBQ2hCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O3FCQUVxQjs7QUFFckI7OztFQUdFLDhCQUE4QjtBQUNoQzs7QUFFQTs7O0VBR0UsaUNBQWlDO0FBQ25DOztBQUVBOzs7RUFHRSxpQ0FBaUM7QUFDbkM7O0FBRUE7O3FCQUVxQjs7QUFFckI7OztFQUdFLHlCQUF5QjtFQUV6QiwyQkFBMkI7QUFDN0I7O0FBRUE7O0VBRUUseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUEsYUFBYTs7QUFFYjs7O0VBR0UsK0JBQStCO0FBQ2pDOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTs7RUFFRSxjQUFjO0FBQ2hCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLGVBQWU7RUFDZix1QkFBdUI7RUFDdkIsb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCx5QkFBeUI7RUFDekIsb0JBQW9CO0VBRXBCLCtFQUErRTtBQUNqRjs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7O0VBRUUsK0JBQStCO0VBQy9CLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSwrQkFBK0I7RUFDL0IseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLCtCQUErQjtFQUMvQiwwQkFBMEI7QUFDNUI7O0FBRUEsYUFBYTs7QUFFYjs7RUFFRSx1QkFBdUI7RUFDdkIsK0JBQStCO0FBQ2pDOztBQUVBOztFQUVFLHFDQUFxQztFQUNyQyxjQUFjO0FBQ2hCOztBQUVBOztFQUVFLHFDQUFxQztFQUNyQyxjQUFjO0FBQ2hCOztBQUVBOztFQUVFLHFDQUFxQztFQUNyQyxjQUFjO0FBQ2hCOztBQUVBLG9DQUFvQzs7QUFFcEM7Ozs7RUFJRSxrQkFBa0I7QUFDcEI7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFFRSxpR0FBaUc7QUFDbkc7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7O3FCQUVxQjs7QUFFckI7O0VBRUUsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLG9CQUFvQjtBQUN0Qjs7QUFFQTs7O0VBR0Usa0JBQWtCO0FBQ3BCOztBQUVBOzs7RUFHRSx5QkFBeUI7RUFDekIsc0JBQXNCO0VBRXRCLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixZQUFZO0VBQ1osVUFBVTtFQUNWLGNBQWM7RUFDZCxtQkFBbUI7QUFDckI7O0FBRUE7OztFQUdFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSxxQkFBcUI7QUFDdkI7O0FBRUEsd0JBQXdCOztBQUV4Qjs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsb0JBQW9CO0FBQ3RCOztBQUVBOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOztxQkFFcUI7O0FBRXJCOzs7O0VBSUUsc0JBQXNCO0VBQ3RCLG9CQUFvQjtFQUNwQixxQkFBcUI7QUFDdkI7O0FBRUE7OztFQUdFLHFCQUFxQjtFQUNyQixrQkFBa0I7QUFDcEI7O0FBRUE7OztFQUdFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtFQUNWLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFFdEIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsMEJBQTBCO0VBQzFCLG1DQUFtQztFQUNuQyxpQkFBaUI7RUFDakIsMEJBQTBCO0VBQzFCLHNCQUFzQjtFQUN0QixZQUFZO0FBQ2Q7O0FBRUE7OztFQUdFLCtCQUErQjtBQUNqQzs7QUFFQSxVQUFVOztBQUVWOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQSxnQkFBZ0I7O0FBRWhCOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxpQkFBaUI7QUFDbkI7O0FBRUEsdUJBQXVCOztBQUV2Qjs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7OztFQUdFLGdCQUFnQjtFQUNoQix5QkFBeUI7QUFDM0I7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSw0Q0FBNEM7QUFDOUM7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUEscUJBQXFCOztBQUVyQjs7RUFFRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsc0JBQXNCOztBQUV0Qjs7RUFFRSxXQUFXO0VBQ1gsa0JBQWtCO0FBQ3BCOztBQUVBLHVCQUF1Qjs7QUFFdkI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsNkNBQTZDO0VBQzdDLFdBQVc7RUFDWCxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsYUFBYTs7QUFFYjs7O0VBR0Usc0NBQXNDO0FBQ3hDOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLDRDQUE0QztFQUM1QyxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsK0NBQStDO0FBQ2pEOztBQUVBLDRCQUE0Qjs7QUFFNUI7O0VBRUUseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQSxhQUFhOztBQUViO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0Qiw0QkFBNEI7QUFDOUI7O0FBRUEsbUJBQW1COztBQUVuQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLGdCQUFnQjtFQUNoQiw2Q0FBNkM7RUFDN0MsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLG1CQUFtQjtFQUNuQiw4Q0FBOEM7QUFDaEQ7O0FBRUEsYUFBYTs7QUFFYjs7RUFFRSxnREFBZ0Q7QUFDbEQ7O0FBRUE7O0VBRUUsZ0RBQWdEO0FBQ2xEOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBOztFQUVFLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7QUFFQTs7RUFFRSxvQkFBb0I7QUFDdEI7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSxlQUFlO0FBQ2pCOztBQUVBOztFQUVFLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CLGtCQUFrQjs7QUFFbEI7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isb0RBQW9EO0VBQ3BELDRDQUE0QztBQUM5Qzs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxPQUFPO0VBQ1AsU0FBUztFQUNULFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNDQUFzQztBQUN4Qzs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxPQUFPO0VBQ1AsU0FBUztFQUNULFdBQVc7RUFDWCxZQUFZO0VBQ1oscUNBQXFDO0VBQ3JDLDZCQUE2QjtFQUM3QiwyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLHFCQUFxQjtFQUNyQiw2Q0FBNkM7RUFDN0MsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQix1Q0FBdUM7QUFDekM7O0FBRUEscUJBQXFCOztBQUVyQjtFQUNFO0lBQ0UsK0JBQStCO0lBQy9CLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsK0JBQStCO0lBQy9CLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQSxVQUFVOztBQUVWOztFQUVFLFdBQVc7RUFDWCxZQUFZO0VBQ1osMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0NBQWtDO0FBQ3BDOztBQUVBOztxQkFFcUI7O0FBRXJCLDhCQUE4Qjs7QUFFOUI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSw2Q0FBNkM7QUFDL0M7O0FBRUEsNEJBQTRCOztBQUU1QjtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLDZDQUE2QztBQUMvQzs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjtFQUNFLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBQUNwQjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLDRCQUE0QjtFQUM1QixnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FBQzFCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOzsrQkFFK0I7O0FBRS9COztxQkFFcUI7O0FBRXJCLFdBQVc7O0FBRVg7O0VBRUUsV0FBVztFQUNYLFlBQVk7RUFDWix1QkFBdUI7QUFDekI7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQix1QkFBdUI7QUFDekI7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQix1QkFBdUI7QUFDekI7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsdUJBQXVCO0FBQ3pCOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsdUJBQXVCO0FBQ3pCOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsdUJBQXVCO0FBQ3pCOztBQUVBOztFQUVFLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsdUJBQXVCO0FBQ3pCOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2YsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4QixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4QixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLDBCQUEwQjtBQUM1Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLHVDQUF1QztBQUN6Qzs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLFNBQVM7RUFDVCxRQUFRO0VBQ1IsdUJBQXVCO0VBQ3ZCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBLG9CQUFvQjs7QUFFcEI7O0VBRUUsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7cUJBRXFCOztBQUVyQjtFQUNFLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsK0NBQStDO0VBQy9DLHVDQUF1QztFQUN2QywyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLHlCQUF5QjtFQUd6QixxSEFBcUg7RUFDckgsNEJBQTRCO0VBQzVCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFO0lBQ0UsOEJBQThCO0VBQ2hDOztFQUVBO0lBQ0UsNkJBQTZCO0VBQy9CO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDhCQUE4QjtFQUNoQzs7RUFFQTtJQUNFLDZCQUE2QjtFQUMvQjtBQUNGOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLHFCQUFxQjtBQUN2Qjs7QUFFQTs7Ozs7RUFLRSx5QkFBeUI7QUFDM0I7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLGdCQUFnQjtBQUNsQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usa0JBQWtCO0VBQ2xCLG9CQUFvQjtBQUN0Qjs7QUFFQTs7RUFFRSxTQUFTO0VBQ1Qsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxTQUFTO0FBQ1g7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUEsY0FBYzs7QUFFZDtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsMkJBQTJCOztBQUUzQjtFQUNFLGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLFNBQVM7QUFDWDs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBQ0UsMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsY0FBYztFQUNkLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsZ0JBQWdCO0FBQ2xCOztBQUVBLFlBQVk7O0FBRVo7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsY0FBYztBQUNoQjs7QUFFQSw0QkFBNEI7O0FBRTVCO0VBR0UsdUlBQXVJO0FBQ3pJOztBQUVBOzs7OztFQUtFLHlCQUF5QjtBQUMzQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjtFQUNFLFNBQVM7QUFDWDs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLGVBQWU7QUFDakI7QUFDQTs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFVBQVU7RUFDVixXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLFFBQVE7RUFDUixXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixTQUFTO0VBQ1QseUJBQXlCO0VBQ3pCLHdCQUF3QjtBQUMxQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsMEJBQTBCO0VBQzFCLDhDQUE4QztBQUNoRDs7QUFFQTtFQUNFLDZDQUE2QztFQUM3QywyQkFBMkI7RUFDM0IsMEJBQTBCO0FBQzVCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSwwQkFBMEI7RUFDMUIseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsMEJBQTBCO0VBQzFCLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxZQUFZO0VBQ1osV0FBVztBQUNiOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0UsZ0JBQWdCO0VBQ2hCLDZCQUE2QjtFQUM3Qix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSw2QkFBNkI7RUFDN0IsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFFckIsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLHFCQUFxQjtBQUN2Qjs7QUFFQSx3REFBd0Q7O0FBRXhEOztFQUVFLHFCQUFxQjtBQUN2Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLDZCQUE2QjtFQUM3QiwyQkFBMkI7RUFDM0IsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLFdBQVc7RUFFWCw0Q0FBNEM7RUFDNUMsb0NBQW9DO0VBQ3BDLHNFQUFzRTtBQUN4RTs7QUFFQTtFQUNFLDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLDhDQUE4QztFQUM5QyxzQ0FBc0M7QUFDeEM7O0FBRUE7O0VBRUUsK0NBQStDO0VBQy9DLHVDQUF1QztBQUN6Qzs7QUFFQTs7RUFFRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsNENBQTRDO0VBQzVDLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLCtDQUErQztFQUMvQyx1Q0FBdUM7QUFDekM7O0FBRUE7O0VBRUUsOENBQThDO0VBQzlDLHNDQUFzQztBQUN4Qzs7QUFFQTs7RUFFRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsOENBQThDO0VBQzlDLHNDQUFzQztBQUN4Qzs7QUFFQTs7RUFFRSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0FBQ3pDOztBQUVBOztFQUVFLDRDQUE0QztFQUM1QyxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0FBQ3pDOztBQUVBOztFQUVFLDhDQUE4QztFQUM5QyxzQ0FBc0M7QUFDeEM7O0FBRUE7O0VBRUUsNENBQTRDO0VBQzVDLG9DQUFvQztBQUN0Qzs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLFVBQVU7QUFDWjs7QUFFQTs7RUFFRSxVQUFVO0FBQ1o7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSw2QkFBNkI7RUFDN0IsMkJBQTJCO0VBQzNCLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLFdBQVc7RUFFWCwyRUFBMkU7RUFDM0UsbUVBQW1FO0VBQ25FLG9JQUFvSTtBQUN0STs7QUFFQTtFQUNFLDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixtQkFBbUI7RUFDbkIsc0JBQXNCO0FBQ3hCOztBQUVBOztFQUVFLCtDQUErQztFQUMvQyx1Q0FBdUM7QUFDekM7O0FBRUE7O0VBRUUsOENBQThDO0VBQzlDLHNDQUFzQztBQUN4Qzs7QUFFQTs7RUFFRSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0FBQ3pDOztBQUVBOztFQUVFLDhDQUE4QztFQUM5QyxzQ0FBc0M7QUFDeEM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFFRSx5QkFBeUI7RUFDekIsK0JBQStCO0VBQy9CLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSxzQ0FBc0M7RUFDdEMsOEJBQThCO0FBQ2hDOztBQUVBOzs7O0VBSUUsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHFDQUFxQztFQUNyQyw2QkFBNkI7QUFDL0I7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLDJCQUEyQjtFQUMzQix5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixrQ0FBa0M7RUFDbEMsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsVUFBVTtBQUNaOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBRUUsK0JBQStCO0FBQ2pDOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBRW5CLGdEQUFnRDtFQUNoRCxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLDRCQUE0QjtFQUM1Qix3Q0FBd0M7QUFDMUM7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQiw0QkFBNEI7RUFDNUIsa0JBQWtCO0VBRWxCLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osK0NBQStDO0FBQ2pEOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztxQkFFcUI7O0FBRXJCLFdBQVc7O0FBRVg7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSwyQkFBMkI7RUFDM0IsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsK0JBQStCO0FBQ2pDOztBQUVBLFNBQVM7O0FBRVQ7OztFQUdFLGdCQUFnQjtFQUNoQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsNEJBQTRCO0FBQzlCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxtQkFBbUI7RUFDbkIsd0NBQXdDO0VBRXhDLGdEQUFnRDtBQUNsRDs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjtFQUdFLGFBQWE7RUFJYixzQkFBc0I7RUFHdEIsdUJBQXVCO0VBR3ZCLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsdUJBQXVCO0VBQ3ZCLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsb0NBQW9DO0VBRXBDLHVEQUF1RDtBQUN6RDs7QUFFQTs7RUFFRSxjQUFjO0FBQ2hCOztBQUVBOzs7O0VBSUUsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7Ozs7RUFJRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUVFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLGVBQWU7RUFFZixjQUFjO0VBQ2QsYUFBYTtBQUNmOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7OztFQUlFLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLGNBQWM7RUFDZCxZQUFZO0VBQ1osU0FBUztFQUNULGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsd0NBQXdDO0VBRXhDLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtFQUMxQixNQUFNO0VBQ04sV0FBVztBQUNiOztBQUVBOztFQUVFLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFDekIsTUFBTTtFQUNOLFdBQVc7QUFDYjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsZUFBZTtFQUNmLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBOzs7O0VBSUUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osUUFBUTtFQUNSLDRDQUE0QztFQUM1QywrQkFBK0I7RUFDL0IsV0FBVztFQUNYLFdBQVc7RUFDWCxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBLHdCQUF3Qjs7QUFFeEI7O0VBRUUsY0FBYztFQUNkLFdBQVc7QUFDYjs7QUFFQSxhQUFhOztBQUViOzs7O0VBSUUscUNBQXFDO0VBQ3JDLDRDQUE0QztBQUM5Qzs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUEsb0JBQW9COztBQUVwQjs7RUFFRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsY0FBYztBQUNoQjs7QUFFQSxrQkFBa0I7O0FBRWxCO0VBR0Usb0JBQW9CO0FBQ3RCOztBQUVBOztFQUVFLGNBQWM7RUFHZCxjQUFjO0FBQ2hCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtBQUN0Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFHRSwyRkFBMkY7QUFDN0Y7O0FBRUE7OytCQUUrQjs7QUFFL0IsVUFBVTs7QUFFVjtFQUlFLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLHdDQUF3QztFQUV4QyxnREFBZ0Q7RUFDaEQsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsUUFBUTtFQUNSLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFdBQVc7RUFFWCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLDRDQUE0QztBQUM5Qzs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1Isa0RBQWtEO0FBQ3BEOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxRQUFRO0VBQ1IsV0FBVztFQUNYLGVBQWU7RUFDZixrQkFBa0I7RUFFbEIsc0RBQXNEO0VBQ3RELGtEQUFrRDtBQUNwRDs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSw0Q0FBNEM7RUFDNUMsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBR0UsYUFBYTtFQUliLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0Isa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWix5QkFBeUI7RUFFekIsZ0RBQWdEO0VBQ2hELGdCQUFnQjtFQUNoQiw0QkFBNEI7RUFDNUIsd0NBQXdDO0FBQzFDOztBQUVBLDRCQUE0Qjs7QUFFNUI7RUFDRSxXQUFXO0VBQ1gsNkJBQTZCO0VBQzdCLGtCQUFrQjtFQUNsQixZQUFZO0VBRVosZ0JBQWdCO0VBQ2hCLDRDQUE0QztBQUM5Qzs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBRUUsY0FBYztFQUNkLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFDekIsV0FBVztFQUNYLGNBQWM7RUFDZCw2QkFBNkI7RUFDN0Isa0JBQWtCO0VBQ2xCLFlBQVk7RUFFWixnQkFBZ0I7RUFDaEIsNkNBQTZDO0FBQy9DOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxhQUFhO0VBQ2IsNEJBQTRCO0FBQzlCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsNEJBQTRCO0VBQzVCLDZCQUE2QjtFQUU3Qix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLE9BQU87RUFDUCxRQUFRO0VBQ1Isb0NBQW9DO0VBQ3BDLFdBQVc7RUFDWCxZQUFZO0VBQ1osNEJBQTRCO0VBQzVCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsUUFBUTtFQUNSLFNBQVM7RUFDVCw2QkFBNkI7RUFDN0IsVUFBVTtFQUNWLFdBQVc7RUFDWCwyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLDJDQUEyQztFQUMzQyxtQ0FBbUM7RUFDbkMscUJBQXFCO0VBQ3JCLDhFQUE4RTtFQUM5RSxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBRW5CLHVDQUF1QztFQUN2QyxtQkFBbUI7RUFDbkIsWUFBWTtBQUNkOztBQUVBO0VBQ0U7SUFDRSwrQkFBK0I7SUFDL0IsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0UsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSwrQkFBK0I7SUFDL0IsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0UsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBOzsrQkFFK0I7O0FBRS9COztxQkFFcUI7O0FBRXJCO0VBQ0UsNEJBQTRCO0VBRTVCLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osa0JBQWtCO0FBQ3BCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsWUFBWTtFQUNaLGNBQWM7RUFDZCxTQUFTO0VBQ1QsV0FBVztFQUNYLGtCQUFrQjtBQUNwQjs7QUFFQTs7cUJBRXFCOztBQUVyQixRQUFROztBQUVSO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLHlCQUF5QjtBQUMzQjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNF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RSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSx1QkFBdUI7QUFDekI7O0FBRUE7Ozs7RUFJRSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSxxQkFBcUI7QUFDdkI7O0FBRUE7Ozs7RUFJRSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSx1QkFBdUI7QUFDekI7O0FBRUE7Ozs7RUFJRSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSxxQkFBcUI7QUFDdkI7O0FBRUE7Ozs7RUFJRSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSx1QkFBdUI7QUFDekI7O0FBRUE7Ozs7RUFJRSx3QkFBd0I7QUFDMUI7O0FBRUE7Ozs7RUFJRSxzQkFBc0I7QUFDeEI7O0FBRUE7O3dCQUV3Qjs7QUFFeEIsK0JBQStCOztBQUUvQjtFQUNFOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUEsK0JBQStCOztBQUUvQjtFQUNFOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUEseUNBQXlDOztBQUV6QztFQUNFOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUEsc0NBQXNDOztBQUV0QztFQUNFOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUEsbUNBQW1DOztBQUVuQztFQUNFOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUscUJBQXFCO0VBQ3ZCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsdUJBQXVCO0VBQ3pCOztFQUVBOzs7O0lBSUUsd0JBQXdCO0VBQzFCOztFQUVBOzs7O0lBSUUsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUE7O3dCQUV3Qjs7QUFFeEI7OztFQUdFLGtCQUFrQjtFQUdsQix1QkFBdUI7QUFDekI7O0FBRUE7OztFQUdFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7d0JBRXdCOztBQUV4Qjs7O0VBR0Usb0JBQW9CO0VBQ3BCLHFCQUFxQjtBQUN2Qjs7QUFFQTs7O0VBR0Usb0JBQW9CO0VBQ3BCLHFCQUFxQjtBQUN2Qjs7QUFFQSw2QkFBNkI7O0FBRTdCOztFQUVFLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7O0VBRUUsbUJBQW1CO0VBQ25CLG9CQUFvQjtBQUN0Qjs7QUFFQTs7d0JBRXdCOztBQUV4QjtFQUNFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSwwQkFBMEI7RUFDMUIsNkJBQTZCO0FBQy9COztBQUVBOzt3QkFFd0I7O0FBRXhCO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBOzt3QkFFd0I7O0FBRXhCOztFQUdFLG1EQUFtRDtBQUNyRDs7QUFFQSxrRUFBa0U7O0FBRWxFOztFQUVFLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7QUFDcEI7O0FBRUEsc0NBQXNDOztBQUV0Qzs7RUFHRSxnQkFBZ0I7QUFDbEI7O0FBRUEsaUNBQWlDOztBQUVqQztFQUNFLGVBQWU7QUFDakI7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUVFLG1EQUFtRDtBQUNyRDs7QUFFQTtFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxRQUFRO0VBQ1IsU0FBUztFQUNULHdCQUF3QjtFQUN4QixXQUFXO0VBQ1gsZUFBZTtFQUVmLG1EQUFtRDtBQUNyRDs7QUFFQSxnQ0FBZ0M7O0FBRWhDOztFQUVFLFdBQVc7QUFDYjs7QUFFQSxpQ0FBaUM7O0FBRWpDO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBLHFCQUFxQjs7QUFFckI7O0VBR0UscURBQXFEO0FBQ3ZEOztBQUVBOztFQUdFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUVFLHFEQUFxRDtBQUN2RDs7QUFFQSxZQUFZOztBQUVaO0VBQ0UsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHdCQUF3QjtBQUMxQjs7QUFFQTs7d0JBRXdCOztBQUV4QjtFQUNFLFdBQVc7RUFDWCxlQUFlO0VBRWYsbUNBQW1DO0FBQ3JDOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxZQUFZO0VBRVosb0NBQW9DO0FBQ3RDOztBQUVBOztFQUdFLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFHRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBLHNCQUFzQjs7QUFFdEI7RUFFRSxnQkFBZ0I7RUFDaEIsV0FBVztBQUNiOztBQUVBO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBOzt3QkFFd0I7O0FBRXhCLGdCQUFnQjs7QUFFaEI7Ozs7O0VBUUUsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUVuQixpQ0FBaUM7QUFDbkM7O0FBRUEsbUJBQW1COztBQUVuQjs7Ozs7RUFRRSxzQkFBc0I7RUFDdEIsc0JBQXNCO0VBRXRCLDZCQUE2QjtBQUMvQjs7QUFFQSxtQkFBbUI7O0FBRW5COzs7OztFQVFFLHNCQUFzQjtFQUN0QixzQkFBc0I7RUFFdEIsK0JBQStCO0FBQ2pDOztBQUVBLGNBQWM7O0FBRWQ7Ozs7O0VBT0UsK0JBQStCO0VBRS9CLG1CQUFtQjtFQUluQixzQkFBc0I7QUFDeEI7O0FBRUE7Ozs7O0VBT0UsWUFBWTtBQUNkOztBQUVBOzt3QkFFd0I7O0FBRXhCLGlCQUFpQjs7QUFFakI7Ozs7O0VBS0UsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBQUNyQjs7QUFFQSxtQkFBbUI7O0FBRW5COzs7OztFQUtFLGtCQUFrQjtFQUVsQixtQkFBbUI7QUFDckI7O0FBRUE7RUFHRSx1QkFBdUI7QUFDekI7O0FBRUEsa0JBQWtCOztBQUVsQjs7Ozs7RUFLRSxpQkFBaUI7RUFFakIsbUJBQW1CO0FBQ3JCOztBQUVBLGNBQWM7O0FBRWQ7Ozs7O0VBS0UsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUVyQixhQUFhO0FBQ2Y7O0FBRUE7O3dCQUV3Qjs7QUFFeEI7Ozs7Ozs7Ozs7Ozs7RUFhRSxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixvQkFBb0I7QUFDdEI7O0FBRUEsUUFBUTs7QUFFUjs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsV0FBVzs7QUFFWDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsV0FBVzs7QUFFWDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsVUFBVTs7QUFFVjs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsVUFBVTs7QUFFVjs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsU0FBUzs7QUFFVDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsU0FBUzs7QUFFVDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsV0FBVzs7QUFFWDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsV0FBVzs7QUFFWDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsU0FBUzs7QUFFVDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsVUFBVTs7QUFFVjs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsU0FBUzs7QUFFVDs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUEsVUFBVTs7QUFFVjs7O0VBR0Usb0NBQW9DO0VBQ3BDLGNBQWM7QUFDaEI7O0FBRUE7O3dCQUV3Qjs7QUFFeEI7OztFQUdFLHFCQUFxQjtFQUdyQixZQUFZO0FBQ2Q7O0FBRUE7OztFQUtFLFlBQVk7QUFDZDs7QUFFQTs7d0JBRXdCOztBQUV4QixXQUFXOztBQUVYO0VBQ0U7OztJQU1FLDJCQUEyQjtFQUM3Qjs7RUFFQTs7SUFLRSw4QkFBOEI7RUFDaEM7O0VBRUEscUJBQXFCOztFQUVyQjs7SUFHRSxtREFBbUQ7RUFDckQ7O0VBRUE7O0lBR0UsZ0JBQWdCO0VBQ2xCOztFQUVBLGdDQUFnQzs7RUFFaEM7SUFFRSxtREFBbUQ7RUFDckQ7O0VBRUE7SUFFRSxnQkFBZ0I7RUFDbEI7O0VBRUEsb0JBQW9COztFQUVwQjtJQUVFLG9DQUFvQztFQUN0Qzs7RUFFQTtJQUVFLGdCQUFnQjtFQUNsQjtBQUNGOztBQUVBLFdBQVc7O0FBRVg7RUFDRTs7O0lBTUUsMkJBQTJCO0VBQzdCOztFQUVBO0lBSUUsOEJBQThCO0VBQ2hDOztFQUVBLHFCQUFxQjs7RUFFckI7O0lBR0UsbURBQW1EO0VBQ3JEOztFQUVBOztJQUdFLGdCQUFnQjtFQUNsQjs7RUFFQSxnQ0FBZ0M7O0VBRWhDO0lBRUUsbURBQW1EO0VBQ3JEOztFQUVBO0lBRUUsZ0JBQWdCO0VBQ2xCOztFQUVBLG9CQUFvQjs7RUFFcEI7SUFFRSxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFFRSxnQkFBZ0I7RUFDbEI7QUFDRjs7QUFFQSxhQUFhOztBQUViO0VBQ0U7OztJQU1FLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUlFLDhCQUE4QjtFQUNoQzs7RUFFQSxxQkFBcUI7O0VBRXJCOztJQUdFLG1EQUFtRDtFQUNyRDs7RUFFQTs7SUFHRSxnQkFBZ0I7RUFDbEI7O0VBRUEsZ0NBQWdDOztFQUVoQztJQUVFLG1EQUFtRDtFQUNyRDs7RUFFQTtJQUVFLGdCQUFnQjtFQUNsQjs7RUFFQSxvQkFBb0I7O0VBRXBCO0lBRUUsb0NBQW9DO0VBQ3RDOztFQUVBO0lBRUUsZ0JBQWdCO0VBQ2xCO0FBQ0Y7O0FBRUE7O3FCQUVxQjs7QUFFckIsZ0JBQWdCOztBQUVoQjtFQUNFO0lBQ0UsV0FBVztFQUNiOztFQUVBOztJQUVFLHNCQUFzQjtJQUN0Qix1QkFBdUI7RUFDekI7O0VBRUE7O0lBRUUsZ0NBQWdDO0lBQ2hDLDRCQUE0QjtJQUM1QiwrQkFBK0I7SUFFL0IsMkJBQTJCO0lBQzNCLFdBQVc7RUFDYjs7RUFFQTs7O0lBR0Usc0JBQXNCO0VBQ3hCOztFQUVBOzs7SUFHRSxxQkFBcUI7RUFDdkI7O0VBRUE7OztJQUdFLHFCQUFxQjtFQUN2Qjs7RUFFQTs7O0lBR0UsOEJBQThCO0VBQ2hDOztFQUVBOzs7SUFHRSw4QkFBOEI7RUFDaEM7O0VBRUE7OztJQUdFLDhCQUE4QjtFQUNoQzs7RUFFQTs7O0lBR0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7SUFHRSxxQkFBcUI7RUFDdkI7O0VBRUE7OztJQUdFLHFCQUFxQjtFQUN2Qjs7RUFFQTs7O0lBR0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7SUFHRSw4QkFBOEI7RUFDaEM7O0VBRUE7OztJQUdFLDhCQUE4QjtFQUNoQzs7RUFFQTs7O0lBR0UsOEJBQThCO0VBQ2hDOztFQUVBOzs7SUFHRSw4QkFBOEI7RUFDaEM7O0VBRUE7OztJQUdFLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRTs7SUFFRSxzQkFBc0I7SUFDdEIsdUJBQXVCO0VBQ3pCOztFQUVBOztJQUVFLDRCQUE0QjtJQUM1QiwrQkFBK0I7SUFDL0Isc0JBQXNCO0lBRXRCLDJCQUEyQjtFQUM3Qjs7RUFFQTs7O0lBR0Usc0JBQXNCO0VBQ3hCOztFQUVBOzs7SUFHRSxxQkFBcUI7RUFDdkI7O0VBRUE7OztJQUdFLHFCQUFxQjtFQUN2Qjs7RUFFQTs7O0lBR0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7SUFHRSxxQkFBcUI7RUFDdkI7O0VBRUE7OztJQUdFLHFCQUFxQjtFQUN2Qjs7RUFFQTs7O0lBR0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7SUFHRSw4QkFBOEI7RUFDaEM7O0VBRUE7OztJQUdFLDhCQUE4QjtFQUNoQzs7RUFFQTs7O0lBR0UsOEJBQThCO0VBQ2hDOztFQUVBOzs7SUFHRSw4QkFBOEI7RUFDaEM7O0VBRUE7OztJQUdFLDhCQUE4QjtFQUNoQzs7RUFFQTs7O0lBR0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7SUFHRSxxQkFBcUI7RUFDdkI7O0VBRUE7OztJQUdFLHFCQUFxQjtFQUN2QjtBQUNGOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0U7SUFDRSxXQUFXO0lBQ1gsMkJBQTJCO0lBQzNCLDRCQUE0QjtFQUM5Qjs7RUFFQTs7Ozs7OztJQU9FLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFFMUIsMkJBQTJCO0lBQzNCLDZCQUE2QjtFQUMvQjs7RUFFQTtJQUNFLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0VBRUEsYUFBYTs7RUFFYjs7SUFFRSw0QkFBNEI7SUFDNUIsNkJBQTZCO0VBQy9COztFQUVBLDRDQUE0Qzs7RUFFNUM7O0lBRUUsNkJBQTZCO0lBQzdCLDhCQUE4QjtFQUNoQzs7RUFFQSxzQkFBc0I7O0VBRXRCOzs7O0lBSUUsMkJBQTJCO0VBQzdCOztFQUVBOzs7O0lBSUUsOENBQThDO0VBQ2hEOztFQUVBOzs7O0lBSUUsNENBQTRDO0lBRTVDLDJCQUEyQjtJQUMzQiw0QkFBNEI7SUFDNUIsK0JBQStCO0VBQ2pDOztFQUVBO0lBRUUsMkJBQTJCO0VBQzdCOztFQUVBOztJQUVFLDRCQUE0QjtJQUM1Qiw2QkFBNkI7RUFDL0I7QUFDRjs7QUFFQTs7d0JBRXdCOztBQUV4QixxRUFBcUU7O0FBRXJFLHFCQUFxQjs7QUFFckI7RUFDRTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLHVCQUF1Qjs7QUFFdkI7RUFDRTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLDJCQUEyQjs7QUFFM0I7RUFDRTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLHlCQUF5Qjs7QUFFekI7RUFDRTs7OztJQUlFLHdCQUF3QjtFQUMxQjs7RUFFQTs7OztJQUlFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7OztFQVNFOztBQUVGOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBR0UsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixtRUFBbUU7RUFDbkUsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQix3Q0FBd0M7RUFFeEMsZ0RBQWdEO0VBQ2hELDRCQUE0QjtFQUM1Qix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0VBQ1gsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBR0UsYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBR0UsYUFBYTtFQUdiLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsY0FBYztFQUNkLHFCQUFxQjtFQUNyQix3Q0FBd0M7RUFHeEMsY0FBYztFQUNkLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFFdEIsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixrQ0FBa0M7RUFDbEMsb0JBQW9CO0VBQ3BCLDBCQUEwQjtFQUMxQixtQkFBbUI7RUFHbkIsdUVBQXVFO0FBRXpFOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLE9BQU87RUFDUCxVQUFVO0VBQ1YsWUFBWTtFQUNaLFVBQVU7RUFDVixpQ0FBaUM7QUFDbkM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7OztFQUdFLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFFdEIsaUJBQWlCO0VBQ2pCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLFlBQVk7RUFDWixXQUFXO0VBQ1gsZ0NBQWdDO0FBQ2xDOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixrQkFBa0I7RUFDbEIsNEJBQTRCO0VBQzVCLHlCQUF5QjtFQUN6QixjQUFjO0FBQ2hCOztBQUVBOztrQkFFa0I7O0FBRWxCOztFQUlFLGFBQWE7RUFHYixvQkFBb0I7RUFJcEIsdUJBQXVCO0FBQ3pCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxXQUFXO0VBQ1gsY0FBYztFQUNkLHNCQUFzQjtFQUN0QixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsY0FBYztFQUNkLGlCQUFpQjtBQUNuQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixrQkFBa0I7O0FBRWxCO0VBQ0UsWUFBWTtFQUNaLFlBQVk7RUFDWix1QkFBdUI7QUFDekI7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLDJCQUEyQjtFQUMzQixrREFBa0Q7RUFDbEQsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQiwrQ0FBK0M7RUFJL0MsaUNBQWlDO0FBQ25DOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6Qiw2Q0FBNkM7RUFDN0Msa0NBQWtDO0VBQ2xDLHFDQUFxQztFQUNyQywrQkFBK0I7RUFDL0IsOEJBQThCO0VBRTlCLDJCQUEyQjtFQUUzQiwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSwwQ0FBMEM7RUFDMUMscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0UsMENBQTBDO0VBQzFDLHFDQUFxQztBQUN2Qzs7QUFFQTtFQUNFLDBDQUEwQztFQUMxQyw0QkFBNEI7RUFDNUIscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQix5QkFBeUI7RUFDekIsV0FBVztFQUNYLHFDQUFxQztBQUN2Qzs7QUFFQSxjQUFjOztBQUVkOztFQUVFLDRCQUE0QjtFQUM1Qix3QkFBd0I7QUFDMUI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSxhQUFhOztBQUViOztFQUVFLCtCQUErQjtBQUNqQzs7QUFFQSxhQUFhOztBQUViO0VBQ0UsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsWUFBWTtFQUNaLHVCQUF1QjtFQUV2Qiw2Q0FBNkM7RUFDN0MsNERBQTREO0FBQzlEOztBQUVBO0VBQ0UsU0FBUztBQUNYOztBQUVBO0VBQ0UsTUFBTTtBQUNSOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLCtCQUErQjtBQUNqQzs7QUFFQTtFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsV0FBVztBQUNiOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLDJCQUEyQjtBQUM3Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGNBQWM7RUFDZCxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCLGdDQUFnQzs7QUFFaEM7RUFDRSwyQkFBMkI7QUFDN0I7O0FBRUE7O2dCQUVnQjs7QUFFaEIsc0NBQXNDOztBQUV0QztFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxXQUFXO0FBQ2I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRTtJQUNFLHNCQUFzQjtJQUN0QiwyQkFBMkI7SUFDM0IsNEJBQTRCO0VBQzlCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDRDQUE0QztFQUM5QztBQUNGOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCOzs7O0VBSUUsZUFBZTtFQUNmLCtCQUErQjtFQUMvQiwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7OztFQUdFLCtCQUErQjtFQUMvQiwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSwrQkFBK0I7RUFDL0IsMEJBQTBCO0VBQzFCLG1CQUFtQjtFQUVuQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUscUNBQXFDO0VBQ3JDLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSwwQkFBMEI7RUFDMUIsd0NBQXdDO0VBQ3hDLHVDQUF1QztBQUN6Qzs7QUFFQTs7K0JBRStCOztBQUUvQjs7b0JBRW9COztBQUVwQixpQkFBaUI7O0FBRWpCOztFQUlFLGFBQWE7RUFDYiw2QkFBNkI7QUFDL0I7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFJRSxhQUFhO0VBQ2IsNEJBQTRCO0FBQzlCOztBQUVBLG9CQUFvQjs7QUFFcEI7O0VBRUUsV0FBVztFQUNYLE9BQU87QUFDVDs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7RUFJZCxzQkFBc0I7RUFDdEIsbUJBQW1CO0VBRW5CLGdEQUFnRDtBQUNsRDs7QUFFQSxlQUFlOztBQUVmO0VBQ0UsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxZQUFZO0VBQ1osa0JBQWtCO0FBQ3BCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxhQUFhO0VBQ2IsWUFBWTtFQUNaLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCx5QkFBeUI7QUFDM0I7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsT0FBTztFQUNQLFNBQVM7RUFDVCxXQUFXO0VBQ1gsV0FBVztFQUNYLGlDQUFpQztBQUNuQzs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLDJCQUEyQjtFQUMzQix1QkFBdUI7RUFDdkIseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsK0JBQStCO0VBQy9CLGtCQUFrQjtFQUVsQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSw2QkFBNkI7RUFDN0IsaUJBQWlCO0VBQ2pCLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGtCQUFrQjtFQUVsQiwyQkFBMkI7RUFDM0IsWUFBWTtFQUNaLDRCQUE0QjtFQUM1QixnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSx3Q0FBd0M7QUFDMUM7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGtDQUFrQztFQUNsQyxtQ0FBbUM7RUFDbkMsaUNBQWlDO0VBQ2pDLGtDQUFrQztFQUNsQywwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLDZCQUE2QjtFQUM3Qix5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHdCQUF3QjtFQUN4QiwwQkFBMEI7RUFDMUIscUJBQXFCO0VBQ3JCLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBRW5CLGdCQUFnQjtFQUNoQiw2REFBNkQ7QUFDL0Q7O0FBRUEseUNBQXlDOztBQUV6Qzs7RUFFRSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsV0FBVztBQUNiOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLDZCQUE2QjtFQUM3QixVQUFVO0FBQ1o7O0FBRUEsNEJBQTRCOztBQUU1QjtFQUNFLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFFbEIsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQyxvQ0FBb0M7RUFDcEMsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLDBCQUEwQjtFQUMxQixxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLDZEQUE2RDtBQUMvRDs7QUFFQSw0QkFBNEI7O0FBRTVCO0VBQ0UsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUVsQiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixrQ0FBa0M7RUFDbEMsb0NBQW9DO0VBQ3BDLGlDQUFpQztFQUNqQyxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsMEJBQTBCO0VBQzFCLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFDeEIsNkRBQTZEO0FBQy9EOztBQUVBLDJCQUEyQjs7QUFFM0I7RUFDRSw0QkFBNEI7RUFDNUIsa0JBQWtCO0VBRWxCLDJCQUEyQjtFQUMzQixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLGlDQUFpQztFQUNqQyxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsMEJBQTBCO0VBQzFCLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFDeEIsNkRBQTZEO0FBQy9EOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxrQkFBa0I7RUFDbEIsa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQyxpQ0FBaUM7RUFDakMsbUJBQW1CO0FBQ3JCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztFQUdYLG9CQUFvQjtFQUNwQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxjQUFjO0VBQ2Qsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLHFDQUFxQztFQUNyQywwQkFBMEI7RUFFMUIsZ0JBQWdCO0FBQ2xCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZ0JBQWdCO0VBQ2hCLDBCQUEwQjtFQUMxQiwyQkFBMkI7RUFDM0Isa0JBQWtCO0VBQ2xCLFlBQVk7RUFFWixnQkFBZ0I7QUFDbEI7O0FBRUEsU0FBUzs7QUFFVDtFQUVFLGtCQUFrQjtFQUVsQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGtDQUFrQztFQUNsQyx3QkFBd0I7RUFDeEIsZ0JBQWdCO0VBRWhCLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQiw0QkFBNEI7QUFDOUI7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLFdBQVc7QUFDYjs7QUFFQSxVQUFVOztBQUVWOzs7RUFHRSwrQkFBK0I7RUFDL0IsMEJBQTBCO0FBQzVCOztBQUVBLFdBQVc7O0FBRVg7RUFFRSxnQkFBZ0I7RUFDaEIsK0JBQStCO0VBQy9CLDBCQUEwQjtFQUMxQiw0QkFBNEI7QUFDOUI7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUVFLGdCQUFnQjtFQUNoQiwrQkFBK0I7RUFDL0IsMEJBQTBCO0FBQzVCOztBQUVBLGFBQWE7O0FBRWI7O0VBRUUsMENBQTBDO0FBQzVDOztBQUVBOzs7RUFHRSxxQ0FBcUM7RUFDckMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UscUNBQXFDO0VBQ3JDLHlCQUF5QjtBQUMzQjs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQSxhQUFhOztBQUViO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsV0FBVztFQUNYLDJCQUEyQjtBQUM3Qjs7QUFFQTs7d0JBRXdCOztBQUV4QjtFQUNFLFlBQVk7RUFDWiw0QkFBNEI7RUFDNUIsdUNBQXVDO0FBQ3pDOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSw2QkFBNkI7QUFDL0I7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLDZCQUE2QjtBQUMvQjs7QUFFQTs7d0JBRXdCOztBQUV4QjtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsK0NBQStDO0FBQ2pEOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFFbEIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixrQ0FBa0M7RUFDbEMsd0JBQXdCO0VBRXhCLDJCQUEyQjtBQUM3Qjs7QUFFQSxlQUFlOztBQUVmO0VBQ0UscUNBQXFDO0FBQ3ZDOztBQUVBO0VBRUUsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBLFVBQVU7O0FBRVY7OztFQUdFLDZCQUE2QjtFQUM3QiwwQkFBMEI7QUFDNUI7O0FBRUEsWUFBWTs7QUFFWjs7O0VBR0UsNkJBQTZCO0VBQzdCLG9DQUFvQztBQUN0Qzs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsNkJBQTZCO0VBRTdCLGdCQUFnQjtFQUNoQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLDBCQUEwQjtBQUM1Qjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UscUJBQXFCO0VBQ3JCLDBCQUEwQjtBQUM1Qjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLHNCQUFzQjs7QUFFdEI7RUFDRSx3QkFBd0I7RUFDeEIsdUJBQXVCO0VBQ3ZCLHlCQUF5QjtFQUN6QiwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLCtCQUErQjtFQUMvQiw2QkFBNkI7RUFDN0Isd0JBQXdCO0VBQ3hCLHVCQUF1QjtBQUN6Qjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxzQ0FBc0M7QUFDeEM7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxxQkFBcUI7RUFDckIsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFFbEIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFFbEIsZ0JBQWdCO0VBRWhCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFFekIsNkJBQTZCO0FBQy9COztBQUVBLFdBQVc7O0FBRVg7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSw2QkFBNkI7RUFDN0IsVUFBVTtFQUNWLDBCQUEwQjtFQUMxQix1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLGlCQUFpQjtBQUNuQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsV0FBVztBQUNiOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSxXQUFXO0FBQ2I7O0FBRUEsd0JBQXdCOztBQUV4QjtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSxxQ0FBcUM7QUFDdkM7O0FBRUEsc0JBQXNCOztBQUV0QjtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxrQkFBa0I7QUFDcEI7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUNFLFVBQVU7RUFDViw2QkFBNkI7QUFDL0I7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLDZCQUE2QjtFQUM3QixZQUFZO0VBRVosZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQiwwQkFBMEI7QUFDNUI7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLDZCQUE2QjtBQUMvQjs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBLGFBQWE7O0FBRWI7Ozs7RUFJRSx3Q0FBd0M7QUFDMUM7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7O2dCQUVnQjs7QUFFaEIsa0JBQWtCOztBQUVsQjtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0FBQ2I7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsY0FBYztBQUNoQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsU0FBUztFQUNULFVBQVU7QUFDWjs7QUFFQSxlQUFlOztBQUVmO0VBQ0UsVUFBVTtBQUNaOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxXQUFXO0VBQ1gsZ0JBQWdCO0FBQ2xCOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxjQUFjO0VBQ2QsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixXQUFXO0FBQ2I7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEIsU0FBUzs7QUFFVDtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsY0FBYztFQUlkLHNCQUFzQjtBQUN4Qjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsV0FBVztFQUNYLGNBQWM7RUFDZCxrQ0FBa0M7RUFDbEMsa0NBQWtDO0FBQ3BDOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0U7SUFJRSxzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFNBQVM7SUFDVCxXQUFXO0lBQ1gsU0FBUztJQUNULFdBQVc7SUFDWCxXQUFXO0lBQ1gsaUNBQWlDO0VBQ25DOztFQUVBOztJQUVFLDBCQUEwQjtFQUM1Qjs7RUFFQTs7SUFFRSx5QkFBeUI7RUFDM0I7O0VBRUE7O0lBS0Usc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEIsMkJBQTJCOztBQUUzQjs7RUFFRSxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxnQ0FBZ0M7RUFDaEMseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLGdDQUFnQztFQUNoQyx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsZ0NBQWdDO0VBQ2hDLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLDZCQUE2QjtFQUM3QixtQkFBbUI7RUFFbkIsZ0JBQWdCO0FBQ2xCOztBQUVBLGNBQWM7O0FBRWQ7O0VBRUUsdUJBQXVCO0VBQ3ZCLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0UscUNBQXFDO0FBQ3ZDOztBQUVBLGFBQWE7O0FBRWI7O0VBRUUsK0JBQStCO0FBQ2pDOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxXQUFXO0VBQ1gsdUJBQXVCO0VBRXZCLGdCQUFnQjtBQUNsQjs7QUFFQSxhQUFhOztBQUViOztFQUVFLCtCQUErQjtBQUNqQzs7QUFFQSxnQkFBZ0I7O0FBRWhCOzs7O0VBSUUscUNBQXFDO0VBQ3JDLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsdUJBQXVCO0VBQ3ZCLGNBQWM7QUFDaEI7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFFRSxxQ0FBcUM7RUFDckMsY0FBYztBQUNoQjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UscUNBQXFDO0VBQ3JDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLHNCQUFzQjtFQUV0QiwyQkFBMkI7RUFDM0IsdUJBQXVCO0FBQ3pCOztBQUVBLHVCQUF1Qjs7QUFFdkI7RUFDRSxxQ0FBcUM7RUFDckMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsOEJBQThCO0FBQ2hDOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztFQUNYLDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLFlBQVk7RUFDWiw2QkFBNkI7QUFDL0I7O0FBRUE7O2dCQUVnQjs7QUFFaEIsUUFBUTs7QUFFUjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsVUFBVTs7QUFFVjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsVUFBVTs7QUFFVjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsVUFBVTs7QUFFVjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSwrQ0FBK0M7QUFDakQ7O0FBRUE7O2dCQUVnQjs7QUFFaEI7OztFQUdFLFlBQVk7QUFDZDs7QUFFQTs7O0VBR0UseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTs7O0VBR0UsMEJBQTBCO0VBQzFCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7O0VBR0UsMkJBQTJCO0FBQzdCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBR0Usb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLHNCQUFzQjtBQUN4Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjs7RUFFRSxXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLDZCQUE2QjtFQUM3QiwyQkFBMkI7RUFDM0IsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUdsQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLFdBQVc7RUFDWCxXQUFXO0FBQ2I7O0FBRUE7OztFQUdFLDZCQUE2QjtBQUMvQjs7QUFFQTs7RUFFRSxRQUFRO0VBQ1IsU0FBUztFQUNULFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixVQUFVO0VBQ1YsVUFBVTtFQUNWLFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFNBQVM7RUFDVCxTQUFTO0VBQ1QsV0FBVztBQUNiOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsUUFBUTtFQUNSLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFNBQVM7RUFDVCxTQUFTO0VBQ1Qsa0VBQWtFO0VBQ2xFLDBEQUEwRDtFQUMxRCxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsWUFBWTtFQUNaLGdDQUFnQztFQUNoQywrQkFBK0I7RUFDL0IsVUFBVTtFQUVWLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULFlBQVk7RUFDWixVQUFVO0VBQ1YsaUVBQWlFO0VBQ2pFLHlEQUF5RDtFQUN6RCwwQkFBMEI7RUFDMUIsWUFBWTtFQUNaLDZCQUE2QjtFQUM3QiwrQkFBK0I7QUFDakM7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSw2QkFBNkI7O0FBRTdCOztFQUVFLGFBQWE7QUFDZjs7QUFFQSxXQUFXOztBQUVYO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCLFdBQVc7O0FBRVg7RUFDRSxRQUFRO0VBQ1IsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsOEJBQThCO0VBQzlCLGtDQUFrQztFQUVsQyxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGdCQUFnQjtFQUNoQixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFFBQVE7RUFDUixtQkFBbUI7RUFFbkIsc0RBQXNEO0VBQ3RELGtEQUFrRDtBQUNwRDs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsZUFBZTtFQUNmLFdBQVc7QUFDYjs7QUFFQTs7Z0JBRWdCOztBQUVoQixTQUFTOztBQUVUO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQSxZQUFZOztBQUVaO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQiwwQkFBMEI7RUFHMUIsMEZBQTBGO0VBRTFGLDRCQUE0QjtFQUU1QiwwRkFBMEY7QUFDNUY7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBOztnQkFFZ0I7O0FBRWhCLFdBQVc7O0FBRVg7RUFDRSxjQUFjO0VBQ2QsbUVBQW1FO0VBQ25FLGlCQUFpQjtFQUNqQixrQ0FBa0M7QUFDcEM7O0FBRUEsc0JBQXNCOztBQUV0QjtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQSxjQUFjOztBQUVkO0VBQ0UsYUFBYTtFQUNiLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osYUFBYTtFQUNiLDJCQUEyQjtFQUMzQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQix5QkFBeUI7RUFDekIsWUFBWTtBQUNkOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1YsWUFBWTtFQUNaLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxjQUFjO0VBQ2QsWUFBWTtFQUNaLFlBQVk7RUFFWiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUEseUJBQXlCOztBQUV6QjtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBR0UsYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsYUFBYTtBQUNmOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBR0Usb0JBQW9CO0FBQ3RCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0VBQ25CLGtEQUFrRDtFQUVsRCx3REFBd0Q7RUFDeEQsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsa0RBQWtEO0VBRWxELDhGQUE4RjtBQUNoRzs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUdFLGFBQWE7RUFDYixXQUFXO0VBR1gsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsY0FBYztFQUdkLGNBQWM7RUFDZCxXQUFXO0VBQ1gsY0FBYztFQUNkLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBO0VBQ0UsY0FBYztFQUdkLGNBQWM7RUFDZCxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFFRSx5SUFBeUk7QUFDM0k7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSx5QkFBeUI7RUFDekIsK0JBQStCO0FBQ2pDOztBQUVBOztnQkFFZ0I7O0FBRWhCLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFlBQVk7O0FBRVo7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFlBQVk7O0FBRVo7RUFDRSx5QkFBeUI7RUFDekIsY0FBYztBQUNoQjs7QUFFQTs7RUFHRSwyRUFBMkU7QUFDN0U7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUseUJBQXlCO0VBQ3pCLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBRWQsMkVBQTJFO0FBQzdFOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQixjQUFjOztBQUVkO0VBQ0UsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2Ysd0NBQXdDO0VBRXhDLGdCQUFnQjtFQUNoQiw0QkFBNEI7RUFDNUIsZ0JBQWdCO0VBQ2hCLDBCQUEwQjtFQUMxQix5QkFBeUI7RUFDekIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7K0JBRStCOztBQUUvQixrQkFBa0I7O0FBRWxCOztFQUdFLGlEQUFpRDtBQUNuRDs7QUFFQSxZQUFZOztBQUVaO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsMEJBQTBCO0VBQzFCLGtDQUFrQztFQUNsQyx1QkFBdUI7RUFDdkIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIsOENBQThDO0VBQzlDLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLHdDQUF3QztBQUMxQzs7QUFFQTtFQUNFLHdDQUF3QztBQUMxQzs7QUFFQTtFQUNFLGtEQUFrRDtBQUNwRDs7QUFFQSxXQUFXOztBQUVYO0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLDRDQUE0QztFQUM1QyxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLDBCQUEwQjtFQUMxQixrQ0FBa0M7RUFDbEMsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBLGNBQWM7O0FBRWQ7RUFDRSwyQ0FBMkM7QUFDN0M7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsbUJBQW1COztBQUVuQjtFQUNFLDJDQUEyQztBQUM3Qzs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0Usa0NBQWtDO0VBQ2xDLG1CQUFtQjtBQUNyQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLGVBQWU7O0FBRWY7RUFDRTtJQUNFLFdBQVc7RUFDYjs7RUFFQTs7OztJQUlFLHNCQUFzQjtJQUN0Qix5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFFQTtJQUNFLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFFbkIsZ0VBQWdFO0VBQ2xFOztFQUVBOztJQUVFLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsaUNBQWlDO0lBRWpDLDJCQUEyQjtFQUM3Qjs7RUFFQTs7SUFFRSxpQkFBaUI7RUFDbkI7O0VBRUEscUJBQXFCOztFQUVyQjtJQUVFLDJCQUEyQjtFQUM3QjtBQUNGOztBQUVBOzsrQkFFK0I7O0FBRS9CLGFBQWE7O0FBRWI7Ozs7RUFJRSxlQUFlO0FBQ2pCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLDZDQUE2QztFQUM3Qyw4Q0FBOEM7QUFDaEQ7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLDRDQUE0QztFQUM1Qyw2Q0FBNkM7QUFDL0M7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxvQkFBb0I7RUFDcEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFFekIscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLHVCQUF1QjtFQUN2QiwrQkFBK0I7RUFDL0IsYUFBYTtFQUViLG1DQUFtQztBQUNyQzs7QUFFQSxrQkFBa0I7O0FBRWxCO0VBRUUsb0NBQW9DO0FBQ3RDOztBQUVBO0VBRUUsbUNBQW1DO0FBQ3JDOztBQUVBLDhCQUE4Qjs7QUFFOUI7O0VBRUUsK0JBQStCO0VBQy9CLGlCQUFpQjtFQUNqQiwwQkFBMEI7RUFDMUIsa0JBQWtCO0VBRWxCLGNBQWM7RUFDZCxjQUFjO0VBQ2QsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUEsbUJBQW1COztBQUVuQjtFQUNFLDZDQUE2QztBQUMvQzs7QUFFQTtFQUNFLDZDQUE2QztBQUMvQzs7QUFFQTtFQUNFLDZDQUE2QztBQUMvQzs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjs7RUFHRSxxQ0FBcUM7QUFDdkM7O0FBRUE7O0VBRUUsOEJBQThCO0VBQzlCLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFHRSxxQ0FBcUM7QUFDdkM7O0FBRUE7O0VBRUUsOEJBQThCO0VBQzlCLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFHRSxxQ0FBcUM7QUFDdkM7O0FBRUE7O0VBRUUsOEJBQThCO0VBQzlCLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFHRSxxQ0FBcUM7QUFDdkM7O0FBRUE7O0VBRUUsOEJBQThCO0VBQzlCLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFHRSxpREFBaUQ7QUFDbkQ7O0FBRUE7O0VBRUUsOEJBQThCO0VBQzlCLHFDQUFxQztBQUN2Qzs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7OztFQUlFLG9CQUFvQjtFQUNwQiw0QkFBNEI7QUFDOUI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRTs7Ozs7SUFLRSxzQkFBc0I7SUFDdEIseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsWUFBWTtFQUNkOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFFQTtJQUNFLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBRW5CLGdFQUFnRTtFQUNsRTs7RUFFQTs7SUFFRSxnQkFBZ0I7SUFDaEIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUV0QiwyQkFBMkI7RUFDN0I7O0VBRUEscUJBQXFCOztFQUVyQjtJQUVFLDJCQUEyQjtFQUM3QjtBQUNGOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7O0VBRUUsaUJBQWlCO0FBQ25COztBQUVBOzttQkFFbUI7O0FBRW5COztFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQTs7RUFFRSxzQkFBc0I7QUFDeEI7O0FBRUE7O0VBRUUsc0JBQXNCO0FBQ3hCOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLFVBQVU7RUFDVixtQkFBbUI7QUFDckI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtBQUN6Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSwwQ0FBMEM7RUFDMUMscUNBQXFDO0FBQ3ZDOztBQUVBOztFQUVFLGdEQUFnRDtFQUNoRCx5QkFBeUI7QUFDM0I7O0FBRUEseUJBQXlCOztBQUV6QjtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsa0NBQWtDO0FBQ3BDOztBQUVBLGlCQUFpQjs7QUFFakI7OztFQUdFLDhCQUE4QjtFQUM5Qix5QkFBeUI7QUFDM0I7O0FBRUE7OztFQUdFLDhCQUE4QjtFQUM5Qix5QkFBeUI7QUFDM0I7O0FBRUE7OztFQUdFLDhCQUE4QjtFQUM5QixxQ0FBcUM7QUFDdkM7O0FBRUE7OztFQUdFLDhCQUE4QjtFQUM5Qix5QkFBeUI7QUFDM0I7O0FBRUE7OztFQUdFLDhCQUE4QjtFQUM5Qix5QkFBeUI7QUFDM0I7O0FBRUE7O3FCQUVxQjs7QUFFckIsV0FBVzs7QUFFWDtFQUNFLFFBQVE7RUFDUixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsa0NBQWtDO0VBRWxDLGdCQUFnQjtFQUNoQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGVBQWU7RUFDZixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFFBQVE7RUFDUixrQkFBa0I7RUFFbEIsc0JBQXNCO0VBQ3RCLGtEQUFrRDtBQUNwRDs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixtQkFBbUI7O0FBRW5COztFQUVFLHNDQUFzQztBQUN4Qzs7QUFFQSxZQUFZOztBQUVaOztFQUVFLDJDQUEyQztBQUM3Qzs7QUFFQSwrQkFBK0I7O0FBRS9CO0VBQ0UsOEJBQThCO0VBQzlCLHFDQUFxQztBQUN2Qzs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBOztxQkFFcUI7O0FBRXJCLFFBQVE7O0FBRVI7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCLGVBQWU7O0FBRWY7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUEsaUJBQWlCOztBQUVqQjs7RUFFRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOztFQUVFLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7O0VBRUUsVUFBVTtBQUNaOztBQUVBOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOztFQUVFLFVBQVU7QUFDWjs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLDZDQUE2QztFQUM3QywwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7O0VBRUUseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUV0QixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RUFDeEIsV0FBVztFQUNYLFdBQVc7RUFDWCxXQUFXO0VBQ1gsWUFBWTtFQUNaLHlCQUF5QjtFQUN6QixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLFlBQVk7RUFDWiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSwrQkFBK0I7RUFDL0IsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSwrQkFBK0I7RUFDL0IsMEJBQTBCO0FBQzVCOztBQUVBLGFBQWE7O0FBRWI7RUFHRSx1RkFBdUY7RUFDdkYsY0FBYztBQUNoQjs7QUFFQTtFQUdFLHVGQUF1RjtFQUN2RixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLCtCQUErQjtBQUNqQzs7QUFFQTs7Z0JBRWdCOztBQUVoQixlQUFlOztBQUVmO0VBQ0UsbUJBQW1CO0VBQ25CLCtCQUErQjtFQUMvQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxxQ0FBcUM7RUFDckMsaURBQWlEO0VBQ2pELDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLGlEQUFpRDtBQUNuRDs7QUFFQTs7OztFQUlFLG9CQUFvQjtFQUNwQiwrQkFBK0I7QUFDakM7O0FBRUEsZUFBZTs7QUFFZjs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxxQ0FBcUM7RUFDckMsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLFdBQVc7QUFDYjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHVCQUF1QjtFQUN2Qix3Q0FBd0M7RUFFeEMsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUdFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSwyQ0FBMkM7QUFDN0M7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxnREFBZ0Q7QUFDbEQ7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsaUJBQWlCO0FBQ25COztBQUVBOztFQUVFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSw0Q0FBNEM7QUFDOUM7O0FBRUE7O0VBRUUsaUJBQWlCO0FBQ25COztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxvQkFBb0I7QUFDdEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBOztnQkFFZ0I7O0FBRWhCLFVBQVU7O0FBRVY7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLGNBQWM7QUFDaEI7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7K0JBRStCO0FBQy9COzs7Ozs7Ozs7RUFTRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osWUFBWTtFQUNaLGdCQUFnQjtBQUNsQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixnQkFBZ0I7O0FBRWhCO0VBQ0UsWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQSxjQUFjOztBQUVkO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQixXQUFXOztBQUVYO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQixvQkFBb0I7O0FBRXBCO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLFlBQVk7RUFDWixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQTs7Z0JBRWdCOztBQUVoQixlQUFlOztBQUVmO0VBQ0UsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCLFdBQVc7O0FBRVg7RUFDRSxZQUFZO0VBQ1osWUFBWTtBQUNkOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxZQUFZO0VBQ1osWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCLGdCQUFnQjs7QUFFaEI7RUFDRSxZQUFZO0VBQ1osWUFBWTtBQUNkOztBQUVBLGNBQWM7O0FBRWQ7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCLGFBQWE7O0FBRWI7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCLGFBQWE7O0FBRWI7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCLHdCQUF3Qjs7QUFFeEI7RUFDRSxZQUFZO0VBQ1osYUFBYTtBQUNmOztBQUVBLHVCQUF1Qjs7QUFFdkI7RUFDRSxZQUFZO0VBQ1osWUFBWTtBQUNkOztBQUVBOzsrQkFFK0I7O0FBRS9CLGlCQUFpQjs7QUFFakI7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRTtJQUNFLGNBQWM7RUFDaEI7QUFDRjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixvREFBb0Q7RUFDcEQsNENBQTRDO0VBQzVDLGFBQWE7RUFDYixjQUFjO0VBQ2QsY0FBYztFQUNkLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCOztFQUVFLGVBQWU7RUFDZixrQkFBa0I7RUFHbEIsYUFBYTtFQUliLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osWUFBWTtFQUNaLDRCQUE0QjtFQUU1Qiw0REFBNEQ7RUFHNUQsNkRBQXFEO0VBQXJELHFEQUFxRDtFQUNyRCxrRkFBZ0g7RUFDaEgsV0FBVztBQUNiOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7RUFFRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUdFLGFBQWE7RUFDYix1QkFBdUI7RUFFdkIsZUFBZTtBQUNqQjs7QUFFQTtFQUdFLGFBQWE7RUFDYixxQkFBcUI7RUFDckIsV0FBVztBQUNiOztBQUVBLGFBQWE7O0FBRWI7O0VBRUUsY0FBYztFQUNkLFlBQVk7RUFDWixXQUFXO0VBQ1gsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUEsaURBQWlEOztBQUVqRDtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSw2REFBNkQ7RUFDN0QsMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLDZEQUE2RDtBQUMvRDs7QUFFQTs7RUFFRSx1Q0FBdUM7QUFDekM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsa0JBQWtCO0VBQ2xCLGNBQWM7RUFHZCxjQUFjO0VBQ2QsWUFBWTtFQUNaLCtCQUErQjtBQUNqQzs7QUFFQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7RUFDWixzQkFBc0I7QUFDeEI7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUlFLFlBQVk7RUFDWixZQUFZO0VBQ1osMkNBQTJDO0VBQzNDLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsZ0JBQWdCO0VBRWhCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxZQUFZO0VBQ1osV0FBVztFQUNYLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLGNBQWM7RUFDZCxVQUFVO0VBQ1YsbUVBQW1FO0VBQ25FLDBCQUEwQjtBQUM1Qjs7QUFFQSx3QkFBd0I7O0FBRXhCOztFQUVFLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLHlCQUF5QjtBQUMzQjs7QUFFQTs7OztFQUlFLGlCQUFpQjtBQUNuQjs7QUFFQTs7a0JBRWtCOztBQUVsQjs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7O0VBRUUsaUJBQWlCO0FBQ25COztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsU0FBUztBQUNYOztBQUVBOzs7O0VBSUUsVUFBVTtFQUNWLFdBQVc7RUFDWCxxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsV0FBVztFQUNYLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxxQkFBcUI7QUFDdkI7O0FBRUE7O0VBRUUsa0JBQWtCO0FBQ3BCOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGNBQWM7RUFDZCx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBOztFQUVFLGlCQUFpQjtBQUNuQjs7QUFFQTs7RUFFRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBOztnQkFFZ0I7O0FBRWhCLFlBQVk7O0FBRVo7O0VBRUUsU0FBUztFQUVULDJCQUEyQjtBQUM3Qjs7QUFFQTs7RUFFRSxTQUFTO0FBQ1g7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQSxTQUFTOztBQUVUOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7Ozs7RUFJRSxnQkFBZ0I7RUFDaEIseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLG9CQUFvQjtFQUNwQixXQUFXO0FBQ2I7O0FBRUE7O2dCQUVnQjs7QUFFaEIsa0JBQWtCOztBQUVsQixTQUFTOztBQUVUOztFQUVFLGVBQWU7RUFDZixhQUFhO0VBRWIsMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLFVBQVU7RUFDVixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUEsa0JBQWtCOztBQUVsQixTQUFTOztBQUVUOztFQUVFLGVBQWU7RUFDZixhQUFhO0VBRWIsMkJBQTJCO0FBQzdCOztBQUVBOztFQUVFLFVBQVU7RUFDVixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUE7O2tCQUVrQjs7QUFFbEI7O0VBRUUsZUFBZTtFQUNmLDBCQUEwQjtFQUcxQixZQUFZO0VBQ1osb0RBQW9EO0VBQ3BELGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsUUFBUTtFQUNSLFNBQVM7RUFDVCx5QkFBeUI7RUFFekIsZ0JBQWdCO0VBRWhCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQjs7RUFHRSxvSEFBb0g7QUFDdEg7O0FBRUE7Ozs7RUFLRSxvSEFBb0g7QUFDdEg7O0FBRUE7O0VBR0Usb0hBQW9IO0FBQ3RIOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBR0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLFdBQVc7RUFDWCxpQkFBaUI7QUFDbkI7O0FBRUE7O3FCQUVxQjs7QUFFckI7Ozs7RUFJRSx1QkFBdUI7RUFDdkIsZUFBZTtBQUNqQjs7QUFFQTs7OztFQUlFLGVBQWU7RUFDZixVQUFVO0VBQ1YsbUJBQW1CO0VBQ25CLFlBQVk7RUFFWiw0REFBNEQ7RUFDNUQsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTs7cUJBRXFCOztBQUVyQixRQUFROztBQUVSOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxXQUFXOztBQUVYOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxXQUFXOztBQUVYOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxVQUFVOztBQUVWOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxVQUFVOztBQUVWOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxTQUFTOztBQUVUOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxTQUFTOztBQUVUOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxXQUFXOztBQUVYOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxXQUFXOztBQUVYOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxTQUFTOztBQUVUOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxVQUFVOztBQUVWOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxTQUFTOztBQUVUOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQSxVQUFVOztBQUVWOzs7RUFJRSxxRkFBcUY7QUFDdkY7O0FBRUE7OztFQUlFLHFGQUFxRjtBQUN2Rjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsMEJBQTBCO0VBQzFCLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsbUNBQW1DO0VBQ25DLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UscUNBQXFDO0VBQ3JDLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsbUNBQW1DO0VBQ25DLGtCQUFrQjtFQUNsQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxtQ0FBbUM7RUFDbkMsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsbUJBQW1CO0FBQ3JCOztBQUVBOztxQkFFcUI7O0FBRXJCLGdCQUFnQjs7QUFFaEI7RUFDRTtJQUNFLGdCQUFnQjtJQUNoQixpQkFBaUI7RUFDbkI7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjtBQUNGOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRTtJQUNFLGdCQUFnQjtJQUNoQixpQkFBaUI7RUFDbkI7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLG9CQUFvQjtJQUNwQixxQkFBcUI7RUFDdkI7O0VBRUE7SUFDRSw0QkFBNEI7SUFDNUIsbUJBQW1CO0lBQ25CLG9CQUFvQjtFQUN0Qjs7RUFFQTtJQUNFLG9CQUFvQjtJQUNwQixxQkFBcUI7RUFDdkI7O0VBRUE7SUFDRSw0QkFBNEI7SUFDNUIsbUJBQW1CO0lBQ25CLG9CQUFvQjtFQUN0Qjs7RUFFQTtJQUNFLG9CQUFvQjtJQUNwQixxQkFBcUI7RUFDdkI7O0VBRUE7SUFDRSw0QkFBNEI7SUFDNUIsbUJBQW1CO0lBQ25CLG9CQUFvQjtFQUN0QjtBQUNGOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0U7SUFDRSx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSwwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSx5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLGVBQWU7SUFDZixxQkFBcUI7SUFDckIsc0NBQXNDO0VBQ3hDO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxpQkFBaUI7RUFDakIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7O3NCQUVzQjs7QUFFdEI7RUFDRSwyQkFBMkI7RUFDM0Isd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBQUNsQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7RUFDZCxZQUFZO0VBQ1osWUFBWTtFQUNaLFdBQVc7RUFDWCxxQkFBcUI7QUFDdkI7O0FBRUE7O0VBRUUsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCQUFzQjtBQUN4Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7QUFDaEI7O0FBRUEsNENBQTRDOztBQUU1QztFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7RUFDZCwwQkFBMEI7RUFDMUIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLHlCQUF5QjtFQUN6QixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0Usd0JBQXdCO0VBQ3hCLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIsMEJBQTBCO0VBQzFCLGdCQUFnQjtBQUNsQjs7QUFFQTs7c0JBRXNCOztBQUV0QjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixxQkFBcUI7RUFDckIsMEJBQTBCO0VBQzFCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O3NCQUVzQjs7QUFFdEI7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBOzsrQkFFK0I7O0FBRS9COzs7RUFHRSxhQUFhO0FBQ2Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3NCQUVzQjs7QUFFdEI7RUFDRSw0QkFBNEI7RUFDNUIsMkJBQTJCO0VBRTNCLCtDQUErQztBQUNqRDs7QUFFQTs7c0JBRXNCOztBQUV0QjtFQUNFLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDVixVQUFVO0VBRVYsNkJBQTZCO0VBRTdCLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTs7cUJBRXFCOztBQUVyQjtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBOzsrQkFFK0I7O0FBRS9CLFVBQVU7O0FBRVY7RUFHRSxhQUFhO0VBSWIsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCwwQkFBMEI7RUFDMUIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxjQUFjO0VBR2QsY0FBYztFQUNkLFlBQVk7RUFDWixZQUFZO0VBRVosbUJBQW1CO0VBQ25CLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLDJDQUEyQztBQUM3Qzs7QUFFQTs7Z0JBRWdCOztBQUVoQixZQUFZOztBQUVaO0VBQ0UsY0FBYztFQUdkLGNBQWM7RUFFZCxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHVCQUF1QjtFQUN2QixZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztFQUNYLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsMEJBQTBCO0FBQzVCOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7RUFDWiw4QkFBOEI7RUFDOUIscUJBQXFCO0VBQ3JCLHNCQUFzQjtBQUN4Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLDhCQUE4QjtFQUM5QixXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCQUFzQjtBQUN4Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQix3QkFBd0I7O0FBRXhCO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQix5QkFBeUI7RUFDekIsWUFBWTtFQUNaLHlCQUF5QjtBQUMzQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLDBCQUEwQjtBQUM1Qjs7QUFFQSxXQUFXOztBQUVYO0VBQ0UscUJBQXFCO0VBQ3JCLDBCQUEwQjtFQUMxQixVQUFVO0FBQ1o7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxxQkFBcUI7RUFDckIsdUJBQXVCO0VBQ3ZCLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGdCQUFnQjtFQUVoQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLFFBQVE7RUFDUixVQUFVO0VBQ1YsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxTQUFTO0VBRVQsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUEsa0JBQWtCOztBQUVsQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLGVBQWU7RUFDZixVQUFVO0VBQ1YseUJBQXlCO0VBRXpCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7O0VBR0UsMEJBQTBCO0FBQzVCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBR0UsYUFBYTtFQUNiLGVBQWU7RUFDZixXQUFXO0VBQ1gsZUFBZTtFQUNmLHVCQUF1QjtFQUN2QixZQUFZO0VBQ1osWUFBWTtFQUNaLG1CQUFtQjtFQUVuQixnQkFBZ0I7RUFHaEIsZ0NBQWdDO0VBRWhDLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSw2QkFBNkI7QUFDL0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxjQUFjO0VBQ2QsWUFBWTtFQUNaLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxrQkFBa0I7RUFHbEIsY0FBYztFQUNkLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztFQUNYLFlBQVk7RUFDWixjQUFjO0VBRWQsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsWUFBWTtFQUNaLHVCQUF1QjtFQUN2QixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxjQUFjO0VBR2QsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUVaLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsWUFBWTtFQUNaLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxZQUFZO0VBQ1osV0FBVztFQUNYLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxjQUFjO0VBQ2QsZ0JBQWdCO0VBRWhCLGVBQWU7RUFDZixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsMEJBQTBCO0VBQzFCLG1FQUFtRTtFQUNuRSxpQkFBaUI7RUFDakIsMEJBQTBCO0FBQzVCOztBQUVBLHdCQUF3Qjs7QUFFeEI7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFFRSxrQkFBa0I7RUFDbEIsU0FBUztBQUNYOztBQUVBOztFQUVFLFNBQVM7RUFDVCxVQUFVO0VBQ1YscUJBQXFCO0FBQ3ZCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsaUJBQWlCO0VBQ2pCLGVBQWU7RUFDZixjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHVCQUF1QjtFQUN2QixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUNFLFNBQVM7RUFFVCwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSxTQUFTO0FBQ1g7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQixrQkFBa0I7O0FBRWxCLFNBQVM7O0FBRVQ7RUFDRSxlQUFlO0VBQ2YsYUFBYTtFQUViLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLFVBQVU7RUFDVixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQSxrQkFBa0I7O0FBRWxCLFNBQVM7O0FBRVQ7RUFDRSxlQUFlO0VBQ2YsYUFBYTtFQUViLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLFVBQVU7RUFDVixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7a0JBRWtCOztBQUVsQjtFQUNFLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsb0JBQW9CO0VBQ3BCLFFBQVE7RUFDUixTQUFTO0VBQ1QseUJBQXlCO0VBRXpCLGdCQUFnQjtFQUVoQiwyQkFBMkI7RUFDM0IsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0Usa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsY0FBYztFQUNkLFlBQVk7RUFDWixXQUFXO0VBQ1gsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7OytCQUUrQjs7QUFFL0Isd0JBQXdCOztBQUV4QjtFQUNFLFlBQVk7QUFDZDs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0U7SUFDRSxlQUFlO0VBQ2pCOztFQUVBO0lBQ0UsWUFBWTtFQUNkOztFQUVBO0lBQ0UsY0FBYztJQUNkLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRTtJQUlFLHNCQUFzQjtJQUN0QixlQUFlO0VBQ2pCOztFQUVBO0lBQ0UsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFDcEI7O0VBRUE7O0lBRUUsMEJBQTBCO0lBQzFCLHNCQUFzQjtJQUN0Qiw0QkFBNEI7RUFDOUI7O0VBRUE7SUFDRSxjQUFjO0lBQ2Qsc0JBQXNCO0VBQ3hCO0FBQ0Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3FCQUVxQjs7QUFFckI7RUFFRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFFRSxvQkFBb0I7QUFDdEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBOztxQkFFcUI7O0FBRXJCO0VBQ0UsNENBQTRDO0VBQzVDLFdBQVc7RUFDWCxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsMEJBQTBCO0VBQzFCLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3Qiw4QkFBOEI7QUFDaEM7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFLFdBQVc7RUFDWCxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsZ0JBQWdCO0FBQ2xCOztBQUVBOztxQkFFcUI7O0FBRXJCOztFQUVFLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2lCQUVpQjs7QUFFakI7RUFDRTs7SUFFRSx1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CLGVBQWU7O0FBRWY7RUFHRSxvQkFBb0I7RUFJcEIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7K0JBRStCOztBQUUvQixZQUFZOztBQUVaO0VBR0UsYUFBYTtFQUdiLHVCQUF1QjtFQUV2QixlQUFlO0FBQ2pCOztBQUVBO0VBR0Usb0JBQW9CO0VBR3BCLGNBQWM7RUFJZCxzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGVBQWU7QUFDakI7O0FBRUE7RUFHRSxhQUFhO0VBQ2IsdUJBQXVCO0FBQ3pCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxjQUFjO0VBQ2QsWUFBWTtFQUNaLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUVBQW1FO0VBQ25FLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCx5QkFBeUI7RUFDekIsa0JBQWtCO0FBQ3BCOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLG1FQUFtRTtFQUNuRSxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLDBCQUEwQjtFQUMxQix5QkFBeUI7RUFDekIsa0JBQWtCO0FBQ3BCOztBQUVBLGNBQWM7O0FBRWQ7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBLGlCQUFpQjs7QUFFakI7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCOztFQUVFLFVBQVU7RUFDVixXQUFXO0VBQ1gsV0FBVztBQUNiOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsZ0JBQWdCO0VBQ2hCLHdCQUF3QjtBQUMxQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGVBQWU7RUFDZixtQkFBbUI7QUFDckI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFJRSxtQkFBbUI7RUFHbkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBSUUsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxlQUFlO0FBQ2pCOztBQUVBO0VBSUUsbUJBQW1CO0VBR25CLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsZUFBZTtBQUNqQjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOztFQUVFLHFCQUFxQjtFQUNyQixzQkFBc0I7QUFDeEI7O0FBRUE7O0VBRUUscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QiwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTs7RUFFRSwrQkFBK0I7QUFDakM7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxXQUFXO0VBQ1gsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixTQUFTOztBQUVUOztFQUVFLDRCQUE0QjtBQUM5Qjs7QUFFQTs7RUFFRSw0QkFBNEI7QUFDOUI7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUEsVUFBVTs7QUFFVjs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSw0QkFBNEI7QUFDOUI7O0FBRUEsU0FBUzs7QUFFVDs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLDRCQUE0QjtBQUM5Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9COztFQUVFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsWUFBWTtBQUNkOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUsZUFBZTtBQUNqQjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0Usa0JBQWtCO0VBQ2xCLG1FQUFtRTtFQUNuRSxjQUFjO0VBQ2QsMEJBQTBCO0FBQzVCOztBQUVBLFlBQVk7O0FBRVo7O0VBRUUsYUFBYTtBQUNmOztBQUVBLG9CQUFvQjs7QUFFcEI7O0VBRUUsVUFBVTtFQUNWLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQSxVQUFVOztBQUVWOztFQUVFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsVUFBVTtFQUNWLGFBQWE7RUFDYixXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLFlBQVk7RUFDWixjQUFjO0VBRWQsMERBQTBEO0VBQzFELGtEQUFrRDtFQUNsRCwrRUFBK0U7RUFDL0Usd0JBQXdCO0VBQ3hCLHVCQUF1QjtFQUN2QixlQUFlO0FBQ2pCOztBQUVBOztnQkFFZ0I7O0FBRWhCLFNBQVM7O0FBRVQ7RUFDRSxjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtFQUNaLDZCQUE2QjtFQUM3QixpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxjQUFjO0VBQ2QsNEJBQTRCO0FBQzlCOztBQUVBOzsrQkFFK0I7O0FBRS9COztFQUVFLGdDQUFnQztFQUNoQyx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FBQzFCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0UsWUFBWTtBQUNkOztBQUVBOztFQUVFLDRCQUE0QjtFQUM1QixtQkFBbUI7RUFFbkIsd0ZBQXdGO0FBQzFGOztBQUVBOztFQUVFLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQiw0Q0FBNEM7RUFFNUMsaURBQWlEO0FBQ25EOztBQUVBOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQSxZQUFZOztBQUVaOztFQUVFLFdBQVc7RUFDWCx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osd0JBQXdCO0FBQzFCOztBQUVBLFVBQVU7O0FBRVY7Ozs7RUFJRSx1QkFBdUI7RUFDdkIsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLHVCQUF1QjtFQUN2QiwwQkFBMEI7QUFDNUI7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHVCQUF1QjtFQUN2QiwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsMEJBQTBCO0FBQzVCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCOztFQUVFLGNBQWM7QUFDaEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7O0VBRUUsV0FBVztBQUNiOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0Usd0JBQXdCO0VBQ3hCLG9uR0FBb25HO0VBQ3BuRyxtQkFBbUI7RUFDbkIsa0JBQWtCO0FBQ3BCOztBQUVBLGtCQUFrQjs7QUFFbEI7O0VBRUUsc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsa0JBQWtCO0FBQ3BCOztBQUVBOztFQUVFLGlCQUFpQjtBQUNuQjs7QUFFQTs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLGFBQWE7RUFDYix3QkFBd0I7RUFDeEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGVBQWU7QUFDakI7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFFRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QscUJBQXFCO0VBQ3JCLGFBQWE7RUFDYixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCx1QkFBdUI7RUFDdkIsYUFBYTtFQUNiLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLDRCQUE0QjtFQUc1QixrR0FBMEY7RUFBMUYsMEZBQTBGO0VBQzFGLHVIQUFxSjtFQUNySix5QkFBeUI7QUFDM0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixRQUFRO0VBQ1IsU0FBUztFQUNULFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLFVBQVU7RUFDViwwQkFBMEI7RUFHMUIsa0dBQTBGO0VBQTFGLDBGQUEwRjtFQUMxRix1SEFBcUo7QUFDdko7O0FBRUE7O2dCQUVnQjs7QUFFaEIsV0FBVzs7QUFFWDs7RUFFRSwwQkFBMEI7RUFFMUIsMkJBQTJCO0FBQzdCOztBQUVBLFlBQVk7O0FBRVo7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUJBQW1CO0VBQ25CLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUJBQW1CO0VBQ25CLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUJBQW1CO0VBQ25CLHFCQUFxQjtBQUN2Qjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUJBQW1CO0VBQ25CLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSxVQUFVO0VBQ1YsMEJBQTBCO0FBQzVCOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLG1CQUFtQjtFQUNuQixvQ0FBb0M7QUFDdEM7O0FBRUE7O0VBRUUsVUFBVTtFQUNWLDBCQUEwQjtBQUM1Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7OztFQUlFLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBRUE7Ozs7RUFJRSwwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsZUFBZTtBQUNqQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7OztFQUlFLDBCQUEwQjtFQUMxQixZQUFZO0VBQ1osY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtpQ0FDaUM7O0FBRWpDO0VBQ0UsV0FBVztBQUNiOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSxlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUV0QixpQkFBaUI7QUFDbkI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsdUJBQXVCO0FBQ3pCOztBQUVBLFFBQVE7O0FBRVI7O0VBRUUsV0FBVztFQUNYLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsUUFBUTtFQUNSLFNBQVM7QUFDWDs7QUFFQSxXQUFXOztBQUVYOztFQUVFLFlBQVk7RUFDWixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLFlBQVk7RUFDWixpQkFBaUI7QUFDbkI7O0FBRUEsbUJBQW1COztBQUVuQjs7RUFFRSxRQUFRO0VBQ1IsU0FBUztFQUNULFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLG9DQUFvQztFQUNwQyw0QkFBNEI7RUFDNUIscUNBQXFDO0FBQ3ZDOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLHFDQUFxQztBQUN2Qzs7QUFFQSxrQkFBa0I7O0FBRWxCOztFQUVFLFVBQVU7QUFDWjs7QUFFQSxXQUFXOztBQUVYOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxxQ0FBcUM7QUFDdkM7O0FBRUEsaUJBQWlCOztBQUVqQjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUscUNBQXFDO0FBQ3ZDOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxhQUFhO0VBQ2IsZUFBZTtBQUNqQjs7QUFFQSxVQUFVOztBQUVWOztFQUVFLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7O0VBRUUsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsdUJBQXVCO0VBQ3ZCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsV0FBVztFQUNYLHFDQUFxQztFQUNyQyxhQUFhO0VBQ2IscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2QixlQUFlO0VBQ2YscUJBQXFCO0VBRXJCLGdDQUFnQztBQUNsQzs7QUFFQSxXQUFXOztBQUVYOztFQUlFLHFFQUFxRTtFQUNyRSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFVBQVU7RUFDVixVQUFVO0VBQ1YsWUFBWTtFQUVaLDhGQUE4RjtFQUM5RixhQUFhO0VBQ2IsY0FBYztFQUNkLGFBQWE7RUFDYixTQUFTO0VBQ1QsdUJBQXVCO0VBQ3ZCLGVBQWU7RUFDZixxQkFBcUI7RUFFckIsMEJBQTBCO0FBQzVCOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUscUNBQXFDO0VBQ3JDLFlBQVk7QUFDZDs7QUFFQSxVQUFVOztBQUVWOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSwrQkFBK0I7QUFDakM7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSxxQ0FBcUM7QUFDdkM7O0FBRUE7O0VBRUUsb0NBQW9DO0FBQ3RDOztBQUVBOztFQUVFLFVBQVU7QUFDWjs7QUFFQSxpQkFBaUI7O0FBRWpCOztFQUVFLHFDQUFxQztBQUN2Qzs7QUFFQTs7RUFFRSxvQ0FBb0M7QUFDdEM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLGFBQWE7RUFDYixjQUFjO0FBQ2hCOztBQUVBLFVBQVU7O0FBRVY7O0VBRUUsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQiwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUEsV0FBVzs7QUFFWDs7RUFFRSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxVQUFVO0VBQ1YsdUJBQXVCO0VBQ3ZCLGVBQWU7RUFDZixZQUFZO0VBQ1osU0FBUztFQUNULCtCQUErQjtFQUUvQixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLGNBQWM7RUFDZCxxQkFBcUI7QUFDdkI7O0FBRUEsV0FBVzs7QUFFWDs7RUFJRSxxRUFBcUU7RUFDckUsa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1YsVUFBVTtFQUNWLFlBQVk7RUFFWiw4RkFBOEY7RUFDOUYsYUFBYTtFQUNiLGNBQWM7RUFDZCxTQUFTO0VBQ1QsU0FBUztFQUNULHFCQUFxQjtFQUVyQixnREFBZ0Q7QUFDbEQ7O0FBRUE7O0VBRUUsY0FBYztFQUVkLDhGQUE4RjtBQUNoRzs7QUFFQSxVQUFVOztBQUVWOztFQUVFLHFDQUFxQztFQUNyQyxZQUFZO0FBQ2Q7O0FBRUEsVUFBVTs7QUFFVjs7RUFFRSxxQ0FBcUM7RUFDckMsWUFBWTtBQUNkOztBQUVBLFdBQVc7O0FBRVg7O0VBRUUscUNBQXFDO0FBQ3ZDOztBQUVBOztFQUVFLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSxhQUFhO0VBRWIsOEZBQThGO0FBQ2hHOztBQUVBLGlCQUFpQjs7QUFFakI7O0VBRUUscUNBQXFDO0FBQ3ZDOztBQUVBOztFQUVFLG9DQUFvQztBQUN0Qzs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjs7RUFFRSw0QkFBNEI7QUFDOUI7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLHVCQUF1QjtFQUN2Qiw4ekRBQTh6RDtBQUNoMEQ7O0FBRUEsY0FBYzs7QUFFZDs7RUFFRSx1QkFBdUI7QUFDekI7O0FBRUEsWUFBWTs7QUFFWjs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFFRSxlQUFlO0VBQ2YsZ0JBQWdCO0FBQ2xCOztBQUVBOzs7O0NBSUM7O0FBRUQ7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLHFDQUFxQztFQUNyQyxVQUFVO0VBQ1YsY0FBYztFQUNkLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFDekIsZ0NBQWdDO0VBQ2hDLHdCQUF3QjtFQUV4Qix3Q0FBd0M7RUFJeEMsc0JBQXNCO0VBR3RCLG1CQUFtQjtFQUduQix1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUV0QixpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLGFBQWE7QUFDZjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUV0QixpQkFBaUI7RUFDakIsY0FBYztBQUNoQjs7QUFFQSxtQkFBbUI7O0FBRW5CO0VBQ0UsaUNBQWlDO0FBQ25DOztBQUVBLGVBQWU7O0FBRWY7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxxQ0FBcUM7QUFDdkM7O0FBRUE7RUFDRSxxQ0FBcUM7QUFDdkM7O0FBRUE7RUFDRSxxQ0FBcUM7QUFDdkM7O0FBRUE7OytCQUUrQjs7QUFFL0IsY0FBYzs7QUFFZDs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUEsaUNBQWlDOztBQUVqQzs7O0VBS0UsYUFBYTtFQUNiLFVBQVU7QUFDWjs7QUFFQSxhQUFhOztBQUViO0VBQ0UsbUJBQW1CO0VBQ25CLG9CQUFvQjtBQUN0Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQixpQ0FBaUM7O0FBRWpDOzs7RUFHRSxjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBR0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBR0UseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZUFBZTtFQUNmLDJCQUEyQjtFQUMzQixtQkFBbUI7RUFDbkIsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQix1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBOztFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxzQ0FBc0M7RUFDdEMsOEJBQThCO0VBRTlCLHFDQUFxQztFQUNyQyw2QkFBNkI7RUFDN0Isd0RBQXdEO0FBQzFEOztBQUVBO0VBQ0Usd0NBQXdDO0VBQ3hDLGdDQUFnQztBQUNsQzs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0Usb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsMENBQTBDO0FBQzVDOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usc0JBQXNCO0FBQ3hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsMkNBQTJDO0FBQzdDOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixnQ0FBZ0M7O0FBRWhDO0VBQ0UsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2Isa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLHFDQUFxQztFQUNyQyxVQUFVO0FBQ1o7O0FBRUE7RUFDRSx3Q0FBd0M7QUFDMUM7O0FBRUE7RUFDRSwyQ0FBMkM7QUFDN0M7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLGFBQWE7RUFDYixnQkFBZ0I7RUFHaEIsaURBQWlEO0VBRWpELDZDQUE2QztBQUMvQzs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGFBQWE7RUFDYixTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLDJCQUEyQjtFQUMzQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFFaEIsa0RBQWtEO0VBQ2xELHdDQUF3QztFQUN4Qyw0QkFBNEI7RUFFNUIsNkJBQTZCO0VBQzdCLFdBQVc7RUFDWCwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsd0JBQXdCO0FBQzFCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCx1QkFBdUI7RUFDdkIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxxQkFBcUI7RUFFckIsZ0JBQWdCO0FBQ2xCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixjQUFjO0VBQ2QsWUFBWTtFQUNaLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQiwwQkFBMEI7RUFDMUIsK0NBQStDO0VBQy9DLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBRW5CLGdCQUFnQjtFQUNoQiwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsdUJBQXVCO0VBQ3ZCLDRCQUE0QjtFQUM1QiwyQkFBMkI7QUFDN0I7O0FBRUE7O0VBRUUsc0JBQXNCO0VBQ3RCLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUE7Ozs7RUFJRSxlQUFlO0FBQ2pCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UseUJBQXlCO0VBQ3pCLDBCQUEwQjtFQUMxQiwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSwyQ0FBMkM7RUFDM0MsV0FBVztFQUNYLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLFdBQVc7RUFHWCxhQUFhO0VBQ2IsbUNBQW1DO0VBQ25DLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7OztFQUdFLGtCQUFrQjtFQUNsQixxQkFBcUI7QUFDdkI7O0FBRUE7O29CQUVvQjs7QUFFcEI7O0VBRUUsWUFBWTtFQUNaLHVCQUF1QjtFQUN2Qix5QkFBeUI7QUFDM0I7O0FBRUE7O29CQUVvQjs7QUFFcEI7RUFDRSxvQ0FBb0M7RUFDcEMsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gscUNBQXFDO0VBQ3JDLHVDQUF1QztFQUN2QyxzQkFBc0I7QUFDeEI7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQixtQ0FBbUM7O0FBRW5DOzs7OztFQUtFLGVBQWU7QUFDakI7O0FBRUE7Ozs7O0VBS0UsZUFBZTtBQUNqQjs7QUFFQTs7Ozs7Ozs7OztFQVVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsMkJBQTJCO0FBQzdCOztBQUVBOztnQkFFZ0I7O0FBRWhCOzs7O0VBSUUscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixlQUFlO0FBQ2pCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCLDZCQUE2Qjs7QUFFN0I7O0VBRUUsYUFBYTtBQUNmOztBQUVBLDZCQUE2Qjs7QUFFN0I7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsOERBQThEOztBQUU5RDs7O0VBR0UsVUFBVTtFQUNWLFVBQVU7QUFDWjs7QUFFQTs7Z0JBRWdCOztBQUVoQixrQkFBa0I7O0FBRWxCO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7Z0JBRWdCOztBQUVoQiw2QkFBNkI7O0FBRTdCO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQiwrQkFBK0I7O0FBRS9CO0VBQ0UsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLGVBQWU7RUFDZix3QkFBd0I7RUFDeEIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQiw0Q0FBNEM7RUFDNUMsMEJBQTBCO0VBRTFCLGdCQUFnQjtFQUNoQix3Q0FBd0M7RUFDeEMsNEJBQTRCO0VBRzVCLGlEQUFpRDtBQUVuRDs7QUFFQTs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osY0FBYztFQUNkLHdDQUF3QztFQUN4QyxtQkFBbUI7QUFDckI7O0FBRUE7OztFQUdFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7RUFDWix5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixVQUFVO0VBQ1YscUJBQXFCO0VBQ3JCLHFCQUFxQjtFQUNyQixZQUFZO0VBRVosNkJBQTZCO0FBQy9COztBQUVBLFlBQVk7O0FBRVo7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsaUNBQWlDO0VBQ2pDLGdDQUFnQztFQUNoQyxXQUFXO0VBQ1gsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQiw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLGtEQUFrRDtFQUVsRCxrREFBa0Q7RUFFbEQsNkJBQTZCO0FBQy9COztBQUVBOztFQUVFLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFO0lBQ0UseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDBCQUEwQjtFQUM1QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSwwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUEsY0FBYzs7QUFFZDtFQUNFLDZCQUE2QjtFQUM3QiwrQ0FBK0M7RUFDL0MsbUJBQW1CO0VBQ25CLGlCQUFpQjtBQUNuQjs7QUFFQSxjQUFjOztBQUVkO0VBQ0UsYUFBYTtBQUNmOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxvQ0FBb0M7RUFFcEMsZ0JBQWdCO0FBQ2xCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSxxQkFBcUI7RUFFckIsa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0UscUJBQXFCO0VBRXJCLGtEQUFrRDtBQUNwRDs7QUFFQSxVQUFVOztBQUVWO0VBQ0UscUJBQXFCO0VBRXJCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHFCQUFxQjtFQUVyQixrREFBa0Q7QUFDcEQ7O0FBRUEsWUFBWTs7QUFFWjtFQUNFLG1CQUFtQjtFQUNuQix5QkFBeUI7QUFDM0I7O0FBRUEsa0JBQWtCOztBQUVsQjtFQUNFLHFCQUFxQjtFQUVyQixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxxQkFBcUI7RUFFckIsa0RBQWtEO0FBQ3BEOztBQUVBLGtCQUFrQjs7QUFFbEI7O0VBRUUsV0FBVztFQUNYLFVBQVU7QUFDWjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UseUNBQXlDO0VBQ3pDLDBDQUEwQztBQUM1Qzs7QUFFQSw0QkFBNEI7O0FBRTVCO0VBQ0UsdUNBQXVDO0VBRXZDLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLHVCQUF1QjtFQUV2QiwyQkFBMkI7QUFDN0I7O0FBRUE7O2dCQUVnQjs7QUFFaEIscUJBQXFCOztBQUVyQjtFQUNFLGFBQWE7QUFDZjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsdUNBQXVDO0VBQ3ZDLHVCQUF1QjtFQUV2QiwyQkFBMkI7RUFDM0IsWUFBWTtFQUNaLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLGFBQWE7RUFDYixtREFBbUQ7RUFDbkQsZ0JBQWdCO0FBQ2xCOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtBQUNaOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtBQUNaOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRSx5QkFBeUI7RUFDekIsNENBQTRDO0FBQzlDOztBQUVBLHVEQUF1RDs7QUFFdkQ7RUFDRSx5QkFBeUI7RUFDekIsNENBQTRDO0VBQzVDLGFBQWE7RUFDYixnQkFBZ0I7QUFDbEI7O0FBRUEsMEJBQTBCOztBQUUxQjs7RUFFRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsb0JBQW9CO0FBQ3RCOztBQUVBLGtCQUFrQjs7QUFFbEI7O0VBRUUsYUFBYTtBQUNmOztBQUVBO0VBQ0UsMkNBQTJDO0FBQzdDOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0U7SUFDRSx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDBCQUEwQjtFQUM1QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSwwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTs7Z0JBRWdCOztBQUVoQix1QkFBdUI7O0FBRXZCO0VBQ0UscURBQXFEO0FBQ3ZEOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBLDhCQUE4Qjs7QUFFOUI7O0VBRUUsWUFBWTtBQUNkOztBQUVBLG9CQUFvQjs7QUFFcEI7RUFDRSx5QkFBeUI7RUFDekIsc0JBQXNCO0VBRXRCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2Qsa0NBQWtDO0VBQ2xDLHFEQUFxRDtFQUVyRCx3REFBd0Q7QUFDMUQ7O0FBRUEsa0JBQWtCOztBQUVsQjtFQUNFLFVBQVU7RUFDVixXQUFXO0FBQ2I7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsZUFBZTtFQUNmLGtEQUFrRDtFQUNsRCx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7O2tCQUVrQjs7QUFFbEIsZ0JBQWdCOztBQUVoQjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxnQkFBZ0I7RUFDaEIsa0RBQWtEO0VBQ2xELHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQSxXQUFXOztBQUVYO0VBQ0UsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixlQUFlO0VBQ2Ysa0RBQWtEO0VBQ2xELFlBQVk7RUFDWix5QkFBeUI7QUFDM0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSx5Q0FBeUM7RUFDekMsd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsWUFBWTtFQUNaLHdCQUF3QjtFQUN4Qiw0QkFBNEI7QUFDOUI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O3VCQUV1Qjs7QUFFdkIscUJBQXFCOztBQUVyQjtFQUNFLHVCQUF1QjtFQUN2QixpQkFBaUI7RUFDakIsMEJBQTBCO0VBRTFCLGdCQUFnQjtFQUNoQixXQUFXO0FBQ2I7O0FBRUE7O3VCQUV1Qjs7QUFFdkIsb0JBQW9COztBQUVwQjtFQUNFLCtCQUErQjtFQUMvQiwwQkFBMEI7RUFDMUIsV0FBVztBQUNiOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0Usc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0Usc0NBQXNDO0FBQ3hDOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxRQUFRO0VBQ1IsU0FBUztFQUNULDJDQUEyQztFQUMzQyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixzQ0FBc0M7QUFDeEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUixTQUFTO0VBRVQsdUNBQXVDO0VBQ3ZDLDJDQUEyQztFQUMzQyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLDRDQUE0QztFQUM1QyxvQ0FBb0M7RUFDcEMsMkNBQTJDO0VBQzNDLG1DQUFtQztFQUNuQyxxQkFBcUI7RUFDckIsNkNBQTZDO0VBQzdDLG1CQUFtQjtFQUNuQixtQkFBbUI7QUFDckI7O0FBRUEsYUFBYTs7QUFFYjs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRTtJQUNFLCtCQUErQjtJQUMvQix1QkFBdUI7RUFDekI7O0VBRUE7SUFDRSxpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLCtCQUErQjtJQUMvQix1QkFBdUI7RUFDekI7O0VBRUE7SUFDRSxpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7O3VCQUV1Qjs7QUFFdkI7O0VBRUUsZ0NBQWdDO0FBQ2xDOztBQUVBOztFQUVFLGdDQUFnQztBQUNsQzs7QUFFQTs7dUJBRXVCOztBQUV2QjtFQUVFLGdCQUFnQjtBQUNsQjs7QUFFQSwyQkFBMkI7O0FBRTNCO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFzQjtBQUN4Qjs7QUFFQTs7dUJBRXVCOztBQUV2QixrQkFBa0I7O0FBRWxCOztFQUVFLCtCQUErQjtFQUMvQiwwQkFBMEI7QUFDNUI7O0FBRUE7O3VCQUV1Qjs7QUFFdkIsa0JBQWtCOztBQUVsQjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTs7dUJBRXVCOztBQUV2Qjs7O0VBR0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7O0VBRUUscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQSxlQUFlOztBQUVmO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O3VCQUV1Qjs7QUFFdkI7RUFDRSxZQUFZO0VBRVosNkJBQTZCO0FBQy9COztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBOzt1QkFFdUI7O0FBRXZCLGFBQWE7O0FBRWI7O0VBRUUsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixhQUFhO0FBQ2Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEIscUJBQXFCOztBQUVyQjtFQUNFLFNBQVM7QUFDWDs7QUFFQSx5QkFBeUI7O0FBRXpCOztFQUVFLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsdUNBQXVDO0FBQ3pDOztBQUVBLDBCQUEwQjs7QUFFMUI7RUFDRSxxQkFBcUI7RUFDckIscUJBQXFCO0FBQ3ZCOztBQUVBOztFQUVFLFVBQVU7RUFDVixXQUFXO0VBQ1gscUNBQXFDO0VBQ3JDLHVDQUF1QztBQUN6Qzs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsV0FBVztFQUNYLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsV0FBVztFQUNYLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBOztnQkFFZ0I7O0FBRWhCLHFCQUFxQjs7QUFFckI7RUFDRSxTQUFTO0VBQ1QsWUFBWTtFQUVaLCtDQUErQztFQUMvQyxrREFBa0Q7QUFDcEQ7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFLG9CQUFvQjtFQUNwQixvQkFBb0I7QUFDdEI7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFFRSw2REFBNkQ7QUFDL0Q7O0FBRUE7RUFDRSxrREFBa0Q7QUFDcEQ7O0FBRUEsY0FBYzs7QUFFZDtFQUNFLGdDQUFnQztFQUNoQyxtQ0FBbUM7RUFFbkMsZ0RBQWdEO0FBQ2xEOztBQUVBO0VBRUUsK0NBQStDO0FBQ2pEOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSw2REFBNkQ7QUFDL0Q7O0FBRUEsbUJBQW1COztBQUVuQjtFQUVFLCtDQUErQztFQUMvQyw2REFBNkQ7QUFDL0Q7O0FBRUEseUJBQXlCOztBQUV6QjtFQUVFLCtDQUErQztBQUNqRDs7QUFFQTtFQUVFLGdEQUFnRDtBQUNsRDs7QUFFQTs7Z0JBRWdCOztBQUVoQixvQkFBb0I7O0FBRXBCOztFQUVFLGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsaUNBQWlDO0VBQ2pDLDBCQUEwQjtFQUMxQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFFWiwyQkFBMkI7RUFDM0IsMkJBQTJCO0VBQzNCLG9CQUFvQjtFQUNwQiwwQkFBMEI7RUFDMUIsc0JBQXNCO0VBQ3RCLDRDQUE0QztBQUM5Qzs7QUFFQTs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFOztJQUVFLDRCQUE0QjtFQUM5QjtBQUNGOztBQUVBO0VBQ0U7O0lBRUUsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUE7RUFDRTs7SUFFRSwwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTtFQUNFOztJQUVFLDBCQUEwQjtFQUM1QjtBQUNGOztBQUVBO0VBQ0U7O0lBRUUsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEIsZ0NBQWdDOztBQUVoQzs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsVUFBVTtFQUNWLFFBQVE7RUFDUixTQUFTO0VBRVQsNkJBQTZCO0FBQy9COztBQUVBOztFQUVFLHlDQUF5QztFQUN6QywwQ0FBMEM7QUFDNUM7O0FBRUE7O0VBRUUsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLFVBQVU7QUFDWjs7QUFFQTs7RUFFRSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFVBQVU7QUFDWjs7QUFFQTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQjtBQUNsQjs7QUFFQSxZQUFZOztBQUVaO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsY0FBYztBQUNoQjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLE9BQU87RUFDUCxXQUFXO0VBRVgsc0dBQXNHO0VBQ3RHLHVDQUF1QztBQUN6Qzs7QUFFQTtFQUNFLDRCQUE0QjtFQUM1Qix1Q0FBdUM7QUFDekM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxTQUFTO0VBQ1QseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsZ0NBQWdDO0VBQ2hDLHdCQUF3QjtFQUN4QixZQUFZO0VBQ1osYUFBYTtFQUViLG9EQUFvRDtFQUNwRCxtQkFBbUI7RUFDbkIsVUFBVTtBQUNaOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFNBQVM7RUFDVCwyQkFBMkI7QUFDN0I7O0FBRUEsc0JBQXNCOztBQUV0QjtFQUNFLFNBQVM7RUFDVCxZQUFZO0VBQ1osUUFBUTtFQUNSLFdBQVc7RUFDWCxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsWUFBWTtFQUNaLFFBQVE7RUFDUixXQUFXO0VBQ1gsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFNBQVM7RUFDVCxXQUFXO0VBQ1gsV0FBVztFQUNYLGdDQUFnQztFQUNoQyx3QkFBd0I7QUFDMUI7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLFNBQVM7RUFDVCxZQUFZO0VBQ1osU0FBUztFQUNULFVBQVU7RUFDVixtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLGdDQUFnQztFQUNoQyx3QkFBd0I7QUFDMUI7O0FBRUEsa0JBQWtCOztBQUVsQjtFQUNFLE9BQU87RUFDUCxVQUFVO0VBQ1YsV0FBVztFQUNYLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLFFBQVE7RUFDUixhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLFFBQVE7RUFDUixVQUFVO0VBQ1YsY0FBYztFQUNkLHVCQUF1QjtFQUN2QixpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBLG1CQUFtQjs7QUFFbkI7RUFDRSxPQUFPO0VBQ1AsVUFBVTtFQUNWLFdBQVc7RUFDWCx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxRQUFRO0VBQ1IsVUFBVTtFQUNWLGNBQWM7RUFDZCx1QkFBdUI7RUFDdkIsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBQUMzQjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsU0FBUztFQUNULFlBQVk7RUFDWixRQUFRO0VBQ1IsV0FBVztFQUNYLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxlQUFlO0VBQ2YsV0FBVztFQUNYLFdBQVc7RUFDWCxrQ0FBa0M7RUFDbEMsMEJBQTBCO0FBQzVCOztBQUVBLCtCQUErQjs7QUFFL0I7RUFDRSxvQkFBb0I7RUFDcEIsc0JBQXNCO0FBQ3hCOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxRQUFRO0VBQ1IsV0FBVztBQUNiOztBQUVBO0VBQ0UsU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsU0FBUztFQUNULFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7O0FBRUEsb0JBQW9COztBQUVwQjs7RUFFRSxvQkFBb0I7RUFDcEIsdUJBQXVCO0VBQ3ZCLDZCQUE2QjtFQUM3Qiw0QkFBNEI7QUFDOUI7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLHVCQUF1QjtFQUV2QixrREFBa0Q7RUFDbEQsdUJBQXVCO0FBQ3pCOztBQUVBLDBCQUEwQjs7QUFFMUI7RUFDRSxvQkFBb0I7RUFDcEIsb0JBQW9CO0VBQ3BCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLG9CQUFvQjtFQUNwQixvQkFBb0I7RUFDcEIsdUJBQXVCO0VBRXZCLG9EQUFvRDtBQUN0RDs7QUFFQSx5QkFBeUI7O0FBRXpCO0VBQ0Usb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIsb0JBQW9CO0VBQ3BCLHVCQUF1QjtFQUV2QixvREFBb0Q7QUFDdEQ7O0FBRUE7OytCQUUrQjs7QUFFL0Isb0JBQW9COztBQUVwQjtFQUNFLHVCQUF1QjtFQUN2QixxM0RBQXEzRDtFQUNyM0QsbUJBQW1CO0VBQ25CLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixjQUFjO0VBQ2QsV0FBVztFQUNYLGFBQWE7RUFDYixtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7O0VBRUUsaUJBQWlCO0FBQ25COztBQUVBLDJCQUEyQjs7QUFFM0I7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7Ozs7OztDQU1DOztBQUVEOzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLHNCQUFzQjtBQUN4Qjs7QUFFQTs7bUJBRW1COztBQUVuQjs7O0VBR0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtFQUNaLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTs7bUJBRW1COztBQUVuQjtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsUUFBUTtFQUNSLFNBQVM7RUFDVCxjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7RUFDWixzRUFBc0U7QUFDeEU7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0FBQ1o7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFFBQVE7RUFDUixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixXQUFXO0VBRVgsZ0VBQWdFO0VBQ2hFLFlBQVk7RUFFWiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxVQUFVO0VBQ1Ysb0RBQW9EO0VBQ3BELDRDQUE0QztFQUM1QyxjQUFjO0VBQ2QsZUFBZTtFQUNmLCtDQUErQztFQUUvQyw4Q0FBOEM7RUFDOUMsV0FBVztBQUNiOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBRUUsZ0VBQWdFO0VBQ2hFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsYUFBYTtBQUNmOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCOztBQUUvQjs7K0JBRStCOztBQUUvQjtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5QjtBQUNBOzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixZQUFZO0VBRVosbUZBQW1GO0VBQ25GLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFHekIsY0FBYztFQUNkLDRCQUE0QjtFQUM1Qix5QkFBeUI7RUFDekIsc0JBQXNCO0VBRXRCLGlCQUFpQjtFQUNqQixrREFBa0Q7QUFDcEQ7O0FBRUE7O0VBRUUscUNBQXFDO0VBQ3JDLHNDQUFzQztBQUN4Qzs7QUFFQTtFQUNFLHdDQUF3QztFQUN4Qyx5Q0FBeUM7QUFDM0M7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixjQUFjO0VBQ2QsVUFBVTtFQUNWLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsY0FBYztFQUNkLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsY0FBYztFQUNkLG1FQUFtRTtFQUNuRSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLHVCQUF1QjtFQUV2QixnQkFBZ0I7RUFDaEIsMEJBQTBCO0VBQzFCLCtDQUErQztBQUNqRDs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4Qix5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixtQkFBbUI7QUFDckI7O0FBRUE7RUFHRSxhQUFhO0VBSWIsbUJBQW1CO0FBQ3JCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxjQUFjO0VBR2QsY0FBYztFQUNkLFNBQVM7RUFFVCxlQUFlO0FBQ2pCOztBQUVBO0VBRUUsZUFBZTtBQUNqQjs7QUFFQTtFQUVFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsY0FBYztFQUdkLGNBQWM7RUFDZCxjQUFjO0VBRWQsZUFBZTtBQUNqQjs7QUFFQTs7RUFJRSxjQUFjO0VBQ2QsYUFBYTtFQUNiLFdBQVc7RUFDWCxpQkFBaUI7QUFDbkI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLFdBQVc7RUFDWCxVQUFVO0VBQ1YsV0FBVztFQUNYLGNBQWM7RUFDZCxlQUFlO0FBQ2pCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQiw0Q0FBNEM7RUFDNUMsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztxQkFFcUI7O0FBRXJCLGdCQUFnQjs7QUFFaEI7RUFDRTtJQUNFLFVBQVU7SUFDVix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBLHNCQUFzQjs7QUFFdEI7RUFDRTtJQUNFLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLGNBQWM7SUFDZCxXQUFXO0lBQ1gsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUEsV0FBVzs7QUFFWDtFQUNFO0lBQ0UsZ0NBQWdDO0lBQ2hDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLGNBQWM7SUFDZCx3QkFBd0I7RUFDMUI7O0VBRUE7SUFDRSxzQkFBc0I7SUFDdEIsd0JBQXdCO0VBQzFCOztFQUVBLGFBQWE7O0VBRWI7SUFJRSxzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxjQUFjO0lBQ2QsZUFBZTtJQUNmLDJCQUEyQjtJQUMzQixrQkFBa0I7SUFDbEIsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsZUFBZTtJQUNmLGtCQUFrQjtFQUNwQjs7RUFFQSxhQUFhOztFQUViO0lBQ0UsY0FBYztJQUNkLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsNkJBQTZCO0lBRTdCLGdCQUFnQjtFQUNsQjs7RUFFQSxzQkFBc0I7O0VBRXRCO0lBQ0Usa0NBQWtDO0VBQ3BDOztFQUVBOztJQUVFLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBRUUsK0NBQStDO0FBQ2pEOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixrQkFBa0I7RUFFbEIsMkJBQTJCO0VBQzNCLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsYUFBYTtBQUNmOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBLDJDQUEyQzs7QUFFM0M7O0VBRUUsUUFBUTtFQUNSLFNBQVM7QUFDWDs7QUFFQTs7OztFQUlFLFNBQVM7QUFDWDs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCO0FBQ0Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7RUFDRSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEIsc0JBQXNCOztBQUV0QjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFO0lBQ0UsaUJBQWlCO0VBQ25CO0FBQ0Y7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFO0lBQ0UsaUJBQWlCO0VBQ25CO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEIscUJBQXFCOztBQUVyQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUdFLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBLHlCQUF5Qjs7QUFFekI7RUFDRSxjQUFjO0VBQ2QsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCwyQkFBMkI7QUFDN0I7O0FBRUEsc0JBQXNCOztBQUV0QjtFQUNFLDZCQUE2QjtFQUM3QixjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UscUJBQXFCO0VBQ3JCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsMEJBQTBCO0FBQzVCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLHFCQUFxQjs7QUFFckI7RUFDRTtJQUNFLFVBQVU7SUFDVix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEscUJBQXFCOztBQUVyQjtFQUNFO0lBQ0UsVUFBVTtJQUNWLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLHVCQUF1QjtFQUN6QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxhQUFhO0lBQ2IsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLGFBQWE7SUFDYix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0UsYUFBYTtFQUNiLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxZQUFZO0VBQ1osZUFBZTtFQUNmLFdBQVc7RUFDWCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQiw4Q0FBOEM7RUFDOUMsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQiwwQkFBMEI7RUFDMUIsa0RBQWtEO0VBRWxELGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsVUFBVTtFQUNWLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIsY0FBYztFQUVkLDZCQUE2QjtBQUMvQjs7QUFFQTs7K0JBRStCOztBQUUvQixVQUFVOztBQUVWO0VBQ0UsbUJBQW1CO0VBQ25CLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSxrREFBa0Q7RUFDbEQsU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQTs7Z0JBRWdCOztBQUVoQjs7RUFFRSx5QkFBeUI7RUFDekIsMEJBQTBCO0FBQzVCOztBQUVBOzs7O0VBSUUseUJBQXlCO0FBQzNCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixVQUFVO0VBQ1Ysd0RBQXdEO0VBQ3hELDhCQUE4QjtFQUM5QiwyQkFBMkI7RUFDM0Isc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYix5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsMEJBQTBCO0VBQzFCLDRCQUE0QjtFQUU1QiwyRkFBMkY7QUFDN0Y7O0FBRUE7RUFDRSxZQUFZO0VBQ1osbUVBQW1FO0VBQ25FLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLFVBQVU7RUFFVixtQ0FBbUM7QUFDckM7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFDeEIsVUFBVTtFQUVWLG1DQUFtQztBQUNyQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0Usb0JBQW9CO0VBQ3BCLDJCQUEyQjtFQUMzQixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHlCQUF5QjtFQUN6QixxQkFBcUI7RUFDckIsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQiwwQkFBMEI7RUFDMUIsNEJBQTRCO0VBRTVCLDJGQUEyRjtFQUMzRixVQUFVO0FBQ1o7O0FBRUEsa0NBQWtDOztBQUVsQztFQUNFLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsMkJBQTJCO0VBQzNCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLFlBQVk7RUFDWixvQkFBb0I7QUFDdEI7O0FBRUEsY0FBYzs7QUFFZDs7RUFFRSxvQkFBb0I7RUFDcEIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsVUFBVTtFQUNWLG9EQUFvRDtFQUNwRCw0Q0FBNEM7RUFDNUMsb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUU1Qix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsdUNBQXVDO0VBQ3ZDLCtCQUErQjtFQUUvQix5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUsbUJBQW1CO0VBQ25CLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLG9EQUFvRDtFQUNwRCw0Q0FBNEM7RUFDNUMsVUFBVTtBQUNaOztBQUVBLHVCQUF1Qjs7QUFFdkI7OztFQUdFLHVEQUF1RDtFQUN2RCwrQ0FBK0M7QUFDakQ7O0FBRUE7O0VBRUUsdURBQXVEO0VBQ3ZELCtDQUErQztBQUNqRDs7QUFFQTs7RUFFRSx1REFBdUQ7RUFDdkQsK0NBQStDO0FBQ2pEOztBQUVBOztFQUVFLHVEQUF1RDtFQUN2RCwrQ0FBK0M7QUFDakQ7O0FBRUE7Ozs7RUFJRSxzQ0FBc0M7RUFDdEMsOEJBQThCO0FBQ2hDOztBQUVBOzs7O0VBSUUsc0NBQXNDO0VBQ3RDLDhCQUE4QjtBQUNoQzs7QUFFQTs7Z0JBRWdCOztBQUVoQixVQUFVOztBQUVWO0VBRUUsMkJBQTJCO0FBQzdCOztBQUVBLG1CQUFtQjs7QUFFbkI7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QsWUFBWTtFQUVaLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCLGVBQWU7O0FBRWY7RUFDRSxTQUFTO0VBQ1QsV0FBVztFQUNYLFNBQVM7RUFDVCxZQUFZO0VBQ1osbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0VBQ1QsbUJBQW1CO0VBQ25CLDJCQUEyQjtFQUMzQiw0QkFBNEI7QUFDOUI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLFNBQVM7RUFDVCxXQUFXO0VBQ1gsT0FBTztFQUNQLFlBQVk7RUFDWixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0VBQ1QsMkJBQTJCO0VBQzNCLDRCQUE0QjtBQUM5Qjs7QUFFQSxjQUFjOztBQUVkO0VBQ0UsU0FBUztFQUNULFVBQVU7RUFDVixRQUFRO0VBQ1IsWUFBWTtFQUNaLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsWUFBWTtFQUNaLFVBQVU7RUFDViwyQkFBMkI7RUFDM0IsNEJBQTRCO0FBQzlCOztBQUVBLGtCQUFrQjs7QUFFbEI7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxTQUFTO0VBQ1QsbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxTQUFTO0VBQ1QsMkJBQTJCO0VBQzNCLHlCQUF5QjtBQUMzQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsT0FBTztFQUNQLFNBQVM7RUFDVCxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxTQUFTO0VBQ1QsMkJBQTJCO0VBQzNCLHlCQUF5QjtBQUMzQjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsUUFBUTtFQUNSLFNBQVM7RUFDVCxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osVUFBVTtFQUNWLFNBQVM7RUFDVCxVQUFVO0VBQ1YsMkJBQTJCO0VBQzNCLHlCQUF5QjtBQUMzQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsV0FBVztFQUNYLFFBQVE7RUFDUixtQkFBbUI7RUFDbkIsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxRQUFRO0VBQ1IsMEJBQTBCO0VBQzFCLDRCQUE0QjtBQUM5Qjs7QUFFQSxpQkFBaUI7O0FBRWpCO0VBQ0UsVUFBVTtFQUNWLFFBQVE7RUFDUixrQkFBa0I7RUFDbEIsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLFVBQVU7RUFDVixRQUFRO0VBQ1IsMEJBQTBCO0VBQzFCLDBCQUEwQjtBQUM1Qjs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsbUJBQW1CO0VBRW5CLHFDQUFxQztBQUN2Qzs7QUFFQTtFQUNFLG1CQUFtQjtFQUVuQixvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxtQkFBbUI7RUFFbkIsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLHlCQUF5Qjs7QUFFekI7RUFDRSxtQkFBbUI7RUFFbkIscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0UsbUJBQW1CO0VBRW5CLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLG1CQUFtQjtFQUVuQixvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxzQ0FBc0M7RUFDdEMsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0Usc0NBQXNDO0VBQ3RDLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLHFDQUFxQztFQUNyQyw2QkFBNkI7QUFDL0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxXQUFXO0FBQ2I7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLHFDQUFxQztFQUNyQyw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0Usc0NBQXNDO0VBQ3RDLDhCQUE4QjtBQUNoQzs7QUFFQSxtQ0FBbUM7O0FBRW5DO0VBQ0UsZ0NBQWdDO0VBQ2hDLG1DQUFtQztFQUNuQywyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQSwwQkFBMEI7O0FBRTFCO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0Usa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FBQzdCOztBQUVBOztnQkFFZ0I7O0FBRWhCLGdCQUFnQjs7QUFFaEI7RUFDRSwwQkFBMEI7RUFDMUIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUVaLHFDQUFxQztBQUN2Qzs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxhQUFhOztBQUViO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtFQUVoQixxQ0FBcUM7QUFDdkM7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFFaEIscUNBQXFDO0FBQ3ZDOztBQUVBLGdCQUFnQjs7QUFFaEI7RUFDRSxTQUFTO0VBQ1QsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixTQUFTO0VBQ1QsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxxQkFBcUI7RUFDckIsU0FBUztFQUNULFNBQVM7RUFDVCxXQUFXO0VBQ1gsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBLGFBQWE7O0FBRWI7RUFDRSxxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZ0JBQWdCO0FBQ2xCOztBQUVBLHNCQUFzQjs7QUFFdEIsYUFBYTs7QUFFYjtFQUNFLFFBQVE7RUFDUixvQkFBb0I7RUFDcEIsWUFBWTtFQUNaLFVBQVU7RUFDVix5QkFBeUI7RUFFekIsb0NBQW9DO0FBQ3RDOztBQUVBLHdCQUF3Qjs7QUFFeEIsYUFBYTs7QUFFYjtFQUNFLFFBQVE7RUFDUixtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLFdBQVc7RUFDWCx5QkFBeUI7RUFFekIsb0NBQW9DO0FBQ3RDOztBQUVBLDRCQUE0Qjs7QUFFNUI7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLHlCQUF5Qjs7QUFFekI7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOzsrQkFFK0I7O0FBRS9CLDBCQUEwQjs7QUFFMUI7RUFDRSwyQkFBMkI7RUFDM0IseUJBQXlCO0FBQzNCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGtDQUFrQztFQUNsQywwQkFBMEI7RUFDMUIsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFOztJQUVFLGdCQUFnQjtFQUNsQjtBQUNGOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7O2dCQUVnQjs7QUFFaEIscUJBQXFCOztBQUVyQjtFQUNFLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QsWUFBWTtFQUVaLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UseUJBQXlCO0VBRXpCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGVBQWU7QUFDakI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0I7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGVBQWU7RUFDZixZQUFZO0VBQ1oscUJBQXFCO0VBRXJCLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsWUFBWTtFQUNaLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTs7K0JBRStCOztBQUUvQixpQkFBaUI7O0FBRWpCO0VBQ0UsY0FBYztFQUNkLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsU0FBUztFQUNULGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsNEJBQTRCO0VBRTVCLHVEQUF1RDtBQUN6RDs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBQ0UsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsdUJBQXVCO0VBQ3ZCLFFBQVE7RUFDUixZQUFZO0VBQ1osVUFBVTtFQUNWLFlBQVk7RUFDWiwrQkFBK0I7RUFDL0IsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsZ0JBQWdCO0FBQ2xCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGNBQWM7RUFDZCxTQUFTO0VBQ1QsV0FBVztFQUNYLFFBQVE7RUFDUixZQUFZO0VBQ1osMEJBQTBCO0VBQzFCLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUVsQiwyQkFBMkI7QUFDN0I7O0FBRUE7OytCQUUrQjs7QUFFL0IsZUFBZTs7QUFFZjs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOztFQUVFLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUEscUJBQXFCOztBQUVyQjs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSwwQkFBMEI7QUFDNUI7O0FBRUEsa0JBQWtCOztBQUVsQjs7Ozs7Ozs7O0VBU0UseUJBQXlCO0FBQzNCOztBQUVBOzs7Ozs7Ozs7RUFTRSwwQkFBMEI7QUFDNUI7O0FBRUEsdUJBQXVCOztBQUV2QjtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsNEJBQTRCO0VBQzVCLG1EQUFtRDtFQUNuRCwyQ0FBMkM7QUFDN0M7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWixRQUFRO0VBQ1Y7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsV0FBVztFQUNiO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWixRQUFRO0VBQ1Y7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsV0FBVztFQUNiO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7O0VBRUUsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7Z0JBRWdCOztBQUVoQjtFQUNFLHFDQUFxQztFQUNyQyxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7Z0JBRWdCOztBQUVoQixvQkFBb0I7O0FBRXBCO0VBQ0UsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztBQUNiOztBQUVBOztFQUVFLGNBQWM7RUFDZCxjQUFjO0VBQ2QsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixrREFBa0Q7QUFDcEQ7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUEsaUJBQWlCOztBQUVqQjs7RUFFRSxRQUFRO0VBQ1Isa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBLGFBQWE7O0FBRWI7O0VBRUUsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsWUFBWTtFQUNaLFdBQVc7QUFDYjs7QUFFQTs7RUFFRSxTQUFTO0VBQ1QsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCLFFBQVE7O0FBRVI7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxXQUFXOztBQUVYO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsVUFBVTs7QUFFVjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQSxTQUFTOztBQUVUO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLFVBQVU7O0FBRVY7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBR0Usb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsU0FBUzs7QUFFVDtFQUNFLFlBQVk7RUFDWixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFHbEIsY0FBYztFQUNkLGVBQWU7RUFDZixhQUFhO0VBQ2IsWUFBWTtFQUVaLDJGQUEyRjtBQUM3Rjs7QUFFQTs7K0JBRStCOztBQUUvQjs7cUJBRXFCOztBQUVyQixrQkFBa0I7O0FBRWxCO0VBQ0UsdUJBQXVCO0VBQ3ZCLDBCQUEwQjtBQUM1Qjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsdUJBQXVCO0VBQ3ZCLDBCQUEwQjtBQUM1Qjs7QUFFQSxrQkFBa0I7O0FBRWxCOztFQUVFLHVCQUF1QjtFQUN2QiwwQkFBMEI7QUFDNUI7O0FBRUE7O3FCQUVxQjs7QUFFckIsYUFBYTs7QUFFYjtFQUNFLGFBQWE7RUFDYixZQUFZO0VBQ1osdUJBQXVCO0VBQ3ZCLDBCQUEwQjtFQUMxQixpQkFBaUI7QUFDbkI7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUNFLGtDQUFrQztFQUNsQyx5QkFBeUI7RUFDekIsNEdBQTRHO0FBQzlHOztBQUVBLGtCQUFrQjs7QUFFbEI7O0VBRUUsa0NBQWtDO0VBQ2xDLHlCQUF5QjtFQUN6Qiw0R0FBNEc7QUFDOUc7O0FBRUE7O3FCQUVxQjs7QUFFckI7RUFDRSxZQUFZO0VBQ1osWUFBWTtFQUNaLHVCQUF1QjtFQUN2QiwwQkFBMEI7RUFDMUIsNEJBQTRCO0FBQzlCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSxrQ0FBa0M7RUFDbEMseUJBQXlCO0VBQ3pCLDRHQUE0RztBQUM5Rzs7QUFFQSxtQkFBbUI7O0FBRW5COztFQUVFLGtDQUFrQztFQUNsQyx5QkFBeUI7RUFDekIsNEdBQTRHO0FBQzlHOztBQUVBOzsrQkFFK0I7O0FBRS9COztxQkFFcUI7O0FBRXJCLG9CQUFvQjs7QUFFcEI7RUFDRSxlQUFlO0FBQ2pCOztBQUVBOztxQkFFcUI7O0FBRXJCLG9CQUFvQjs7QUFFcEI7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsVUFBVTtBQUNaOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7OytCQUUrQjs7QUFFL0I7RUFDRSxxQkFBcUI7RUFDckIsb3BlQUFvcGU7RUFDcHBlLG1CQUFtQjtFQUNuQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsY0FBYztFQUNkLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixrQkFBa0I7QUFDcEI7O0FBRUEsZUFBZTs7QUFFZjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxnQkFBZ0I7O0FBRWhCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBOztxQkFFcUI7O0FBRXJCLGtCQUFrQjs7QUFFbEI7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsZ0JBQWdCOztBQUVoQjtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxZQUFZOztBQUVaO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBOztxQkFFcUI7O0FBRXJCOzs7O0NBSUM7O0FBRUQ7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGFBQWE7RUFDYix3QkFBd0I7RUFDeEIsbURBQW1EO0VBQ25ELGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6Qix5QkFBeUI7RUFDekIsY0FBYztFQUNkLG1CQUFtQjtFQUNuQix3Q0FBd0M7RUFDeEMsMEJBQTBCO0VBRTFCLDZDQUE2QztFQUc3QyxxR0FBcUc7QUFFdkc7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxlQUFlO0FBQ2pCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsUUFBUTtFQUNSLG9DQUFvQztFQUNwQyw0QkFBNEI7RUFDNUIsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixXQUFXO0VBQ1gsNEJBQTRCO0VBRTVCLDJGQUEyRjtFQUMzRix5QkFBeUI7RUFDekIsWUFBWTtBQUNkOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0Usa0RBQWtEO0FBQ3BEOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZUFBZTtFQUNmLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLGtDQUFrQztFQUNsQywwQkFBMEI7RUFDMUIsaUJBQWlCO0VBQ2pCLDhDQUE4QztBQUNoRDs7QUFFQTtFQUNFLDhCQUE4QjtBQUNoQzs7QUFFQSxVQUFVOztBQUVWO0VBQ0UsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixtRUFBbUU7RUFDbkUsaUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsbUVBQW1FO0VBQ25FLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCwwQkFBMEI7QUFDNUI7O0FBRUEscUJBQXFCOztBQUVyQjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6QiwwQkFBMEI7RUFDMUIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUNwQjs7QUFFQTs7K0JBRStCOztBQUUvQjs7c0JBRXNCOztBQUV0QjtFQUNFLG9DQUFvQztFQUNwQyxtQkFBbUI7RUFDbkIsMEJBQTBCO0FBQzVCOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxRQUFRO0VBQ1IsU0FBUztFQUNULDJDQUEyQztFQUMzQyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixzQ0FBc0M7QUFDeEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUixTQUFTO0VBQ1QsMkNBQTJDO0VBQzNDLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQywyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLHFCQUFxQjtFQUNyQiw2Q0FBNkM7RUFDN0MsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQix1Q0FBdUM7QUFDekM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBOztFQUVFLGtCQUFrQjtFQUNsQix3Q0FBd0M7RUFDeEMsbUJBQW1CO0VBRW5CLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7dUJBRXVCOztBQUV2QixhQUFhOztBQUViO0VBQ0UsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixhQUFhO0FBQ2Y7O0FBRUE7OytCQUUrQjs7QUFFL0I7O2dCQUVnQjs7QUFFaEI7RUFDRSw0QkFBNEI7QUFDOUI7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFVBQVU7RUFDVixTQUFTO0VBQ1QsUUFBUTtFQUNSLFVBQVU7RUFFViw4Q0FBOEM7QUFDaEQ7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixjQUFjO0FBQ2hCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsV0FBVztBQUNiOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7O0FBRUEsYUFBYTs7QUFFYjtFQUNFLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFFbkIsZ0JBQWdCO0VBRWhCLHdEQUF3RDtBQUMxRDs7QUFFQSxrQkFBa0I7O0FBRWxCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBLGlCQUFpQjs7QUFFakI7RUFDRSx3Q0FBd0M7QUFDMUM7O0FBRUE7RUFDRSx3Q0FBd0M7QUFDMUM7O0FBRUEseUJBQXlCOztBQUV6QjtFQUNFLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsbUVBQW1FO0VBQ25FLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLHlCQUF5QjtFQUN6Qiw4Q0FBOEM7QUFDaEQ7O0FBRUEsb0JBQW9COztBQUVwQjtFQUNFLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsNkNBQTZDO0VBQzdDLDhDQUE4QztBQUNoRDs7QUFFQTtFQUNFLDhDQUE4QztFQUU5Qyx3REFBd0Q7RUFDeEQsa0NBQWtDO0FBQ3BDOztBQUVBOzsrQkFFK0I7O0FBRS9COztxQkFFcUI7O0FBRXJCO0VBQ0UsV0FBVztFQUNYLFFBQVE7QUFDVjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxVQUFVO0FBQ1o7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0U7SUFDRSw2QkFBNkI7RUFDL0I7QUFDRjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUVuQixzSEFBc0g7RUFDdEgsOEdBQThHO0VBQzlHLGtKQUFrSjtBQUNwSjs7QUFFQTtFQUNFLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsV0FBVztFQUNYLHNCQUFzQjtFQUN0QixtQ0FBbUM7RUFDbkMsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsK0NBQStDO0VBQy9DLHVDQUF1QztBQUN6Qzs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLGVBQWU7RUFDZixZQUFZO0VBQ1osWUFBWTtFQUNaLHlCQUF5QjtFQUN6QiwwQkFBMEI7RUFFMUIsMENBQTBDO0FBQzVDOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFFdEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLHNCQUFzQjtFQUN0QixjQUFjO0FBQ2hCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixhQUFhO0FBQ2Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBRUUsc0hBQXNIO0VBQ3RILDhHQUE4RztFQUM5RyxrSkFBa0o7QUFDcEo7O0FBRUE7RUFFRSxvQ0FBb0M7QUFDdEM7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzsrQkFFK0I7O0FBRS9COzsrQkFFK0I7QUFDL0I7Ozs7Ozs7O0VBUUU7O0FBRUY7OytCQUUrQjs7QUFFL0IsaUJBQWlCOztBQUVqQjtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLG1DQUFtQztFQUNuQywyQkFBMkI7RUFFM0IsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0Qix1Q0FBdUM7RUFDdkMsK0JBQStCO0VBQy9CLGtCQUFrQjtFQUNsQixpQ0FBaUM7RUFDakMsdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQiw2QkFBNkI7RUFDN0Isc0JBQXNCO0VBQ3RCLDJCQUEyQjtFQUMzQixZQUFZO0FBQ2Q7O0FBRUEsa0NBQWtDOztBQUVsQztFQUNFLG1DQUFtQztFQUNuQywyQkFBMkI7QUFDN0I7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxXQUFXO0VBQ1gsU0FBUztFQUNULDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUE7O0VBRUUsc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQTtFQUNFLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsMENBQTBDO0VBQzFDLGtDQUFrQztBQUNwQzs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsdUJBQXVCO0FBQ3pCOztBQUVBLGVBQWU7O0FBRWY7RUFDRSw4QkFBOEI7QUFDaEM7O0FBRUEsaUJBQWlCOztBQUVqQjtFQUNFLHVDQUF1QztFQUN2QywrQkFBK0I7QUFDakM7O0FBRUE7OztFQUdFLGtCQUFrQjtBQUNwQjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGVBQWU7RUFDZixtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBRTNCLHdDQUF3QztFQUN4QyxnQ0FBZ0M7RUFDaEMsOERBQThEO0VBQzlELHNCQUFzQjtFQUN0QixZQUFZO0FBQ2Q7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxrQkFBa0I7RUFDbEIsbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBRWhCLHdDQUF3QztFQUN4QyxnQ0FBZ0M7RUFDaEMsOERBQThEO0VBQzlELFVBQVU7QUFDWjs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQSxrREFBa0Q7O0FBRWxEO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsZUFBZTtFQUNmLFFBQVE7RUFDUixVQUFVO0VBQ1YsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQkFBZ0I7RUFDaEIsVUFBVTtFQUVWLHlCQUF5QjtFQUN6QixvQkFBb0I7RUFDcEIsYUFBYTtBQUNmOztBQUVBOztnQkFFZ0I7O0FBRWhCO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0Usc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixxQkFBcUI7QUFDdkI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxtQkFBbUI7RUFDbkIsdUNBQXVDO0VBQ3ZDLCtCQUErQjtBQUNqQzs7QUFFQSxxQkFBcUI7O0FBRXJCOztFQUdFLCtDQUErQztBQUNqRDs7QUFFQTs7RUFHRSwrQ0FBK0M7QUFDakQ7O0FBRUEsb0JBQW9COztBQUVwQjs7RUFFRSwyQ0FBMkM7RUFDM0MsbUNBQW1DO0FBQ3JDOztBQUVBOztFQUVFLDRDQUE0QztFQUM1QyxvQ0FBb0M7QUFDdEM7O0FBRUE7O0VBRUUsMENBQTBDO0VBQzFDLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSwyQ0FBMkM7RUFDM0MsbUNBQW1DO0FBQ3JDOztBQUVBLGtEQUFrRDs7QUFFbEQ7Ozs7RUFJRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBOztnQkFFZ0I7O0FBRWhCOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCLGlCQUFpQjs7QUFFakI7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLFdBQVc7QUFDYjs7QUFFQTs7RUFFRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLFlBQVk7QUFDZDs7QUFFQSxpQkFBaUI7O0FBRWpCOztFQUVFLDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUE7O0VBRUUsMENBQTBDO0VBQzFDLGtDQUFrQztBQUNwQzs7QUFFQTs7RUFFRSwyQ0FBMkM7RUFDM0MsbUNBQW1DO0FBQ3JDOztBQUVBOztFQUVFLDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUEsa0JBQWtCOztBQUVsQjs7RUFFRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBOztFQUVFLDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUE7O0VBRUUsNENBQTRDO0VBQzVDLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCLFdBQVc7O0FBRVg7RUFDRSxZQUFZO0FBQ2Q7O0FBRUEsWUFBWTs7QUFFWjtFQUNFLDRDQUE0QztFQUM1QyxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSwyQ0FBMkM7RUFDM0MsbUNBQW1DO0FBQ3JDOztBQUVBO0VBQ0UsNENBQTRDO0VBQzVDLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLDJDQUEyQztFQUMzQyxtQ0FBbUM7QUFDckM7O0FBRUEsY0FBYzs7QUFFZDs7RUFHRSx3Q0FBd0M7RUFDeEMsZ0NBQWdDO0VBQ2hDLDhEQUE4RDtBQUNoRTs7QUFFQSxrQkFBa0I7O0FBRWxCO0VBQ0UseUNBQXlDO0VBQ3pDLGlDQUFpQztBQUNuQzs7QUFFQTtFQUNFLHlDQUF5QztFQUN6QyxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSx5Q0FBeUM7RUFDekMsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0UseUNBQXlDO0VBQ3pDLGlDQUFpQztBQUNuQzs7QUFFQSxpQkFBaUI7O0FBRWpCOztFQUVFLGtDQUFrQztFQUNsQywwQkFBMEI7QUFDNUI7O0FBRUE7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUVFLHdDQUF3QztFQUN4QyxnQ0FBZ0M7RUFDaEMsOERBQThEO0VBQzlELFlBQVk7QUFDZDs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQSxRQUFROztBQUVSO0VBQ0Usd0NBQXdDO0VBQ3hDLGdDQUFnQztBQUNsQzs7QUFFQTs7Z0JBRWdCOztBQUVoQixZQUFZOztBQUVaO0VBQ0UsdUNBQXVDO0VBQ3ZDLCtCQUErQjtFQUMvQixVQUFVO0FBQ1o7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLHVDQUF1QztFQUN2QywrQkFBK0I7RUFFL0Isd0NBQXdDO0VBQ3hDLGdDQUFnQztFQUNoQyw4REFBOEQ7QUFDaEU7O0FBRUE7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUNFLFVBQVU7QUFDWjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UsMENBQTBDO0VBQzFDLGtDQUFrQztBQUNwQzs7QUFFQTtFQUNFLHlDQUF5QztFQUN6QyxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSwwQ0FBMEM7RUFDMUMsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsMENBQTBDO0VBQzFDLGtDQUFrQztBQUNwQzs7QUFFQSxjQUFjOztBQUVkO0VBRUUsd0NBQXdDO0VBQ3hDLGdDQUFnQztFQUNoQyw4REFBOEQ7QUFDaEU7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLHdDQUF3QztFQUN4QyxnQ0FBZ0M7QUFDbEM7O0FBRUE7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUNFLFVBQVU7QUFDWjs7QUFFQSxzQkFBc0I7O0FBRXRCO0VBQ0UseUNBQXlDO0VBQ3pDLGlDQUFpQztBQUNuQzs7QUFFQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSwwQ0FBMEM7RUFDMUMsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQSxjQUFjOztBQUVkO0VBRUUsd0NBQXdDO0VBQ3hDLGdDQUFnQztFQUNoQyw4REFBOEQ7QUFDaEU7O0FBRUEsUUFBUTs7QUFFUjtFQUNFLHdDQUF3QztFQUN4QyxnQ0FBZ0M7QUFDbEM7O0FBRUE7O2dCQUVnQjs7QUFFaEIsWUFBWTs7QUFFWjtFQUVFLHdDQUF3QztFQUN4QyxnQ0FBZ0M7RUFDaEMsOERBQThEO0VBQzlELFlBQVk7QUFDZDs7QUFFQSx1QkFBdUI7O0FBRXZCO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSw0Q0FBNEM7RUFDNUMsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQSxxQkFBcUI7O0FBRXJCO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBQUMzQjs7QUFFQSxjQUFjOztBQUVkO0VBRUUsd0NBQXdDO0VBQ3hDLGdDQUFnQztFQUNoQyw4REFBOEQ7QUFDaEU7O0FBRUE7O0VBRUUseUJBQXlCO0VBQ3pCLFdBQVc7RUFDWCxZQUFZO0VBQ1osMkJBQTJCO0FBQzdCOztBQUVBLFFBQVE7O0FBRVI7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLHNCQUFzQjtBQUN4Qjs7QUFFQTs7K0JBRStCOztBQUUvQjs7K0JBRStCO0FBQy9COzs7Ozs7OztFQVFFOztBQUVGOzsrQkFFK0I7O0FBRS9CO0VBQ0UsZ0JBQWdCO0VBRWhCLGdCQUFnQjtFQUNoQixZQUFZO0FBQ2Q7O0FBRUE7OytCQUUrQjs7QUFFL0IsVUFBVTs7QUFFVjtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztBQUNiOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxlQUFlO0VBQ2YsVUFBVTtFQUNWLFdBQVc7QUFDYjs7QUFFQSx5QkFBeUI7O0FBRXpCOztFQUVFLFFBQVE7RUFDUixZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQTs7K0JBRStCOztBQUUvQjtFQUNFLHdCQUF3QjtFQUN4QixxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixnQkFBZ0I7QUFDbEI7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7K0JBRStCOztBQUUvQjs7c0JBRXNCOztBQUV0Qjs7RUFFRSxjQUFjO0FBQ2hCOztBQUVBOztzQkFFc0I7O0FBRXRCO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFVBQVU7RUFDVixTQUFTO0VBQ1QsK0JBQStCO0VBQy9CLFlBQVk7RUFDWixhQUFhO0VBQ2IscUJBQXFCO0VBQ3JCLHNDQUFzQztBQUN4Qzs7QUFFQTs7RUFFRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFVBQVU7RUFDVixTQUFTO0VBQ1QsK0JBQStCO0VBQy9CLFlBQVk7RUFDWixhQUFhO0VBQ2IsMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQywyQ0FBMkM7RUFDM0MsbUNBQW1DO0VBQ25DLHFCQUFxQjtFQUNyQiw2Q0FBNkM7RUFDN0MsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUVuQix1Q0FBdUM7QUFDekM7O0FBRUE7OytCQUUrQjs7QUFFL0I7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRTs7QUFFRjs7K0JBRStCOztBQUUvQjtFQUNFLG9DQUFvQztFQUNwQyw0QkFBNEI7RUFDNUIsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qix1Q0FBdUM7RUFDdkMsK0JBQStCO0VBQy9CLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7OytCQUUrQjs7QUFFL0IsY0FBYzs7QUFFZDtFQUNFLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsOEJBQThCO0FBQ2hDOztBQUVBLFlBQVk7O0FBRVo7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGNBQWM7QUFDaEI7O0FBRUEsV0FBVzs7QUFFWDtFQUNFLGFBQWE7RUFDYixrQkFBa0I7QUFDcEI7O0FBRUEsWUFBWTs7QUFFWjtFQUNFLHlCQUF5QjtFQUN6Qiw4QkFBOEI7RUFDOUI7aUNBQytCO0FBQ2pDOztBQUVBLGFBQWE7O0FBRWI7RUFDRSxvQ0FBb0M7RUFDcEMsNEJBQTRCO0FBQzlCOztBQUVBOzsrQkFFK0I7O0FBRS9CO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBQUNyQzs7QUFFQTs7K0JBRStCOztBQUUvQjs7Ozs7O0NBTUM7O0FBRUQ7O2dCQUVnQjs7QUFFaEI7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSxxQ0FBcUM7RUFDckMsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0Usc0NBQXNDO0VBQ3RDLDhCQUE4QjtBQUNoQzs7QUFFQSxPQUFPOztBQUVQO0VBQ0U7SUFDRSw2Q0FBNkM7SUFDN0MscUNBQXFDO0lBQ3JDLFdBQVc7RUFDYjs7RUFFQTtJQUNFLDZDQUE2QztJQUM3QyxxQ0FBcUM7SUFDckMsV0FBVztJQUNYLFlBQVk7RUFDZDs7RUFFQTtJQUNFLDhDQUE4QztJQUM5QyxzQ0FBc0M7SUFDdEMsVUFBVTtJQUNWLFlBQVk7RUFDZDs7RUFFQTtJQUNFLDJDQUEyQztJQUMzQyxtQ0FBbUM7SUFDbkMsWUFBWTtFQUNkO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDZDQUE2QztJQUM3QyxxQ0FBcUM7SUFDckMsV0FBVztFQUNiOztFQUVBO0lBQ0UsNkNBQTZDO0lBQzdDLHFDQUFxQztJQUNyQyxXQUFXO0lBQ1gsWUFBWTtFQUNkOztFQUVBO0lBQ0UsOENBQThDO0lBQzlDLHNDQUFzQztJQUN0QyxVQUFVO0lBQ1YsWUFBWTtFQUNkOztFQUVBO0lBQ0UsMkNBQTJDO0lBQzNDLG1DQUFtQztJQUNuQyxZQUFZO0VBQ2Q7QUFDRjs7QUFFQSxRQUFROztBQUVSO0VBQ0U7SUFDRSxZQUFZO0lBQ1osNkRBQTZEO0lBQzdELHFEQUFxRDtFQUN2RDs7RUFFQTtJQUNFLFdBQVc7SUFDWCxvRkFBb0Y7SUFDcEYsNEVBQTRFO0VBQzlFOztFQUVBO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsV0FBVztJQUNYLCtFQUErRTtJQUMvRSx1RUFBdUU7SUFDdkUsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQVk7SUFDWiw2REFBNkQ7SUFDN0QscURBQXFEO0VBQ3ZEOztFQUVBO0lBQ0UsV0FBVztJQUNYLG9GQUFvRjtJQUNwRiw0RUFBNEU7RUFDOUU7O0VBRUE7SUFDRSxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsK0VBQStFO0lBQy9FLHVFQUF1RTtJQUN2RSxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsWUFBWTtJQUNaLDZEQUE2RDtJQUM3RCxxREFBcUQ7RUFDdkQ7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsbUZBQW1GO0lBQ25GLDJFQUEyRTtFQUM3RTs7RUFFQTtJQUNFLFVBQVU7RUFDWjs7RUFFQTtJQUNFLFVBQVU7SUFDViwrRUFBK0U7SUFDL0UsdUVBQXVFO0lBQ3ZFLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0lBQ1osNkRBQTZEO0lBQzdELHFEQUFxRDtFQUN2RDs7RUFFQTtJQUNFLFVBQVU7SUFDVixtRkFBbUY7SUFDbkYsMkVBQTJFO0VBQzdFOztFQUVBO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsVUFBVTtJQUNWLCtFQUErRTtJQUMvRSx1RUFBdUU7SUFDdkUsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSxvQ0FBb0M7RUFDcEMsNEJBQTRCO0VBQzVCLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFDekIsbUVBQW1FO0VBQ25FLDJEQUEyRDtBQUM3RDs7QUFFQTtFQUNFLDhCQUE4QjtFQUM5QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IsdUJBQXVCO0FBQ3pCOztBQUVBLFNBQVM7O0FBRVQ7RUFDRTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLDhCQUE4QjtFQUM5QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGtDQUFrQztFQUNsQywwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsK0JBQStCO0VBQy9CLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsbUNBQW1DO0VBQ25DLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUEsT0FBTzs7QUFFUDtFQUNFO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7RUFDWjs7RUFFQTtJQUNFLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFQUM1Qjs7RUFFQTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixrQ0FBa0M7SUFDbEMsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLG1DQUFtQztJQUNuQywyQkFBMkI7RUFDN0I7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DO0lBQ25DLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixrQ0FBa0M7SUFDbEMsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DO0lBQ25DLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixtQ0FBbUM7SUFDbkMsMkJBQTJCO0VBQzdCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQSxRQUFROztBQUVSO0VBQ0U7SUFDRSxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjs7RUFFQTtJQUNFLFVBQVU7SUFDVixrQ0FBa0M7SUFDbEMsMEJBQTBCO0VBQzVCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsaUNBQWlDO0lBQ2pDLHlCQUF5QjtFQUMzQjs7RUFFQTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixpQ0FBaUM7SUFDakMseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQztJQUNqQyx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFQUM1QjtBQUNGOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx3Q0FBd0M7RUFDeEMsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0UseUNBQXlDO0VBQ3pDLGlDQUFpQztBQUNuQzs7QUFFQTtFQUNFLHNDQUFzQztFQUN0Qyw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBLE9BQU87O0FBRVA7RUFDRTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaOztFQUVBO0lBQ0Usb0RBQW9EO0lBQ3BELDRDQUE0QztJQUM1QyxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0Usc0RBQXNEO0lBQ3RELDhDQUE4QztJQUM5QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0lBQzVDLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLG9EQUFvRDtJQUNwRCw0Q0FBNEM7SUFDNUMsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaOztFQUVBO0lBQ0Usb0RBQW9EO0lBQ3BELDRDQUE0QztJQUM1QyxVQUFVO0VBQ1o7QUFDRjs7QUFFQSxRQUFROztBQUVSO0VBQ0U7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0lBQzVDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHFEQUFxRDtJQUNyRCw2Q0FBNkM7SUFDN0MsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLG9EQUFvRDtJQUNwRCw0Q0FBNEM7SUFDNUMsVUFBVTtFQUNaOztFQUVBO0lBQ0UscURBQXFEO0lBQ3JELDZDQUE2QztJQUM3QyxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0Usb0RBQW9EO0lBQ3BELDRDQUE0QztJQUM1QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0lBQzVDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSwrQkFBK0I7RUFDL0IsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDZCQUE2QjtJQUM3QixxQkFBcUI7RUFDdkI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNkJBQTZCO0lBQzdCLHFCQUFxQjtFQUN2Qjs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FBRUEsUUFBUTs7QUFFUjtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNkJBQTZCO0lBQzdCLHFCQUFxQjtFQUN2QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLFVBQVU7SUFDViw2QkFBNkI7SUFDN0IscUJBQXFCO0VBQ3ZCO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEIsV0FBVzs7QUFFWDtFQUNFLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFFeEIsK0RBQStEO0FBQ2pFOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLCtCQUErQjtFQUMvQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGtDQUFrQztFQUNsQywwQkFBMEI7QUFDNUI7O0FBRUEsWUFBWTs7QUFFWjtFQUNFLDhCQUE4QjtFQUM5QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usa0NBQWtDO0VBQ2xDLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGtDQUFrQztFQUNsQywwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FBQzdCOztBQUVBLE9BQU87O0FBRVA7RUFDRTtJQUNFLFVBQVU7SUFDVix5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNENBQTRDO0lBQzVDLG9DQUFvQztFQUN0Qzs7RUFFQTtJQUNFLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DO0lBQ25DLDJCQUEyQjtFQUM3QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7O0VBRUE7SUFDRSx5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFDRSw0Q0FBNEM7SUFDNUMsb0NBQW9DO0VBQ3RDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLG1DQUFtQztJQUNuQywyQkFBMkI7RUFDN0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsMkNBQTJDO0lBQzNDLG1DQUFtQztFQUNyQzs7RUFFQTtJQUNFLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwwQ0FBMEM7SUFDMUMsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsdUNBQXVDO0lBQ3ZDLCtCQUErQjtFQUNqQztBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNENBQTRDO0lBQzVDLG9DQUFvQztFQUN0Qzs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSx1Q0FBdUM7SUFDdkMsK0JBQStCO0VBQ2pDO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBNkM7SUFDN0MscUNBQXFDO0VBQ3ZDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBNkM7SUFDN0MscUNBQXFDO0VBQ3ZDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw0Q0FBNEM7SUFDNUMsb0NBQW9DO0VBQ3RDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDJDQUEyQztJQUMzQyxtQ0FBbUM7RUFDckM7O0VBRUE7SUFDRSwwQ0FBMEM7SUFDMUMsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw0Q0FBNEM7SUFDNUMsb0NBQW9DO0VBQ3RDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDJDQUEyQztJQUMzQyxtQ0FBbUM7RUFDckM7O0VBRUE7SUFDRSwwQ0FBMEM7SUFDMUMsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBNkM7SUFDN0MscUNBQXFDO0VBQ3ZDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBNkM7SUFDN0MscUNBQXFDO0VBQ3ZDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCO0FBQ0Y7O0FBRUEsUUFBUTs7QUFFUjtFQUNFO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLFVBQVU7SUFDVix5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UsVUFBVTtJQUNWLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLFVBQVU7SUFDVix5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UsVUFBVTtJQUNWLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMkNBQTJDO0lBQzNDLG1DQUFtQztFQUNyQzs7RUFFQTtJQUNFLFVBQVU7SUFDViwwQ0FBMEM7SUFDMUMsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDZDQUE2QztJQUM3QyxxQ0FBcUM7RUFDdkM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsMkNBQTJDO0lBQzNDLG1DQUFtQztFQUNyQzs7RUFFQTtJQUNFLFVBQVU7SUFDViwwQ0FBMEM7SUFDMUMsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDZDQUE2QztJQUM3QyxxQ0FBcUM7RUFDdkM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNkNBQTZDO0lBQzdDLHFDQUFxQztFQUN2QztBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMENBQTBDO0lBQzFDLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLFVBQVU7SUFDViw2Q0FBNkM7SUFDN0MscUNBQXFDO0VBQ3ZDO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRDQUE0QztJQUM1QyxvQ0FBb0M7RUFDdEM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJDQUEyQztJQUMzQyxtQ0FBbUM7RUFDckM7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNENBQTRDO0lBQzVDLG9DQUFvQztFQUN0QztBQUNGOztBQUVBOztnQkFFZ0I7O0FBRWhCOztFQUVFLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFDeEIsb0NBQW9DO0VBQ3BDLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFDeEIsdUNBQXVDO0VBQ3ZDLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFDeEIsc0NBQXNDO0VBQ3RDLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLGdDQUFnQztFQUNoQyx3QkFBd0I7RUFDeEIscUNBQXFDO0VBQ3JDLDZCQUE2QjtBQUMvQjs7QUFFQTs7RUFFRSxpQ0FBaUM7RUFDakMseUJBQXlCO0VBQ3pCLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0VBQ3pCLHVDQUF1QztFQUN2QywrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0VBQ3pCLHNDQUFzQztFQUN0Qyw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMseUJBQXlCO0VBQ3pCLHFDQUFxQztFQUNyQyw2QkFBNkI7QUFDL0I7O0FBRUEsT0FBTzs7QUFFUDtFQUNFO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLG9CQUFvQjtFQUN0QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLG9CQUFvQjtFQUN0Qjs7RUFFQTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7SUFDNUIsb0JBQW9CO0VBQ3RCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7SUFDNUIsb0JBQW9CO0VBQ3RCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLG9CQUFvQjtFQUN0QjtBQUNGOztBQUVBLFFBQVE7O0FBRVI7RUFDRTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7SUFDNUIsb0JBQW9CO0VBQ3RCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLG9CQUFvQjtFQUN0QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLG9CQUFvQjtFQUN0Qjs7RUFFQTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7SUFDNUIsb0JBQW9CO0VBQ3RCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7SUFDNUIsb0JBQW9CO0VBQ3RCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtJQUM1QixvQkFBb0I7RUFDdEI7QUFDRjs7QUFFQTs7Z0JBRWdCOztBQUVoQjtFQUNFLGlDQUFpQztFQUNqQyx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLG9DQUFvQztFQUNwQyw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLHVDQUF1QztFQUN2QywrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLHNDQUFzQztFQUN0Qyw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCLHFDQUFxQztFQUNyQyw2QkFBNkI7QUFDL0I7O0FBRUE7O0VBRUUsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6QixvQ0FBb0M7RUFDcEMsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qix1Q0FBdUM7RUFDdkMsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6QixzQ0FBc0M7RUFDdEMsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6QixxQ0FBcUM7RUFDckMsNkJBQTZCO0FBQy9COztBQUVBLE9BQU87O0FBRVA7RUFDRTtJQUNFLHFEQUFxRDtJQUNyRCw2Q0FBNkM7SUFDN0MsVUFBVTtFQUNaOztFQUVBO0lBQ0Usc0RBQXNEO0lBQ3RELDhDQUE4QztJQUM5QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxxREFBcUQ7SUFDckQsNkNBQTZDO0VBQy9DOztFQUVBO0lBQ0UsdURBQXVEO0lBQ3ZELCtDQUErQztFQUNqRDs7RUFFQTtJQUNFLG9EQUFvRDtJQUNwRCw0Q0FBNEM7RUFDOUM7QUFDRjs7QUFFQTtFQUNFO0lBQ0UscURBQXFEO0lBQ3JELDZDQUE2QztJQUM3QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHFEQUFxRDtJQUNyRCw2Q0FBNkM7RUFDL0M7O0VBRUE7SUFDRSx1REFBdUQ7SUFDdkQsK0NBQStDO0VBQ2pEOztFQUVBO0lBQ0Usb0RBQW9EO0lBQ3BELDRDQUE0QztFQUM5QztBQUNGOztBQUVBO0VBQ0U7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHFEQUFxRDtJQUNyRCw2Q0FBNkM7SUFDN0MsVUFBVTtFQUNaOztFQUVBO0lBQ0Usd0RBQXdEO0lBQ3hELGdEQUFnRDtFQUNsRDs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7RUFDaEQ7O0VBRUE7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0VBQzlDO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaOztFQUVBO0lBQ0UscURBQXFEO0lBQ3JELDZDQUE2QztJQUM3QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSx3REFBd0Q7SUFDeEQsZ0RBQWdEO0VBQ2xEOztFQUVBO0lBQ0Usc0RBQXNEO0lBQ3RELDhDQUE4QztFQUNoRDs7RUFFQTtJQUNFLG9EQUFvRDtJQUNwRCw0Q0FBNEM7RUFDOUM7QUFDRjs7QUFFQSxRQUFROztBQUVSO0VBQ0U7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0VBQzlDOztFQUVBO0lBQ0UsdURBQXVEO0lBQ3ZELCtDQUErQztFQUNqRDs7RUFFQTtJQUNFLHVEQUF1RDtJQUN2RCwrQ0FBK0M7RUFDakQ7O0VBRUE7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHFEQUFxRDtJQUNyRCw2Q0FBNkM7SUFDN0MsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLG9EQUFvRDtJQUNwRCw0Q0FBNEM7RUFDOUM7O0VBRUE7SUFDRSx1REFBdUQ7SUFDdkQsK0NBQStDO0VBQ2pEOztFQUVBO0lBQ0UsdURBQXVEO0lBQ3ZELCtDQUErQztFQUNqRDs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaOztFQUVBO0lBQ0UscURBQXFEO0lBQ3JELDZDQUE2QztJQUM3QyxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0Usb0RBQW9EO0lBQ3BELDRDQUE0QztFQUM5Qzs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7RUFDaEQ7O0VBRUE7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0VBQ2hEOztFQUVBO0lBQ0UscURBQXFEO0lBQ3JELDZDQUE2QztJQUM3QyxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxzREFBc0Q7SUFDdEQsOENBQThDO0lBQzlDLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxvREFBb0Q7SUFDcEQsNENBQTRDO0VBQzlDOztFQUVBO0lBQ0Usc0RBQXNEO0lBQ3RELDhDQUE4QztFQUNoRDs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7RUFDaEQ7O0VBRUE7SUFDRSxxREFBcUQ7SUFDckQsNkNBQTZDO0lBQzdDLFVBQVU7RUFDWjs7RUFFQTtJQUNFLHNEQUFzRDtJQUN0RCw4Q0FBOEM7SUFDOUMsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7O2dCQUVnQjs7QUFFaEI7RUFDRSw4QkFBOEI7RUFDOUIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsK0JBQStCO0VBQy9CLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJCQUEyQjtJQUMzQixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxVQUFVO0lBQ1YsMkJBQTJCO0lBQzNCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBOzsrQkFFK0I7O0FBRS9COztnQkFFZ0I7O0FBRWhCO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw2QkFBNkI7RUFDN0IscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw2QkFBNkI7RUFDN0IscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw4QkFBOEI7RUFDOUIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw0QkFBNEI7RUFDNUIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw2QkFBNkI7RUFDN0IscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFQUN6Qiw4QkFBOEI7RUFDOUIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0Usa0NBQWtDO0VBQ2xDLDBCQUEwQjtFQUMxQixpRUFBaUU7RUFDakUseURBQXlEO0FBQzNEOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLG9CQUFvQjtBQUN0Qjs7QUFFQSxVQUFVOztBQUVWO0VBQ0U7SUFDRSxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUEsVUFBVTs7QUFFVjtFQUNFO0lBQ0UsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFQUMxQjs7RUFFQTtJQUNFLG9DQUFvQztJQUNwQyw0QkFBNEI7RUFDOUI7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VBQzdCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLGdDQUFnQztJQUNoQyx3QkFBd0I7RUFDMUI7O0VBRUE7SUFDRSxvQ0FBb0M7SUFDcEMsNEJBQTRCO0VBQzlCOztFQUVBO0lBQ0UsbUNBQW1DO0lBQ25DLDJCQUEyQjtFQUM3QjtBQUNGOztBQUVBLFdBQVc7O0FBRVg7RUFDRTtJQUNFLGdDQUFnQztJQUNoQyx3QkFBd0I7RUFDMUI7O0VBRUE7SUFDRSxvQ0FBb0M7SUFDcEMsNEJBQTRCO0VBQzlCOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLDRCQUE0QjtFQUM5QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VBQzFCOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLDRCQUE0QjtFQUM5Qjs7RUFFQTtJQUNFLG9DQUFvQztJQUNwQyw0QkFBNEI7RUFDOUI7QUFDRjs7QUFFQSxTQUFTOztBQUVUO0VBQ0U7SUFDRSwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsMkNBQTJDO0lBQzNDLG1DQUFtQztFQUNyQzs7RUFFQTtJQUNFLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UscUNBQXFDO0lBQ3JDLDZCQUE2QjtFQUMvQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSwyQkFBMkI7SUFDM0IsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsMkNBQTJDO0lBQzNDLG1DQUFtQztFQUNyQzs7RUFFQTtJQUNFLDBDQUEwQztJQUMxQyxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwyQ0FBMkM7SUFDM0MsbUNBQW1DO0VBQ3JDOztFQUVBO0lBQ0UscUNBQXFDO0lBQ3JDLDZCQUE2QjtFQUMvQjtBQUNGOztBQUVBLFVBQVU7O0FBRVY7RUFDRTtJQUNFLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsVUFBVTtFQUNaOztFQUVBO0lBQ0UsNkJBQTZCO0lBQzdCLHFCQUFxQjtJQUNyQixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSwyQkFBMkI7SUFDM0IsbUJBQW1CO0lBQ25CLFVBQVU7RUFDWjtBQUNGOztBQUVBO0VBQ0U7SUFDRSwyQkFBMkI7SUFDM0IsbUJBQW1CO0lBQ25CLFVBQVU7RUFDWjs7RUFFQTtJQUNFLDZCQUE2QjtJQUM3QixxQkFBcUI7SUFDckIsWUFBWTtFQUNkOztFQUVBO0lBQ0UsMkJBQTJCO0lBQzNCLG1CQUFtQjtJQUNuQixVQUFVO0VBQ1o7QUFDRjs7QUFFQSxXQUFXOztBQUVYO0VBQ0U7SUFDRSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VBQzdCOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7O0VBRUE7SUFDRSx5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7O0VBRUE7SUFDRSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VBQzdCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLG1DQUFtQztJQUNuQywyQkFBMkI7RUFDN0I7O0VBRUE7SUFDRSx5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLHlDQUF5QztJQUN6QyxpQ0FBaUM7RUFDbkM7O0VBRUE7SUFDRSx5Q0FBeUM7SUFDekMsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UseUNBQXlDO0lBQ3pDLGlDQUFpQztFQUNuQzs7RUFFQTtJQUNFLG1DQUFtQztJQUNuQywyQkFBMkI7RUFDN0I7QUFDRjs7QUFFQSxTQUFTOztBQUVUO0VBQ0U7SUFDRSx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSx5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0UseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UseUJBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7OytCQUUrQjtBQUMvQjs7Ozs7Ozs7RUFRRSxDQUFDLHVCQUF1QixjQUFjLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxxQkFBcUIsQ0FBc0IsZ0JBQWdCLENBQUMsNkJBQTZCLFNBQVMsQ0FBQyxnQ0FBZ0MsYUFBYSxDQUFDLGtCQUFrQixDQUFDLHdDQUF3QyxVQUFVLENBQUMsdUZBQXVGLGNBQWMsQ0FBQywyQkFBMkIsY0FBYyxDQUFDLDRCQUE0QixjQUFjLENBQUMsMERBQTBELFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyw2QkFBNkIsZ0JBQWdCLENBQUMsbUNBQW1DLFFBQVEsQ0FBQyx5Q0FBeUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyw2Q0FBNkMsV0FBVyxDQUFDLDhDQUE4QyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyw2QkFBNkIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsZ0NBQWdDLGNBQWMsQ0FBQyxxQ0FBcUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLHFDQUFxQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDLG1DQUFtQyxlQUFlLENBQUMsbUNBQW1DLDBCQUEwQixDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyw0Q0FBNEMsZ0NBQWdDLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyx3UEFBd1Asa0NBQWtDO0FBQ2p3RDtFQUNFLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVzs7RUFFWCwrQ0FBK0M7RUFDL0Msa0JBQWtCOztFQUVsQixxRUFBcUU7RUFDckUsb0JBQW9CO0FBQ3RCOztBQUVBOzs7O0VBSUUsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLFNBQVM7QUFDWDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixzQkFBc0IsRUFBRTtFQUN4QjtJQUNFLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsc0JBQXNCLEVBQUU7RUFDMUI7O0lBRUUsc0JBQXNCLEVBQUU7SUFDeEI7OztNQUdFLHdCQUF3QjtNQUN4QixnQkFBZ0I7TUFDaEIsT0FBTyxFQUFFO0lBQ1g7O01BRUUsZ0JBQWdCLEVBQUU7SUFDcEI7O01BRUUsa0JBQWtCLEVBQUU7SUFDdEI7O01BRUUsaUJBQWlCLEVBQUU7RUFDdkI7SUFDRSxVQUFVLEVBQUU7SUFDWjtNQUNFLFFBQVEsRUFBRTtJQUNaO01BQ0UsT0FBTyxFQUFFO0VBQ2I7O0lBRUUsVUFBVSxFQUFFO0VBQ2Q7O0lBRUUsVUFBVSxFQUFFO0VBQ2Q7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSx3QkFBd0I7SUFDeEIsZ0JBQWdCO0lBQ2hCLE1BQU07SUFDTixVQUFVO0lBQ1Ysc0JBQXNCLEVBQUU7RUFDMUI7SUFDRSxzQkFBc0IsRUFBRTtFQUMxQjtJQUNFLHdCQUF3QjtJQUN4QixnQkFBZ0I7SUFDaEIsU0FBUztJQUNULFVBQVU7SUFDVixzQkFBc0IsRUFBRTtFQUMxQjtJQUNFLHlCQUFpQjtJQUFqQixzQkFBaUI7SUFBakIsaUJBQWlCLEVBQUU7RUFDckI7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsTUFBTSxFQUFFO0VBQ1Y7SUFDRSx3QkFBd0IsRUFBRTtFQUM1QjtJQUNFO01BQ0UseUJBQXlCLEVBQUUsRUFBRSIsImZpbGUiOiJ2ZW5kb3IuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmVtYmVyLXRhYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICB0ZCxcbiAgdGgge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAmLmlzLWZpeGVkLWxlZnQsXG4gICAgJi5pcy1maXhlZC1yaWdodCB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi5lbWJlci10YWJsZV9fdGV4dC1hbGlnbi1sZWZ0IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgJi5lbWJlci10YWJsZV9fdGV4dC1hbGlnbi1jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICYuZW1iZXItdGFibGVfX3RleHQtYWxpZ24tcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgdGgge1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOm5vdCguaXMtZml4ZWQtcmlnaHQpIHtcbiAgICAgIC5ldC1oZWFkZXItcmVzaXplLWFyZWEge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWZpeGVkLXJpZ2h0IHtcbiAgICAgIC5ldC1oZWFkZXItcmVzaXplLWFyZWEge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRkLmlzLWZpeGVkLWxlZnQsXG4gIHRkLmlzLWZpeGVkLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgdGguaXMtZml4ZWQtbGVmdCxcbiAgdGguaXMtZml4ZWQtcmlnaHQge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICB0aC5pcy1zb3J0YWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIG5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG5cbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgdGJvZHkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgJi5ldC11bnNlbGVjdGFibGUge1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLmV0LWhlYWRlci1yZXNpemUtYXJlYSB7XG4gICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuXG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgfVxuXG4gIC5ldC1zcGVlY2gtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgQG1lZGlhIHNwZWVjaCB7XG4gICAgLmV0LXNwZWVjaC1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvKiEgbm91aXNsaWRlciAtIDE0LjEuMSAtIDEyLzE1LzIwMTkgKi9cbi5ub1VpLXRhcmdldCwubm9VaS10YXJnZXQgKnstd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tcy10b3VjaC1hY3Rpb246bm9uZTt0b3VjaC1hY3Rpb246bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lm5vVWktdGFyZ2V0e3Bvc2l0aW9uOnJlbGF0aXZlfS5ub1VpLWJhc2UsLm5vVWktY29ubmVjdHN7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lm5vVWktY29ubmVjdHN7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MH0ubm9VaS1jb25uZWN0LC5ub1VpLW9yaWdpbnt3aWxsLWNoYW5nZTp0cmFuc2Zvcm07cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxO3RvcDowO3JpZ2h0OjA7LW1zLXRyYW5zZm9ybS1vcmlnaW46MCAwOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjowIDA7LXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2Q7dHJhbnNmb3JtLW9yaWdpbjowIDA7dHJhbnNmb3JtLXN0eWxlOmZsYXR9Lm5vVWktY29ubmVjdHtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS5ub1VpLW9yaWdpbntoZWlnaHQ6MTAlO3dpZHRoOjEwJX0ubm9VaS10eHQtZGlyLXJ0bC5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2lue2xlZnQ6MDtyaWdodDphdXRvfS5ub1VpLXZlcnRpY2FsIC5ub1VpLW9yaWdpbnt3aWR0aDowfS5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2lue2hlaWdodDowfS5ub1VpLWhhbmRsZXstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlfS5ub1VpLXRvdWNoLWFyZWF7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ubm9VaS1zdGF0ZS10YXAgLm5vVWktY29ubmVjdCwubm9VaS1zdGF0ZS10YXAgLm5vVWktb3JpZ2luey13ZWJraXQtdHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zc30ubm9VaS1zdGF0ZS1kcmFnICp7Y3Vyc29yOmluaGVyaXQhaW1wb3J0YW50fS5ub1VpLWhvcml6b250YWx7aGVpZ2h0OjE4cHh9Lm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGV7d2lkdGg6MzRweDtoZWlnaHQ6MjhweDtyaWdodDotMTdweDt0b3A6LTZweH0ubm9VaS12ZXJ0aWNhbHt3aWR0aDoxOHB4fS5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZXt3aWR0aDoyOHB4O2hlaWdodDozNHB4O3JpZ2h0Oi02cHg7dG9wOi0xN3B4fS5ub1VpLXR4dC1kaXItcnRsLm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGV7bGVmdDotMTdweDtyaWdodDphdXRvfS5ub1VpLXRhcmdldHtiYWNrZ3JvdW5kOiNGQUZBRkE7Ym9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyOjFweCBzb2xpZCAjRDNEM0QzO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4ICNGMEYwRjAsMCAzcHggNnB4IC01cHggI0JCQn0ubm9VaS1jb25uZWN0c3tib3JkZXItcmFkaXVzOjNweH0ubm9VaS1jb25uZWN0e2JhY2tncm91bmQ6IzNGQjhBRn0ubm9VaS1kcmFnZ2FibGV7Y3Vyc29yOmV3LXJlc2l6ZX0ubm9VaS12ZXJ0aWNhbCAubm9VaS1kcmFnZ2FibGV7Y3Vyc29yOm5zLXJlc2l6ZX0ubm9VaS1oYW5kbGV7Ym9yZGVyOjFweCBzb2xpZCAjRDlEOUQ5O2JvcmRlci1yYWRpdXM6M3B4O2JhY2tncm91bmQ6I0ZGRjtjdXJzb3I6ZGVmYXVsdDtib3gtc2hhZG93Omluc2V0IDAgMCAxcHggI0ZGRixpbnNldCAwIDFweCA3cHggI0VCRUJFQiwwIDNweCA2cHggLTNweCAjQkJCfS5ub1VpLWFjdGl2ZXtib3gtc2hhZG93Omluc2V0IDAgMCAxcHggI0ZGRixpbnNldCAwIDFweCA3cHggI0RERCwwIDNweCA2cHggLTNweCAjQkJCfS5ub1VpLWhhbmRsZTphZnRlciwubm9VaS1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6XCJcIjtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxNHB4O3dpZHRoOjFweDtiYWNrZ3JvdW5kOiNFOEU3RTY7bGVmdDoxNHB4O3RvcDo2cHh9Lm5vVWktaGFuZGxlOmFmdGVye2xlZnQ6MTdweH0ubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YWZ0ZXIsLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmJlZm9yZXt3aWR0aDoxNHB4O2hlaWdodDoxcHg7bGVmdDo2cHg7dG9wOjE0cHh9Lm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmFmdGVye3RvcDoxN3B4fVtkaXNhYmxlZF0gLm5vVWktY29ubmVjdHtiYWNrZ3JvdW5kOiNCOEI4Qjh9W2Rpc2FibGVkXSAubm9VaS1oYW5kbGUsW2Rpc2FibGVkXS5ub1VpLWhhbmRsZSxbZGlzYWJsZWRdLm5vVWktdGFyZ2V0e2N1cnNvcjpub3QtYWxsb3dlZH0ubm9VaS1waXBzLC5ub1VpLXBpcHMgKnstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lm5vVWktcGlwc3twb3NpdGlvbjphYnNvbHV0ZTtjb2xvcjojOTk5fS5ub1VpLXZhbHVle3Bvc2l0aW9uOmFic29sdXRlO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LWFsaWduOmNlbnRlcn0ubm9VaS12YWx1ZS1zdWJ7Y29sb3I6I2NjYztmb250LXNpemU6MTBweH0ubm9VaS1tYXJrZXJ7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDojQ0NDfS5ub1VpLW1hcmtlci1zdWJ7YmFja2dyb3VuZDojQUFBfS5ub1VpLW1hcmtlci1sYXJnZXtiYWNrZ3JvdW5kOiNBQUF9Lm5vVWktcGlwcy1ob3Jpem9udGFse3BhZGRpbmc6MTBweCAwO2hlaWdodDo4MHB4O3RvcDoxMDAlO2xlZnQ6MDt3aWR0aDoxMDAlfS5ub1VpLXZhbHVlLWhvcml6b250YWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsNTAlKX0ubm9VaS1ydGwgLm5vVWktdmFsdWUtaG9yaXpvbnRhbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoNTAlLDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg1MCUsNTAlKX0ubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlcnttYXJnaW4tbGVmdDotMXB4O3dpZHRoOjJweDtoZWlnaHQ6NXB4fS5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyLXN1YntoZWlnaHQ6MTBweH0ubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlci1sYXJnZXtoZWlnaHQ6MTVweH0ubm9VaS1waXBzLXZlcnRpY2Fse3BhZGRpbmc6MCAxMHB4O2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MTAwJX0ubm9VaS12YWx1ZS12ZXJ0aWNhbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTUwJSk7cGFkZGluZy1sZWZ0OjI1cHh9Lm5vVWktcnRsIC5ub1VpLXZhbHVlLXZlcnRpY2Fsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDUwJSl9Lm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2Vye3dpZHRoOjVweDtoZWlnaHQ6MnB4O21hcmdpbi10b3A6LTFweH0ubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXItc3Vie3dpZHRoOjEwcHh9Lm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2VyLWxhcmdle3dpZHRoOjE1cHh9Lm5vVWktdG9vbHRpcHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoxcHggc29saWQgI0Q5RDlEOTtib3JkZXItcmFkaXVzOjNweDtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzAwMDtwYWRkaW5nOjVweDt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXB9Lm5vVWktaG9yaXpvbnRhbCAubm9VaS10b29sdGlwey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwwKTtsZWZ0OjUwJTtib3R0b206MTIwJX0ubm9VaS12ZXJ0aWNhbCAubm9VaS10b29sdGlwey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCwtNTAlKTt0b3A6NTAlO3JpZ2h0OjEyMCV9XG4vKiBUaGlzIGlzIGEgY29tcGlsZWQgZmlsZSwgeW91IHNob3VsZCBiZSBlZGl0aW5nIHRoZSBmaWxlIGluIHRoZSB0ZW1wbGF0ZXMgZGlyZWN0b3J5ICovXG4ucGFjZSB7XG4gIC13ZWJraXQtcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucGFjZS1pbmFjdGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wYWNlIC5wYWNlLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogIzIyOTlkZDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAyMDAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG59XG5cbi8qIVxuICogRnVsbENhbGVuZGFyIHYzLjkuMFxuICogRG9jcyAmIExpY2Vuc2U6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL1xuICogKGMpIDIwMTggQWRhbSBTaGF3XG4gKi9cbi5mYyB7XG4gIGRpcmVjdGlvbjogbHRyO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5mYy1ydGwge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5ib2R5IC5mYyB7XG4gIC8qIGV4dHJhIHByZWNlZGVuY2UgdG8gb3ZlcmNvbWUganF1aSAqL1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1oaWdobGlnaHQge1xuICAvKiB3aGVuIHVzZXIgaXMgc2VsZWN0aW5nIGNlbGxzICovXG4gIGJhY2tncm91bmQ6ICNiY2U4ZjE7XG4gIG9wYWNpdHk6IC4zOyB9XG5cbi5mYy1iZ2V2ZW50IHtcbiAgLyogZGVmYXVsdCBsb29rIGZvciBiYWNrZ3JvdW5kIGV2ZW50cyAqL1xuICBiYWNrZ3JvdW5kOiAjOGZkZjgyO1xuICBvcGFjaXR5OiAuMzsgfVxuXG4uZmMtbm9uYnVzaW5lc3Mge1xuICAvKiBkZWZhdWx0IGxvb2sgZm9yIG5vbi1idXNpbmVzcy1ob3VycyBhcmVhcyAqL1xuICAvKiB3aWxsIGluaGVyaXQgLmZjLWJnZXZlbnQncyBzdHlsZXMgKi9cbiAgYmFja2dyb3VuZDogI2Q3ZDdkNzsgfVxuXG4vKiBCdXR0b25zIChzdHlsZWQgPGJ1dHRvbj4gdGFncywgbm9ybWFsaXplZCB0byB3b3JrIGNyb3NzLWJyb3dzZXIpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMgYnV0dG9uIHtcbiAgLyogZm9yY2UgaGVpZ2h0IHRvIGluY2x1ZGUgdGhlIGJvcmRlciBhbmQgcGFkZGluZyAqL1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogZGltZW5zaW9ucyAqL1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMi4xZW07XG4gIHBhZGRpbmc6IDAgLjZlbTtcbiAgLyogdGV4dCAmIGN1cnNvciAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogbm9ybWFsaXplICovXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKiBGaXJlZm94IGhhcyBhbiBhbm5veWluZyBpbm5lciBib3JkZXIgKi9cbi5mYyBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmZjLXN0YXRlLWRlZmF1bHQge1xuICAvKiBub24tdGhlbWUgKi9cbiAgYm9yZGVyOiAxcHggc29saWQ7IH1cblxuLmZjLXN0YXRlLWRlZmF1bHQuZmMtY29ybmVyLWxlZnQge1xuICAvKiBub24tdGhlbWUgKi9cbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IH1cblxuLmZjLXN0YXRlLWRlZmF1bHQuZmMtY29ybmVyLXJpZ2h0IHtcbiAgLyogbm9uLXRoZW1lICovXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IH1cblxuLyogaWNvbnMgaW4gYnV0dG9ucyAqL1xuLmZjIGJ1dHRvbiAuZmMtaWNvbiB7XG4gIC8qIG5vbi10aGVtZSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTAuMDVlbTtcbiAgLyogc2VlbXMgdG8gYmUgYSBnb29kIGFkanVzdG1lbnQgYWNyb3NzIGJyb3dzZXJzICovXG4gIG1hcmdpbjogMCAuMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qXG4gIGJ1dHRvbiBzdGF0ZXNcbiAgYm9ycm93ZWQgZnJvbSB0d2l0dGVyIGJvb3RzdHJhcCAoaHR0cDovL3R3aXR0ZXIuZ2l0aHViLmNvbS9ib290c3RyYXAvKVxuKi9cbi5mYy1zdGF0ZS1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmLCAjZTZlNmU2KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmZmZmZmYpLCB0bygjZTZlNmU2KSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiwgI2U2ZTZlNik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYsICNlNmU2ZTYpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmZmZmLCAjZTZlNmU2KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBib3JkZXItY29sb3I6ICNlNmU2ZTYgI2U2ZTZlNiAjYmZiZmJmO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtc2hhZG93OiAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiksIDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG5cbi5mYy1zdGF0ZS1ob3Zlcixcbi5mYy1zdGF0ZS1kb3duLFxuLmZjLXN0YXRlLWFjdGl2ZSxcbi5mYy1zdGF0ZS1kaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG5cbi5mYy1zdGF0ZS1ob3ZlciB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwLjFzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMXMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMXMgbGluZWFyOyB9XG5cbi5mYy1zdGF0ZS1kb3duLFxuLmZjLXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuXG4uZmMtc3RhdGUtZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjU7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLyogQnV0dG9ucyBHcm91cHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1idXR0b24tZ3JvdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLypcbmV2ZXJ5IGJ1dHRvbiB0aGF0IGlzIG5vdCBmaXJzdCBpbiBhIGJ1dHRvbiBncm91cCBzaG91bGQgc2Nvb3RjaCBvdmVyIG9uZSBwaXhlbCBhbmQgY292ZXIgdGhlXG5wcmV2aW91cyBidXR0b24ncyBib3JkZXIuLi5cbiovXG4uZmMgLmZjLWJ1dHRvbi1ncm91cCA+ICoge1xuICAvKiBleHRyYSBwcmVjZWRlbmNlIGIvYyBidXR0b25zIGhhdmUgbWFyZ2luIHNldCB0byB6ZXJvICovXG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMCAwIC0xcHg7IH1cblxuLmZjIC5mYy1idXR0b24tZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICAvKiBzYW1lICovXG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuXG4uZmMtcG9wb3ZlciAuZmMtaGVhZGVyIHtcbiAgLyogVE9ETzogYmUgbW9yZSBjb25zaXN0ZW50IHdpdGggZmMtaGVhZC9mYy1ib2R5ICovXG4gIHBhZGRpbmc6IDJweCA0cHg7IH1cblxuLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtdGl0bGUge1xuICBtYXJnaW46IDAgMnB4OyB9XG5cbi5mYy1wb3BvdmVyIC5mYy1oZWFkZXIgLmZjLWNsb3NlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5mYy1sdHIgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtdGl0bGUsXG4uZmMtcnRsIC5mYy1wb3BvdmVyIC5mYy1oZWFkZXIgLmZjLWNsb3NlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmZjLXJ0bCAuZmMtcG9wb3ZlciAuZmMtaGVhZGVyIC5mYy10aXRsZSxcbi5mYy1sdHIgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTWlzYyBSZXVzYWJsZSBDb21wb25lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtZGl2aWRlciB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4OyB9XG5cbmhyLmZjLWRpdmlkZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDJweDtcbiAgLyogaGVpZ2h0IGlzIHVucmVsaWFibGUgYWNyb3NzIGJyb3dzZXJzLCBzbyB1c2UgcGFkZGluZyAqL1xuICBib3JkZXItd2lkdGg6IDFweCAwOyB9XG5cbi5mYy1jbGVhciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5mYy1iZyxcbi5mYy1iZ2V2ZW50LXNrZWxldG9uLFxuLmZjLWhpZ2hsaWdodC1za2VsZXRvbixcbi5mYy1oZWxwZXItc2tlbGV0b24ge1xuICAvKiB0aGVzZSBlbGVtZW50IHNob3VsZCBhbHdheXMgY2xpbmcgdG8gdG9wLWxlZnQvcmlnaHQgY29ybmVycyAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLmZjLWJnIHtcbiAgYm90dG9tOiAwO1xuICAvKiBzdHJlY2ggYmcgdG8gYm90dG9tIGVkZ2UgKi8gfVxuXG4uZmMtYmcgdGFibGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8qIHN0cmVjaCBiZyB0byBib3R0b20gZWRnZSAqLyB9XG5cbi8qIFRhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIGZpeCBzY3JvbGxiYXIgaXNzdWUgaW4gZmlyZWZveCAqL1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIG5vcm1hbGl6ZSBjcm9zcy1icm93c2VyICovIH1cblxuLmZjIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5mYyB0aCxcbi5mYyB0ZCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbi5mYyB0ZC5mYy10b2RheSB7XG4gIGJvcmRlci1zdHlsZTogZG91YmxlO1xuICAvKiBvdmVyY29tZSBuZWlnaGJvcmluZyBib3JkZXJzICovIH1cblxuLyogSW50ZXJuYWwgTmF2IExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5hW2RhdGEtZ290b10ge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYVtkYXRhLWdvdG9dOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyogRmFrZSBUYWJsZSBSb3dzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMgLmZjLXJvdyB7XG4gIC8qIGV4dHJhIHByZWNlZGVuY2UgdG8gb3ZlcmNvbWUgdGhlbWVzIHcvIC51aS13aWRnZXQtY29udGVudCBmb3JjaW5nIGEgMXB4IGJvcmRlciAqL1xuICAvKiBubyB2aXNpYmxlIGJvcmRlciBieSBkZWZhdWx0LiBidXQgbWFrZSBhdmFpbGFibGUgaWYgbmVlZCBiZSAoc2Nyb2xsYmFyIHdpZHRoIGNvbXBlbnNhdGlvbikgKi9cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwOyB9XG5cbi5mYy1yb3cgdGFibGUge1xuICAvKiBkb24ndCBwdXQgbGVmdC9yaWdodCBib3JkZXIgb24gYW55dGhpbmcgd2l0aGluIGEgZmFrZSByb3cuXG4gICAgIHRoZSBvdXRlciB0Ym9keSB3aWxsIHdvcnJ5IGFib3V0IHRoaXMgKi9cbiAgYm9yZGVyLWxlZnQ6IDAgaGlkZGVuIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAgaGlkZGVuIHRyYW5zcGFyZW50O1xuICAvKiBubyBib3R0b20gYm9yZGVycyBvbiByb3dzICovXG4gIGJvcmRlci1ib3R0b206IDAgaGlkZGVuIHRyYW5zcGFyZW50OyB9XG5cbi5mYy1yb3c6Zmlyc3QtY2hpbGQgdGFibGUge1xuICBib3JkZXItdG9wOiAwIGhpZGRlbiB0cmFuc3BhcmVudDtcbiAgLyogbm8gdG9wIGJvcmRlciBvbiBmaXJzdCByb3cgKi8gfVxuXG4vKiBEYXkgUm93ICh1c2VkIHdpdGhpbiB0aGUgaGVhZGVyIGFuZCB0aGUgRGF5R3JpZClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZjLXJvdyAuZmMtYmcge1xuICB6LWluZGV4OiAxOyB9XG5cbi8qIGhpZ2hsaWdodGluZyBjZWxscyAmIGJhY2tncm91bmQgZXZlbnQgc2tlbGV0b24gKi9cbi5mYy1yb3cgLmZjLWJnZXZlbnQtc2tlbGV0b24sXG4uZmMtcm93IC5mYy1oaWdobGlnaHQtc2tlbGV0b24ge1xuICBib3R0b206IDA7XG4gIC8qIHN0cmV0Y2ggc2tlbGV0b24gdG8gYm90dG9tIG9mIHJvdyAqLyB9XG5cbi5mYy1yb3cgLmZjLWJnZXZlbnQtc2tlbGV0b24gdGFibGUsXG4uZmMtcm93IC5mYy1oaWdobGlnaHQtc2tlbGV0b24gdGFibGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8qIHN0cmV0Y2ggc2tlbGV0b24gdG8gYm90dG9tIG9mIHJvdyAqLyB9XG5cbi5mYy1yb3cgLmZjLWhpZ2hsaWdodC1za2VsZXRvbiB0ZCxcbi5mYy1yb3cgLmZjLWJnZXZlbnQtc2tlbGV0b24gdGQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5mYy1yb3cgLmZjLWJnZXZlbnQtc2tlbGV0b24ge1xuICB6LWluZGV4OiAyOyB9XG5cbi5mYy1yb3cgLmZjLWhpZ2hsaWdodC1za2VsZXRvbiB7XG4gIHotaW5kZXg6IDM7IH1cblxuLypcbnJvdyBjb250ZW50ICh3aGljaCBjb250YWlucyBkYXkvd2VlayBudW1iZXJzIGFuZCBldmVudHMpIGFzIHdlbGwgYXMgXCJoZWxwZXJcIiAod2hpY2ggY29udGFpbnNcbnRlbXBvcmFyeSByZW5kZXJlZCBldmVudHMpLlxuKi9cbi5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDQ7XG4gIHBhZGRpbmctYm90dG9tOiAycHg7XG4gIC8qIG1hdGNoZXMgdGhlIHNwYWNlIGFib3ZlIHRoZSBldmVudHMgKi8gfVxuXG4uZmMtcm93IC5mYy1oZWxwZXItc2tlbGV0b24ge1xuICB6LWluZGV4OiA1OyB9XG5cbi5mYyAuZmMtcm93IC5mYy1jb250ZW50LXNrZWxldG9uIHRhYmxlLFxuLmZjIC5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24gdGQsXG4uZmMgLmZjLXJvdyAuZmMtaGVscGVyLXNrZWxldG9uIHRkIHtcbiAgLyogc2VlLXRocm91Z2ggdG8gdGhlIGJhY2tncm91bmQgYmVsb3cgKi9cbiAgLyogZXh0cmEgcHJlY2VkZW5jZSB0byBwcmV2ZW50IHRoZW1lLXByb3ZpZGVkIGJhY2tncm91bmRzICovXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC8qIGluIGNhc2UgPHRkPnMgYXJlIGdsb2JhbGx5IHN0eWxlZCAqL1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24gdGQsXG4uZmMtcm93IC5mYy1oZWxwZXItc2tlbGV0b24gdGQge1xuICAvKiBkb24ndCBwdXQgYSBib3JkZXIgYmV0d2VlbiBldmVudHMgYW5kL29yIHRoZSBkYXkgbnVtYmVyICovXG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuLmZjLXJvdyAuZmMtY29udGVudC1za2VsZXRvbiB0Ym9keSB0ZCxcbi5mYy1yb3cgLmZjLWhlbHBlci1za2VsZXRvbiB0Ym9keSB0ZCB7XG4gIC8qIGRvbid0IHB1dCBhIGJvcmRlciBiZXR3ZWVuIGV2ZW50IGNlbGxzICovXG4gIGJvcmRlci10b3A6IDA7IH1cblxuLyogU2Nyb2xsaW5nIENvbnRhaW5lclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXNjcm9sbGVyIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbi8qIFRPRE86IG1vdmUgdG8gYWdlbmRhL2Jhc2ljICovXG4uZmMtc2Nyb2xsZXIgPiAuZmMtZGF5LWdyaWQsXG4uZmMtc2Nyb2xsZXIgPiAuZmMtdGltZS1ncmlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiByZS1zY29wZSBhbGwgcG9zaXRpb25zICovXG4gIHdpZHRoOiAxMDAlO1xuICAvKiBoYWNrIHRvIGZvcmNlIHJlLXNpemluZyB0aGlzIGlubmVyIGVsZW1lbnQgd2hlbiBzY3JvbGxiYXJzIGFwcGVhci9kaXNhcHBlYXIgKi8gfVxuXG4vKiBHbG9iYWwgRXZlbnQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtZXZlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIGZvciByZXNpemUgaGFuZGxlIGFuZCBvdGhlciBpbm5lciBwb3NpdGlvbmluZyAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgLyogbWFrZSB0aGUgPGE+IHRhZyBibG9jayAqL1xuICBmb250LXNpemU6IC44NWVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYTg3YWQ7XG4gIC8qIGRlZmF1bHQgQk9SREVSIGNvbG9yICovIH1cblxuLmZjLWV2ZW50LFxuLmZjLWV2ZW50LWRvdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTg3YWQ7XG4gIC8qIGRlZmF1bHQgQkFDS0dST1VORCBjb2xvciAqLyB9XG5cbi5mYy1ldmVudCxcbi5mYy1ldmVudDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICAvKiBkZWZhdWx0IFRFWFQgY29sb3IgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAvKiBpZiA8YT4gaGFzIGFuIGhyZWYgKi8gfVxuXG4uZmMtZXZlbnRbaHJlZl0sXG4uZmMtZXZlbnQuZmMtZHJhZ2dhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiBnaXZlIGV2ZW50cyB3aXRoIGxpbmtzIGFuZCBkcmFnZ2FibGUgZXZlbnRzIGEgaGFuZCBtb3VzZSBwb2ludGVyICovIH1cblxuLmZjLW5vdC1hbGxvd2VkLFxuLmZjLW5vdC1hbGxvd2VkIC5mYy1ldmVudCB7XG4gIC8qIHRvIG92ZXJyaWRlIGFuIGV2ZW50J3MgY3VzdG9tIGN1cnNvciAqL1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5mYy1ldmVudCAuZmMtYmcge1xuICAvKiB0aGUgZ2VuZXJpYyAuZmMtYmcgYWxyZWFkeSBkb2VzIHBvc2l0aW9uICovXG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG9wYWNpdHk6IC4yNTsgfVxuXG4uZmMtZXZlbnQgLmZjLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLyogcmVzaXplciAoY3Vyc29yIEFORCB0b3VjaCBkZXZpY2VzKSAqL1xuLmZjLWV2ZW50IC5mYy1yZXNpemVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0OyB9XG5cbi8qIHJlc2l6ZXIgKHRvdWNoIGRldmljZXMpICovXG4uZmMtZXZlbnQgLmZjLXJlc2l6ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mYy1ldmVudC5mYy1hbGxvdy1tb3VzZS1yZXNpemUgLmZjLXJlc2l6ZXIsXG4uZmMtZXZlbnQuZmMtc2VsZWN0ZWQgLmZjLXJlc2l6ZXIge1xuICAvKiBvbmx5IHNob3cgd2hlbiBob3ZlcmluZyBvciBzZWxlY3RlZCAod2l0aCB0b3VjaCkgKi9cbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogaGl0IGFyZWEgKi9cbi5mYy1ldmVudC5mYy1zZWxlY3RlZCAuZmMtcmVzaXplcjpiZWZvcmUge1xuICAvKiA0MHg0MCB0b3VjaCBhcmVhICovXG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgLyogdXNlciBvZiB0aGlzIHV0aWwgY2FuIHNjb3BlIHdpdGhpbiBhIGxvd2VyIHotaW5kZXggKi9cbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tdG9wOiAtMjBweDsgfVxuXG4vKiBFdmVudCBTZWxlY3Rpb24gKG9ubHkgZm9yIHRvdWNoIGRldmljZXMpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtZXZlbnQuZmMtc2VsZWN0ZWQge1xuICB6LWluZGV4OiA5OTk5ICFpbXBvcnRhbnQ7XG4gIC8qIG92ZXJjb21lcyBpbmxpbmUgei1pbmRleCAqL1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5mYy1ldmVudC5mYy1zZWxlY3RlZC5mYy1kcmFnZ2luZyB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLyogSG9yaXpvbnRhbCBFdmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIGJpZ2dlciB0b3VjaCBhcmVhIHdoZW4gc2VsZWN0ZWQgKi9cbi5mYy1oLWV2ZW50LmZjLXNlbGVjdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMztcbiAgLyogYmVsb3cgcmVzaXplcnMgKi9cbiAgdG9wOiAtMTBweDtcbiAgYm90dG9tOiAtMTBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLyogZXZlbnRzIHRoYXQgYXJlIGNvbnRpbnVpbmcgdG8vZnJvbSBhbm90aGVyIHdlZWsuIGtpbGwgcm91bmRlZCBjb3JuZXJzIGFuZCBidXR0IHVwIGFnYWluc3QgZWRnZSAqL1xuLmZjLWx0ciAuZmMtaC1ldmVudC5mYy1ub3Qtc3RhcnQsXG4uZmMtcnRsIC5mYy1oLWV2ZW50LmZjLW5vdC1lbmQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIHBhZGRpbmctbGVmdDogMXB4O1xuICAvKiByZXBsYWNlIHRoZSBib3JkZXIgd2l0aCBwYWRkaW5nICovXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLmZjLWx0ciAuZmMtaC1ldmVudC5mYy1ub3QtZW5kLFxuLmZjLXJ0bCAuZmMtaC1ldmVudC5mYy1ub3Qtc3RhcnQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgcGFkZGluZy1yaWdodDogMXB4O1xuICAvKiByZXBsYWNlIHRoZSBib3JkZXIgd2l0aCBwYWRkaW5nICovXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4vKiByZXNpemVyIChjdXJzb3IgQU5EIHRvdWNoIGRldmljZXMpICovXG4vKiBsZWZ0IHJlc2l6ZXIgICovXG4uZmMtbHRyIC5mYy1oLWV2ZW50IC5mYy1zdGFydC1yZXNpemVyLFxuLmZjLXJ0bCAuZmMtaC1ldmVudCAuZmMtZW5kLXJlc2l6ZXIge1xuICBjdXJzb3I6IHctcmVzaXplO1xuICBsZWZ0OiAtMXB4O1xuICAvKiBvdmVyY29tZSBib3JkZXIgKi8gfVxuXG4vKiByaWdodCByZXNpemVyICovXG4uZmMtbHRyIC5mYy1oLWV2ZW50IC5mYy1lbmQtcmVzaXplcixcbi5mYy1ydGwgLmZjLWgtZXZlbnQgLmZjLXN0YXJ0LXJlc2l6ZXIge1xuICBjdXJzb3I6IGUtcmVzaXplO1xuICByaWdodDogLTFweDtcbiAgLyogb3ZlcmNvbWUgYm9yZGVyICovIH1cblxuLyogcmVzaXplciAobW91c2UgZGV2aWNlcykgKi9cbi5mYy1oLWV2ZW50LmZjLWFsbG93LW1vdXNlLXJlc2l6ZSAuZmMtcmVzaXplciB7XG4gIHdpZHRoOiA3cHg7XG4gIHRvcDogLTFweDtcbiAgLyogb3ZlcmNvbWUgdG9wIGJvcmRlciAqL1xuICBib3R0b206IC0xcHg7XG4gIC8qIG92ZXJjb21lIGJvdHRvbSBib3JkZXIgKi8gfVxuXG4vKiByZXNpemVyICh0b3VjaCBkZXZpY2VzKSAqL1xuLmZjLWgtZXZlbnQuZmMtc2VsZWN0ZWQgLmZjLXJlc2l6ZXIge1xuICAvKiA4eDggbGl0dGxlIGRvdCAqL1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAvKiB2ZXJ0aWNhbGx5IGNlbnRlciAqL1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTRweDsgfVxuXG4vKiBsZWZ0IHJlc2l6ZXIgICovXG4uZmMtbHRyIC5mYy1oLWV2ZW50LmZjLXNlbGVjdGVkIC5mYy1zdGFydC1yZXNpemVyLFxuLmZjLXJ0bCAuZmMtaC1ldmVudC5mYy1zZWxlY3RlZCAuZmMtZW5kLXJlc2l6ZXIge1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgLyogY2VudGVycyB0aGUgOHg4IGRvdCBvbiB0aGUgbGVmdCBlZGdlICovIH1cblxuLyogcmlnaHQgcmVzaXplciAqL1xuLmZjLWx0ciAuZmMtaC1ldmVudC5mYy1zZWxlY3RlZCAuZmMtZW5kLXJlc2l6ZXIsXG4uZmMtcnRsIC5mYy1oLWV2ZW50LmZjLXNlbGVjdGVkIC5mYy1zdGFydC1yZXNpemVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xuICAvKiBjZW50ZXJzIHRoZSA4eDggZG90IG9uIHRoZSByaWdodCBlZGdlICovIH1cblxuLyogRGF5R3JpZCBldmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbldlIHVzZSB0aGUgZnVsbCBcImZjLWRheS1ncmlkLWV2ZW50XCIgY2xhc3MgaW5zdGVhZCBvZiB1c2luZyBkZXNjZW5kYW50cyBiZWNhdXNlIHRoZSBldmVudCB3b24ndFxuYmUgYSBkZXNjZW5kYW50IG9mIHRoZSBncmlkIHdoZW4gaXQgaXMgYmVpbmcgZHJhZ2dlZC5cbiovXG4uZmMtZGF5LWdyaWQtZXZlbnQge1xuICBtYXJnaW46IDFweCAycHggMDtcbiAgLyogc3BhY2luZyBiZXR3ZWVuIGV2ZW50cyBhbmQgZWRnZXMgKi9cbiAgcGFkZGluZzogMCAxcHg7IH1cblxudHI6Zmlyc3QtY2hpbGQgPiB0ZCA+IC5mYy1kYXktZ3JpZC1ldmVudCB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgLyogYSBsaXR0bGUgYml0IG1vcmUgc3BhY2UgYmVmb3JlIHRoZSBmaXJzdCBldmVudCAqLyB9XG5cbi5mYy1kYXktZ3JpZC1ldmVudC5mYy1zZWxlY3RlZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgLyogc2FtZSB6LWluZGV4IGFzIGZjLWJnLCBiZWhpbmQgdGV4dCAqL1xuICAvKiBvdmVyY29tZSB0aGUgYm9yZGVycyAqL1xuICB0b3A6IC0xcHg7XG4gIHJpZ2h0OiAtMXB4O1xuICBib3R0b206IC0xcHg7XG4gIGxlZnQ6IC0xcHg7XG4gIC8qIGRhcmtlbmluZyBlZmZlY3QgKi9cbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogLjI1OyB9XG5cbi5mYy1kYXktZ3JpZC1ldmVudCAuZmMtY29udGVudCB7XG4gIC8qIGZvcmNlIGV2ZW50cyB0byBiZSBvbmUtbGluZSB0YWxsICovXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZjLWRheS1ncmlkLWV2ZW50IC5mYy10aW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogcmVzaXplciAoY3Vyc29yIGRldmljZXMpICovXG4vKiBsZWZ0IHJlc2l6ZXIgICovXG4uZmMtbHRyIC5mYy1kYXktZ3JpZC1ldmVudC5mYy1hbGxvdy1tb3VzZS1yZXNpemUgLmZjLXN0YXJ0LXJlc2l6ZXIsXG4uZmMtcnRsIC5mYy1kYXktZ3JpZC1ldmVudC5mYy1hbGxvdy1tb3VzZS1yZXNpemUgLmZjLWVuZC1yZXNpemVyIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gIC8qIHRvIHRoZSBkYXkgY2VsbCdzIGVkZ2UgKi8gfVxuXG4vKiByaWdodCByZXNpemVyICovXG4uZmMtbHRyIC5mYy1kYXktZ3JpZC1ldmVudC5mYy1hbGxvdy1tb3VzZS1yZXNpemUgLmZjLWVuZC1yZXNpemVyLFxuLmZjLXJ0bCAuZmMtZGF5LWdyaWQtZXZlbnQuZmMtYWxsb3ctbW91c2UtcmVzaXplIC5mYy1zdGFydC1yZXNpemVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMnB4O1xuICAvKiB0byB0aGUgZGF5IGNlbGwncyBlZGdlICovIH1cblxuLyogRXZlbnQgTGltaXRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFwibW9yZVwiIGxpbmsgdGhhdCByZXByZXNlbnRzIGhpZGRlbiBldmVudHMgKi9cbmEuZmMtbW9yZSB7XG4gIG1hcmdpbjogMXB4IDNweDtcbiAgZm9udC1zaXplOiAuODVlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYS5mYy1tb3JlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZjLWxpbWl0ZWQge1xuICAvKiByb3dzIGFuZCBjZWxscyB0aGF0IGFyZSBoaWRkZW4gYmVjYXVzZSBvZiBhIFwibW9yZVwiIGxpbmsgKi9cbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBwb3BvdmVyIHRoYXQgYXBwZWFycyB3aGVuIFwibW9yZVwiIGxpbmsgaXMgY2xpY2tlZCAqL1xuLmZjLWRheS1ncmlkIC5mYy1yb3cge1xuICB6LWluZGV4OiAxO1xuICAvKiBtYWtlIHRoZSBcIm1vcmVcIiBwb3BvdmVyIG9uZSBoaWdoZXIgdGhhbiB0aGlzICovIH1cblxuLmZjLW1vcmUtcG9wb3ZlciB7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAyMjBweDsgfVxuXG4uZmMtbW9yZS1wb3BvdmVyIC5mYy1ldmVudC1jb250YWluZXIge1xuICBwYWRkaW5nOiAxMHB4OyB9XG5cbi8qIE5vdyBJbmRpY2F0b3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1ub3ctaW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IDAgc29saWQgcmVkOyB9XG5cbi8qIFV0aWxpdGllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXVuc2VsZWN0YWJsZSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qXG5UT0RPOiBtb3JlIGRpc3RpbmN0aW9uIGJldHdlZW4gdGhpcyBmaWxlIGFuZCBjb21tb24uY3NzXG4qL1xuLyogQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdW50aGVtZWQgdGgsXG4uZmMtdW50aGVtZWQgdGQsXG4uZmMtdW50aGVtZWQgdGhlYWQsXG4uZmMtdW50aGVtZWQgdGJvZHksXG4uZmMtdW50aGVtZWQgLmZjLWRpdmlkZXIsXG4uZmMtdW50aGVtZWQgLmZjLXJvdyxcbi5mYy11bnRoZW1lZCAuZmMtY29udGVudCxcbi5mYy11bnRoZW1lZCAuZmMtcG9wb3Zlcixcbi5mYy11bnRoZW1lZCAuZmMtbGlzdC12aWV3LFxuLmZjLXVudGhlbWVkIC5mYy1saXN0LWhlYWRpbmcgdGQge1xuICBib3JkZXItY29sb3I6ICNkZGQ7IH1cblxuLmZjLXVudGhlbWVkIC5mYy1wb3BvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uZmMtdW50aGVtZWQgLmZjLWRpdmlkZXIsXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlcixcbi5mYy11bnRoZW1lZCAuZmMtbGlzdC1oZWFkaW5nIHRkIHtcbiAgYmFja2dyb3VuZDogI2VlZTsgfVxuXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICBjb2xvcjogIzY2NjsgfVxuXG4uZmMtdW50aGVtZWQgdGQuZmMtdG9kYXkge1xuICBiYWNrZ3JvdW5kOiAjZmNmOGUzOyB9XG5cbi5mYy11bnRoZW1lZCAuZmMtZGlzYWJsZWQtZGF5IHtcbiAgYmFja2dyb3VuZDogI2Q3ZDdkNztcbiAgb3BhY2l0eTogLjM7IH1cblxuLyogSWNvbnMgKGlubGluZSBlbGVtZW50cyB3aXRoIHN0eWxlZCB0ZXh0IHRoYXQgbW9jayBhcnJvdyBpY29ucylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1mYW1pbHk6IFwiQ291cmllciBOZXdcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICAvKiBkb24ndCBhbGxvdyBicm93c2VyIHRleHQtc2VsZWN0aW9uICovXG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qXG5BY2NlcHRhYmxlIGZvbnQtZmFtaWx5IG92ZXJyaWRlcyBmb3IgaW5kaXZpZHVhbCBpY29uczpcbiAgXCJBcmlhbFwiLCBzYW5zLXNlcmlmXG4gIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmXG5cbk5PVEU6IHVzZSBwZXJjZW50YWdlIGZvbnQgc2l6ZXMgb3IgZWxzZSBvbGQgSUUgY2hva2VzXG4qL1xuLmZjLWljb246YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZjLWljb24tbGVmdC1zaW5nbGUtYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjAzOVwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAyMDAlO1xuICB0b3A6IC03JTsgfVxuXG4uZmMtaWNvbi1yaWdodC1zaW5nbGUtYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjAzQVwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAyMDAlO1xuICB0b3A6IC03JTsgfVxuXG4uZmMtaWNvbi1sZWZ0LWRvdWJsZS1hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxBQlwiO1xuICBmb250LXNpemU6IDE2MCU7XG4gIHRvcDogLTclOyB9XG5cbi5mYy1pY29uLXJpZ2h0LWRvdWJsZS1hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxCQlwiO1xuICBmb250LXNpemU6IDE2MCU7XG4gIHRvcDogLTclOyB9XG5cbi5mYy1pY29uLWxlZnQtdHJpYW5nbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjVDNFwiO1xuICBmb250LXNpemU6IDEyNSU7XG4gIHRvcDogMyU7IH1cblxuLmZjLWljb24tcmlnaHQtdHJpYW5nbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjVCQVwiO1xuICBmb250LXNpemU6IDEyNSU7XG4gIHRvcDogMyU7IH1cblxuLmZjLWljb24tZG93bi10cmlhbmdsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFwyNUJDXCI7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgdG9wOiAyJTsgfVxuXG4uZmMtaWNvbi14OmFmdGVyIHtcbiAgY29udGVudDogXCJcXEQ3XCI7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgdG9wOiA2JTsgfVxuXG4vKiBQb3BvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIge1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICBmb250LXNpemU6IC45ZW07XG4gIG1hcmdpbi10b3A6IDJweDsgfVxuXG4vKiBMaXN0IFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy11bnRoZW1lZCAuZmMtbGlzdC1pdGVtOmhvdmVyIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuXG4vKiBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS13aWRnZXQgLmZjLWRpc2FibGVkLWRheSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLyogUG9wb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXBvcG92ZXIgPiAudWktd2lkZ2V0LWhlYWRlciArIC51aS13aWRnZXQtY29udGVudCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIC8qIHdoZXJlIHRoZXkgbWVldCwgbGV0IHRoZSBoZWFkZXIgaGF2ZSB0aGUgYm9yZGVyICovIH1cblxuLyogR2xvYmFsIEV2ZW50IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLXdpZGdldCAuZmMtZXZlbnQge1xuICAvKiBvdmVycG93ZXIganF1aSdzIHN0eWxlcyBvbiA8YT4gdGFncy4gVE9ETzogbW9yZSBEUlkgKi9cbiAgY29sb3I6ICNmZmY7XG4gIC8qIGRlZmF1bHQgVEVYVCBjb2xvciAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8qIGlmIDxhPiBoYXMgYW4gaHJlZiAqL1xuICAvKiB1bmRvIHVpLXdpZGdldC1oZWFkZXIgYm9sZCAqL1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi8qIFRpbWVHcmlkIGF4aXMgcnVubmluZyBkb3duIHRoZSBzaWRlIChmb3IgYm90aCB0aGUgYWxsLWRheSBhcmVhIGFuZCB0aGUgc2xvdCBhcmVhKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLXdpZGdldCB0ZC5mYy1heGlzIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLyogb3ZlcmNvbWUgYm9sZCAqLyB9XG5cbi8qIFRpbWVHcmlkIFNsYXRzIChsaW5lcyB0aGF0IHJ1biBob3Jpem9udGFsbHkpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdGltZS1ncmlkIC5mYy1zbGF0cyAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICAvKiBzZWUgdGhyb3VnaCB0byBmYy1iZyAqLyB9XG5cbi5mYy5mYy1ib290c3RyYXAzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmZjLmZjLWJvb3RzdHJhcDMgYVtkYXRhLWdvdG9dOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZjLWJvb3RzdHJhcDMgaHIuZmMtZGl2aWRlciB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDsgfVxuXG4uZmMtYm9vdHN0cmFwMyAuZmMtdG9kYXkuYWxlcnQge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1ib290c3RyYXAzIC5mYy1wb3BvdmVyIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMDsgfVxuXG4vKiBUaW1lR3JpZCBTbGF0cyAobGluZXMgdGhhdCBydW4gaG9yaXpvbnRhbGx5KVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLWJvb3RzdHJhcDMgLmZjLXRpbWUtZ3JpZCAuZmMtc2xhdHMgdGFibGUge1xuICAvKiBzb21lIHRoZW1lcyBoYXZlIGJhY2tncm91bmQgY29sb3IuIHNlZSB0aHJvdWdoIHRvIHNsYXRzICovXG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmZjLmZjLWJvb3RzdHJhcDQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uZmMuZmMtYm9vdHN0cmFwNCBhW2RhdGEtZ290b106aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uZmMtYm9vdHN0cmFwNCBoci5mYy1kaXZpZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyB9XG5cbi5mYy1ib290c3RyYXA0IC5mYy10b2RheS5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmZjLWJvb3RzdHJhcDQgYS5mYy1ldmVudDpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uZmMtYm9vdHN0cmFwNCAuZmMtcG9wb3Zlci5jYXJkIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi8qIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1ib290c3RyYXA0IC5mYy1wb3BvdmVyIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qIFRpbWVHcmlkIFNsYXRzIChsaW5lcyB0aGF0IHJ1biBob3Jpem9udGFsbHkpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtYm9vdHN0cmFwNCAuZmMtdGltZS1ncmlkIC5mYy1zbGF0cyB0YWJsZSB7XG4gIC8qIHNvbWUgdGhlbWVzIGhhdmUgYmFja2dyb3VuZCBjb2xvci4gc2VlIHRocm91Z2ggdG8gc2xhdHMgKi9cbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4vKiBUb29sYmFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdG9vbGJhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmMtdG9vbGJhci5mYy1oZWFkZXItdG9vbGJhciB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4uZmMtdG9vbGJhci5mYy1mb290ZXItdG9vbGJhciB7XG4gIG1hcmdpbi10b3A6IDFlbTsgfVxuXG4uZmMtdG9vbGJhciAuZmMtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5mYy10b29sYmFyIC5mYy1yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uZmMtdG9vbGJhciAuZmMtY2VudGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qIHRoZSB0aGluZ3Mgd2l0aGluIGVhY2ggbGVmdC9yaWdodC9jZW50ZXIgc2VjdGlvbiAqL1xuLmZjIC5mYy10b29sYmFyID4gKiA+ICoge1xuICAvKiBleHRyYSBwcmVjZWRlbmNlIHRvIG92ZXJyaWRlIGJ1dHRvbiBib3JkZXIgbWFyZ2lucyAqL1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IC43NWVtOyB9XG5cbi8qIHRoZSBmaXJzdCB0aGluZyB3aXRoaW4gZWFjaCBsZWZ0L2NlbnRlci9yaWdodCBzZWN0aW9uICovXG4uZmMgLmZjLXRvb2xiYXIgPiAqID4gOmZpcnN0LWNoaWxkIHtcbiAgLyogZXh0cmEgcHJlY2VkZW5jZSB0byBvdmVycmlkZSBidXR0b24gYm9yZGVyIG1hcmdpbnMgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyogdGl0bGUgdGV4dCAqL1xuLmZjLXRvb2xiYXIgaDIge1xuICBtYXJnaW46IDA7IH1cblxuLyogYnV0dG9uIGxheWVyaW5nIChmb3IgYm9yZGVyIHByZWNlZGVuY2UpICovXG4uZmMtdG9vbGJhciBidXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZjLXRvb2xiYXIgLmZjLXN0YXRlLWhvdmVyLFxuLmZjLXRvb2xiYXIgLnVpLXN0YXRlLWhvdmVyIHtcbiAgei1pbmRleDogMjsgfVxuXG4uZmMtdG9vbGJhciAuZmMtc3RhdGUtZG93biB7XG4gIHotaW5kZXg6IDM7IH1cblxuLmZjLXRvb2xiYXIgLmZjLXN0YXRlLWFjdGl2ZSxcbi5mYy10b29sYmFyIC51aS1zdGF0ZS1hY3RpdmUge1xuICB6LWluZGV4OiA0OyB9XG5cbi5mYy10b29sYmFyIGJ1dHRvbjpmb2N1cyB7XG4gIHotaW5kZXg6IDU7IH1cblxuLyogVmlldyBTdHJ1Y3R1cmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIHVuZG8gdHdpdHRlciBib290c3RyYXAncyBib3gtc2l6aW5nIHJ1bGVzLiBub3JtYWxpemVzIHBvc2l0aW9uaW5nIHRlY2huaXF1ZXMgKi9cbi8qIGRvbid0IGRvIHRoaXMgZm9yIHRoZSB0b29sYmFyIGJlY2F1c2Ugd2UnbGwgd2FudCBib290c3RyYXAgdG8gc3R5bGUgdGhvc2UgYnV0dG9ucyBhcyBzb21lIHB0ICovXG4uZmMtdmlldy1jb250YWluZXIgKixcbi5mYy12aWV3LWNvbnRhaW5lciAqOmJlZm9yZSxcbi5mYy12aWV3LWNvbnRhaW5lciAqOmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuLmZjLXZpZXcsXG4uZmMtdmlldyA+IHRhYmxlIHtcbiAgLyogc28gZHJhZ2dlZCBlbGVtZW50cyBjYW4gYmUgYWJvdmUgdGhlIHZpZXcncyBtYWluIGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi8qIEJhc2ljVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogZGF5IHJvdyBzdHJ1Y3R1cmUgKi9cbi5mYy1iYXNpY1dlZWstdmlldyAuZmMtY29udGVudC1za2VsZXRvbixcbi5mYy1iYXNpY0RheS12aWV3IC5mYy1jb250ZW50LXNrZWxldG9uIHtcbiAgLyogdGhlcmUgbWF5IGJlIHdlZWsgbnVtYmVycyBpbiB0aGVzZSB2aWV3cywgc28gbm8gcGFkZGluZy10b3AgKi9cbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgLyogZW5zdXJlIGEgc3BhY2UgYXQgYm90dG9tIG9mIGNlbGwgZm9yIHVzZXIgc2VsZWN0aW5nL2NsaWNraW5nICovIH1cblxuLmZjLWJhc2ljLXZpZXcgLmZjLWJvZHkgLmZjLXJvdyB7XG4gIG1pbi1oZWlnaHQ6IDRlbTtcbiAgLyogZW5zdXJlIHRoYXQgYWxsIHJvd3MgYXJlIGF0IGxlYXN0IHRoaXMgdGFsbCAqLyB9XG5cbi8qIGEgXCJyaWdpZFwiIHJvdyB3aWxsIHRha2UgdXAgYSBjb25zdGFudCBhbW91bnQgb2YgaGVpZ2h0IGJlY2F1c2UgY29udGVudC1za2VsZXRvbiBpcyBhYnNvbHV0ZSAqL1xuLmZjLXJvdy5mYy1yaWdpZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZjLXJvdy5mYy1yaWdpZCAuZmMtY29udGVudC1za2VsZXRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuXG4vKiB3ZWVrIGFuZCBkYXkgbnVtYmVyIHN0eWxpbmcgKi9cbi5mYy1kYXktdG9wLmZjLW90aGVyLW1vbnRoIHtcbiAgb3BhY2l0eTogMC4zOyB9XG5cbi5mYy1iYXNpYy12aWV3IC5mYy13ZWVrLW51bWJlcixcbi5mYy1iYXNpYy12aWV3IC5mYy1kYXktbnVtYmVyIHtcbiAgcGFkZGluZzogMnB4OyB9XG5cbi5mYy1iYXNpYy12aWV3IHRoLmZjLXdlZWstbnVtYmVyLFxuLmZjLWJhc2ljLXZpZXcgdGguZmMtZGF5LW51bWJlciB7XG4gIHBhZGRpbmc6IDAgMnB4O1xuICAvKiBjb2x1bW4gaGVhZGVycyBjYW4ndCBoYXZlIGFzIG11Y2ggdiBzcGFjZSAqLyB9XG5cbi5mYy1sdHIgLmZjLWJhc2ljLXZpZXcgLmZjLWRheS10b3AgLmZjLWRheS1udW1iZXIge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmZjLXJ0bCAuZmMtYmFzaWMtdmlldyAuZmMtZGF5LXRvcCAuZmMtZGF5LW51bWJlciB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5mYy1sdHIgLmZjLWJhc2ljLXZpZXcgLmZjLWRheS10b3AgLmZjLXdlZWstbnVtYmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAzcHggMDsgfVxuXG4uZmMtcnRsIC5mYy1iYXNpYy12aWV3IC5mYy1kYXktdG9wIC5mYy13ZWVrLW51bWJlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgM3B4OyB9XG5cbi5mYy1iYXNpYy12aWV3IC5mYy1kYXktdG9wIC5mYy13ZWVrLW51bWJlciB7XG4gIG1pbi13aWR0aDogMS41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY29sb3I6ICM4MDgwODA7IH1cblxuLyogd2hlbiB3ZWVrL2RheSBudW1iZXIgaGF2ZSBvd24gY29sdW1uICovXG4uZmMtYmFzaWMtdmlldyB0ZC5mYy13ZWVrLW51bWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmMtYmFzaWMtdmlldyB0ZC5mYy13ZWVrLW51bWJlciA+ICoge1xuICAvKiB3b3JrIGFyb3VuZCB0aGUgd2F5IHdlIGRvIGNvbHVtbiByZXNpemluZyBhbmQgZW5zdXJlIGEgbWluaW11bSB3aWR0aCAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMS4yNWVtOyB9XG5cbi8qIEFnZW5kYVZpZXcgYWxsLWRheSBhcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtYWdlbmRhLXZpZXcgLmZjLWRheS1ncmlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICAvKiBzbyB0aGUgXCJtb3JlLi5cIiBwb3BvdmVyIHdpbGwgYmUgb3ZlciB0aGUgdGltZSBncmlkICovIH1cblxuLmZjLWFnZW5kYS12aWV3IC5mYy1kYXktZ3JpZCAuZmMtcm93IHtcbiAgbWluLWhlaWdodDogM2VtO1xuICAvKiBhbGwtZGF5IHNlY3Rpb24gd2lsbCBuZXZlciBnZXQgc2hvcnRlciB0aGFuIHRoaXMgKi8gfVxuXG4uZmMtYWdlbmRhLXZpZXcgLmZjLWRheS1ncmlkIC5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAvKiBnaXZlIHNwYWNlIHVuZGVybmVhdGggZXZlbnRzIGZvciBjbGlja2luZy9zZWxlY3RpbmcgZGF5cyAqLyB9XG5cbi8qIFRpbWVHcmlkIGF4aXMgcnVubmluZyBkb3duIHRoZSBzaWRlIChmb3IgYm90aCB0aGUgYWxsLWRheSBhcmVhIGFuZCB0aGUgc2xvdCBhcmVhKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjIC5mYy1heGlzIHtcbiAgLyogLmZjIHRvIG92ZXJjb21lIGRlZmF1bHQgY2VsbCBzdHlsZXMgKi9cbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZzogMCA0cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmZjLWx0ciAuZmMtYXhpcyB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5mYy1ydGwgLmZjLWF4aXMge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qIFRpbWVHcmlkIFN0cnVjdHVyZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXRpbWUtZ3JpZC1jb250YWluZXIsXG4uZmMtdGltZS1ncmlkIHtcbiAgLyogc28gc2xhdHMvYmcvY29udGVudC9ldGMgcG9zaXRpb25zIGdldCBzY29wZWQgd2l0aGluIGhlcmUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5mYy10aW1lLWdyaWQge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAvKiBzbyBpZiBoZWlnaHQgc2V0dGluZyBpcyAnYXV0bycsIC5mYy1iZyBzdHJldGNoZXMgdG8gZmlsbCBoZWlnaHQgKi8gfVxuXG4uZmMtdGltZS1ncmlkIHRhYmxlIHtcbiAgLyogZG9uJ3QgcHV0IG91dGVyIGJvcmRlcnMgb24gc2xhdHMvYmcvY29udGVudC9ldGMgKi9cbiAgYm9yZGVyOiAwIGhpZGRlbiB0cmFuc3BhcmVudDsgfVxuXG4uZmMtdGltZS1ncmlkID4gLmZjLWJnIHtcbiAgei1pbmRleDogMTsgfVxuXG4uZmMtdGltZS1ncmlkIC5mYy1zbGF0cyxcbi5mYy10aW1lLWdyaWQgPiBociB7XG4gIC8qIHRoZSA8aHI+IEFnZW5kYVZpZXcgaW5qZWN0cyB3aGVuIGdyaWQgaXMgc2hvcnRlciB0aGFuIHNjcm9sbGVyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjsgfVxuXG4uZmMtdGltZS1ncmlkIC5mYy1jb250ZW50LWNvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogYmVjYXVzZSBub3ctaW5kaWNhdG9yIGxpdmVzIGRpcmVjdGx5IGluc2lkZSAqLyB9XG5cbi5mYy10aW1lLWdyaWQgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDM7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLyogZGl2cyB3aXRoaW4gYSBjZWxsIHdpdGhpbiB0aGUgZmMtY29udGVudC1za2VsZXRvbiAqL1xuLmZjLXRpbWUtZ3JpZCAuZmMtYnVzaW5lc3MtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5mYy10aW1lLWdyaWQgLmZjLWJnZXZlbnQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG5cbi5mYy10aW1lLWdyaWQgLmZjLWhpZ2hsaWdodC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7IH1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtZXZlbnQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0OyB9XG5cbi5mYy10aW1lLWdyaWQgLmZjLW5vdy1pbmRpY2F0b3ItbGluZSB7XG4gIHotaW5kZXg6IDU7IH1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtaGVscGVyLWNvbnRhaW5lciB7XG4gIC8qIGFsc28gaXMgZmMtZXZlbnQtY29udGFpbmVyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNjsgfVxuXG4vKiBUaW1lR3JpZCBTbGF0cyAobGluZXMgdGhhdCBydW4gaG9yaXpvbnRhbGx5KVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXRpbWUtZ3JpZCAuZmMtc2xhdHMgdGQge1xuICBoZWlnaHQ6IDEuNWVtO1xuICBib3JkZXItYm90dG9tOiAwO1xuICAvKiBlYWNoIGNlbGwgaXMgcmVzcG9uc2libGUgZm9yIGl0cyB0b3AgYm9yZGVyICovIH1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtc2xhdHMgLmZjLW1pbm9yIHRkIHtcbiAgYm9yZGVyLXRvcC1zdHlsZTogZG90dGVkOyB9XG5cbi8qIFRpbWVHcmlkIEhpZ2hsaWdodGluZyBTbG90c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXRpbWUtZ3JpZCAuZmMtaGlnaGxpZ2h0LWNvbnRhaW5lciB7XG4gIC8qIGEgZGl2IHdpdGhpbiBhIGNlbGwgd2l0aGluIHRoZSBmYy1oaWdobGlnaHQtc2tlbGV0b24gKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBzY29wZXMgdGhlIGxlZnQvcmlnaHQgb2YgdGhlIGZjLWhpZ2hsaWdodCB0byBiZSBpbiB0aGUgY29sdW1uICovIH1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtaGlnaGxpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgLyogdG9wIGFuZCBib3R0b20gd2lsbCBiZSBpbiBieSBKUyAqLyB9XG5cbi8qIFRpbWVHcmlkIEV2ZW50IENvbnRhaW5tZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtbHRyIC5mYy10aW1lLWdyaWQgLmZjLWV2ZW50LWNvbnRhaW5lciB7XG4gIC8qIHNwYWNlIG9uIHRoZSBzaWRlcyBvZiBldmVudHMgZm9yIExUUiAoZGVmYXVsdCkgKi9cbiAgbWFyZ2luOiAwIDIuNSUgMCAycHg7IH1cblxuLmZjLXJ0bCAuZmMtdGltZS1ncmlkIC5mYy1ldmVudC1jb250YWluZXIge1xuICAvKiBzcGFjZSBvbiB0aGUgc2lkZXMgb2YgZXZlbnRzIGZvciBSVEwgKi9cbiAgbWFyZ2luOiAwIDJweCAwIDIuNSU7IH1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtZXZlbnQsXG4uZmMtdGltZS1ncmlkIC5mYy1iZ2V2ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICAvKiBzY29wZSBpbm5lciB6LWluZGV4J3MgKi8gfVxuXG4uZmMtdGltZS1ncmlkIC5mYy1iZ2V2ZW50IHtcbiAgLyogYmFja2dyb3VuZCBldmVudHMgYWx3YXlzIHNwYW4gZnVsbCB3aWR0aCAqL1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuXG4vKiBHZW5lcmljIFZlcnRpY2FsIEV2ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdi1ldmVudC5mYy1ub3Qtc3RhcnQge1xuICAvKiBldmVudHMgdGhhdCBhcmUgY29udGludWluZyBmcm9tIGFub3RoZXIgZGF5ICovXG4gIC8qIHJlcGxhY2Ugc3BhY2UgbWFkZSBieSB0aGUgdG9wIGJvcmRlciB3aXRoIHBhZGRpbmcgKi9cbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgcGFkZGluZy10b3A6IDFweDtcbiAgLyogcmVtb3ZlIHRvcCByb3VuZGVkIGNvcm5lcnMgKi9cbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuLmZjLXYtZXZlbnQuZmMtbm90LWVuZCB7XG4gIC8qIHJlcGxhY2Ugc3BhY2UgbWFkZSBieSB0aGUgdG9wIGJvcmRlciB3aXRoIHBhZGRpbmcgKi9cbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbiAgLyogcmVtb3ZlIGJvdHRvbSByb3VuZGVkIGNvcm5lcnMgKi9cbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLyogVGltZUdyaWQgRXZlbnQgU3R5bGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuV2UgdXNlIHRoZSBmdWxsIFwiZmMtdGltZS1ncmlkLWV2ZW50XCIgY2xhc3MgaW5zdGVhZCBvZiB1c2luZyBkZXNjZW5kYW50cyBiZWNhdXNlIHRoZSBldmVudCB3b24ndFxuYmUgYSBkZXNjZW5kYW50IG9mIHRoZSBncmlkIHdoZW4gaXQgaXMgYmVpbmcgZHJhZ2dlZC5cbiovXG4uZmMtdGltZS1ncmlkLWV2ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogZG9uJ3QgbGV0IHRoZSBiZyBmbG93IG92ZXIgcm91bmRlZCBjb3JuZXJzICovIH1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zZWxlY3RlZCB7XG4gIC8qIG5lZWQgdG8gYWxsb3cgdG91Y2ggcmVzaXplcnMgdG8gZXh0ZW5kIG91dHNpZGUgZXZlbnQncyBib3VuZGluZyBib3ggKi9cbiAgLyogY29tbW9uIGZjLXNlbGVjdGVkIHN0eWxlcyBoaWRlIHRoZSBmYy1iZywgc28gZG9uJ3QgbmVlZCB0aGlzIGFueXdheSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uZmMtdGltZS1ncmlkLWV2ZW50LmZjLXNlbGVjdGVkIC5mYy1iZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC8qIGhpZGUgc2VtaS13aGl0ZSBiYWNrZ3JvdW5kLCB0byBhcHBlYXIgZGFya2VyICovIH1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudCAuZmMtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGZvciB3aGVuIC5mYy1zZWxlY3RlZCAqLyB9XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQgLmZjLXRpbWUsXG4uZmMtdGltZS1ncmlkLWV2ZW50IC5mYy10aXRsZSB7XG4gIHBhZGRpbmc6IDAgMXB4OyB9XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQgLmZjLXRpbWUge1xuICBmb250LXNpemU6IC44NWVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qIHNob3J0IG1vZGUsIHdoZXJlIHRpbWUgYW5kIHRpdGxlIGFyZSBvbiB0aGUgc2FtZSBsaW5lICovXG4uZmMtdGltZS1ncmlkLWV2ZW50LmZjLXNob3J0IC5mYy1jb250ZW50IHtcbiAgLyogZG9uJ3Qgd3JhcCB0byBzZWNvbmQgbGluZSAobm93IHRoYXQgY29udGVudHMgd2lsbCBiZSBpbmxpbmUpICovXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zaG9ydCAuZmMtdGltZSxcbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLXRpdGxlIHtcbiAgLyogcHV0IHRoZSB0aW1lIGFuZCB0aXRsZSBvbiB0aGUgc2FtZSBsaW5lICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uZmMtdGltZS1ncmlkLWV2ZW50LmZjLXNob3J0IC5mYy10aW1lIHNwYW4ge1xuICBkaXNwbGF5OiBub25lO1xuICAvKiBkb24ndCBkaXNwbGF5IHRoZSBmdWxsIHRpbWUgdGV4dC4uLiAqLyB9XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXN0YXJ0KTtcbiAgLyogLi4uaW5zdGVhZCwgZGlzcGxheSBvbmx5IHRoZSBzdGFydCB0aW1lICovIH1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zaG9ydCAuZmMtdGltZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxBMC1cXEEwXCI7XG4gIC8qIHNlcGVyYXRlIHdpdGggYSBkYXNoLCB3cmFwcGVkIGluIG5ic3AncyAqLyB9XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLXRpdGxlIHtcbiAgZm9udC1zaXplOiAuODVlbTtcbiAgLyogbWFrZSB0aGUgdGl0bGUgdGV4dCB0aGUgc2FtZSBzaXplIGFzIHRoZSB0aW1lICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIHVuZG8gcGFkZGluZyBmcm9tIGFib3ZlICovIH1cblxuLyogcmVzaXplciAoY3Vyc29yIGRldmljZSkgKi9cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtYWxsb3ctbW91c2UtcmVzaXplIC5mYy1yZXNpemVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA4cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiA4cHg7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHMtcmVzaXplOyB9XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtYWxsb3ctbW91c2UtcmVzaXplIC5mYy1yZXNpemVyOmFmdGVyIHtcbiAgY29udGVudDogXCI9XCI7IH1cblxuLyogcmVzaXplciAodG91Y2ggZGV2aWNlKSAqL1xuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zZWxlY3RlZCAuZmMtcmVzaXplciB7XG4gIC8qIDEweDEwIGRvdCAqL1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAvKiBob3Jpem9udGFsbHkgY2VudGVyICovXG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIC8qIGNlbnRlciBvbiB0aGUgYm90dG9tIGVkZ2UgKi9cbiAgYm90dG9tOiAtNXB4OyB9XG5cbi8qIE5vdyBJbmRpY2F0b3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy10aW1lLWdyaWQgLmZjLW5vdy1pbmRpY2F0b3ItbGluZSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLyogYXJyb3cgb24gYXhpcyAqL1xuLmZjLXRpbWUtZ3JpZCAuZmMtbm93LWluZGljYXRvci1hcnJvdyB7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIC8qIHZlcnRpY2FsbHkgY2VudGVyIG9uIHRvcCBjb29yZGluYXRlICovIH1cblxuLmZjLWx0ciAuZmMtdGltZS1ncmlkIC5mYy1ub3ctaW5kaWNhdG9yLWFycm93IHtcbiAgbGVmdDogMDtcbiAgLyogdHJpYW5nbGUgcG9pbnRpbmcgcmlnaHQuLi4gKi9cbiAgYm9yZGVyLXdpZHRoOiA1cHggMCA1cHggNnB4O1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmZjLXJ0bCAuZmMtdGltZS1ncmlkIC5mYy1ub3ctaW5kaWNhdG9yLWFycm93IHtcbiAgcmlnaHQ6IDA7XG4gIC8qIHRyaWFuZ2xlIHBvaW50aW5nIGxlZnQuLi4gKi9cbiAgYm9yZGVyLXdpZHRoOiA1cHggNnB4IDVweCAwO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyogTGlzdCBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBwb3NzaWJseSByZXVzYWJsZSAqL1xuLmZjLWV2ZW50LWRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi8qIHZpZXcgd3JhcHBlciAqL1xuLmZjLXJ0bCAuZmMtbGlzdC12aWV3IHtcbiAgZGlyZWN0aW9uOiBydGw7XG4gIC8qIHVubGlrZSBjb3JlIHZpZXdzLCBsZXZlcmFnZSBicm93c2VyIFJUTCAqLyB9XG5cbi5mYy1saXN0LXZpZXcge1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4vKiB0YWJsZSByZXNldHMgKi9cbi5mYyAuZmMtbGlzdC10YWJsZSB7XG4gIHRhYmxlLWxheW91dDogYXV0bztcbiAgLyogZm9yIHNocmlua3dyYXBwaW5nIGNlbGwgY29udGVudCAqLyB9XG5cbi5mYy1saXN0LXRhYmxlIHRkIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xuICBwYWRkaW5nOiA4cHggMTRweDsgfVxuXG4uZmMtbGlzdC10YWJsZSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cblxuLyogZGF5IGhlYWRpbmdzIHdpdGggdGhlIGxpc3QgKi9cbi5mYy1saXN0LWhlYWRpbmcge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cblxuLmZjLWxpc3QtaGVhZGluZyB0ZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5mYy1sdHIgLmZjLWxpc3QtaGVhZGluZy1tYWluIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmZjLWx0ciAuZmMtbGlzdC1oZWFkaW5nLWFsdCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uZmMtcnRsIC5mYy1saXN0LWhlYWRpbmctbWFpbiB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uZmMtcnRsIC5mYy1saXN0LWhlYWRpbmctYWx0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogZXZlbnQgbGlzdCBpdGVtcyAqL1xuLmZjLWxpc3QtaXRlbS5mYy1oYXMtdXJsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiB3aG9sZSByb3cgd2lsbCBiZSBjbGlja2FibGUgKi8gfVxuXG4uZmMtbGlzdC1pdGVtLW1hcmtlcixcbi5mYy1saXN0LWl0ZW0tdGltZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cblxuLyogbWFrZSB0aGUgZG90IGNsb3NlciB0byB0aGUgZXZlbnQgdGl0bGUgKi9cbi5mYy1sdHIgLmZjLWxpc3QtaXRlbS1tYXJrZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5mYy1ydGwgLmZjLWxpc3QtaXRlbS1tYXJrZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmZjLWxpc3QtaXRlbS10aXRsZSBhIHtcbiAgLyogZXZlcnkgZXZlbnQgdGl0bGUgY2VsbCBoYXMgYW4gPGE+IHRhZyAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5mYy1saXN0LWl0ZW0tdGl0bGUgYVtocmVmXTpob3ZlciB7XG4gIC8qIGhvdmVyIGVmZmVjdCBvbmx5IG9uIHRpdGxlcyB3aXRoIGhyZWZzICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi8qIG1lc3NhZ2Ugd2hlbiBubyBldmVudHMgKi9cbi5mYy1saXN0LWVtcHR5LXdyYXAyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7IH1cblxuLmZjLWxpc3QtZW1wdHktd3JhcDEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4uZmMtbGlzdC1lbXB0eSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmMtdW50aGVtZWQgLmZjLWxpc3QtZW1wdHkge1xuICAvKiB0aGVtZSB3aWxsIHByb3ZpZGUgb3duIGJhY2tncm91bmQgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxuXG4vKiFcbiAqIEZ1bGxDYWxlbmRhciBTY2hlZHVsZXIgdjEuOS40XG4gKiBEb2NzICYgTGljZW5zZTogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vc2NoZWR1bGVyL1xuICogKGMpIDIwMTggQWRhbSBTaGF3XG4gKi9cbi8qIFRPRE86IGJyZWFrIHRoaXMgZmlsZSB1cCAqL1xuLyogU2Nyb2xsZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1zY3JvbGxlci1jbGlwIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogZm9yIGNsaXBwaW5nIHNjcm9sbGJhcnMgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBzbyB0aGluZ3MgbGlrZSBzY3JvbGxmb2xsb3dlcnMgY2FuIGF0dGFjaCB0byB0aGlzICovIH1cblxuLyogc3VwcmVzc2VzIHJlbmRlcmluZyBvZiBuYXRpdmUgc2Nyb2xsYmFycyAqL1xuLyogb24gLmZjLXNjcm9sbGVyICovXG4uZmMtbm8tc2Nyb2xsYmFycyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIC8qIGhhY2sgZm9yIGR5bmFtaWMgRE9NIG5vZGVzIChpbiBDaHJvbWUgT1NYIGF0IGxlYXN0KSAqLyB9XG5cbi5mYy1uby1zY3JvbGxiYXJzOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7IH1cblxuLmZjLXNjcm9sbGVyLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogb3JpZ2luIGZvciBiZyAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiBzbyB0aGF0IHBhZGRpbmcgKGZvciBndXR0ZXIpIHdpbGwgYmUgcGFydCBvZiBoZWlnaHQgKi9cbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uZmMtc2Nyb2xsZXItY2FudmFzID4gLmZjLWJnIHtcbiAgei1pbmRleDogMTtcbiAgLyogbWFrZSBkZWZhdWx0PyAqLyB9XG5cbi5mYy1zY3JvbGxlci1jYW52YXMgPiAuZmMtY29udGVudCB7XG4gIHotaW5kZXg6IDI7XG4gIC8qIG1ha2UgZGVmYXVsdD8gKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBvcmlnaW4gZm9yIGlubmVyIGNvbnRlbnQgKi9cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwOyB9XG5cbi8qIGZvciB0aGVtZWQsIGhhcmQgdG8gZ2V0IHRoZSBib3JkZXItY29sb3IsIHNvIGp1c3QgZm9yZ2V0IGl0IChSRVZJU0lUKSAqL1xuLnVpLXdpZGdldCAuZmMtc2Nyb2xsZXItY2FudmFzID4gLmZjLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5mYy1zY3JvbGxlci1jYW52YXMuZmMtZ3V0dGVyLWxlZnQgPiAuZmMtY29udGVudCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG5cbi5mYy1zY3JvbGxlci1jYW52YXMuZmMtZ3V0dGVyLXJpZ2h0ID4gLmZjLWNvbnRlbnQge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4OyB9XG5cbi5mYy1zY3JvbGxlci1jYW52YXMuZmMtZ3V0dGVyLXRvcCA+IC5mYy1jb250ZW50IHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICBtYXJnaW4tdG9wOiAtMXB4OyB9XG5cbi8qIGNvbnRlbnQgaXMgcmVzcG9uc2libGUgZm9yIGJvdHRvbSBib3JkZXIgKi9cbi8qIFZpZXcgU3RydWN0dXJlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtcnRsIC5mYy10aW1lbGluZSB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5mYy10aW1lbGluZSAuZmMtZGl2aWRlciB7XG4gIHdpZHRoOiAzcHg7XG4gIGJvcmRlci1zdHlsZTogZG91YmxlO1xuICAvKiBvdmVyY29tZSBuZWlnaGJvcmluZyBib3JkZXJzICovIH1cblxuLmZjLXRpbWVsaW5lIC5mYy1oZWFkID4gdHIgPiAuZmMtZGl2aWRlciB7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuLmZjLXRpbWVsaW5lIC5mYy1ib2R5ID4gdHIgPiAuZmMtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDA7IH1cblxuLmZjLXRpbWVsaW5lIC5mYy1ib2R5IC5mYy1kaXZpZGVyLnVpLXdpZGdldC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5mYy1zY3JvbGxlZCAuZmMtaGVhZCAuZmMtc2Nyb2xsZXIge1xuICB6LWluZGV4OiAyO1xuICAvKiBzbyBkcm9wIHNoYWRvdyB3aWxsIGdvIGFib3ZlIGJvZHkgcGFuZXMgKi8gfVxuXG4uZmMtdGltZWxpbmUuZmMtc2Nyb2xsZWQgLmZjLWhlYWQgLmZjLXNjcm9sbGVyIHtcbiAgYm94LXNoYWRvdzogMCAzcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG5cbi5mYy10aW1lbGluZSAuZmMtYm9keSAuZmMtc2Nyb2xsZXIge1xuICB6LWluZGV4OiAxOyB9XG5cbi8qXG5vbiBtb3N0IHRhYmxlcyB0aGF0IGV4cGFuZCB0byB0aGUgZWRnZXMsIGtpbGwgdGhlIG91dGVyIGJvcmRlcixcbmJlY2F1c2UgdGhlIGNvbnRhaW5lciBlbGVtZW50cyB0YWtlIGNhcmUgb2YgaXQuXG5leGFtcGxlIHRhYmxlczpcbi5mYy1zY3JvbGxlci1jYW52YXMgLmZjLWNvbnRlbnQgdGFibGVcbi5mYy1zY3JvbGxlci1jYW52YXMgLmZjLWJnIC5mYy1zbGF0cyB0YWJsZVxuKi9cbi5mYy10aW1lbGluZSAuZmMtc2Nyb2xsZXItY2FudmFzID4gZGl2ID4gdGFibGUsXG4uZmMtdGltZWxpbmUgLmZjLXNjcm9sbGVyLWNhbnZhcyA+IGRpdiA+IGRpdiA+IHRhYmxlIHtcbiAgYm9yZGVyLXN0eWxlOiBoaWRkZW47IH1cblxuLypcbmZvciByZXNvdXJjZSByb3dzIChpbiBib3RoIHRoZSBzcHJlYWRzaGVldCBhbmQgdGltZWxpbmUgYXJlYXMpLFxudW5kbyBwcmV2aW91cyBydWxlIGluIG9yZGVyIHRvIGFsd2F5cyBzaG93IGxhc3QgYm9yZGVyLlxuKi9cbi5mYy10aW1lbGluZSAuZmMtc2Nyb2xsZXItY2FudmFzID4gLmZjLWNvbnRlbnQgPiAuZmMtcm93cyA+IHRhYmxlIHtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTsgfVxuXG4vKiBUYWJsZSBDZWxsIENvbW1vblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXRpbWVsaW5lIHRoLFxuLmZjLXRpbWVsaW5lIHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uZmMtdGltZWxpbmUgLmZjLWNlbGwtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZjLXRpbWVsaW5lIC5mYy1jZWxsLXRleHQge1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbi5mYy10aW1lbGluZSAuZmMtY29sLXJlc2l6ZXIge1xuICBjdXJzb3I6IGNvbC1yZXNpemU7IH1cblxuLypcbkNlbGxzIGF0IHRoZSBzdGFydCBvZiBhIHdlZWtcblRPRE86IGZpZ3VyZSBvdXQgYmV0dGVyIHN0eWxpbmdcblxuLmZjLWx0ciAuZmMtdGltZWxpbmUgLmZjLWVtLWNlbGwgZGl2IHtcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjZWVlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4uZmMtcnRsIC5mYy10aW1lbGluZSAuZmMtZW0tY2VsbCB7XG5cdGJvcmRlci1yaWdodC13aWR0aDogM3B4O1xufVxuKi9cbi8qIGhlYWQgKi9cbi5mYy10aW1lbGluZSB0aCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmZjLXRpbWVsaW5lIC5mYy1oZWFkIC5mYy1jZWxsLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4OyB9XG5cbi8qIGJvZHkgKi9cbi5mYy10aW1lbGluZSAuZmMtYm9keSAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi8qIFJlc291cmNlIEFyZWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mYy1yZXNvdXJjZS1hcmVhIHtcbiAgd2lkdGg6IDMwJTsgfVxuXG4uZmMtcmVzb3VyY2UtYXJlYSBjb2wge1xuICB3aWR0aDogNDAlO1xuICBtaW4td2lkdGg6IDcwcHg7XG4gIC8qIHdpbGwgYmUgcmVhZCBieSBKUyAqLyB9XG5cbi5mYy1yZXNvdXJjZS1hcmVhIGNvbC5mYy1tYWluLWNvbCB7XG4gIHdpZHRoOiA2MCU7XG4gIC8qIG1ha2UgdGhlIGZpcnN0IGNvbHVtbiBpbiBhIG5lc3RlZCBzZXR1cCBiaWdnZXIgKi8gfVxuXG4uZmMtZmxhdCAuZmMtZXhwYW5kZXItc3BhY2Uge1xuICAvKiBmYy1mbGF0IGlzIG9wcG9zaXRlIG9mIGZjLW5lc3RlZCAqL1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mYy1sdHIgLmZjLXJlc291cmNlLWFyZWEgdHIgPiAqIHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uZmMtcnRsIC5mYy1yZXNvdXJjZS1hcmVhIHRyID4gKiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5mYy1yZXNvdXJjZS1hcmVhIC5mYy1jZWxsLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbi8qIGhlYWQgKi9cbi5mYy1yZXNvdXJjZS1hcmVhIC5mYy1zdXBlciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmMtcmVzb3VyY2UtYXJlYSB0aCA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZmMtcmVzb3VyY2UtYXJlYSB0aCAuZmMtY2VsbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5mYy1yZXNvdXJjZS1hcmVhIHRoIC5mYy1jb2wtcmVzaXplciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA1cHg7IH1cblxuLmZjLWx0ciAuZmMtcmVzb3VyY2UtYXJlYSB0aCAuZmMtY29sLXJlc2l6ZXIge1xuICByaWdodDogLTNweDsgfVxuXG4uZmMtcnRsIC5mYy1yZXNvdXJjZS1hcmVhIHRoIC5mYy1jb2wtcmVzaXplciB7XG4gIGxlZnQ6IC0zcHg7IH1cblxuLyogYm9keSAqL1xudHIuZmMtY29sbGFwc2VkID4gdGQsXG50ci5mYy10cmFuc2l0aW9uaW5nID4gdGQge1xuICAvKiBkdXJpbmcgdGhlIHRyYW5zaXRpb24gKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogcHJldmVudHMgYWJzb2x1dGVseS1wb3NpdGlvbmVkIGV2ZW50cyBmcm9tIGJsZWVkaW5nIG91dCAqLyB9XG5cbnRyLmZjLXRyYW5zaXRpb25pbmcgPiB0ZCA+IGRpdiB7XG4gIHRyYW5zaXRpb246IG1hcmdpbi10b3AgMC4yczsgfVxuXG50ci5mYy1jb2xsYXBzZWQgPiB0ZCA+IGRpdiB7XG4gIG1hcmdpbi10b3A6IC0xMHB4OyB9XG5cbi5mYy1ib2R5IC5mYy1yZXNvdXJjZS1hcmVhIC5mYy1jZWxsLWNvbnRlbnQge1xuICAvKiBtaWdodCBCRSB0aGUgY2VsbCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIG9wdGltaXphdGlvbiBmb3IgU2Nyb2xsRm9sbG93ZXIgKi9cbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuXG4uZmMtbm8tb3ZlcmxhcCAuZmMtYm9keSAuZmMtcmVzb3VyY2UtYXJlYSAuZmMtY2VsbC1jb250ZW50IHtcbiAgLyogbWlnaHQgQkUgdGhlIGNlbGwgKi9cbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuXG4uZmMtcmVzb3VyY2UtYXJlYSAuZmMtaWNvbiB7XG4gIC8qIHRoZSBleHBhbmRlciBhbmQgc3BhY2VycyBiZWZvcmUgdGhlIGV4cGFuZGVyICovXG4gIHdpZHRoOiAxZW07XG4gIC8qIGVuc3VyZSBjb25zdGFudCB3aWR0aCwgZXNwIGZvciBlbXB0eSBpY29ucyAqL1xuICBmb250LXNpemU6IC45ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IC0xJTsgfVxuXG4uZmMtcmVzb3VyY2UtYXJlYSAuZmMtZXhwYW5kZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNjY2O1xuICAvKiBmb3IgdGhlIGljb24gd2l0aGluICovIH1cblxuLyogVGltZSBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdGltZS1hcmVhIGNvbCB7XG4gIG1pbi13aWR0aDogMi4yZW07XG4gIC8qIGRldGVjdGVkIGJ5IEpTICovIH1cblxuLyogaGVhZCAqL1xuLmZjLWx0ciAuZmMtdGltZS1hcmVhIC5mYy1jaHJvbm8gdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5mYy1ydGwgLmZjLXRpbWUtYXJlYSAuZmMtY2hyb25vIHRoIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLyogYm9keSBzbGF0cyAodmVydGljYWwgbGluZXMpICovXG4uZmMtdGltZS1hcmVhIC5mYy1zbGF0cyB7XG4gIC8qIGZjLWJnIGlzIHJlc3BvbnNpYmxlIGZvciBhIGxvdCBvZiB0aGlzIG5vdyEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtc2xhdHMgdGFibGUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtc2xhdHMgLmZjLW1pbm9yIHtcbiAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQ7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtc2xhdHMgdGQge1xuICBib3JkZXItd2lkdGg6IDAgMXB4O1xuICAvKiBuZWVkIHRvIGRvIHRoaXMuIHNvbWV0aW1lcyAtMSBtYXJnaW4gd291bGRuJ3QgaGlkZSB0aGUgZG90dGVkICovIH1cblxuLmZjLWx0ciAuZmMtdGltZS1hcmVhIC5mYy1zbGF0cyB0ZCB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDsgfVxuXG4uZmMtcnRsIC5mYy10aW1lLWFyZWEgLmZjLXNsYXRzIHRkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cblxuLyogYm9keSBjb250ZW50IGNvbnRhaW5lcnNcbiAgIGNhbiBiZSB3aXRoaW4gcm93cyBvciBkaXJlY3RseSB3aXRoaW4gdGhlIHBhbmUncyBjb250ZW50XG4qL1xuLmZjLXRpbWUtYXJlYSAuZmMtYmdldmVudC1jb250YWluZXIsXG4uZmMtdGltZS1hcmVhIC5mYy1oaWdobGlnaHQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICAvKiBvbmx5IGZvciBkaXJlY3RseSB3aXRoaW4gcGFuZS4gbm90IGZvciByb3cuIG92ZXJyaWRkZW4gbGF0ZXIgKi9cbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAwOyB9XG5cbi5mYy1sdHIgLmZjLXRpbWUtYXJlYSAuZmMtaGVscGVyLWNvbnRhaW5lcixcbi5mYy1sdHIgLmZjLXRpbWUtYXJlYSAuZmMtYmdldmVudC1jb250YWluZXIsXG4uZmMtbHRyIC5mYy10aW1lLWFyZWEgLmZjLWhpZ2hsaWdodC1jb250YWluZXIge1xuICBsZWZ0OiAwOyB9XG5cbi5mYy1ydGwgLmZjLXRpbWUtYXJlYSAuZmMtaGVscGVyLWNvbnRhaW5lcixcbi5mYy1ydGwgLmZjLXRpbWUtYXJlYSAuZmMtYmdldmVudC1jb250YWluZXIsXG4uZmMtcnRsIC5mYy10aW1lLWFyZWEgLmZjLWhpZ2hsaWdodC1jb250YWluZXIge1xuICByaWdodDogMDsgfVxuXG4uZmMtdGltZS1hcmVhIC5mYy1iZ2V2ZW50LFxuLmZjLXRpbWUtYXJlYSAuZmMtaGlnaGxpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBib2R5IHJlc291cmNlIHJvd3MgKi9cbi5mYy10aW1lLWFyZWEgLmZjLXJvd3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtcm93cyAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi5mYy10aW1lLWFyZWEgLmZjLXJvd3MgdGQgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtcm93cyAuZmMtYmdldmVudC1jb250YWluZXIsXG4uZmMtdGltZS1hcmVhIC5mYy1yb3dzIC5mYy1oaWdobGlnaHQtY29udGFpbmVyIHtcbiAgei1pbmRleDogMTsgfVxuXG4uZmMtdGltZS1hcmVhIC5mYy1ldmVudC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIC8qIGFib3ZlIGJnZXZlbnQgYW5kIGhpZ2hsaWdodCAqL1xuICB3aWR0aDogMDtcbiAgLyogZm9yIGV2ZW50IHBvc2l0aW9uaW5nLiB3aWxsIGVuZCB1cCBvbiBjb3JyZWN0IHNpZGUgYmFzZWQgb24gZGlyICovIH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtaGVscGVyLWNvbnRhaW5lciB7XG4gIC8qIGFsc28gYW4gZmMtZXZlbnQtY29udGFpbmVyICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMztcbiAgdG9wOiAwOyB9XG5cbi5mYy10aW1lLWFyZWEgLmZjLWV2ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIHRvcDogLTFweDsgfVxuXG4uZmMtdGltZS1hcmVhIHRyOmZpcnN0LWNoaWxkIC5mYy1ldmVudC1jb250YWluZXIge1xuICB0b3A6IDA7IH1cblxuLmZjLW5vLW92ZXJsYXAgLmZjLXRpbWUtYXJlYSAuZmMtZXZlbnQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRvcDogMDsgfVxuXG4vKiBOb3cgSW5kaWNhdG9yXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdGltZWxpbmUgLmZjLW5vdy1pbmRpY2F0b3Ige1xuICAvKiBib3RoIHRoZSBhcnJvdyBhbmQgdGhlIGxpbmUgKi9cbiAgei1pbmRleDogMztcbiAgLyogb25lIGFib3ZlIHNjcm9sbGVyJ3MgZmMtY29udGVudCAqL1xuICB0b3A6IDA7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtbm93LWluZGljYXRvci1hcnJvdyB7XG4gIG1hcmdpbjogMCAtNnB4O1xuICAvKiA1LCB0aGVuIG9uZSBtb3JlIHRvIGNvdW50ZXJhY3Qgc2Nyb2xsZXIncyBuZWdhdGl2ZSBtYXJnaW5zICovXG4gIC8qIHRyaWFuZ2xlIHBvaW50aW5nIGRvd24uLi4gKi9cbiAgYm9yZGVyLXdpZHRoOiA2cHggNXB4IDAgNXB4O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmZjLXRpbWUtYXJlYSAuZmMtbm93LWluZGljYXRvci1saW5lIHtcbiAgbWFyZ2luOiAwIC0xcHg7XG4gIC8qIGNvdW50ZXJhY3Qgc2Nyb2xsZXIncyBuZWdhdGl2ZSBtYXJnaW5zICovXG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsgfVxuXG4vKiBUaW1lIEdyaWQgRXZlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtdGltZWxpbmUtZXZlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDJweCAwO1xuICBtYXJnaW4tYm90dG9tOiAxcHg7IH1cblxuLmZjLW5vLW92ZXJsYXAgLmZjLXRpbWVsaW5lLWV2ZW50IHtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogZG9uJ3Qgb3ZlcmxhcCBncmlkIGxpbmVzIGF0IHRoZSBldmVudCdzIGVuZCAqL1xuLmZjLWx0ciAuZmMtdGltZWxpbmUtZXZlbnQge1xuICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuXG4uZmMtcnRsIC5mYy10aW1lbGluZS1ldmVudCB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7IH1cblxuLmZjLXRpbWVsaW5lLWV2ZW50IC5mYy1jb250ZW50IHtcbiAgcGFkZGluZzogMCAxcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZjLXRpbWVsaW5lLWV2ZW50IC5mYy10aW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDAgMXB4OyB9XG5cbi5mYy1ydGwgLmZjLXRpbWVsaW5lLWV2ZW50IC5mYy10aW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiB3aWxsIGZvcmNlIGl0IG9uIHRoZSBvdGhlciBzaWRlICovIH1cblxuLmZjLXRpbWVsaW5lLWV2ZW50IC5mYy10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogb3B0aW1pemF0aW9uIGZvciBTY3JvbGxGb2xsb3dlciAqL1xuICBwYWRkaW5nOiAwIDFweDsgfVxuXG4uZmMtdGltZWxpbmUtZXZlbnQuZmMtc2VsZWN0ZWQgLmZjLWJnIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgLyogaGlkZSBzZW1pLXdoaXRlIGJhY2tncm91bmQsIHRvIGFwcGVhciBkYXJrZXIgKi8gfVxuXG4vKiBmb2xsb3dlciBsb2dpYyAqL1xuLmZjLWx0ciAuZmMtdGltZWxpbmUtZXZlbnQgLmZjLXRpdGxlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogLThweDsgfVxuXG4uZmMtcnRsIC5mYy10aW1lbGluZS1ldmVudCAuZmMtdGl0bGUge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC04cHg7IH1cblxuLmZjLWx0ciAuZmMtdGltZWxpbmUtZXZlbnQuZmMtbm90LXN0YXJ0IC5mYy10aXRsZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMnB4OyB9XG5cbi5mYy1ydGwgLmZjLXRpbWVsaW5lLWV2ZW50LmZjLW5vdC1zdGFydCAuZmMtdGl0bGUge1xuICBtYXJnaW4tcmlnaHQ6IC0ycHg7IH1cblxuLmZjLXRpbWVsaW5lLWV2ZW50LmZjLW5vdC1zdGFydCAuZmMtdGl0bGUsXG4uZmMtYm9keSAuZmMtdGltZS1hcmVhIC5mYy1mb2xsb3dpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZjLXRpbWVsaW5lLWV2ZW50LmZjLW5vdC1zdGFydCAuZmMtdGl0bGU6YmVmb3JlLFxuLmZjLWJvZHkgLmZjLXRpbWUtYXJlYSAuZmMtZm9sbG93aW5nOmJlZm9yZSB7XG4gIC8qIGdlbmVyaWMgYXJyb3cgKi9cbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyOiA1cHggc29saWQgIzAwMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAuNTsgfVxuXG4uZmMtbHRyIC5mYy10aW1lbGluZS1ldmVudC5mYy1ub3Qtc3RhcnQgLmZjLXRpdGxlOmJlZm9yZSxcbi5mYy1sdHIgLmZjLWJvZHkgLmZjLXRpbWUtYXJlYSAuZmMtZm9sbG93aW5nOmJlZm9yZSB7XG4gIC8qIExUUi4gbGVmdCBwb2ludGluZyBhcnJvdyAqL1xuICBib3JkZXItbGVmdDogMDtcbiAgbGVmdDogMnB4OyB9XG5cbi5mYy1ydGwgLmZjLXRpbWVsaW5lLWV2ZW50LmZjLW5vdC1zdGFydCAuZmMtdGl0bGU6YmVmb3JlLFxuLmZjLXJ0bCAuZmMtYm9keSAuZmMtdGltZS1hcmVhIC5mYy1mb2xsb3dpbmc6YmVmb3JlIHtcbiAgLyogUlRMLiByaWdodCBwb2ludGluZyBhcnJvdyAqL1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHJpZ2h0OiAycHg7IH1cblxuLyogTGljZW5zZSBNZXNzYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmMtbGljZW5zZS1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgYm90dG9tOiAxcHg7XG4gIGxlZnQ6IDFweDtcbiAgYmFja2dyb3VuZDogI2VlZTtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweCAxcHggMCAwO1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7IH1cblxuLyogcmVxdWlyZWQgc3R5bGVzICovXHJcblxyXG4ubGVhZmxldC1wYW5lLFxyXG4ubGVhZmxldC10aWxlLFxyXG4ubGVhZmxldC1tYXJrZXItaWNvbixcclxuLmxlYWZsZXQtbWFya2VyLXNoYWRvdyxcclxuLmxlYWZsZXQtdGlsZS1jb250YWluZXIsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcsXHJcbi5sZWFmbGV0LXBhbmUgPiBjYW52YXMsXHJcbi5sZWFmbGV0LXpvb20tYm94LFxyXG4ubGVhZmxldC1pbWFnZS1sYXllcixcclxuLmxlYWZsZXQtbGF5ZXIge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR9XHJcbi5sZWFmbGV0LXRpbGUsXHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLFxyXG4ubGVhZmxldC1tYXJrZXItc2hhZG93IHtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0ICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHQgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xyXG5cdH1cclxuLyogUHJldmVudHMgSUUxMSBmcm9tIGhpZ2hsaWdodGluZyB0aWxlcyBpbiBibHVlICovXHJcbi5sZWFmbGV0LXRpbGU6OnNlbGVjdGlvbiB7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLyogU2FmYXJpIHJlbmRlcnMgbm9uLXJldGluYSB0aWxlIG9uIHJldGluYSBiZXR0ZXIgd2l0aCB0aGlzLCBidXQgQ2hyb21lIGlzIHdvcnNlICovXHJcbi5sZWFmbGV0LXNhZmFyaSAubGVhZmxldC10aWxlIHtcclxuXHRpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XHJcblx0fVxyXG4vKiBoYWNrIHRoYXQgcHJldmVudHMgaHcgbGF5ZXJzIFwic3RyZXRjaGluZ1wiIHdoZW4gbG9hZGluZyBuZXcgdGlsZXMgKi9cclxuLmxlYWZsZXQtc2FmYXJpIC5sZWFmbGV0LXRpbGUtY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTYwMHB4O1xyXG5cdGhlaWdodDogMTYwMHB4O1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdH1cclxuLmxlYWZsZXQtbWFya2VyLWljb24sXHJcbi5sZWFmbGV0LW1hcmtlci1zaGFkb3cge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuLyogLmxlYWZsZXQtY29udGFpbmVyIHN2ZzogcmVzZXQgc3ZnIG1heC13aWR0aCBkZWNsZXJhdGlvbiBzaGlwcGVkIGluIEpvb21sYSEgKGpvb21sYS5vcmcpIDMueCAqL1xyXG4vKiAubGVhZmxldC1jb250YWluZXIgaW1nOiBtYXAgaXMgYnJva2VuIGluIEZGIGlmIHlvdSBoYXZlIG1heC13aWR0aDogMTAwJSBvbiB0aWxlcyAqL1xyXG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtb3ZlcmxheS1wYW5lIHN2ZyB7XHJcblx0bWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XHJcblx0bWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LW1hcmtlci1wYW5lIGltZyxcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXNoYWRvdy1wYW5lIGltZyxcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXRpbGUtcGFuZSBpbWcsXHJcbi5sZWFmbGV0LWNvbnRhaW5lciBpbWcubGVhZmxldC1pbWFnZS1sYXllcixcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXRpbGUge1xyXG5cdG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHR3aWR0aDogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LWNvbnRhaW5lci5sZWFmbGV0LXRvdWNoLXpvb20ge1xyXG5cdC1tcy10b3VjaC1hY3Rpb246IHBhbi14IHBhbi15O1xyXG5cdHRvdWNoLWFjdGlvbjogcGFuLXggcGFuLXk7XHJcblx0fVxyXG4ubGVhZmxldC1jb250YWluZXIubGVhZmxldC10b3VjaC1kcmFnIHtcclxuXHQtbXMtdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tO1xyXG5cdC8qIEZhbGxiYWNrIGZvciBGRiB3aGljaCBkb2Vzbid0IHN1cHBvcnQgcGluY2gtem9vbSAqL1xyXG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcclxuXHR0b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XHJcbn1cclxuLmxlYWZsZXQtY29udGFpbmVyLmxlYWZsZXQtdG91Y2gtZHJhZy5sZWFmbGV0LXRvdWNoLXpvb20ge1xyXG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XHJcblx0dG91Y2gtYWN0aW9uOiBub25lO1xyXG59XHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4ubGVhZmxldC1jb250YWluZXIgYSB7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDUxLCAxODEsIDIyOSwgMC40KTtcclxufVxyXG4ubGVhZmxldC10aWxlIHtcclxuXHRmaWx0ZXI6IGluaGVyaXQ7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdH1cclxuLmxlYWZsZXQtdGlsZS1sb2FkZWQge1xyXG5cdHZpc2liaWxpdHk6IGluaGVyaXQ7XHJcblx0fVxyXG4ubGVhZmxldC16b29tLWJveCB7XHJcblx0d2lkdGg6IDA7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0ei1pbmRleDogODAwO1xyXG5cdH1cclxuLyogd29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg4MzE5ICovXHJcbi5sZWFmbGV0LW92ZXJsYXktcGFuZSBzdmcge1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtcGFuZSAgICAgICAgIHsgei1pbmRleDogNDAwOyB9XHJcblxyXG4ubGVhZmxldC10aWxlLXBhbmUgICAgeyB6LWluZGV4OiAyMDA7IH1cclxuLmxlYWZsZXQtb3ZlcmxheS1wYW5lIHsgei1pbmRleDogNDAwOyB9XHJcbi5sZWFmbGV0LXNoYWRvdy1wYW5lICB7IHotaW5kZXg6IDUwMDsgfVxyXG4ubGVhZmxldC1tYXJrZXItcGFuZSAgeyB6LWluZGV4OiA2MDA7IH1cclxuLmxlYWZsZXQtdG9vbHRpcC1wYW5lICAgeyB6LWluZGV4OiA2NTA7IH1cclxuLmxlYWZsZXQtcG9wdXAtcGFuZSAgIHsgei1pbmRleDogNzAwOyB9XHJcblxyXG4ubGVhZmxldC1tYXAtcGFuZSBjYW52YXMgeyB6LWluZGV4OiAxMDA7IH1cclxuLmxlYWZsZXQtbWFwLXBhbmUgc3ZnICAgIHsgei1pbmRleDogMjAwOyB9XHJcblxyXG4ubGVhZmxldC12bWwtc2hhcGUge1xyXG5cdHdpZHRoOiAxcHg7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0fVxyXG4ubHZtbCB7XHJcblx0YmVoYXZpb3I6IHVybCgjZGVmYXVsdCNWTUwpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0fVxyXG5cclxuXHJcbi8qIGNvbnRyb2wgcG9zaXRpb25pbmcgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiA4MDA7XHJcblx0cG9pbnRlci1ldmVudHM6IHZpc2libGVQYWludGVkOyAvKiBJRSA5LTEwIGRvZXNuJ3QgaGF2ZSBhdXRvICovXHJcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcblx0fVxyXG4ubGVhZmxldC10b3AsXHJcbi5sZWFmbGV0LWJvdHRvbSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0fVxyXG4ubGVhZmxldC10b3Age1xyXG5cdHRvcDogMDtcclxuXHR9XHJcbi5sZWFmbGV0LXJpZ2h0IHtcclxuXHRyaWdodDogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWJvdHRvbSB7XHJcblx0Ym90dG9tOiAwO1xyXG5cdH1cclxuLmxlYWZsZXQtbGVmdCB7XHJcblx0bGVmdDogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdH1cclxuLmxlYWZsZXQtcmlnaHQgLmxlYWZsZXQtY29udHJvbCB7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdH1cclxuLmxlYWZsZXQtdG9wIC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0fVxyXG4ubGVhZmxldC1ib3R0b20gLmxlYWZsZXQtY29udHJvbCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHR9XHJcbi5sZWFmbGV0LWxlZnQgLmxlYWZsZXQtY29udHJvbCB7XHJcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0fVxyXG4ubGVhZmxldC1yaWdodCAubGVhZmxldC1jb250cm9sIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0fVxyXG5cclxuXHJcbi8qIHpvb20gYW5kIGZhZGUgYW5pbWF0aW9ucyAqL1xyXG5cclxuLmxlYWZsZXQtZmFkZS1hbmltIC5sZWFmbGV0LXBvcHVwIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcclxuXHQgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XHJcblx0ICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xyXG5cdH1cclxuLmxlYWZsZXQtZmFkZS1hbmltIC5sZWFmbGV0LW1hcC1wYW5lIC5sZWFmbGV0LXBvcHVwIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1hbmltYXRlZCB7XHJcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcblx0ICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcblx0ICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcblx0fVxyXG5zdmcubGVhZmxldC16b29tLWFuaW1hdGVkIHtcclxuXHR3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG59XHJcblxyXG4ubGVhZmxldC16b29tLWFuaW0gLmxlYWZsZXQtem9vbS1hbmltYXRlZCB7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0ICAgLW1vei10cmFuc2l0aW9uOiAgICAtbW96LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0ICAgICAgICB0cmFuc2l0aW9uOiAgICAgICAgIHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0fVxyXG4ubGVhZmxldC16b29tLWFuaW0gLmxlYWZsZXQtdGlsZSxcclxuLmxlYWZsZXQtcGFuLWFuaW0gLmxlYWZsZXQtdGlsZSB7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xyXG5cdCAgIC1tb3otdHJhbnNpdGlvbjogbm9uZTtcclxuXHQgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtem9vbS1hbmltIC5sZWFmbGV0LXpvb20taGlkZSB7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdH1cclxuXHJcblxyXG4vKiBjdXJzb3JzICovXHJcblxyXG4ubGVhZmxldC1pbnRlcmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuLmxlYWZsZXQtZ3JhYiB7XHJcblx0Y3Vyc29yOiAtd2Via2l0LWdyYWI7XHJcblx0Y3Vyc29yOiAgICAtbW96LWdyYWI7XHJcblx0Y3Vyc29yOiAgICAgICAgIGdyYWI7XHJcblx0fVxyXG4ubGVhZmxldC1jcm9zc2hhaXIsXHJcbi5sZWFmbGV0LWNyb3NzaGFpciAubGVhZmxldC1pbnRlcmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBjcm9zc2hhaXI7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1wYW5lLFxyXG4ubGVhZmxldC1jb250cm9sIHtcclxuXHRjdXJzb3I6IGF1dG87XHJcblx0fVxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1ncmFiLFxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1ncmFiIC5sZWFmbGV0LWludGVyYWN0aXZlLFxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1tYXJrZXItZHJhZ2dhYmxlIHtcclxuXHRjdXJzb3I6IG1vdmU7XHJcblx0Y3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xyXG5cdGN1cnNvcjogICAgLW1vei1ncmFiYmluZztcclxuXHRjdXJzb3I6ICAgICAgICAgZ3JhYmJpbmc7XHJcblx0fVxyXG5cclxuLyogbWFya2VyICYgb3ZlcmxheXMgaW50ZXJhY3Rpdml0eSAqL1xyXG4ubGVhZmxldC1tYXJrZXItaWNvbixcclxuLmxlYWZsZXQtbWFya2VyLXNoYWRvdyxcclxuLmxlYWZsZXQtaW1hZ2UtbGF5ZXIsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcgcGF0aCxcclxuLmxlYWZsZXQtdGlsZS1jb250YWluZXIge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLmxlYWZsZXQtaW50ZXJhY3RpdmUsXHJcbi5sZWFmbGV0LWltYWdlLWxheWVyLmxlYWZsZXQtaW50ZXJhY3RpdmUsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcgcGF0aC5sZWFmbGV0LWludGVyYWN0aXZlLFxyXG5zdmcubGVhZmxldC1pbWFnZS1sYXllci5sZWFmbGV0LWludGVyYWN0aXZlIHBhdGgge1xyXG5cdHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlUGFpbnRlZDsgLyogSUUgOS0xMCBkb2Vzbid0IGhhdmUgYXV0byAqL1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdH1cclxuXHJcbi8qIHZpc3VhbCB0d2Vha3MgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0YmFja2dyb3VuZDogI2RkZDtcclxuXHRvdXRsaW5lLW9mZnNldDogMXB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udGFpbmVyIGEge1xyXG5cdGNvbG9yOiAjMDA3OEE4O1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1ib3gge1xyXG5cdGJvcmRlcjogMnB4IGRvdHRlZCAjMzhmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcclxuXHR9XHJcblxyXG5cclxuLyogZ2VuZXJhbCB0eXBvZ3JhcGh5ICovXHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0Zm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0fVxyXG5cclxuXHJcbi8qIGdlbmVyYWwgdG9vbGJhciBzdHlsZXMgKi9cclxuXHJcbi5sZWFmbGV0LWJhciB7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwwLDAsMC42NSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtYmFyIGEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XHJcblx0d2lkdGg6IDI2cHg7XHJcblx0aGVpZ2h0OiAyNnB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0Y29sb3I6IGJsYWNrO1xyXG5cdH1cclxuLmxlYWZsZXQtYmFyIGEsXHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXRvZ2dsZSB7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuLmxlYWZsZXQtYmFyIGE6aG92ZXIsXHJcbi5sZWFmbGV0LWJhciBhOmZvY3VzIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG5cdH1cclxuLmxlYWZsZXQtYmFyIGE6Zmlyc3QtY2hpbGQge1xyXG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcclxuXHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtYmFyIGE6bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xyXG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxuXHR9XHJcbi5sZWFmbGV0LWJhciBhLmxlYWZsZXQtZGlzYWJsZWQge1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG5cdGNvbG9yOiAjYmJiO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWJhciBhIHtcclxuXHR3aWR0aDogMzBweDtcclxuXHRoZWlnaHQ6IDMwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0fVxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIgYTpmaXJzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4O1xyXG5cdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XHJcblx0fVxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIgYTpsYXN0LWNoaWxkIHtcclxuXHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XHJcblx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcclxuXHR9XHJcblxyXG4vKiB6b29tIGNvbnRyb2wgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRyb2wtem9vbS1pbixcclxuLmxlYWZsZXQtY29udHJvbC16b29tLW91dCB7XHJcblx0Zm9udDogYm9sZCAxOHB4ICdMdWNpZGEgQ29uc29sZScsIE1vbmFjbywgbW9ub3NwYWNlO1xyXG5cdHRleHQtaW5kZW50OiAxcHg7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC16b29tLWluLCAubGVhZmxldC10b3VjaCAubGVhZmxldC1jb250cm9sLXpvb20tb3V0ICB7XHJcblx0Zm9udC1zaXplOiAyMnB4O1xyXG5cdH1cclxuXHJcblxyXG4vKiBsYXllcnMgY29udHJvbCAqL1xyXG5cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMge1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsMCwwLDAuNCk7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWxheWVycy10b2dnbGUge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvbGF5ZXJzLnBuZyk7XHJcblx0d2lkdGg6IDM2cHg7XHJcblx0aGVpZ2h0OiAzNnB4O1xyXG5cdH1cclxuLmxlYWZsZXQtcmV0aW5hIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXRvZ2dsZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9sYXllcnMtMngucG5nKTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjZweDtcclxuXHR9XHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXRvZ2dsZSB7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0aGVpZ2h0OiA0NHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtbGlzdCxcclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtbGlzdCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQge1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4IDZweCA2cHg7XHJcblx0Y29sb3I6ICMzMzM7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNjcm9sbGJhciB7XHJcblx0b3ZlcmZsb3cteTogc2Nyb2xsO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWxheWVycy1zZWxlY3RvciB7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR0b3A6IDFweDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzIGxhYmVsIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0Zm9udC1zaXplOiAxLjA4MzMzZW07XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWxheWVycy1zZXBhcmF0b3Ige1xyXG5cdGhlaWdodDogMDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcclxuXHRtYXJnaW46IDVweCAtMTBweCA1cHggLTZweDtcclxuXHR9XHJcblxyXG4vKiBEZWZhdWx0IGljb24gVVJMcyAqL1xyXG4ubGVhZmxldC1kZWZhdWx0LWljb24tcGF0aCB7IC8qIHVzZWQgb25seSBpbiBwYXRoLWd1ZXNzaW5nIGhldXJpc3RpYywgc2VlIEwuSWNvbi5EZWZhdWx0ICovXHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9tYXJrZXItaWNvbi5wbmcpO1xyXG5cdH1cclxuXHJcblxyXG4vKiBhdHRyaWJ1dGlvbiBhbmQgc2NhbGUgY29udHJvbHMgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRhaW5lciAubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uIHtcclxuXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuXHRtYXJnaW46IDA7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uLFxyXG4ubGVhZmxldC1jb250cm9sLXNjYWxlLWxpbmUge1xyXG5cdHBhZGRpbmc6IDAgNXB4O1xyXG5cdGNvbG9yOiAjMzMzO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uIGEge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24gYTpob3ZlcixcclxuLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbiBhOmZvY3VzIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24gc3ZnIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuXHR9XHJcbi5sZWFmbGV0LWxlZnQgLmxlYWZsZXQtY29udHJvbC1zY2FsZSB7XHJcblx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHR9XHJcbi5sZWFmbGV0LWJvdHRvbSAubGVhZmxldC1jb250cm9sLXNjYWxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiA1cHg7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLXNjYWxlLWxpbmUge1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICM3Nzc7XHJcblx0Ym9yZGVyLXRvcDogbm9uZTtcclxuXHRsaW5lLWhlaWdodDogMS4xO1xyXG5cdHBhZGRpbmc6IDJweCA1cHggMXB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0ICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtc2NhbGUtbGluZTpub3QoOmZpcnN0LWNoaWxkKSB7XHJcblx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkICM3Nzc7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxuXHRtYXJnaW4tdG9wOiAtMnB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1zY2FsZS1saW5lOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNzc3O1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24sXHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLFxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIge1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0fVxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1jb250cm9sLWxheWVycyxcclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIHtcclxuXHRib3JkZXI6IDJweCBzb2xpZCByZ2JhKDAsMCwwLDAuMik7XHJcblx0YmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuXHR9XHJcblxyXG5cclxuLyogcG9wdXAgKi9cclxuXHJcbi5sZWFmbGV0LXBvcHVwIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBhZGRpbmc6IDFweDtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdGJvcmRlci1yYWRpdXM6IDEycHg7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1jb250ZW50IHtcclxuXHRtYXJnaW46IDEzcHggMjRweCAxM3B4IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0Zm9udC1zaXplOiAxLjA4MzMzZW07XHJcblx0bWluLWhlaWdodDogMXB4O1xyXG5cdH1cclxuLmxlYWZsZXQtcG9wdXAtY29udGVudCBwIHtcclxuXHRtYXJnaW46IDE3cHggMDtcclxuXHRtYXJnaW46IDEuM2VtIDA7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC10aXAtY29udGFpbmVyIHtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDUwJTtcclxuXHRtYXJnaW4tdG9wOiAtMXB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuLmxlYWZsZXQtcG9wdXAtdGlwIHtcclxuXHR3aWR0aDogMTdweDtcclxuXHRoZWlnaHQ6IDE3cHg7XHJcblx0cGFkZGluZzogMXB4O1xyXG5cclxuXHRtYXJnaW46IC0xMHB4IGF1dG8gMDtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0ICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0ICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0ICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIsXHJcbi5sZWFmbGV0LXBvcHVwLXRpcCB7XHJcblx0YmFja2dyb3VuZDogd2hpdGU7XHJcblx0Y29sb3I6ICMzMzM7XHJcblx0Ym94LXNoYWRvdzogMCAzcHggMTRweCByZ2JhKDAsMCwwLDAuNCk7XHJcblx0fVxyXG4ubGVhZmxldC1jb250YWluZXIgYS5sZWFmbGV0LXBvcHVwLWNsb3NlLWJ1dHRvbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRmb250OiAxNnB4LzI0cHggVGFob21hLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xyXG5cdGNvbG9yOiAjNzU3NTc1O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciBhLmxlYWZsZXQtcG9wdXAtY2xvc2UtYnV0dG9uOmhvdmVyLFxyXG4ubGVhZmxldC1jb250YWluZXIgYS5sZWFmbGV0LXBvcHVwLWNsb3NlLWJ1dHRvbjpmb2N1cyB7XHJcblx0Y29sb3I6ICM1ODU4NTg7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1zY3JvbGxlZCB7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtcG9wdXAtY29udGVudC13cmFwcGVyIHtcclxuXHQtbXMtem9vbTogMTtcclxuXHR9XHJcbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLXRpcCB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblxyXG5cdC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9MC43MDcxMDY3OCwgTTEyPTAuNzA3MTA2NzgsIE0yMT0tMC43MDcxMDY3OCwgTTIyPTAuNzA3MTA2NzgpXCI7XHJcblx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0wLjcwNzEwNjc4LCBNMTI9MC43MDcxMDY3OCwgTTIxPS0wLjcwNzEwNjc4LCBNMjI9MC43MDcxMDY3OCk7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtY29udHJvbC16b29tLFxyXG4ubGVhZmxldC1vbGRpZSAubGVhZmxldC1jb250cm9sLWxheWVycyxcclxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtcG9wdXAtY29udGVudC13cmFwcGVyLFxyXG4ubGVhZmxldC1vbGRpZSAubGVhZmxldC1wb3B1cC10aXAge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcblx0fVxyXG5cclxuXHJcbi8qIGRpdiBpY29uICovXHJcblxyXG4ubGVhZmxldC1kaXYtaWNvbiB7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xyXG5cdH1cclxuXHJcblxyXG4vKiBUb29sdGlwICovXHJcbi8qIEJhc2Ugc3R5bGVzIGZvciB0aGUgZWxlbWVudCB0aGF0IGhhcyBhIHRvb2x0aXAgKi9cclxuLmxlYWZsZXQtdG9vbHRpcCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGNvbG9yOiAjMjIyO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwwLjQpO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9vbHRpcC5sZWFmbGV0LWludGVyYWN0aXZlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcblx0fVxyXG4ubGVhZmxldC10b29sdGlwLXRvcDpiZWZvcmUsXHJcbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tOmJlZm9yZSxcclxuLmxlYWZsZXQtdG9vbHRpcC1sZWZ0OmJlZm9yZSxcclxuLmxlYWZsZXQtdG9vbHRpcC1yaWdodDpiZWZvcmUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdH1cclxuXHJcbi8qIERpcmVjdGlvbnMgKi9cclxuXHJcbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tIHtcclxuXHRtYXJnaW4tdG9wOiA2cHg7XHJcbn1cclxuLmxlYWZsZXQtdG9vbHRpcC10b3Age1xyXG5cdG1hcmdpbi10b3A6IC02cHg7XHJcbn1cclxuLmxlYWZsZXQtdG9vbHRpcC1ib3R0b206YmVmb3JlLFxyXG4ubGVhZmxldC10b29sdGlwLXRvcDpiZWZvcmUge1xyXG5cdGxlZnQ6IDUwJTtcclxuXHRtYXJnaW4tbGVmdDogLTZweDtcclxuXHR9XHJcbi5sZWFmbGV0LXRvb2x0aXAtdG9wOmJlZm9yZSB7XHJcblx0Ym90dG9tOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xMnB4O1xyXG5cdGJvcmRlci10b3AtY29sb3I6ICNmZmY7XHJcblx0fVxyXG4ubGVhZmxldC10b29sdGlwLWJvdHRvbTpiZWZvcmUge1xyXG5cdHRvcDogMDtcclxuXHRtYXJnaW4tdG9wOiAtMTJweDtcclxuXHRtYXJnaW4tbGVmdDogLTZweDtcclxuXHRib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9vbHRpcC1sZWZ0IHtcclxuXHRtYXJnaW4tbGVmdDogLTZweDtcclxufVxyXG4ubGVhZmxldC10b29sdGlwLXJpZ2h0IHtcclxuXHRtYXJnaW4tbGVmdDogNnB4O1xyXG59XHJcbi5sZWFmbGV0LXRvb2x0aXAtbGVmdDpiZWZvcmUsXHJcbi5sZWFmbGV0LXRvb2x0aXAtcmlnaHQ6YmVmb3JlIHtcclxuXHR0b3A6IDUwJTtcclxuXHRtYXJnaW4tdG9wOiAtNnB4O1xyXG5cdH1cclxuLmxlYWZsZXQtdG9vbHRpcC1sZWZ0OmJlZm9yZSB7XHJcblx0cmlnaHQ6IDA7XHJcblx0bWFyZ2luLXJpZ2h0OiAtMTJweDtcclxuXHRib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcclxuXHR9XHJcbi5sZWFmbGV0LXRvb2x0aXAtcmlnaHQ6YmVmb3JlIHtcclxuXHRsZWZ0OiAwO1xyXG5cdG1hcmdpbi1sZWZ0OiAtMTJweDtcclxuXHRib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7XHJcblx0fVxyXG5cclxuLyogUHJpbnRpbmcgKi9cclxuXHRcclxuQG1lZGlhIHByaW50IHtcclxuXHQvKiBQcmV2ZW50IHByaW50ZXJzIGZyb20gcmVtb3ZpbmcgYmFja2dyb3VuZC1pbWFnZXMgb2YgY29udHJvbHMuICovXHJcblx0LmxlYWZsZXQtY29udHJvbCB7XHJcblx0XHQtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XHJcblx0XHRjb2xvci1hZGp1c3Q6IGV4YWN0O1xyXG5cdFx0fVxyXG5cdH1cclxuXG4uZW1iZXItbm90aWZ5LWRlZmF1bHQuZW1iZXItbm90aWZ5LWNuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1MDAwO1xuICBib3R0b206IDBweDtcbiAgcmlnaHQ6IDBweDtcbn1cblxuLmVtYmVyLW5vdGlmeS1kZWZhdWx0IC5lbWJlci1ub3RpZnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgLyogdGhlIGZvbGxvd2luZyBpcyBwdXJlbHkgc28gdGhhdCBpdCBkb2Vzbid0IGxvb2sgYnJva2VuIHdpdGhvdXQgRm91bmRhdGlvbiBpbnN0YWxsZWQgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLmVtYmVyLW5vdGlmeS1kZWZhdWx0IC5lbWJlci1ub3RpZnktc2hvdyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZW1iZXItbm90aWZ5LXNob3c7XG4gIGFuaW1hdGlvbi1uYW1lOiBlbWJlci1ub3RpZnktc2hvdztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xufVxuXG4uZW1iZXItbm90aWZ5LWRlZmF1bHQgLmVtYmVyLW5vdGlmeS1oaWRlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDI1MG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBlbWJlci1ub3RpZnktaGlkZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGVtYmVyLW5vdGlmeS1oaWRlO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcbn1cblxuLmVtYmVyLW5vdGlmeS1oaWRlOmhvdmVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xuICAtbW96LWFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG4gIC1vLWFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7IFxuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZW1iZXItbm90aWZ5LXNob3cge1xuICBmcm9tIHtcbiAgICByaWdodDogLTMxMHB4O1xuICB9XG4gIHRvIHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGVtYmVyLW5vdGlmeS1zaG93IHtcbiAgZnJvbSB7XG4gICAgcmlnaHQ6IC0zMTBweDtcbiAgfVxuICB0byB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBlbWJlci1ub3RpZnktaGlkZSB7XG4gIGZyb20ge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIHRvIHtcbiAgICByaWdodDogLTMxMHB4O1xuICB9XG59XG5Aa2V5ZnJhbWVzIGVtYmVyLW5vdGlmeS1oaWRlIHtcbiAgZnJvbSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHJpZ2h0OiAtMzEwcHg7XG4gIH1cbn1cblxuLmVtYmVyLW5vdGlmeS1kZWZhdWx0IC5lbWJlci1ub3RpZnkgLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2ODBweCkge1xuICAuZW1iZXItbm90aWZ5LWRlZmF1bHQuZW1iZXItbm90aWZ5LWNuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAuZW1iZXItbm90aWZ5LWRlZmF1bHQgLmVtYmVyLW5vdGlmeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5lbWJlci1ub3RpZnktY24gLmNsZWFyZml4IHtcbiAgKnpvb206IDE7XG59XG4uZW1iZXItbm90aWZ5LWNuIC5jbGVhcmZpeDpiZWZvcmUsXG4uZW1iZXItbm90aWZ5LWNuIC5jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5lbWJlci1ub3RpZnktY24gLmNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qKipcblNwZWN0cnVtIENvbG9ycGlja2VyIHYxLjguMVxuaHR0cHM6Ly9naXRodWIuY29tL2Jncmlucy9zcGVjdHJ1bVxuQXV0aG9yOiBCcmlhbiBHcmluc3RlYWRcbkxpY2Vuc2U6IE1JVFxuKioqL1xuXG4uc3AtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgKmRpc3BsYXk6IGlubGluZTtcbiAgICAqem9vbTogMTtcbiAgICAvKiBodHRwczovL2dpdGh1Yi5jb20vYmdyaW5zL3NwZWN0cnVtL2lzc3Vlcy80MCAqL1xuICAgIHotaW5kZXg6IDk5OTk5OTQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5zcC1jb250YWluZXIuc3AtZmxhdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBGaXggZm9yICogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9ICovXG4uc3AtY29udGFpbmVyLFxuLnNwLWNvbnRhaW5lciAqIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyogaHR0cDovL2Fuc2NpYXRoLnR1bWJsci5jb20vcG9zdC83MzQ3NDk1ODY5L2Nzcy1hc3BlY3QtcmF0aW8gKi9cbi5zcC10b3Age1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuLnNwLXRvcC1pbm5lciB7XG4gICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgIHRvcDowO1xuICAgbGVmdDowO1xuICAgYm90dG9tOjA7XG4gICByaWdodDowO1xufVxuLnNwLWNvbG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIGJvdHRvbTowO1xuICAgIHJpZ2h0OjIwJTtcbn1cbi5zcC1odWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIGxlZnQ6ODQlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLWNsZWFyLWVuYWJsZWQgLnNwLWh1ZSB7XG4gICAgdG9wOjMzcHg7XG4gICAgaGVpZ2h0OiA3Ny41JTtcbn1cblxuLnNwLWZpbGwge1xuICAgIHBhZGRpbmctdG9wOiA4MCU7XG59XG4uc3Atc2F0LCAuc3AtdmFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgYm90dG9tOjA7XG59XG5cbi5zcC1hbHBoYS1lbmFibGVkIC5zcC10b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4uc3AtYWxwaGEtZW5hYmxlZCAuc3AtYWxwaGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNwLWFscGhhLWhhbmRsZSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOi00cHg7XG4gICAgYm90dG9tOiAtNHB4O1xuICAgIHdpZHRoOiA2cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAuODtcbn1cbi5zcC1hbHBoYSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMTRweDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogOHB4O1xufVxuLnNwLWFscGhhLWlubmVyIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xufVxuXG4uc3AtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zcC1jbGVhci5zcC1jbGVhci1kaXNwbGF5IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5zcC1jbGVhci1lbmFibGVkIC5zcC1jbGVhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjBweDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIGxlZnQ6ODQlO1xuICAgIGhlaWdodDogMjhweDtcbn1cblxuLyogRG9uJ3QgYWxsb3cgdGV4dCBzZWxlY3Rpb24gKi9cbi5zcC1jb250YWluZXIsIC5zcC1yZXBsYWNlciwgLnNwLXByZXZpZXcsIC5zcC1kcmFnZ2VyLCAuc3Atc2xpZGVyLCAuc3AtYWxwaGEsIC5zcC1jbGVhciwgLnNwLWFscGhhLWhhbmRsZSwgLnNwLWNvbnRhaW5lci5zcC1kcmFnZ2luZyAuc3AtaW5wdXQsIC5zcC1jb250YWluZXIgYnV0dG9uICB7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IC1tb3otbm9uZTtcbiAgICAtby11c2VyLXNlbGVjdDpub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc3AtY29udGFpbmVyLnNwLWlucHV0LWRpc2FibGVkIC5zcC1pbnB1dC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc3AtY29udGFpbmVyLnNwLWJ1dHRvbnMtZGlzYWJsZWQgLnNwLWJ1dHRvbi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc3AtY29udGFpbmVyLnNwLXBhbGV0dGUtYnV0dG9ucy1kaXNhYmxlZCAuc3AtcGFsZXR0ZS1idXR0b24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNwLXBhbGV0dGUtb25seSAuc3AtcGlja2VyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zcC1wYWxldHRlLWRpc2FibGVkIC5zcC1wYWxldHRlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNwLWluaXRpYWwtZGlzYWJsZWQgLnNwLWluaXRpYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogR3JhZGllbnRzIGZvciBodWUsIHNhdHVyYXRpb24gYW5kIHZhbHVlIGluc3RlYWQgb2YgaW1hZ2VzLiAgTm90IHByZXR0eS4uLiBidXQgaXQgd29ya3MgKi9cbi5zcC1zYXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAgMCAwLCAxMDAlIDAsIGZyb20oI0ZGRiksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjRkZGLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYsIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpO1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZSA9IDEsIHN0YXJ0Q29sb3JzdHI9I0ZGRkZGRkZGLCBlbmRDb2xvcnN0cj0jMDBDQzlBODEpXCI7XG4gICAgZmlsdGVyIDogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZSA9IDEsIHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjMDBDQzlBODEnKTtcbn1cbi5zcC12YWwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDAgMCwgZnJvbSgjMDAwMDAwKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgIzAwMDAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jMDBDQzlBODEsIGVuZENvbG9yc3RyPSNGRjAwMDAwMClcIjtcbiAgICBmaWx0ZXIgOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwQ0M5QTgxJywgZW5kQ29sb3JzdHI9JyNGRjAwMDAwMCcpO1xufVxuXG4uc3AtaHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmMDAwMCAwJSwgI2ZmZmYwMCAxNyUsICMwMGZmMDAgMzMlLCAjMDBmZmZmIDUwJSwgIzAwMDBmZiA2NyUsICNmZjAwZmYgODMlLCAjZmYwMDAwIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNmZjAwMDApLCBjb2xvci1zdG9wKDAuMTcsICNmZmZmMDApLCBjb2xvci1zdG9wKDAuMzMsICMwMGZmMDApLCBjb2xvci1zdG9wKDAuNSwgIzAwZmZmZiksIGNvbG9yLXN0b3AoMC42NywgIzAwMDBmZiksIGNvbG9yLXN0b3AoMC44MywgI2ZmMDBmZiksIHRvKCNmZjAwMDApKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmYwMDAwIDAlLCAjZmZmZjAwIDE3JSwgIzAwZmYwMCAzMyUsICMwMGZmZmYgNTAlLCAjMDAwMGZmIDY3JSwgI2ZmMDBmZiA4MyUsICNmZjAwMDAgMTAwJSk7XG59XG5cbi8qIElFIGZpbHRlcnMgZG8gbm90IHN1cHBvcnQgbXVsdGlwbGUgY29sb3Igc3RvcHMuXG4gICBHZW5lcmF0ZSA2IGRpdnMsIGxpbmUgdGhlbSB1cCwgYW5kIGRvIHR3byBjb2xvciBncmFkaWVudHMgZm9yIGVhY2guXG4gICBZZXMsIHJlYWxseS5cbiAqL1xuLnNwLTEge1xuICAgIGhlaWdodDoxNyU7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDAwMCcsIGVuZENvbG9yc3RyPScjZmZmZjAwJyk7XG59XG4uc3AtMiB7XG4gICAgaGVpZ2h0OjE2JTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZjAwJywgZW5kQ29sb3JzdHI9JyMwMGZmMDAnKTtcbn1cbi5zcC0zIHtcbiAgICBoZWlnaHQ6MTclO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwMGZmMDAnLCBlbmRDb2xvcnN0cj0nIzAwZmZmZicpO1xufVxuLnNwLTQge1xuICAgIGhlaWdodDoxNyU7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwZmZmZicsIGVuZENvbG9yc3RyPScjMDAwMGZmJyk7XG59XG4uc3AtNSB7XG4gICAgaGVpZ2h0OjE2JTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDAwMGZmJywgZW5kQ29sb3JzdHI9JyNmZjAwZmYnKTtcbn1cbi5zcC02IHtcbiAgICBoZWlnaHQ6MTclO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwZmYnLCBlbmRDb2xvcnN0cj0nI2ZmMDAwMCcpO1xufVxuXG4uc3AtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIENsZWFyZml4IGhhY2sgKi9cbi5zcC1jZjpiZWZvcmUsIC5zcC1jZjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyB9XG4uc3AtY2Y6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuLnNwLWNmIHsgKnpvb206IDE7IH1cblxuLyogTW9iaWxlIGRldmljZXMsIG1ha2UgaHVlIHNsaWRlciBiaWdnZXIgc28gaXQgaXMgZWFzaWVyIHRvIHNsaWRlICovXG5AbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnNwLWNvbG9yIHsgcmlnaHQ6IDQwJTsgfVxuICAgIC5zcC1odWUgeyBsZWZ0OiA2MyU7IH1cbiAgICAuc3AtZmlsbCB7IHBhZGRpbmctdG9wOiA2MCU7IH1cbn1cbi5zcC1kcmFnZ2VyIHtcbiAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgIGhlaWdodDogNXB4O1xuICAgd2lkdGg6IDVweDtcbiAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgY3Vyc29yOiBwb2ludGVyO1xuICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICB0b3A6MDtcbiAgIGxlZnQ6IDA7XG59XG4uc3Atc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgbGVmdDogLTFweDtcbiAgICByaWdodDogLTFweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIG9wYWNpdHk6IC44O1xufVxuXG4vKlxuVGhlbWUgYXV0aG9yczpcbkhlcmUgYXJlIHRoZSBiYXNpYyB0aGVtZWFibGUgZGlzcGxheSBvcHRpb25zIChjb2xvcnMsIGZvbnRzLCBnbG9iYWwgd2lkdGhzKS5cblNlZSBodHRwOi8vYmdyaW5zLmdpdGh1Yi5pby9zcGVjdHJ1bS90aGVtZXMvIGZvciBpbnN0cnVjdGlvbnMuXG4qL1xuXG4uc3AtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0VDRUM7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2YwYzQ5QjtcbiAgICBwYWRkaW5nOiAwO1xufVxuLnNwLWNvbnRhaW5lciwgLnNwLWNvbnRhaW5lciBidXR0b24sIC5zcC1jb250YWluZXIgaW5wdXQsIC5zcC1jb2xvciwgLnNwLWh1ZSwgLnNwLWNsZWFyIHtcbiAgICBmb250OiBub3JtYWwgMTJweCBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJMdWNpZGEgU2FucyBVbmljb2RlXCIsIFwiTHVjaWRhIFNhbnNcIiwgR2VuZXZhLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1zLWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5zcC10b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbn1cbi5zcC1jb2xvciwgLnNwLWh1ZSwgLnNwLWNsZWFyIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjNjY2O1xufVxuXG4vKiBJbnB1dCAqL1xuLnNwLWlucHV0LWNvbnRhaW5lciB7XG4gICAgZmxvYXQ6cmlnaHQ7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5zcC1pbml0aWFsLWRpc2FibGVkICAuc3AtaW5wdXQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zcC1pbnB1dCB7XG4gICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgIGJvcmRlcjogMXB4IGluc2V0O1xuICAgcGFkZGluZzogNHB4IDVweDtcbiAgIG1hcmdpbjogMDtcbiAgIHdpZHRoOiAxMDAlO1xuICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgIGNvbG9yOiAjMjIyO1xufVxuLnNwLWlucHV0OmZvY3VzICB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgb3JhbmdlO1xufVxuLnNwLWlucHV0LnNwLXZhbGlkYXRpb24tZXJyb3Ige1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICBiYWNrZ3JvdW5kOiAjZmRkO1xufVxuLnNwLXBpY2tlci1jb250YWluZXIgLCAuc3AtcGFsZXR0ZS1jb250YWluZXIge1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0yOTBweDtcbn1cbi5zcC1waWNrZXItY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTcycHg7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmZmO1xufVxuXG4vKiBQYWxldHRlcyAqL1xuLnNwLXBhbGV0dGUtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjY2NjO1xufVxuXG4uc3AtcGFsZXR0ZS1vbmx5IC5zcC1wYWxldHRlLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4uc3AtcGFsZXR0ZSAuc3AtdGh1bWItZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbjogM3B4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6c29saWQgMnB4IHRyYW5zcGFyZW50O1xufVxuLnNwLXBhbGV0dGUgLnNwLXRodW1iLWVsOmhvdmVyLCAuc3AtcGFsZXR0ZSAuc3AtdGh1bWItZWwuc3AtdGh1bWItYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IG9yYW5nZTtcbn1cbi5zcC10aHVtYi1lbCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5cbi8qIEluaXRpYWwgKi9cbi5zcC1pbml0aWFsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xufVxuLnNwLWluaXRpYWwgc3BhbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJvcmRlcjpub25lO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBtYXJnaW46MDtcbn1cblxuLnNwLWluaXRpYWwgLnNwLWNsZWFyLWRpc3BsYXkge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLyogQnV0dG9ucyAqL1xuLnNwLXBhbGV0dGUtYnV0dG9uLWNvbnRhaW5lcixcbi5zcC1idXR0b24tY29udGFpbmVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIFJlcGxhY2VyICh0aGUgbGl0dGxlIHByZXZpZXcgZGl2IHRoYXQgc2hvd3MgdXAgaW5zdGVhZCBvZiB0aGUgPGlucHV0PikgKi9cbi5zcC1yZXBsYWNlciB7XG4gICAgbWFyZ2luOjA7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAqem9vbTogMTtcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICM5MTc2NWQ7XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICBjb2xvcjogIzMzMztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnNwLXJlcGxhY2VyOmhvdmVyLCAuc3AtcmVwbGFjZXIuc3AtYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICNGMEM0OUI7XG4gICAgY29sb3I6ICMxMTE7XG59XG4uc3AtcmVwbGFjZXIuc3AtZGlzYWJsZWQge1xuICAgIGN1cnNvcjpkZWZhdWx0O1xuICAgIGJvcmRlci1jb2xvcjogc2lsdmVyO1xuICAgIGNvbG9yOiBzaWx2ZXI7XG59XG4uc3AtZGQge1xuICAgIHBhZGRpbmc6IDJweCAwO1xuICAgIGhlaWdodDogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBmbG9hdDpsZWZ0O1xuICAgIGZvbnQtc2l6ZToxMHB4O1xufVxuLnNwLXByZXZpZXcge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHdpZHRoOjI1cHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICMyMjI7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4uc3AtcGFsZXR0ZSB7XG4gICAgKndpZHRoOiAyMjBweDtcbiAgICBtYXgtd2lkdGg6IDIyMHB4O1xufVxuLnNwLXBhbGV0dGUgLnNwLXRodW1iLWVsIHtcbiAgICB3aWR0aDoxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW46MnB4IDFweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZDBkMGQwO1xufVxuXG4uc3AtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTowO1xufVxuXG5cbi8qIEJ1dHRvbnM6IGh0dHA6Ly9oZWxsb2hhcHB5Lm9yZy9jc3MzLWJ1dHRvbnMvICovXG4uc3AtY29udGFpbmVyIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSwgI2NjY2NjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSwgI2NjY2NjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlLCAjY2NjY2NjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSwgI2NjY2NjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUsICNjY2NjY2MpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JiYjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogNXB4IDRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZWVlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnNwLWNvbnRhaW5lciBidXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZGRkZGRkLCAjYmJiYmJiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNkZGRkZGQsICNiYmJiYmIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZGRkZGRkLCAjYmJiYmJiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZGRkZGRkLCAjYmJiYmJiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZGRkZGRkLCAjYmJiYmJiKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTk5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZGRkO1xufVxuLnNwLWNvbnRhaW5lciBidXR0b246YWN0aXZlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODg4O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAycHggI2FhYWFhYSwgMCAxcHggMCAwICNlZWVlZWU7XG4gICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4IDJweCAjYWFhYWFhLCAwIDFweCAwIDAgI2VlZWVlZTtcbiAgICAtbXMtYm94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAycHggI2FhYWFhYSwgMCAxcHggMCAwICNlZWVlZWU7XG4gICAgLW8tYm94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAycHggI2FhYWFhYSwgMCAxcHggMCAwICNlZWVlZWU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAycHggI2FhYWFhYSwgMCAxcHggMCAwICNlZWVlZWU7XG59XG4uc3AtY2FuY2VsIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICNkOTNmM2YgIWltcG9ydGFudDtcbiAgICBtYXJnaW46MDtcbiAgICBwYWRkaW5nOjJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuXG59XG4uc3AtY2FuY2VsOmhvdmVyIHtcbiAgICBjb2xvcjogI2Q5M2YzZiAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5cbi5zcC1wYWxldHRlIHNwYW46aG92ZXIsIC5zcC1wYWxldHRlIHNwYW4uc3AtdGh1bWItYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDA7XG59XG5cbi5zcC1wcmV2aWV3LCAuc3AtYWxwaGEsIC5zcC10aHVtYi1lbCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQXdBQUFBTUNBSUFBQURaRjh1d0FBQUFHVWxFUVZRWVYyTTRnd0grWXdDR0lhc0lVd2hUMjVCVkJBRHR6WU5Zckh2djRnQUFBQUJKUlU1RXJrSmdnZz09KTtcbn1cbi5zcC1wcmV2aWV3LWlubmVyLCAuc3AtYWxwaGEtaW5uZXIsIC5zcC10aHVtYi1pbm5lciB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtsZWZ0OjA7Ym90dG9tOjA7cmlnaHQ6MDtcbn1cblxuLnNwLXBhbGV0dGUgLnNwLXRodW1iLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5zcC1wYWxldHRlIC5zcC10aHVtYi1saWdodC5zcC10aHVtYi1hY3RpdmUgLnNwLXRodW1iLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCSUFBQUFTQ0FZQUFBQld6bzVYQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJVkpSRUZVZU5waVlCaHNnSkZNZmZ4QVhBQmxONUpydVQ0UTN3ZmkvMERzVDY0aDhVRDhIbXBJUENXRy9LZW1JZk9KQ1VCK0FvYWN4NkVHQlp5SEJxSStXc0RDd3VROW1oeGVnMkEyMTBOdGZvOGtsazlzT01pamFVUm03eWMxVVAyUk5DTWJLRTlPREsxSE02aWVnWUxrZng4cGxpZ0M5bENEN0ttUm9mMFpoalFBQ0RBQWNlb3ZydHBWQlJrQUFBQUFTVVZPUks1Q1lJST0pO1xufVxuXG4uc3AtcGFsZXR0ZSAuc3AtdGh1bWItZGFyay5zcC10aHVtYi1hY3RpdmUgLnNwLXRodW1iLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCSUFBQUFTQ0FZQUFBQld6bzVYQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUFhZEVWWWRGTnZablIzWVhKbEFGQmhhVzUwTGs1RlZDQjJNeTQxTGpFd01QUnlvUUFBQU1kSlJFRlVPRSt0a2dzTnd6QU1STXVnRUFhaEVBYWhFQVpoRUFxbEVBWmhFQW9oRUFZaDgxWDJkSW04ZktwRXNwTEd2dWRQT3NVWXB4RTJCSUpDcm9KbUVXOXFKK01LYUJGaEVNTmFiU3k5b0ljSVB3ckIrYWZ2QVVGb0s0SDB0TWFRM1h0bHJnZ0RoT1ZWTXVUNEU1TU1HMEZCYkNFWXpqWVQ3T3hMRXZJSFFMWTJ6V3dRM0QrOWx1eU9RVGZLRGlGRDNpVUlmUGs4VnFyS2pnQWlTZkdGUGVjcmc2SE42bS9pQmN3aURBbzdXaUJlYXdhK0t3aDd0Wm9TQ0dMTXF3bFNBelZEaG9LKzZ2SDRHMFA1d2RrQUFBQUFTVVZPUks1Q1lJST0pO1xufVxuXG4uc3AtY2xlYXItZGlzcGxheSB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoRkFBVUFQY0FBQUFBQUptWm1aMmRuWjZlbnFLaW9xT2pvNlNrcEtXbHBhYW1wcWVucDZpb3FLbXBxYXFxcXF1cnEvSHg4Zkx5OHZUMDlQWDE5ZmYzOS9qNCtQbjUrZnI2K3Z2Nyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNINUJBRUFBUDhBTEFBQUFBQVVBQlFBQUFpaEFQOUZvUEN2b01HREJ5MDgrRWRoUUFJSkNDTXliQ0RBQVlVRUFSQkFsRmlRUW9NQUJRaEtVSkJ4WTBTUElDRVlIQm5nZ0VtREtBdW9QTWpTNWNHWU14SFczSWlUNDc4SkpBOE0vQ2pUWjBHZ0xSZWtOR3B3QXNZQUJISXlwY0FnUU1zSVREdFdKWUJSNk5TcU1pY285Y3FSNnRLZlk3R2VCQ3VWd2xpcERObWVmQXRUcmtTekIxUmFJQW9Yb2RzQUJpWkFFRkIwNmdJQldDMW1MVmdCYTBBQU93PT0pO1xufVxuXG4vKiohXG4gIFZpc3VhbGl6YXRpb24gQ2xhc3NlcyBmb3IgZGVidWdnaW5nIHRoZSB2ZXJ0aWNhbC1jb2xsZWN0aW9uXG4gICovXG4udmVydGljYWwtY29sbGVjdGlvbi12aXN1YWwtZGVidWdnZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHJnYmEoNTAsIDUwLCA1MCwgMSk7XG4gIHdpZHRoOiAxMjVweDtcbn1cblxuLnZlcnRpY2FsLWNvbGxlY3Rpb24tdmlzdWFsLWRlYnVnZ2VyIC52Y192aXN1YWxpemF0aW9uLWNvbnRhaW5lciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yNSk7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4udmVydGljYWwtY29sbGVjdGlvbi12aXN1YWwtZGVidWdnZXIgLnZjX3Zpc3VhbGl6YXRpb24tc2NyZWVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJvcmRlci10b3A6IDJweCBkYXNoZWQgeWVsbG93O1xuICBib3JkZXItYm90dG9tOiAycHggZGFzaGVkIHllbGxvdztcbiAgd2lkdGg6IDUwMHB4O1xufVxuXG4udmVydGljYWwtY29sbGVjdGlvbi12aXN1YWwtZGVidWdnZXIgLnZjX3Zpc3VhbGl6YXRpb24tc2Nyb2xsLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDUwMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMCwgMjMwLCAxMDAsIDAuNjUpO1xufVxuXG4udmVydGljYWwtY29sbGVjdGlvbi12aXN1YWwtZGVidWdnZXIgLnZjX3Zpc3VhbGl6YXRpb24taXRlbS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MDBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpO1xufVxuXG4udmVydGljYWwtY29sbGVjdGlvbi12aXN1YWwtZGVidWdnZXIgLnZjX3Zpc3VhbGl6YXRpb24tdmlydHVhbC1jb21wb25lbnQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIzMCwgMTAwLCAyMzAsIDAuNik7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCAjYmJiO1xuICBib3JkZXItdG9wOiAwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIHdpZHRoOiAyNTBweDtcbn1cblxuLnZlcnRpY2FsLWNvbGxlY3Rpb24tdmlzdWFsLWRlYnVnZ2VyIC52Y192aXN1YWxpemF0aW9uLXZpcnR1YWwtY29tcG9uZW50OmZpcnN0LW9mLXR5cGUge1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkICNiYmI7XG59XG5cbi52ZXJ0aWNhbC1jb2xsZWN0aW9uLXZpc3VhbC1kZWJ1Z2dlciAudmNfdmlzdWFsaXphdGlvbi12aXJ0dWFsLWNvbXBvbmVudC5jdWxsZWQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuIC8qXG4gKiAjIFNlbWFudGljIFVJIC0gMi40LjJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9TZW1hbnRpYy1PcmcvU2VtYW50aWMtVUlcbiAqIGh0dHA6Ly93d3cuc2VtYW50aWMtdWkuY29tL1xuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxhdG86MTAwLDMwMCw0MDAsNzAwLDkwMCZzdWJzZXQ9bGF0aW4nKTtcbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFJlc2V0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJlc2V0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBCb3JkZXItQm94ICovXG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIGlQYWQgSW5wdXQgU2hhZG93cyAqL1xuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogbW9iaWxlIGZpcmVmb3ggdG9vISAqL1xufVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyxcbm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFNpdGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUGFnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG1pbi13aWR0aDogMzIwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEhlYWRlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS4yODU3MTQyOWVtO1xuICBtYXJnaW46IGNhbGMoMnJlbSAtICAwLjE0Mjg1NzE0ZW0gKSAwZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuaDEge1xuICBtaW4taGVpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDEuMDcxNDI4NTdyZW07XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5oMTpmaXJzdC1jaGlsZCxcbmgyOmZpcnN0LWNoaWxkLFxuaDM6Zmlyc3QtY2hpbGQsXG5oNDpmaXJzdC1jaGlsZCxcbmg1OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG5oMTpsYXN0LWNoaWxkLFxuaDI6bGFzdC1jaGlsZCxcbmgzOmxhc3QtY2hpbGQsXG5oNDpsYXN0LWNoaWxkLFxuaDU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUZXh0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5wIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xufVxuXG5wOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG5wOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5hIHtcbiAgY29sb3I6ICM0MTgzQzQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTY3JvbGxiYXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIEhpZ2hsaWdodGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU2l0ZSAqL1xuXG46Oi13ZWJraXQtc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NDRTJGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFMkZGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFMkZGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLyogRm9ybSAqL1xuXG50ZXh0YXJlYTo6LXdlYmtpdC1zZWxlY3Rpb24sXG5pbnB1dDo6LXdlYmtpdC1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG50ZXh0YXJlYTo6LW1vei1zZWxlY3Rpb24sXG5pbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG50ZXh0YXJlYTo6LW1vei1zZWxlY3Rpb24sXG5pbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG50ZXh0YXJlYTo6c2VsZWN0aW9uLFxuaW5wdXQ6OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxMDAsIDEwMCwgMC40KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIEZvcmNlIFNpbXBsZSBTY3JvbGxiYXJzICovXG5cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cblxuYm9keSA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbmJvZHkgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG5ib2R5IDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6d2luZG93LWluYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuYm9keSA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMjgsIDEzNSwgMTM5LCAwLjgpO1xufVxuXG4vKiBJbnZlcnRlZCBVSSAqL1xuXG5ib2R5IC51aS5pbnZlcnRlZDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbmJvZHkgLnVpLmludmVydGVkOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbmJvZHkgLnVpLmludmVydGVkOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG5ib2R5IC51aS5pbnZlcnRlZDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBHbG9iYWwgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBCdXR0b25cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBCdXR0b25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogI0UwRTFFMiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDEuNWVtIDAuNzg1NzE0MjllbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB3aWxsLWNoYW5nZTogJyc7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NBQ0JDRDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuYnV0dG9uOmhvdmVyIC5pY29uIHtcbiAgb3BhY2l0eTogMC44NTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0FDQkNEO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAnJyAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICcnICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6ICcnICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b246Zm9jdXMgLmljb24ge1xuICBvcGFjaXR5OiAwLjg1O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3duXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uOmFjdGl2ZSxcbi51aS5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCQUJCQkM7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICcnO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldCwgbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50IGluc2V0LCBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzBDMUMyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50IGluc2V0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLnVpLmFjdGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzBDMUMyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLnVpLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0MwQzFDMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNwZWNpZmljaXR5IGhhY2sgKi9cblxuLnVpLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhciwgb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXIsIG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuXG4udWkubG9hZGluZy5idXR0b246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDBlbSAwZW0gLTAuNjQyODU3MTRlbTtcbiAgd2lkdGg6IDEuMjg1NzE0MjllbTtcbiAgaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4udWkubG9hZGluZy5idXR0b246YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0wLjY0Mjg1NzE0ZW0gMGVtIDBlbSAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5sYWJlbGVkLmljb24ubG9hZGluZy5idXR0b24gLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYnV0dG9uLXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYnV0dG9uLXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi51aS5iYXNpYy5sb2FkaW5nLmJ1dHRvbjpub3QoLmludmVydGVkKTpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmJhc2ljLmxvYWRpbmcuYnV0dG9uOm5vdCguaW52ZXJ0ZWQpOmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzc2NzY3Njtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9ucyAuZGlzYWJsZWQuYnV0dG9uLFxuLnVpLmRpc2FibGVkLmJ1dHRvbixcbi51aS5idXR0b246ZGlzYWJsZWQsXG4udWkuZGlzYWJsZWQuYnV0dG9uOmhvdmVyLFxuLnVpLmRpc2FibGVkLmFjdGl2ZS5idXR0b24ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuNDUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyBHcm91cCBXaXRoIERpc2FibGVkICovXG5cbi51aS5iYXNpYy5idXR0b25zIC51aS5kaXNhYmxlZC5idXR0b24ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC41KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQW5pbWF0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFuaW1hdGVkLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi51aS5hbmltYXRlZC5idXR0b24gLmNvbnRlbnQge1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi51aS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogSG9yaXpvbnRhbCAqL1xuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2UgMHM7XG59XG5cbi51aS5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwJTtcbn1cblxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tdG9wOiAtMC41ZW07XG59XG5cbi51aS5hbmltYXRlZC5idXR0b246Zm9jdXMgLnZpc2libGUuY29udGVudCxcbi51aS5hbmltYXRlZC5idXR0b246aG92ZXIgLnZpc2libGUuY29udGVudCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAyMDAlO1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC5oaWRkZW4uY29udGVudCxcbi51aS5hbmltYXRlZC5idXR0b246aG92ZXIgLmhpZGRlbi5jb250ZW50IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDAlO1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICByaWdodDogYXV0bztcbn1cblxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IC01MCU7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbn1cblxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbjpmb2N1cyAudmlzaWJsZS5jb250ZW50LFxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b246Zm9jdXMgLmhpZGRlbi5jb250ZW50LFxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEZhZGUgKi9cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgb3BhY2l0eTogMDtcbiAgbGVmdDogMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xufVxuXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b246Zm9jdXMgLnZpc2libGUuY29udGVudCxcbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAudmlzaWJsZS5jb250ZW50IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uOmZvY3VzIC5oaWRkZW4uY29udGVudCxcbi51aS5mYWRlLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICBsZWZ0OiAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRkZGRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRkZGRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIEdyb3VwICovXG5cbi51aS5pbnZlcnRlZC5idXR0b25zIC5idXR0b24ge1xuICBtYXJnaW46IDBweCAwcHggMHB4IC0ycHg7XG59XG5cbi51aS5pbnZlcnRlZC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4udWkuaW52ZXJ0ZWQudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwcHggMHB4IC0ycHggMHB4O1xufVxuXG4udWkuaW52ZXJ0ZWQudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4vKiBTdGF0ZXMgKi9cblxuLyogSG92ZXIgKi9cblxuLnVpLmludmVydGVkLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRkZGRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRkZGRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogQWN0aXZlIC8gRm9jdXMgKi9cblxuLnVpLmludmVydGVkLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5idXR0b24uYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGRkZGRiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGRkZGRiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBBY3RpdmUgRm9jdXMgKi9cblxuLnVpLmludmVydGVkLmJ1dHRvbi5hY3RpdmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRENERERFO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRENERERFIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRENERERFIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExhYmVsZWQgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbGVkLmJ1dHRvbjpub3QoLmljb24pIHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbGVkLmJ1dHRvbiA+IC5idXR0b24ge1xuICBtYXJnaW46IDBweDtcbn1cblxuLnVpLmxhYmVsZWQuYnV0dG9uID4gLmxhYmVsIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDBweCAwcHggMHB4IC0xcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogJyc7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIFRhZyAqL1xuXG4udWkubGFiZWxlZC5idXR0b24gPiAudGFnLmxhYmVsOmJlZm9yZSB7XG4gIHdpZHRoOiAxLjg1ZW07XG4gIGhlaWdodDogMS44NWVtO1xufVxuXG4vKiBSaWdodCAqL1xuXG4udWkubGFiZWxlZC5idXR0b246bm90KFtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0pID4gLmJ1dHRvbiB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG59XG5cbi51aS5sYWJlbGVkLmJ1dHRvbjpub3QoW2NsYXNzKj1cImxlZnQgbGFiZWxlZFwiXSkgPiAubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbn1cblxuLyogTGVmdCBTaWRlICovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0uYnV0dG9uID4gLmJ1dHRvbiB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBsYWJlbGVkXCJdLmJ1dHRvbiA+IC5sYWJlbCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFNvY2lhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGYWNlYm9vayAqL1xuXG4udWkuZmFjZWJvb2suYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNCNTk5ODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmZhY2Vib29rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDRkOGE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmZhY2Vib29rLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQ0MzczO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFR3aXR0ZXIgKi9cblxuLnVpLnR3aXR0ZXIuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1QUNFRTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnR3aXR0ZXIuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM1YTJmNDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudHdpdHRlci5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3OTVlOTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBHb29nbGUgUGx1cyAqL1xuXG4udWkuZ29vZ2xlLnBsdXMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RENEIzOTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmdvb2dsZS5wbHVzLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMDMyMWM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmdvb2dsZS5wbHVzLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMzIxO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIExpbmtlZCBJbiAqL1xuXG4udWkubGlua2VkaW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGODhCRTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkubGlua2VkaW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0N2JhZjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkubGlua2VkaW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxODY5OTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogWW91VHViZSAqL1xuXG4udWkueW91dHViZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkueW91dHViZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS55b3V0dWJlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEluc3RhZ3JhbSAqL1xuXG4udWkuaW5zdGFncmFtLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0OTc2OUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5pbnN0YWdyYW0uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkNjk4ZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW5zdGFncmFtLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzk1Yzc5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFBpbnRlcmVzdCAqL1xuXG4udWkucGludGVyZXN0LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRDA4MUM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5waW50ZXJlc3QuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjMDAxMztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucGludGVyZXN0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGMwNjE1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFZLICovXG5cbi51aS52ay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEQ3MTk4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS52ay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE2NDhhO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLnZrLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M1ODc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uID4gLmljb246bm90KC5idXR0b24pIHtcbiAgaGVpZ2h0OiAwLjg1NzE0Mjg2ZW07XG4gIG9wYWNpdHk6IDAuODtcbiAgbWFyZ2luOiAwZW0gMC40Mjg1NzE0M2VtIDBlbSAtMC4yMTQyODU3MWVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgdmVydGljYWwtYWxpZ246ICcnO1xuICBjb2xvcjogJyc7XG59XG5cbi51aS5idXR0b246bm90KC5pY29uKSA+IC5pY29uOm5vdCguYnV0dG9uKTpub3QoLmRyb3Bkb3duKSB7XG4gIG1hcmdpbjogMGVtIDAuNDI4NTcxNDNlbSAwZW0gLTAuMjE0Mjg1NzFlbTtcbn1cblxuLnVpLmJ1dHRvbjpub3QoLmljb24pID4gLnJpZ2h0Lmljb246bm90KC5idXR0b24pOm5vdCguZHJvcGRvd24pIHtcbiAgbWFyZ2luOiAwZW0gLTAuMjE0Mjg1NzFlbSAwZW0gMC40Mjg1NzE0M2VtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uYnV0dG9ucyxcbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uYnV0dG9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5idXR0b25zLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uYnV0dG9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC5idXR0b25zIC5idXR0b24sXG4udWkuY29tcGFjdC5idXR0b24ge1xuICBwYWRkaW5nOiAwLjU4OTI4NTcxZW0gMS4xMjVlbSAwLjU4OTI4NTcxZW07XG59XG5cbi51aS5jb21wYWN0Lmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmNvbXBhY3QuaWNvbi5idXR0b24ge1xuICBwYWRkaW5nOiAwLjU4OTI4NTcxZW0gMC41ODkyODU3MWVtIDAuNTg5Mjg1NzFlbTtcbn1cblxuLnVpLmNvbXBhY3QubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5jb21wYWN0LmxhYmVsZWQuaWNvbi5idXR0b24ge1xuICBwYWRkaW5nOiAwLjU4OTI4NTcxZW0gMy42OTY0Mjg1N2VtIDAuNTg5Mjg1NzFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5taW5pLmJ1dHRvbnMgLm9yLFxuLnVpLm1pbmkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS5idXR0b25zIC5idXR0b24sXG4udWkudGlueS5idXR0b25zIC5vcixcbi51aS50aW55LmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cblxuLnVpLnNtYWxsLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5zbWFsbC5idXR0b25zIC5vcixcbi51aS5zbWFsbC5idXR0b24ge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5idXR0b25zIC5idXR0b24sXG4udWkuYnV0dG9ucyAub3IsXG4udWkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmxhcmdlLmJ1dHRvbnMgLm9yLFxuLnVpLmxhcmdlLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmJpZy5idXR0b25zIC5idXR0b24sXG4udWkuYmlnLmJ1dHRvbnMgLm9yLFxuLnVpLmJpZy5idXR0b24ge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5odWdlLmJ1dHRvbnMgLm9yLFxuLnVpLmh1Z2UuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuXG4udWkubWFzc2l2ZS5idXR0b25zIC5idXR0b24sXG4udWkubWFzc2l2ZS5idXR0b25zIC5vcixcbi51aS5tYXNzaXZlLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEljb24gT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmljb24uYnV0dG9uIHtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDAuNzg1NzE0MjllbSAwLjc4NTcxNDI5ZW07XG59XG5cbi51aS5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uLFxuLnVpLmljb24uYnV0dG9uID4gLmljb24ge1xuICBvcGFjaXR5OiAwLjk7XG4gIG1hcmdpbjogMGVtICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5iYXNpYy5idXR0b25zIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSkgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSkgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0Y4RjhGOCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgaW5zZXQsIDBweCAxcHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSBpbnNldCwgMHB4IDFweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJycgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogJycgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuYWN0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi8qIFZlcnRpY2FsICovXG5cbi51aS5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldCBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSkgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0IGluc2V0O1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgaW5zZXQsIDBweCAxcHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0IGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSBpbnNldCwgMHB4IDFweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQgaW5zZXQ7XG59XG5cbi51aS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAnJyAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAnJyAhaW1wb3J0YW50O1xufVxuXG4vKiBTdGFuZGFyZCBCYXNpYyBJbnZlcnRlZCAqL1xuXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRjlGQUZCICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZmZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZmZmZmYgaW5zZXQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgaW5zZXQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xufVxuXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5pbnZlcnRlZC5hY3RpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyBHcm91cCAqL1xuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5iYXNpYy52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLmJhc2ljLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkuYmFzaWMudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIExhYmVsZWQgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b24sXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiA0LjA3MTQyODU3ZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMS41ZW0gIWltcG9ydGFudDtcbn1cblxuLyogTGVmdCBMYWJlbGVkICovXG5cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyA+IC5idXR0b24gPiAuaWNvbixcbi51aS5sYWJlbGVkLmljb24uYnV0dG9uID4gLmljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDBlbTtcbiAgd2lkdGg6IDIuNTcxNDI4NTdlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6ICcnO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb24sXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uIHtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBlbTtcbn1cblxuLyogUmlnaHQgTGFiZWxlZCAqL1xuXG4udWlbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuMDcxNDI4NTdlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmljb24uYnV0dG9uID4gLmljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMHB4IDBweCAwcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDFweCAwcHggMHB4IDBweCB0cmFuc3BhcmVudCBpbnNldDtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zID4gLmJ1dHRvbiA+IC5pY29uOmJlZm9yZSxcbi51aS5sYWJlbGVkLmljb24uYnV0dG9uID4gLmljb246YmVmb3JlLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zID4gLmJ1dHRvbiA+IC5pY29uOmFmdGVyLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkudmVydGljYWwubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkudmVydGljYWwubGFiZWxlZC5pY29uLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkID4gLmljb24ge1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi8qIEZsdWlkIExhYmVsZWQgKi9cblxuLnVpLmZsdWlkW2NsYXNzKj1cImxlZnQgbGFiZWxlZFwiXS5pY29uLmJ1dHRvbixcbi51aS5mbHVpZFtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmljb24uYnV0dG9uIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFRvZ2dsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVG9nZ2xlIChNb2RpZmllcyBhY3RpdmUgc3RhdGUgdG8gZ2l2ZSBhZmZvcmRhbmNlcykgKi9cblxuLnVpLnRvZ2dsZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJ1dHRvbnMgLmJ1dHRvbi50b2dnbGUuYWN0aXZlLFxuLnVpLmJ1dHRvbi50b2dnbGUuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbi50b2dnbGUuYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2YWIzOSAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2lyY3VsYXIuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMTBlbTtcbn1cblxuLnVpLmNpcmN1bGFyLmJ1dHRvbiA+IC5pY29uIHtcbiAgd2lkdGg6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIE9yIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbnMgLm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMC4zZW07XG4gIGhlaWdodDogMi41NzE0Mjg1N2VtO1xuICB6LWluZGV4OiAzO1xufVxuXG4udWkuYnV0dG9ucyAub3I6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgY29udGVudDogJ29yJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjg5Mjg1NzE0ZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC44OTI4NTcxNGVtO1xuICB3aWR0aDogMS43ODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuNzg1NzE0MjllbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzg1NzE0MjllbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldDtcbn1cblxuLnVpLmJ1dHRvbnMgLm9yW2RhdGEtdGV4dF06YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xufVxuXG4vKiBGbHVpZCBPciAqL1xuXG4udWkuZmx1aWQuYnV0dG9ucyAub3Ige1xuICB3aWR0aDogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mbHVpZC5idXR0b25zIC5vcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNpbmd1bGFyICovXG5cbi51aS5hdHRhY2hlZC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFRvcCAvIEJvdHRvbSAqL1xuXG4udWkuYXR0YWNoZWQudG9wLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuYm90dG9tLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBMZWZ0IC8gUmlnaHQgKi9cblxuLnVpLmxlZnQuYXR0YWNoZWQuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5yaWdodC5hdHRhY2hlZC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMC43NWVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbn1cblxuLyogUGx1cmFsICovXG5cbi51aS5hdHRhY2hlZC5idXR0b25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cblxuLnVpLmF0dGFjaGVkLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi8qIFRvcCAvIEJvdHRvbSAqL1xuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwZW0gMGVtO1xufVxuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi8qIExlZnQgLyBSaWdodCAqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhdHRhY2hlZFwiXS5idXR0b25zIHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtO1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0uYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGF0dGFjaGVkXCJdLmJ1dHRvbnMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBhdHRhY2hlZFwiXS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGF0dGFjaGVkXCJdLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQuYnV0dG9ucyxcbi51aS5mbHVpZC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLmZsdWlkLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkudHdvLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnR3by5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS50aHJlZS5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS50aHJlZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4udWkuZm91ci5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5mb3VyLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLmZpdmUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuZml2ZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aS5zaXguYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuc2l4LmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDE2LjY2NiU7XG59XG5cbi51aS5zZXZlbi5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5zZXZlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxNC4yODUlO1xufVxuXG4udWkuZWlnaHQuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuZWlnaHQuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aS5uaW5lLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLm5pbmUuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTEuMTElO1xufVxuXG4udWkudGVuLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnRlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi51aS5lbGV2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuZWxldmVuLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDkuMDklO1xufVxuXG4udWkudHdlbHZlLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnR3ZWx2ZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA4LjMzMzMlO1xufVxuXG4vKiBGbHVpZCBWZXJ0aWNhbCBCdXR0b25zICovXG5cbi51aS5mbHVpZC52ZXJ0aWNhbC5idXR0b25zLFxuLnVpLmZsdWlkLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnVpLnR3by52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogNTAlO1xufVxuXG4udWkudGhyZWUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDMzLjMzMyU7XG59XG5cbi51aS5mb3VyLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAyNSU7XG59XG5cbi51aS5maXZlLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAyMCU7XG59XG5cbi51aS5zaXgudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE2LjY2NiU7XG59XG5cbi51aS5zZXZlbi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMTQuMjg1JTtcbn1cblxuLnVpLmVpZ2h0LnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAxMi41JTtcbn1cblxuLnVpLm5pbmUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDExLjExJTtcbn1cblxuLnVpLnRlbi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMTAlO1xufVxuXG4udWkuZWxldmVuLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA5LjA5JTtcbn1cblxuLnVpLnR3ZWx2ZS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogOC4zMzMzJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tIEJsYWNrIC0tLSovXG5cbi51aS5ibGFjay5idXR0b25zIC5idXR0b24sXG4udWkuYmxhY2suYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkuYmxhY2suYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5ibGFjay5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmxhY2suYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjkyYTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJsYWNrLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZjMwMzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmxhY2suYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDM2Mzc7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsYWNrLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuYmxhY2suYWN0aXZlLmJ1dHRvbixcbi51aS5ibGFjay5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmMGYxMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxQjFDMUQgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxQjFDMUQgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxQjFDMUQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5ibGFjay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjcyOTJhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjcyOTJhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjcyOTJhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ibGFjay5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuYmxhY2suYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzJmMzAzMiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzJmMzAzMiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzI3MjkyYSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ibGFjay5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzBmMGYxMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzBmMGYxMCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzM0MzYzNyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzM0MzYzNyBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzM0MzYzNyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzM0MzYzNyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5ibGFjay5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0Q0RDRENSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0Q0RDRENSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMDAwMDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMDAwMDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMwMDAwMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMwMDAwMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NDU0NTQgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzAwMDAwMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzAwMDAwMCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMDAwMDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMDAwMDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEdyZXkgLS0tKi9cblxuLnVpLmdyZXkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmdyZXkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkuZ3JleS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmdyZXkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgzODM4MztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuZ3JleS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuZ3JleS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuZ3JleS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzkwOTA5MDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuZ3JleS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmdyZXkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuZ3JleS5hY3RpdmUuYnV0dG9uLFxuLnVpLmdyZXkuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2OTY5Njk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLmdyZXkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmdyZXkuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzc2NzY3NiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzc2NzY3NiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzc2NzY3NiAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JleS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuZ3JleS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjODM4MzgzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjODM4MzgzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjODM4MzgzICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5ncmV5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4YThhOGEgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4YThhOGEgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4MzgzODMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmdyZXkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ncmV5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNjk2OTY5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNjk2OTY5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOTA5MDkwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuZ3JleS5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzkwOTA5MCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzkwOTA5MCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzkwOTA5MCAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5ncmV5LmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0Q0RDRENSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0Q0RDRENSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmQwZDI7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2M5Y2I7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZDBkMjtcbn1cblxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJjNGM1O1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2NmZDBkMiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2NmZDBkMiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b246Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjYzdjOWNiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjYzdjOWNiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRENERERFICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5LmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JleS5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZmQwZDIgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZmQwZDIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZXkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmV5LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2MyYzRjNSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2MyYzRjNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBCcm93biAtLS0qL1xuXG4udWkuYnJvd24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJyb3duLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLmJyb3duLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJyb3duLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NzViMzM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5icm93bi5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTA1MzJiO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5icm93bi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJyb3duLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODA1MDMxO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5icm93bi5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJyb3duLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLmJyb3duLmFjdGl2ZS5idXR0b24sXG4udWkuYnJvd24uYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTVhMzE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5icm93bi5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTU2NzNGIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTU2NzNGIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjQTU2NzNGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5icm93bi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMuYnJvd24uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzk3NWIzMyBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzk3NWIzMyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzk3NWIzMyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM5MDUzMmIgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM5MDUzMmIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM5NzViMzMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuYnJvd24uYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM5OTVhMzEgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM5OTVhMzEgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4MDUwMzEgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMuYnJvd24uYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4MDUwMzEgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4MDUwMzEgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4MDUwMzEgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMuYnJvd24uYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNENjdDMUMgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNENjdDMUMgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNENjdDMUM7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjODZmMTE7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MxNjgwODtcbn1cblxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYnJvd24uYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzZmMGQ7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTk2MjE2O1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5icm93bi5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2M4NmYxMSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2M4NmYxMSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0Q2N0MxQyAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b246Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjYzE2ODA4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjYzE2ODA4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRDY3QzFDICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJyb3duLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYnJvd24uYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjYzZmMGQgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjYzZmMGQgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNENjdDMUMgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJyb3duLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYnJvd24uYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5icm93bi5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2E5NjIxNiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2E5NjIxNiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0Q2N0MxQyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBCbHVlIC0tLSovXG5cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg1RDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLmJsdWUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5ibHVlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjc4YzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJsdWUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNzFiYjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJsdWUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTY5YTQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsdWUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLmJsdWUuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI3OWM2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5ibHVlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMyMTg1RDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMyMTg1RDAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTg1RDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE2NzhjMiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE2NzhjMiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE2NzhjMiAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmx1ZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuYmx1ZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMGQ3MWJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMGQ3MWJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMTY3OGMyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ibHVlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuYmx1ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzEyNzljNiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzEyNzljNiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFhNjlhNCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLmJsdWUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxYTY5YTQgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxYTY5YTQgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxYTY5YTQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMuYmx1ZS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NEM4RkYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NEM4RkYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhYzBmZjtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiYmJmZjtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FjMGZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWI4ZmY7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjM2FjMGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjM2FjMGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRDOEZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyYmJiZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyYmJiZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NEM4RkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzNhYzBmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzNhYzBmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzU0QzhGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmx1ZS5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjFiOGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjFiOGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRDOEZGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEdyZWVuIC0tLSovXG5cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkuZ3JlZW4uYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2YWIzOTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmdyZWVuLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZWE0MzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuZ3JlZW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOThmMzU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmdyZWVuLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuZ3JlZW4uYWN0aXZlLmJ1dHRvbixcbi51aS5ncmVlbi5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEzYWUzODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMyMUJBNDUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMyMUJBNDUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMUJBNDUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5ncmVlbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTZhYjM5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTZhYjM5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMTZhYjM5ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ncmVlbi5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzBlYTQzMiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzBlYTQzMiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE2YWIzOSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ncmVlbi5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzEzYWUzOCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzEzYWUzOCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE5OGYzNSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ncmVlbi5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE5OGYzNSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE5OGYzNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE5OGYzNSAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5ncmVlbi5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzJFQ0M0MCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzJFQ0M0MCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzJFQ0M0MDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmUzNDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTliODJiO1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmYzIzMTtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNWEyMzM7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjJiZTM0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjJiZTM0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMkVDQzQwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMxOWI4MmIgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMxOWI4MmIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMyRUNDNDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzFmYzIzMSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzFmYzIzMSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzJFQ0M0MCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjVhMjMzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjVhMjMzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMkVDQzQwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIE9yYW5nZSAtLS0qL1xuXG4udWkub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5vcmFuZ2UuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyNzExQztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkub3JhbmdlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5vcmFuZ2UuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyNjIwMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5vcmFuZ2UuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NWIwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkub3JhbmdlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Y1OTBjO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5vcmFuZ2UuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5vcmFuZ2UuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkub3JhbmdlLmFjdGl2ZS5idXR0b24sXG4udWkub3JhbmdlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU2MTAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRjI3MTFDIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRjI3MTFDIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRjI3MTFDICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZjI2MjAyIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZjI2MjAyIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZjI2MjAyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZTU1YjAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZTU1YjAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZjI2MjAyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5vcmFuZ2UuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNmNTYxMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNmNTYxMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjZjU5MGMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2NmNTkwYyBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2NmNTkwYyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NmNTkwYyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5vcmFuZ2UuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGODUxQiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGODUxQiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGODUxQjtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjc3MDE7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE3MDAwO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY3NzAxO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTc2YjAwO1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNzcwMSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNzcwMSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGODUxQiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b246Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZjE3MDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZjE3MDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY4NTFCICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjc3MDEgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjc3MDEgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRjg1MUIgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9yYW5nZS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2U3NmIwMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2U3NmIwMCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGODUxQiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBQaW5rIC0tLSovXG5cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnBpbmsuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5waW5rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnBpbmsuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxMGY4NTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnBpbmsuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNzFmN2U7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnBpbmsuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnBpbmsuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWExNThkO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5waW5rLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNFMDM5OTcgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNFMDM5OTcgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNFMDM5OTcgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2U2MWE4ZCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2U2MWE4ZCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2U2MWE4ZCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucGluay5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMucGluay5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZTEwZjg1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZTEwZjg1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZTYxYThkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5waW5rLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucGluay5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2VhMTU4ZCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2VhMTU4ZCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2M3MWY3ZSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnBpbmsuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjNzFmN2UgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjNzFmN2UgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjNzFmN2UgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucGluay5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRjhFREYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNGRjhFREYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRjhFREY7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNzRkODtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNjVkMztcbn1cblxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY3NGQ4O1xufVxuXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjViZDE7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY3NGQ4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY3NGQ4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY4RURGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjY1ZDMgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjY1ZDMgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRjhFREYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNzRkOCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNzRkOCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGOEVERiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucGluay5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY1YmQxIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY1YmQxIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY4RURGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFZpb2xldCAtLS0qL1xuXG4udWkudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS52aW9sZXQuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0MzVDOTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkudmlvbGV0LmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS52aW9sZXQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4MjliYjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS52aW9sZXQuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRmMjBiNTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudmlvbGV0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTAyYWExO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS52aW9sZXQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS52aW9sZXQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkudmlvbGV0LmFjdGl2ZS5idXR0b24sXG4udWkudmlvbGV0LmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTYyNmJmO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy52aW9sZXQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnZpb2xldC5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNjQzNUM5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNjQzNUM5IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNjQzNUM5ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnZpb2xldC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNTgyOWJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNTgyOWJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTgyOWJiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnZpb2xldC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNGYyMGI1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNGYyMGI1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTgyOWJiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy52aW9sZXQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy52aW9sZXQuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM1NjI2YmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM1NjI2YmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1MDJhYTEgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnZpb2xldC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnZpb2xldC5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzUwMmFhMSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzUwMmFhMSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzUwMmFhMSAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy52aW9sZXQuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0EyOTFGQiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0EyOTFGQiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0EyOTFGQjtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTczZmY7XG59XG5cbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Q2NGZmO1xufVxuXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE3M2ZmO1xufVxuXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzg2MGY5O1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzhhNzNmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzhhNzNmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0EyOTFGQiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b246Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjN2Q2NGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjN2Q2NGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjQTI5MUZCICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC52aW9sZXQuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC52aW9sZXQuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM4YTczZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM4YTczZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNBMjkxRkIgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnZpb2xldC5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnZpb2xldC5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzc4NjBmOSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzc4NjBmOSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0EyOTFGQiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBQdXJwbGUgLS0tKi9cblxuLnVpLnB1cnBsZS5idXR0b25zIC5idXR0b24sXG4udWkucHVycGxlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnB1cnBsZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnB1cnBsZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkucHVycGxlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NjI3YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnB1cnBsZS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkucHVycGxlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ZjFlYjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnB1cnBsZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnB1cnBsZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgyMjk5ZjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucHVycGxlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkucHVycGxlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnB1cnBsZS5hY3RpdmUuYnV0dG9uLFxuLnVpLnB1cnBsZS5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk3MjRiZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0EzMzNDOCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0EzMzNDOCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzk2MjdiYSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzk2MjdiYSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzk2MjdiYSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzhmMWViNCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzhmMWViNCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzk2MjdiYSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucHVycGxlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjOTcyNGJlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjOTcyNGJlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjODIyOTlmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4MjI5OWYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4MjI5OWYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4MjI5OWYgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucHVycGxlLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNEQzczRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNEQzczRkYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEQzczRkY7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDY1YWZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNGFmZjtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnB1cnBsZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2NWFmZjtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmNDBmZjtcbn1cblxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cblxuLnVpLmludmVydGVkLnB1cnBsZS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkNjVhZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkNjVhZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEQzczRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2QyNGFmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2QyNGFmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0RDNzNGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZDY1YWZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZDY1YWZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjREM3M0ZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZjQwZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZjQwZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEQzczRkYgIWltcG9ydGFudDtcbn1cblxuLyotLS0gUmVkIC0tLSovXG5cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnJlZC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi51aS5yZWQuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnJlZC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAxOTE5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLnJlZC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ExMDEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5yZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5yZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMjFlMWU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5yZWQuYWN0aXZlLmJ1dHRvbixcbi51aS5yZWQuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNDE1MTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMucmVkLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNEQjI4MjggaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNEQjI4MjggaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEQjI4MjggIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMucmVkLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNkMDE5MTkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNkMDE5MTkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNkMDE5MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuYmFzaWMucmVkLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjYTEwMTAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjYTEwMTAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNkMDE5MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLnJlZC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2Q0MTUxNSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2Q0MTUxNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2IyMWUxZSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucmVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMucmVkLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjYjIxZTFlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjYjIxZTFlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjYjIxZTFlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zOm5vdCgudmVydGljYWwpID4gLmJhc2ljLnJlZC5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRkY2OTVFIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRkY2OTVFIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY2OTVFO1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNTE0NDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjQzMzU7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5yZWQuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjUxNDQ7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjM5MmI7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY1MTQ0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY1MTQ0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY2OTVFICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjQzMzUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjQzMzUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRjY5NUUgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNTE0NCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNTE0NCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGNjk1RSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmYzOTJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmYzOTJiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkY2OTVFICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFRlYWwgLS0tKi9cblxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkudGVhbC5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnRlYWwuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOWM5NTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudGVhbC5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkudGVhbC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4Yzg2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVhbC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODI3YztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudGVhbC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkudGVhbC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDljOTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnRlYWwuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzAwQjVBRCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzAwQjVBRCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMudGVhbC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMDA5Yzk1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMDA5Yzk1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDA5Yzk1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy50ZWFsLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwMDhjODYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwMDhjODYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDljOTUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy50ZWFsLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMDA5Yzk1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMDA5Yzk1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDA4MjdjICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMudGVhbC5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzAwODI3YyBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzAwODI3YyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwODI3YyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy50ZWFsLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzZERkZGRiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzZERkZGRiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzZERkZGRjtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NGZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NGZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0ZmZmZjtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FmZmZmO1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzU0ZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzU0ZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzZERkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b246Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNDRmZmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNDRmZmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNkRGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NGZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NGZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2REZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzNhZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzNhZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzZERkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBPbGl2ZSAtLS0qL1xuXG4udWkub2xpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLm9saXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLm9saXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLm9saXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhN2JkMGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5vbGl2ZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTBiNjA1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5vbGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLm9saXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGQ5ZTEzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5vbGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLm9saXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLm9saXZlLmFjdGl2ZS5idXR0b24sXG4udWkub2xpdmUuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWMxMDk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5vbGl2ZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQjVDQzE4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQjVDQzE4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjQjVDQzE4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vbGl2ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMub2xpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2E3YmQwZCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2E3YmQwZCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2E3YmQwZCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMub2xpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNhMGI2MDUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNhMGI2MDUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNhN2JkMGQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMub2xpdmUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNhYWMxMDkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNhYWMxMDkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4ZDllMTMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMub2xpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4ZDllMTMgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM4ZDllMTMgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4ZDllMTMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMub2xpdmUuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNEOUU3NzggaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNEOUU3NzggaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEOUU3Nzg7XG59XG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b24uYWN0aXZlLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q4ZWE1Yztcbn1cblxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlZjQ3O1xufVxuXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vbGl2ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZWQ1OTtcbn1cblxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZGRmNGQ7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9saXZlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZDhlYTVjIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZDhlYTVjIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRDlFNzc4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkYWVmNDcgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkYWVmNDcgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNEOUU3NzggIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub2xpdmUuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vbGl2ZS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2RhZWQ1OSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2RhZWQ1OSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0Q5RTc3OCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQub2xpdmUuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vbGl2ZS5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9saXZlLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjY2RkZjRkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjY2RkZjRkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRDlFNzc4ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFllbGxvdyAtLS0qL1xuXG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS55ZWxsb3cuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkueWVsbG93LmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhYWUwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS55ZWxsb3cuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhYTMwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkueWVsbG93LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Q5OTAzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkueWVsbG93LmFjdGl2ZS5idXR0b24sXG4udWkueWVsbG93LmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhZTAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnllbGxvdy5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRkJCRDA4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRkJCRDA4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkJCRDA4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnllbGxvdy5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZWFhZTAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZWFhZTAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZWFhZTAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnllbGxvdy5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZGFhMzAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZGFhMzAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZWFhZTAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy55ZWxsb3cuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNlYWFlMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNlYWFlMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjZDk5MDMgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnllbGxvdy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnllbGxvdy5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2NkOTkwMyBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2NkOTkwMyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkOTkwMyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy55ZWxsb3cuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGRTIxRiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI0ZGRTIxRiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRTIxRjtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGYwNTtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWQ1MDA7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRmMDU7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmNkMDA7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZkZjA1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZkZjA1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZFMjFGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmNWQ1MDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmNWQ1MDAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkUyMUYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZGYwNSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZGYwNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRTIxRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZWJjZDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZWJjZDAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZFMjFGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFByaW1hcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0gU3RhbmRhcmQgLS0tKi9cblxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkucHJpbWFyeS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnByaW1hcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2NzhjMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucHJpbWFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkucHJpbWFyeS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ3MWJiO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkucHJpbWFyeS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhNjlhNDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucHJpbWFyeS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkucHJpbWFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjc5YzY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzIxODVEMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzIxODVEMCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTY3OGMyIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTY3OGMyIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMTY3OGMyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5wcmltYXJ5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwZDcxYmIgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwZDcxYmIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxNjc4YzIgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnByaW1hcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5wcmltYXJ5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTI3OWM2IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTI3OWM2IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMWE2OWE0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMucHJpbWFyeS5idXR0b246YWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzFhNjlhNCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzFhNjlhNCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFhNjlhNCAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9uczpub3QoLnZlcnRpY2FsKSA+IC5iYXNpYy5wcmltYXJ5LmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzU0QzhGRiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzU0QzhGRiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzU0QzhGRjtcbn1cblxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbi5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FjMGZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmJiYmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWMwZmY7XG59XG5cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxYjhmZjtcbn1cblxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cblxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMzYWMwZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMzYWMwZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NEM4RkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9uOmZvY3VzIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzJiYmJmZiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzJiYmJmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzU0QzhGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnByaW1hcnkuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjM2FjMGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjM2FjMGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRDOEZGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5wcmltYXJ5LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHJpbWFyeS5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnByaW1hcnkuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyMWI4ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyMWI4ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NEM4RkYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTZWNvbmRhcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3RhbmRhcmQgKi9cblxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5idXR0b24sXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzI5MmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZTMwMzI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnNlY29uZGFyeS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0MzYzNztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuc2Vjb25kYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnNlY29uZGFyeS5hY3RpdmUuYnV0dG9uLFxuLnVpLnNlY29uZGFyeS5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjkyYTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzFCMUMxRCBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzFCMUMxRCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFCMUMxRCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzI3MjkyYSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzI3MjkyYSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzI3MjkyYSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzJlMzAzMiBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzJlMzAzMiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzI3MjkyYSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuc2Vjb25kYXJ5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjcyOTJhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjcyOTJhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzQzNjM3ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMzNDM2MzcgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMzNDM2MzcgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMzNDM2MzcgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucHJpbWFyeS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNTQ1NDU0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNTQ1NDU0IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbjpmb2N1cyxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uLmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNjE2MTtcbn1cblxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ODY4Njg7XG59XG5cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTYxNjE7XG59XG5cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZTZlNmU7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5iYXNpYy5idXR0b246aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNjE2MTYxIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNjE2MTYxIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTQ1NDU0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5zZWNvbmRhcnkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5iYXNpYy5idXR0b25zIC5idXR0b246Zm9jdXMsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbjpmb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM2ODY4NjggaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM2ODY4NjggaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NDU0NTQgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnNlY29uZGFyeS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnNlY29uZGFyeS5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzYxNjE2MSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzYxNjE2MSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzU0NTQ1NCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc2Vjb25kYXJ5LmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNmU2ZTZlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNmU2ZTZlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTQ1NDU0ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tXG4gICAgUG9zaXRpdmVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTdGFuZGFyZCAqL1xuXG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnBvc2l0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5wb3NpdGl2ZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGVhNDMyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5wb3NpdGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4ZjM1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5wb3NpdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnBvc2l0aXZlLmFjdGl2ZS5idXR0b24sXG4udWkucG9zaXRpdmUuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxM2FlMzg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5wb3NpdGl2ZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjFCQTQ1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjFCQTQ1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5wb3NpdGl2ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE2YWIzOSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzE2YWIzOSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE2YWIzOSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwZWE0MzIgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMwZWE0MzIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxNmFiMzkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucG9zaXRpdmUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxM2FlMzggaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxM2FlMzggaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxOThmMzUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMucG9zaXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxOThmMzUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxOThmMzUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxOThmMzUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucHJpbWFyeS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS1cbiAgICAgTmVnYXRpdmVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTdGFuZGFyZCAqL1xuXG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLm5lZ2F0aXZlLmJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDE5MTk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbjpmb2N1cyxcbi51aS5uZWdhdGl2ZS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ExMDEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5uZWdhdGl2ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjIxZTFlO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5uZWdhdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLm5lZ2F0aXZlLmFjdGl2ZS5idXR0b24sXG4udWkubmVnYXRpdmUuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNDE1MTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5uZWdhdGl2ZS5idXR0b24ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjREIyODI4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjREIyODI4IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjREIyODI4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5uZWdhdGl2ZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2QwMTkxOSBpbnNldCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2QwMTkxOSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2QwMTkxOSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmZvY3VzLFxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjYTEwMTAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNjYTEwMTAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNkMDE5MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMubmVnYXRpdmUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNkNDE1MTUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNkNDE1MTUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNiMjFlMWUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMubmVnYXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNiMjFlMWUgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNiMjFlMWUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNiMjFlMWUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC52ZXJ0aWNhbCkgPiAuYmFzaWMucHJpbWFyeS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEdyb3Vwc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmJ1dHRvbnMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmb250LXNpemU6IDBlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbn1cblxuLnVpLmJ1dHRvbnM6bm90KC5iYXNpYyk6bm90KC5pbnZlcnRlZCkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIENsZWFyZml4ICovXG5cbi51aS5idXR0b25zOmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIFN0YW5kYXJkIEdyb3VwICovXG5cbi51aS5idXR0b25zIC5idXR0b24ge1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleDogMSAwIGF1dG87XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBtYXJnaW46IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBtYXJnaW46IDBweCAwcHggMHB4IDBweDtcbn1cblxuLnVpLmJ1dHRvbnMgPiAudWkuYnV0dG9uOm5vdCguYmFzaWMpOm5vdCguaW52ZXJ0ZWQpLFxuLnVpLmJ1dHRvbnM6bm90KC5iYXNpYyk6bm90KC5pbnZlcnRlZCkgPiAuYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAwZW0gMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyogVmVydGljYWwgIFN0eWxlICovXG5cbi51aS52ZXJ0aWNhbC5idXR0b25zIHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBweCAwcHggMHB4IDBweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDIuNC4yIC0gQ29udGFpbmVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGFpbmVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBBbGwgU2l6ZXMgKi9cblxuLnVpLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLyogTW9iaWxlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMWVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnZlcnkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBUYWJsZXQgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5jb250YWluZXIge1xuICAgIHdpZHRoOiA3MjNweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyggNzIzcHggICsgIDJyZW0gKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnJlbGF4ZWQuZ3JpZC5jb250YWluZXIge1xuICAgIHdpZHRoOiBjYWxjKCA3MjNweCAgKyAgM3JlbSApICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudmVyeS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyggNzIzcHggICsgIDVyZW0gKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFNtYWxsIE1vbml0b3IgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudWkuY29udGFpbmVyIHtcbiAgICB3aWR0aDogOTMzcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoIDkzM3B4ICArICAycmVtICkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyggOTMzcHggICsgIDNyZW0gKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnZlcnkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoIDkzM3B4ICArICA1cmVtICkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBMYXJnZSBNb25pdG9yICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMTI3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoIDExMjdweCAgKyAgMnJlbSApICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkucmVsYXhlZC5ncmlkLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGNhbGMoIDExMjdweCAgKyAgM3JlbSApICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudmVyeS5yZWxheGVkLmdyaWQuY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYyggMTEyN3B4ICArICA1cmVtICkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBUZXh0IENvbnRhaW5lciAqL1xuXG4udWkudGV4dC5jb250YWluZXIge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXgtd2lkdGg6IDcwMHB4ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi51aS50ZXh0LmNvbnRhaW5lciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLyogRmx1aWQgKi9cblxuLnVpLmZsdWlkLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udWkuanVzdGlmaWVkLmNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIERpdmlkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEaXZpZGVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuZGl2aWRlciB7XG4gIG1hcmdpbjogMXJlbSAwcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAwZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZXI6bm90KC52ZXJ0aWNhbCk6bm90KC5ob3Jpem9udGFsKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEFsbG93IGRpdmlkZXIgYmV0d2VlbiBlYWNoIGNvbHVtbiByb3cgKi9cblxuLnVpLmdyaWQgPiAuY29sdW1uICsgLmRpdmlkZXIsXG4udWkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uICsgLmRpdmlkZXIge1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAnJztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmhvcml6b250YWwuZGl2aWRlcjpiZWZvcmUsXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMWVtIHRvcCA1MCU7XG59XG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDFlbSB0b3AgNTAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IDByZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogNTAlO1xuICBsaW5lLWhlaWdodDogMGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIGNvbnRlbnQ6ICcnO1xuICB6LWluZGV4OiAzO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtICAxcmVtICk7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gIHRvcDogLTEwMCU7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDBweDtcbn1cblxuLyogSW5zaWRlIGdyaWQgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46ICcnO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLmdyaWQgLnN0YWNrYWJsZS5yb3cgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YmVmb3JlLFxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YWZ0ZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMWVtIHRvcCA1MCU7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YWZ0ZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDFlbSB0b3AgNTAlO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVyID4gLmljb24ge1xuICBtYXJnaW46IDByZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEhpZGRlblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhpZGRlbi5kaXZpZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4udWkuaGlkZGVuLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhpZGRlbi5kaXZpZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRlci5pbnZlcnRlZCxcbi51aS52ZXJ0aWNhbC5pbnZlcnRlZC5kaXZpZGVyLFxuLnVpLmhvcml6b250YWwuaW52ZXJ0ZWQuZGl2aWRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuZGl2aWRlci5pbnZlcnRlZCxcbi51aS5kaXZpZGVyLmludmVydGVkOmFmdGVyLFxuLnVpLmRpdmlkZXIuaW52ZXJ0ZWQ6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLmRpdmlkZXIge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENsZWFyaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2xlYXJpbmcuZGl2aWRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU2VjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY3Rpb24uZGl2aWRlciB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyOmJlZm9yZSxcbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCYUFBQUFBQ0NBWUFBQUN1VEh1S0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeUZwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOUzFqTURFMElEYzVMakUxTVRRNE1Td2dNakF4TXk4d015OHhNeTB4TWpvd09Ub3hOU0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESUNoWGFXNWtiM2R6S1NJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRvMU9UaEJSRFk0T1VORE1UWXhNVVUwT1VFM05VVkdPRUpETXpNek1qRTJOeUlnZUcxd1RVMDZSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRG8xT1RoQlJEWTRRVU5ETVRZeE1VVTBPVUUzTlVWR09FSkRNek16TWpFMk55SStJRHg0YlhCTlRUcEVaWEpwZG1Wa1JuSnZiU0J6ZEZKbFpqcHBibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPalU1T0VGRU5qZzNRME14TmpFeFJUUTVRVGMxUlVZNFFrTXpNek15TVRZM0lpQnpkRkpsWmpwa2IyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09qVTVPRUZFTmpnNFEwTXhOakV4UlRRNVFUYzFSVVk0UWtNek16TXlNVFkzSWk4K0lEd3ZjbVJtT2tSbGMyTnlhWEIwYVc5dVBpQThMM0prWmpwU1JFWStJRHd2ZURwNGJYQnRaWFJoUGlBOFAzaHdZV05yWlhRZ1pXNWtQU0p5SWo4K1ZVNTEzZ0FBQURWSlJFRlVlTnJzMERFTkFDQVFCREJJV0xHQkpRYnkvbVVjSm41c0pYUW1PUU1BQUFBQUFKcXQrMnByQUFBQUFBQ2cyeGRnQU5rNkJFVnVKZ3lNQUFBQUFFbEZUa1N1UW1DQycpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmFBQUFBQUNDQVlBQUFDdVRIdUtBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQXlGcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TlMxak1ERTBJRGM1TGpFMU1UUTRNU3dnTWpBeE15OHdNeTh4TXkweE1qb3dPVG94TlNBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiV3h1Y3pwNGJYQk5UVDBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3TDIxdEx5SWdlRzFzYm5NNmMzUlNaV1k5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5elZIbHdaUzlTWlhOdmRYSmpaVkpsWmlNaUlIaHRjRHBEY21WaGRHOXlWRzl2YkQwaVFXUnZZbVVnVUdodmRHOXphRzl3SUVORElDaFhhVzVrYjNkektTSWdlRzF3VFUwNlNXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEbzFPVGhCUkRZNE9VTkRNVFl4TVVVME9VRTNOVVZHT0VKRE16TXpNakUyTnlJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRvMU9UaEJSRFk0UVVORE1UWXhNVVUwT1VFM05VVkdPRUpETXpNek1qRTJOeUkrSUR4NGJYQk5UVHBFWlhKcGRtVmtSbkp2YlNCemRGSmxaanBwYm5OMFlXNWpaVWxFUFNKNGJYQXVhV2xrT2pVNU9FRkVOamczUTBNeE5qRXhSVFE1UVRjMVJVWTRRa016TXpNeU1UWTNJaUJ6ZEZKbFpqcGtiMk4xYldWdWRFbEVQU0o0YlhBdVpHbGtPalU1T0VGRU5qZzRRME14TmpFeFJUUTVRVGMxUlVZNFFrTXpNek15TVRZM0lpOCtJRHd2Y21SbU9rUmxjMk55YVhCMGFXOXVQaUE4TDNKa1pqcFNSRVkrSUR3dmVEcDRiWEJ0WlhSaFBpQThQM2h3WVdOclpYUWdaVzVrUFNKeUlqOCtWVTUxM2dBQUFEVkpSRUZVZU5yczBERU5BQ0FRQkRCSVdMR0JKUWJ5L21VY0puNXNKWFFtT1FNQUFBQUFBSnF0KzJwckFBQUFBQUNnMnhkZ0FOazZCRVZ1Smd5TUFBQUFBRWxGVGtTdVFtQ0MnKTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBGbGFnXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEZsYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmkuZmxhZzpub3QoLmljb24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxMXB4O1xuICBsaW5lLWhlaWdodDogMTFweDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW46IDBlbSAwLjVlbSAwZW0gMGVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIFNwcml0ZSAqL1xuXG5pLmZsYWc6bm90KC5pY29uKTpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9pbWFnZXMvZmxhZ3MucG5nXCIpIG5vLXJlcGVhdCAtMTA4cHggLTE5NzZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTFweDtcbn1cblxuLyogRmxhZyBTcHJpdGUgQmFzZWQgT24gaHR0cDovL3d3dy5mYW1mYW1mYW0uY29tL2xhYi9pY29ucy9mbGFncy8gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaS5mbGFnLmFkOmJlZm9yZSxcbmkuZmxhZy5hbmRvcnJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7XG59XG5cbmkuZmxhZy5hZTpiZWZvcmUsXG5pLmZsYWcudW5pdGVkLmFyYWIuZW1pcmF0ZXM6YmVmb3JlLFxuaS5mbGFnLnVhZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTI2cHg7XG59XG5cbmkuZmxhZy5hZjpiZWZvcmUsXG5pLmZsYWcuYWZnaGFuaXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC01MnB4O1xufVxuXG5pLmZsYWcuYWc6YmVmb3JlLFxuaS5mbGFnLmFudGlndWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC03OHB4O1xufVxuXG5pLmZsYWcuYWk6YmVmb3JlLFxuaS5mbGFnLmFuZ3VpbGxhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTA0cHg7XG59XG5cbmkuZmxhZy5hbDpiZWZvcmUsXG5pLmZsYWcuYWxiYW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEzMHB4O1xufVxuXG5pLmZsYWcuYW06YmVmb3JlLFxuaS5mbGFnLmFybWVuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNTZweDtcbn1cblxuaS5mbGFnLmFuOmJlZm9yZSxcbmkuZmxhZy5uZXRoZXJsYW5kcy5hbnRpbGxlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE4MnB4O1xufVxuXG5pLmZsYWcuYW86YmVmb3JlLFxuaS5mbGFnLmFuZ29sYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTIwOHB4O1xufVxuXG5pLmZsYWcuYXI6YmVmb3JlLFxuaS5mbGFnLmFyZ2VudGluYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTIzNHB4O1xufVxuXG5pLmZsYWcuYXM6YmVmb3JlLFxuaS5mbGFnLmFtZXJpY2FuLnNhbW9hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjYwcHg7XG59XG5cbmkuZmxhZy5hdDpiZWZvcmUsXG5pLmZsYWcuYXVzdHJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTI4NnB4O1xufVxuXG5pLmZsYWcuYXU6YmVmb3JlLFxuaS5mbGFnLmF1c3RyYWxpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTMxMnB4O1xufVxuXG5pLmZsYWcuYXc6YmVmb3JlLFxuaS5mbGFnLmFydWJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMzM4cHg7XG59XG5cbmkuZmxhZy5heDpiZWZvcmUsXG5pLmZsYWcuYWxhbmQuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTM2NHB4O1xufVxuXG5pLmZsYWcuYXo6YmVmb3JlLFxuaS5mbGFnLmF6ZXJiYWlqYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0zOTBweDtcbn1cblxuaS5mbGFnLmJhOmJlZm9yZSxcbmkuZmxhZy5ib3NuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC00MTZweDtcbn1cblxuaS5mbGFnLmJiOmJlZm9yZSxcbmkuZmxhZy5iYXJiYWRvczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTQ0MnB4O1xufVxuXG5pLmZsYWcuYmQ6YmVmb3JlLFxuaS5mbGFnLmJhbmdsYWRlc2g6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC00NjhweDtcbn1cblxuaS5mbGFnLmJlOmJlZm9yZSxcbmkuZmxhZy5iZWxnaXVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNDk0cHg7XG59XG5cbmkuZmxhZy5iZjpiZWZvcmUsXG5pLmZsYWcuYnVya2luYS5mYXNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNTIwcHg7XG59XG5cbmkuZmxhZy5iZzpiZWZvcmUsXG5pLmZsYWcuYnVsZ2FyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC01NDZweDtcbn1cblxuaS5mbGFnLmJoOmJlZm9yZSxcbmkuZmxhZy5iYWhyYWluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNTcycHg7XG59XG5cbmkuZmxhZy5iaTpiZWZvcmUsXG5pLmZsYWcuYnVydW5kaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTU5OHB4O1xufVxuXG5pLmZsYWcuYmo6YmVmb3JlLFxuaS5mbGFnLmJlbmluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNjI0cHg7XG59XG5cbmkuZmxhZy5ibTpiZWZvcmUsXG5pLmZsYWcuYmVybXVkYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTY1MHB4O1xufVxuXG5pLmZsYWcuYm46YmVmb3JlLFxuaS5mbGFnLmJydW5laTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTY3NnB4O1xufVxuXG5pLmZsYWcuYm86YmVmb3JlLFxuaS5mbGFnLmJvbGl2aWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC03MDJweDtcbn1cblxuaS5mbGFnLmJyOmJlZm9yZSxcbmkuZmxhZy5icmF6aWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC03MjhweDtcbn1cblxuaS5mbGFnLmJzOmJlZm9yZSxcbmkuZmxhZy5iYWhhbWFzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNzU0cHg7XG59XG5cbmkuZmxhZy5idDpiZWZvcmUsXG5pLmZsYWcuYmh1dGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNzgwcHg7XG59XG5cbmkuZmxhZy5idjpiZWZvcmUsXG5pLmZsYWcuYm91dmV0LmlzbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTgwNnB4O1xufVxuXG5pLmZsYWcuYnc6YmVmb3JlLFxuaS5mbGFnLmJvdHN3YW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtODMycHg7XG59XG5cbmkuZmxhZy5ieTpiZWZvcmUsXG5pLmZsYWcuYmVsYXJ1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTg1OHB4O1xufVxuXG5pLmZsYWcuYno6YmVmb3JlLFxuaS5mbGFnLmJlbGl6ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTg4NHB4O1xufVxuXG5pLmZsYWcuY2E6YmVmb3JlLFxuaS5mbGFnLmNhbmFkYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTkxMHB4O1xufVxuXG5pLmZsYWcuY2M6YmVmb3JlLFxuaS5mbGFnLmNvY29zLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC05NjJweDtcbn1cblxuaS5mbGFnLmNkOmJlZm9yZSxcbmkuZmxhZy5jb25nbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTk4OHB4O1xufVxuXG5pLmZsYWcuY2Y6YmVmb3JlLFxuaS5mbGFnLmNlbnRyYWwuYWZyaWNhbi5yZXB1YmxpYzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwMTRweDtcbn1cblxuaS5mbGFnLmNnOmJlZm9yZSxcbmkuZmxhZy5jb25nby5icmF6emF2aWxsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwNDBweDtcbn1cblxuaS5mbGFnLmNoOmJlZm9yZSxcbmkuZmxhZy5zd2l0emVybGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwNjZweDtcbn1cblxuaS5mbGFnLmNpOmJlZm9yZSxcbmkuZmxhZy5jb3RlLmRpdm9pcmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMDkycHg7XG59XG5cbmkuZmxhZy5jazpiZWZvcmUsXG5pLmZsYWcuY29vay5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTExOHB4O1xufVxuXG5pLmZsYWcuY2w6YmVmb3JlLFxuaS5mbGFnLmNoaWxlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTE0NHB4O1xufVxuXG5pLmZsYWcuY206YmVmb3JlLFxuaS5mbGFnLmNhbWVyb29uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTE3MHB4O1xufVxuXG5pLmZsYWcuY246YmVmb3JlLFxuaS5mbGFnLmNoaW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTE5NnB4O1xufVxuXG5pLmZsYWcuY286YmVmb3JlLFxuaS5mbGFnLmNvbG9tYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTIyMnB4O1xufVxuXG5pLmZsYWcuY3I6YmVmb3JlLFxuaS5mbGFnLmNvc3RhLnJpY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMjQ4cHg7XG59XG5cbmkuZmxhZy5jczpiZWZvcmUsXG5pLmZsYWcuc2VyYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTI3NHB4O1xufVxuXG5pLmZsYWcuY3U6YmVmb3JlLFxuaS5mbGFnLmN1YmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMzAwcHg7XG59XG5cbmkuZmxhZy5jdjpiZWZvcmUsXG5pLmZsYWcuY2FwZS52ZXJkZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEzMjZweDtcbn1cblxuaS5mbGFnLmN4OmJlZm9yZSxcbmkuZmxhZy5jaHJpc3RtYXMuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTM1MnB4O1xufVxuXG5pLmZsYWcuY3k6YmVmb3JlLFxuaS5mbGFnLmN5cHJ1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEzNzhweDtcbn1cblxuaS5mbGFnLmN6OmJlZm9yZSxcbmkuZmxhZy5jemVjaC5yZXB1YmxpYzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE0MDRweDtcbn1cblxuaS5mbGFnLmRlOmJlZm9yZSxcbmkuZmxhZy5nZXJtYW55OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTQzMHB4O1xufVxuXG5pLmZsYWcuZGo6YmVmb3JlLFxuaS5mbGFnLmRqaWJvdXRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTQ1NnB4O1xufVxuXG5pLmZsYWcuZGs6YmVmb3JlLFxuaS5mbGFnLmRlbm1hcms6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNDgycHg7XG59XG5cbmkuZmxhZy5kbTpiZWZvcmUsXG5pLmZsYWcuZG9taW5pY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNTA4cHg7XG59XG5cbmkuZmxhZy5kbzpiZWZvcmUsXG5pLmZsYWcuZG9taW5pY2FuLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTUzNHB4O1xufVxuXG5pLmZsYWcuZHo6YmVmb3JlLFxuaS5mbGFnLmFsZ2VyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNTYwcHg7XG59XG5cbmkuZmxhZy5lYzpiZWZvcmUsXG5pLmZsYWcuZWN1YWRvcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE1ODZweDtcbn1cblxuaS5mbGFnLmVlOmJlZm9yZSxcbmkuZmxhZy5lc3RvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTYxMnB4O1xufVxuXG5pLmZsYWcuZWc6YmVmb3JlLFxuaS5mbGFnLmVneXB0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTYzOHB4O1xufVxuXG5pLmZsYWcuZWg6YmVmb3JlLFxuaS5mbGFnLndlc3Rlcm4uc2FoYXJhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTY2NHB4O1xufVxuXG5pLmZsYWcuZ2IuZW5nOmJlZm9yZSxcbmkuZmxhZy5lbmdsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTY5MHB4O1xufVxuXG5pLmZsYWcuZXI6YmVmb3JlLFxuaS5mbGFnLmVyaXRyZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNzE2cHg7XG59XG5cbmkuZmxhZy5lczpiZWZvcmUsXG5pLmZsYWcuc3BhaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNzQycHg7XG59XG5cbmkuZmxhZy5ldDpiZWZvcmUsXG5pLmZsYWcuZXRoaW9waWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNzY4cHg7XG59XG5cbmkuZmxhZy5ldTpiZWZvcmUsXG5pLmZsYWcuZXVyb3BlYW4udW5pb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNzk0cHg7XG59XG5cbmkuZmxhZy5maTpiZWZvcmUsXG5pLmZsYWcuZmlubGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE4NDZweDtcbn1cblxuaS5mbGFnLmZqOmJlZm9yZSxcbmkuZmxhZy5maWppOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTg3MnB4O1xufVxuXG5pLmZsYWcuZms6YmVmb3JlLFxuaS5mbGFnLmZhbGtsYW5kLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xODk4cHg7XG59XG5cbmkuZmxhZy5mbTpiZWZvcmUsXG5pLmZsYWcubWljcm9uZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE5MjRweDtcbn1cblxuaS5mbGFnLmZvOmJlZm9yZSxcbmkuZmxhZy5mYXJvZS5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTk1MHB4O1xufVxuXG5pLmZsYWcuZnI6YmVmb3JlLFxuaS5mbGFnLmZyYW5jZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE5NzZweDtcbn1cblxuaS5mbGFnLmdhOmJlZm9yZSxcbmkuZmxhZy5nYWJvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAwcHg7XG59XG5cbmkuZmxhZy5nYjpiZWZvcmUsXG5pLmZsYWcudWs6YmVmb3JlLFxuaS5mbGFnLnVuaXRlZC5raW5nZG9tOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0yNnB4O1xufVxuXG5pLmZsYWcuZ2Q6YmVmb3JlLFxuaS5mbGFnLmdyZW5hZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTUycHg7XG59XG5cbmkuZmxhZy5nZTpiZWZvcmUsXG5pLmZsYWcuZ2VvcmdpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzhweDtcbn1cblxuaS5mbGFnLmdmOmJlZm9yZSxcbmkuZmxhZy5mcmVuY2guZ3VpYW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDRweDtcbn1cblxuaS5mbGFnLmdoOmJlZm9yZSxcbmkuZmxhZy5naGFuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTMwcHg7XG59XG5cbmkuZmxhZy5naTpiZWZvcmUsXG5pLmZsYWcuZ2licmFsdGFyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTZweDtcbn1cblxuaS5mbGFnLmdsOmJlZm9yZSxcbmkuZmxhZy5ncmVlbmxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4MnB4O1xufVxuXG5pLmZsYWcuZ206YmVmb3JlLFxuaS5mbGFnLmdhbWJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjA4cHg7XG59XG5cbmkuZmxhZy5nbjpiZWZvcmUsXG5pLmZsYWcuZ3VpbmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0yMzRweDtcbn1cblxuaS5mbGFnLmdwOmJlZm9yZSxcbmkuZmxhZy5ndWFkZWxvdXBlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0yNjBweDtcbn1cblxuaS5mbGFnLmdxOmJlZm9yZSxcbmkuZmxhZy5lcXVhdG9yaWFsLmd1aW5lYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjg2cHg7XG59XG5cbmkuZmxhZy5ncjpiZWZvcmUsXG5pLmZsYWcuZ3JlZWNlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zMTJweDtcbn1cblxuaS5mbGFnLmdzOmJlZm9yZSxcbmkuZmxhZy5zYW5kd2ljaC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zMzhweDtcbn1cblxuaS5mbGFnLmd0OmJlZm9yZSxcbmkuZmxhZy5ndWF0ZW1hbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTM2NHB4O1xufVxuXG5pLmZsYWcuZ3U6YmVmb3JlLFxuaS5mbGFnLmd1YW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTM5MHB4O1xufVxuXG5pLmZsYWcuZ3c6YmVmb3JlLFxuaS5mbGFnLmd1aW5lYS1iaXNzYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQxNnB4O1xufVxuXG5pLmZsYWcuZ3k6YmVmb3JlLFxuaS5mbGFnLmd1eWFuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDQycHg7XG59XG5cbmkuZmxhZy5oazpiZWZvcmUsXG5pLmZsYWcuaG9uZy5rb25nOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC00NjhweDtcbn1cblxuaS5mbGFnLmhtOmJlZm9yZSxcbmkuZmxhZy5oZWFyZC5pc2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQ5NHB4O1xufVxuXG5pLmZsYWcuaG46YmVmb3JlLFxuaS5mbGFnLmhvbmR1cmFzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01MjBweDtcbn1cblxuaS5mbGFnLmhyOmJlZm9yZSxcbmkuZmxhZy5jcm9hdGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01NDZweDtcbn1cblxuaS5mbGFnLmh0OmJlZm9yZSxcbmkuZmxhZy5oYWl0aTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTcycHg7XG59XG5cbmkuZmxhZy5odTpiZWZvcmUsXG5pLmZsYWcuaHVuZ2FyeTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTk4cHg7XG59XG5cbmkuZmxhZy5pZDpiZWZvcmUsXG5pLmZsYWcuaW5kb25lc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC02MjRweDtcbn1cblxuaS5mbGFnLmllOmJlZm9yZSxcbmkuZmxhZy5pcmVsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC02NTBweDtcbn1cblxuaS5mbGFnLmlsOmJlZm9yZSxcbmkuZmxhZy5pc3JhZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTY3NnB4O1xufVxuXG5pLmZsYWcuaW46YmVmb3JlLFxuaS5mbGFnLmluZGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03MDJweDtcbn1cblxuaS5mbGFnLmlvOmJlZm9yZSxcbmkuZmxhZy5pbmRpYW4ub2NlYW4udGVycml0b3J5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03MjhweDtcbn1cblxuaS5mbGFnLmlxOmJlZm9yZSxcbmkuZmxhZy5pcmFxOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03NTRweDtcbn1cblxuaS5mbGFnLmlyOmJlZm9yZSxcbmkuZmxhZy5pcmFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC03ODBweDtcbn1cblxuaS5mbGFnLmlzOmJlZm9yZSxcbmkuZmxhZy5pY2VsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC04MDZweDtcbn1cblxuaS5mbGFnLml0OmJlZm9yZSxcbmkuZmxhZy5pdGFseTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtODMycHg7XG59XG5cbmkuZmxhZy5qbTpiZWZvcmUsXG5pLmZsYWcuamFtYWljYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtODU4cHg7XG59XG5cbmkuZmxhZy5qbzpiZWZvcmUsXG5pLmZsYWcuam9yZGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC04ODRweDtcbn1cblxuaS5mbGFnLmpwOmJlZm9yZSxcbmkuZmxhZy5qYXBhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTEwcHg7XG59XG5cbmkuZmxhZy5rZTpiZWZvcmUsXG5pLmZsYWcua2VueWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTkzNnB4O1xufVxuXG5pLmZsYWcua2c6YmVmb3JlLFxuaS5mbGFnLmt5cmd5enN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTk2MnB4O1xufVxuXG5pLmZsYWcua2g6YmVmb3JlLFxuaS5mbGFnLmNhbWJvZGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC05ODhweDtcbn1cblxuaS5mbGFnLmtpOmJlZm9yZSxcbmkuZmxhZy5raXJpYmF0aTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTAxNHB4O1xufVxuXG5pLmZsYWcua206YmVmb3JlLFxuaS5mbGFnLmNvbW9yb3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwNDBweDtcbn1cblxuaS5mbGFnLmtuOmJlZm9yZSxcbmkuZmxhZy5zYWludC5raXR0cy5hbmQubmV2aXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwNjZweDtcbn1cblxuaS5mbGFnLmtwOmJlZm9yZSxcbmkuZmxhZy5ub3J0aC5rb3JlYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTA5MnB4O1xufVxuXG5pLmZsYWcua3I6YmVmb3JlLFxuaS5mbGFnLnNvdXRoLmtvcmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTE4cHg7XG59XG5cbmkuZmxhZy5rdzpiZWZvcmUsXG5pLmZsYWcua3V3YWl0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTQ0cHg7XG59XG5cbmkuZmxhZy5reTpiZWZvcmUsXG5pLmZsYWcuY2F5bWFuLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTExNzBweDtcbn1cblxuaS5mbGFnLmt6OmJlZm9yZSxcbmkuZmxhZy5rYXpha2hzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTk2cHg7XG59XG5cbmkuZmxhZy5sYTpiZWZvcmUsXG5pLmZsYWcubGFvczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTIyMnB4O1xufVxuXG5pLmZsYWcubGI6YmVmb3JlLFxuaS5mbGFnLmxlYmFub246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEyNDhweDtcbn1cblxuaS5mbGFnLmxjOmJlZm9yZSxcbmkuZmxhZy5zYWludC5sdWNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTI3NHB4O1xufVxuXG5pLmZsYWcubGk6YmVmb3JlLFxuaS5mbGFnLmxpZWNodGVuc3RlaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzMDBweDtcbn1cblxuaS5mbGFnLmxrOmJlZm9yZSxcbmkuZmxhZy5zcmkubGFua2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzMjZweDtcbn1cblxuaS5mbGFnLmxyOmJlZm9yZSxcbmkuZmxhZy5saWJlcmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzUycHg7XG59XG5cbmkuZmxhZy5sczpiZWZvcmUsXG5pLmZsYWcubGVzb3RobzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTM3OHB4O1xufVxuXG5pLmZsYWcubHQ6YmVmb3JlLFxuaS5mbGFnLmxpdGh1YW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTQwNHB4O1xufVxuXG5pLmZsYWcubHU6YmVmb3JlLFxuaS5mbGFnLmx1eGVtYm91cmc6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0MzBweDtcbn1cblxuaS5mbGFnLmx2OmJlZm9yZSxcbmkuZmxhZy5sYXR2aWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0NTZweDtcbn1cblxuaS5mbGFnLmx5OmJlZm9yZSxcbmkuZmxhZy5saWJ5YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTQ4MnB4O1xufVxuXG5pLmZsYWcubWE6YmVmb3JlLFxuaS5mbGFnLm1vcm9jY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1MDhweDtcbn1cblxuaS5mbGFnLm1jOmJlZm9yZSxcbmkuZmxhZy5tb25hY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1MzRweDtcbn1cblxuaS5mbGFnLm1kOmJlZm9yZSxcbmkuZmxhZy5tb2xkb3ZhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTYwcHg7XG59XG5cbmkuZmxhZy5tZTpiZWZvcmUsXG5pLmZsYWcubW9udGVuZWdybzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU4NnB4O1xufVxuXG5pLmZsYWcubWc6YmVmb3JlLFxuaS5mbGFnLm1hZGFnYXNjYXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2MTNweDtcbn1cblxuaS5mbGFnLm1oOmJlZm9yZSxcbmkuZmxhZy5tYXJzaGFsbC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNjM5cHg7XG59XG5cbmkuZmxhZy5tazpiZWZvcmUsXG5pLmZsYWcubWFjZWRvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNjY1cHg7XG59XG5cbmkuZmxhZy5tbDpiZWZvcmUsXG5pLmZsYWcubWFsaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTY5MXB4O1xufVxuXG5pLmZsYWcubW06YmVmb3JlLFxuaS5mbGFnLm15YW5tYXI6YmVmb3JlLFxuaS5mbGFnLmJ1cm1hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03M3B4IC0xODIxcHg7XG59XG5cbmkuZmxhZy5tbjpiZWZvcmUsXG5pLmZsYWcubW9uZ29saWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3NDNweDtcbn1cblxuaS5mbGFnLm1vOmJlZm9yZSxcbmkuZmxhZy5tYWNhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTc2OXB4O1xufVxuXG5pLmZsYWcubXA6YmVmb3JlLFxuaS5mbGFnLm5vcnRoZXJuLm1hcmlhbmEuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTc5NXB4O1xufVxuXG5pLmZsYWcubXE6YmVmb3JlLFxuaS5mbGFnLm1hcnRpbmlxdWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4MjFweDtcbn1cblxuaS5mbGFnLm1yOmJlZm9yZSxcbmkuZmxhZy5tYXVyaXRhbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODQ3cHg7XG59XG5cbmkuZmxhZy5tczpiZWZvcmUsXG5pLmZsYWcubW9udHNlcnJhdDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTg3M3B4O1xufVxuXG5pLmZsYWcubXQ6YmVmb3JlLFxuaS5mbGFnLm1hbHRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODk5cHg7XG59XG5cbmkuZmxhZy5tdTpiZWZvcmUsXG5pLmZsYWcubWF1cml0aXVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xOTI1cHg7XG59XG5cbmkuZmxhZy5tdjpiZWZvcmUsXG5pLmZsYWcubWFsZGl2ZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE5NTFweDtcbn1cblxuaS5mbGFnLm13OmJlZm9yZSxcbmkuZmxhZy5tYWxhd2k6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE5NzdweDtcbn1cblxuaS5mbGFnLm14OmJlZm9yZSxcbmkuZmxhZy5tZXhpY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggMHB4O1xufVxuXG5pLmZsYWcubXk6YmVmb3JlLFxuaS5mbGFnLm1hbGF5c2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yNnB4O1xufVxuXG5pLmZsYWcubXo6YmVmb3JlLFxuaS5mbGFnLm1vemFtYmlxdWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTUycHg7XG59XG5cbmkuZmxhZy5uYTpiZWZvcmUsXG5pLmZsYWcubmFtaWJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzhweDtcbn1cblxuaS5mbGFnLm5jOmJlZm9yZSxcbmkuZmxhZy5uZXcuY2FsZWRvbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDRweDtcbn1cblxuaS5mbGFnLm5lOmJlZm9yZSxcbmkuZmxhZy5uaWdlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTMwcHg7XG59XG5cbmkuZmxhZy5uZjpiZWZvcmUsXG5pLmZsYWcubm9yZm9say5pc2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1NnB4O1xufVxuXG5pLmZsYWcubmc6YmVmb3JlLFxuaS5mbGFnLm5pZ2VyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4MnB4O1xufVxuXG5pLmZsYWcubmk6YmVmb3JlLFxuaS5mbGFnLm5pY2FyYWd1YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjA4cHg7XG59XG5cbmkuZmxhZy5ubDpiZWZvcmUsXG5pLmZsYWcubmV0aGVybGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTIzNHB4O1xufVxuXG5pLmZsYWcubm86YmVmb3JlLFxuaS5mbGFnLm5vcndheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjYwcHg7XG59XG5cbmkuZmxhZy5ucDpiZWZvcmUsXG5pLmZsYWcubmVwYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTI4NnB4O1xufVxuXG5pLmZsYWcubnI6YmVmb3JlLFxuaS5mbGFnLm5hdXJ1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0zMTJweDtcbn1cblxuaS5mbGFnLm51OmJlZm9yZSxcbmkuZmxhZy5uaXVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0zMzhweDtcbn1cblxuaS5mbGFnLm56OmJlZm9yZSxcbmkuZmxhZy5uZXcuemVhbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzY0cHg7XG59XG5cbmkuZmxhZy5vbTpiZWZvcmUsXG5pLmZsYWcub21hbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzkwcHg7XG59XG5cbmkuZmxhZy5wYTpiZWZvcmUsXG5pLmZsYWcucGFuYW1hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00MTZweDtcbn1cblxuaS5mbGFnLnBlOmJlZm9yZSxcbmkuZmxhZy5wZXJ1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00NDJweDtcbn1cblxuaS5mbGFnLnBmOmJlZm9yZSxcbmkuZmxhZy5mcmVuY2gucG9seW5lc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00NjhweDtcbn1cblxuaS5mbGFnLnBnOmJlZm9yZSxcbmkuZmxhZy5uZXcuZ3VpbmVhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC00OTRweDtcbn1cblxuaS5mbGFnLnBoOmJlZm9yZSxcbmkuZmxhZy5waGlsaXBwaW5lczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTIwcHg7XG59XG5cbmkuZmxhZy5wazpiZWZvcmUsXG5pLmZsYWcucGFraXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTU0NnB4O1xufVxuXG5pLmZsYWcucGw6YmVmb3JlLFxuaS5mbGFnLnBvbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTcycHg7XG59XG5cbmkuZmxhZy5wbTpiZWZvcmUsXG5pLmZsYWcuc2FpbnQucGllcnJlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01OThweDtcbn1cblxuaS5mbGFnLnBuOmJlZm9yZSxcbmkuZmxhZy5waXRjYWlybi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC02MjRweDtcbn1cblxuaS5mbGFnLnByOmJlZm9yZSxcbmkuZmxhZy5wdWVydG8ucmljbzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjUwcHg7XG59XG5cbmkuZmxhZy5wczpiZWZvcmUsXG5pLmZsYWcucGFsZXN0aW5lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC02NzZweDtcbn1cblxuaS5mbGFnLnB0OmJlZm9yZSxcbmkuZmxhZy5wb3J0dWdhbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzAycHg7XG59XG5cbmkuZmxhZy5wdzpiZWZvcmUsXG5pLmZsYWcucGFsYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTcyOHB4O1xufVxuXG5pLmZsYWcucHk6YmVmb3JlLFxuaS5mbGFnLnBhcmFndWF5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03NTRweDtcbn1cblxuaS5mbGFnLnFhOmJlZm9yZSxcbmkuZmxhZy5xYXRhcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzgwcHg7XG59XG5cbmkuZmxhZy5yZTpiZWZvcmUsXG5pLmZsYWcucmV1bmlvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODA2cHg7XG59XG5cbmkuZmxhZy5ybzpiZWZvcmUsXG5pLmZsYWcucm9tYW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODMycHg7XG59XG5cbmkuZmxhZy5yczpiZWZvcmUsXG5pLmZsYWcuc2VyYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC04NThweDtcbn1cblxuaS5mbGFnLnJ1OmJlZm9yZSxcbmkuZmxhZy5ydXNzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTg4NHB4O1xufVxuXG5pLmZsYWcucnc6YmVmb3JlLFxuaS5mbGFnLnJ3YW5kYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtOTEwcHg7XG59XG5cbmkuZmxhZy5zYTpiZWZvcmUsXG5pLmZsYWcuc2F1ZGkuYXJhYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC05MzZweDtcbn1cblxuaS5mbGFnLnNiOmJlZm9yZSxcbmkuZmxhZy5zb2xvbW9uLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTk2MnB4O1xufVxuXG5pLmZsYWcuc2M6YmVmb3JlLFxuaS5mbGFnLnNleWNoZWxsZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTk4OHB4O1xufVxuXG5pLmZsYWcuZ2Iuc2N0OmJlZm9yZSxcbmkuZmxhZy5zY290bGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTAxNHB4O1xufVxuXG5pLmZsYWcuc2Q6YmVmb3JlLFxuaS5mbGFnLnN1ZGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDQwcHg7XG59XG5cbmkuZmxhZy5zZTpiZWZvcmUsXG5pLmZsYWcuc3dlZGVuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDY2cHg7XG59XG5cbmkuZmxhZy5zZzpiZWZvcmUsXG5pLmZsYWcuc2luZ2Fwb3JlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMDkycHg7XG59XG5cbmkuZmxhZy5zaDpiZWZvcmUsXG5pLmZsYWcuc2FpbnQuaGVsZW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTE4cHg7XG59XG5cbmkuZmxhZy5zaTpiZWZvcmUsXG5pLmZsYWcuc2xvdmVuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExNDRweDtcbn1cblxuaS5mbGFnLnNqOmJlZm9yZSxcbmkuZmxhZy5zdmFsYmFyZDpiZWZvcmUsXG5pLmZsYWcuamFuLm1heWVuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTcwcHg7XG59XG5cbmkuZmxhZy5zazpiZWZvcmUsXG5pLmZsYWcuc2xvdmFraWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTExOTZweDtcbn1cblxuaS5mbGFnLnNsOmJlZm9yZSxcbmkuZmxhZy5zaWVycmEubGVvbmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEyMjJweDtcbn1cblxuaS5mbGFnLnNtOmJlZm9yZSxcbmkuZmxhZy5zYW4ubWFyaW5vOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMjQ4cHg7XG59XG5cbmkuZmxhZy5zbjpiZWZvcmUsXG5pLmZsYWcuc2VuZWdhbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTI3NHB4O1xufVxuXG5pLmZsYWcuc286YmVmb3JlLFxuaS5mbGFnLnNvbWFsaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMDBweDtcbn1cblxuaS5mbGFnLnNyOmJlZm9yZSxcbmkuZmxhZy5zdXJpbmFtZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTMyNnB4O1xufVxuXG5pLmZsYWcuc3Q6YmVmb3JlLFxuaS5mbGFnLnNhby50b21lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzUycHg7XG59XG5cbmkuZmxhZy5zdjpiZWZvcmUsXG5pLmZsYWcuZWwuc2FsdmFkb3I6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzNzhweDtcbn1cblxuaS5mbGFnLnN5OmJlZm9yZSxcbmkuZmxhZy5zeXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQwNHB4O1xufVxuXG5pLmZsYWcuc3o6YmVmb3JlLFxuaS5mbGFnLnN3YXppbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQzMHB4O1xufVxuXG5pLmZsYWcudGM6YmVmb3JlLFxuaS5mbGFnLmNhaWNvcy5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNDU2cHg7XG59XG5cbmkuZmxhZy50ZDpiZWZvcmUsXG5pLmZsYWcuY2hhZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQ4MnB4O1xufVxuXG5pLmZsYWcudGY6YmVmb3JlLFxuaS5mbGFnLmZyZW5jaC50ZXJyaXRvcmllczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTUwOHB4O1xufVxuXG5pLmZsYWcudGc6YmVmb3JlLFxuaS5mbGFnLnRvZ286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1MzRweDtcbn1cblxuaS5mbGFnLnRoOmJlZm9yZSxcbmkuZmxhZy50aGFpbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTU2MHB4O1xufVxuXG5pLmZsYWcudGo6YmVmb3JlLFxuaS5mbGFnLnRhamlraXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1ODZweDtcbn1cblxuaS5mbGFnLnRrOmJlZm9yZSxcbmkuZmxhZy50b2tlbGF1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjEycHg7XG59XG5cbmkuZmxhZy50bDpiZWZvcmUsXG5pLmZsYWcudGltb3JsZXN0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTYzOHB4O1xufVxuXG5pLmZsYWcudG06YmVmb3JlLFxuaS5mbGFnLnR1cmttZW5pc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTY2NHB4O1xufVxuXG5pLmZsYWcudG46YmVmb3JlLFxuaS5mbGFnLnR1bmlzaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE2OTBweDtcbn1cblxuaS5mbGFnLnRvOmJlZm9yZSxcbmkuZmxhZy50b25nYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTcxNnB4O1xufVxuXG5pLmZsYWcudHI6YmVmb3JlLFxuaS5mbGFnLnR1cmtleTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc0MnB4O1xufVxuXG5pLmZsYWcudHQ6YmVmb3JlLFxuaS5mbGFnLnRyaW5pZGFkOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNzY4cHg7XG59XG5cbmkuZmxhZy50djpiZWZvcmUsXG5pLmZsYWcudHV2YWx1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNzk0cHg7XG59XG5cbmkuZmxhZy50dzpiZWZvcmUsXG5pLmZsYWcudGFpd2FuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODIwcHg7XG59XG5cbmkuZmxhZy50ejpiZWZvcmUsXG5pLmZsYWcudGFuemFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE4NDZweDtcbn1cblxuaS5mbGFnLnVhOmJlZm9yZSxcbmkuZmxhZy51a3JhaW5lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODcycHg7XG59XG5cbmkuZmxhZy51ZzpiZWZvcmUsXG5pLmZsYWcudWdhbmRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODk4cHg7XG59XG5cbmkuZmxhZy51bTpiZWZvcmUsXG5pLmZsYWcudXMubWlub3IuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTkyNHB4O1xufVxuXG5pLmZsYWcudXM6YmVmb3JlLFxuaS5mbGFnLmFtZXJpY2E6YmVmb3JlLFxuaS5mbGFnLnVuaXRlZC5zdGF0ZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE5NTBweDtcbn1cblxuaS5mbGFnLnV5OmJlZm9yZSxcbmkuZmxhZy51cnVndWF5OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xOTc2cHg7XG59XG5cbmkuZmxhZy51ejpiZWZvcmUsXG5pLmZsYWcudXpiZWtpc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggMHB4O1xufVxuXG5pLmZsYWcudmE6YmVmb3JlLFxuaS5mbGFnLnZhdGljYW4uY2l0eTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTI2cHg7XG59XG5cbmkuZmxhZy52YzpiZWZvcmUsXG5pLmZsYWcuc2FpbnQudmluY2VudDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTUycHg7XG59XG5cbmkuZmxhZy52ZTpiZWZvcmUsXG5pLmZsYWcudmVuZXp1ZWxhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtNzhweDtcbn1cblxuaS5mbGFnLnZnOmJlZm9yZSxcbmkuZmxhZy5icml0aXNoLnZpcmdpbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTA0cHg7XG59XG5cbmkuZmxhZy52aTpiZWZvcmUsXG5pLmZsYWcudXMudmlyZ2luLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0xMzBweDtcbn1cblxuaS5mbGFnLnZuOmJlZm9yZSxcbmkuZmxhZy52aWV0bmFtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTU2cHg7XG59XG5cbmkuZmxhZy52dTpiZWZvcmUsXG5pLmZsYWcudmFudWF0dTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTE4MnB4O1xufVxuXG5pLmZsYWcuZ2Iud2xzOmJlZm9yZSxcbmkuZmxhZy53YWxlczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTIwOHB4O1xufVxuXG5pLmZsYWcud2Y6YmVmb3JlLFxuaS5mbGFnLndhbGxpcy5hbmQuZnV0dW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMjM0cHg7XG59XG5cbmkuZmxhZy53czpiZWZvcmUsXG5pLmZsYWcuc2Ftb2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yNjBweDtcbn1cblxuaS5mbGFnLnllOmJlZm9yZSxcbmkuZmxhZy55ZW1lbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTI4NnB4O1xufVxuXG5pLmZsYWcueXQ6YmVmb3JlLFxuaS5mbGFnLm1heW90dGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zMTJweDtcbn1cblxuaS5mbGFnLnphOmJlZm9yZSxcbmkuZmxhZy5zb3V0aC5hZnJpY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zMzhweDtcbn1cblxuaS5mbGFnLnptOmJlZm9yZSxcbmkuZmxhZy56YW1iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zNjRweDtcbn1cblxuaS5mbGFnLnp3OmJlZm9yZSxcbmkuZmxhZy56aW1iYWJ3ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTM5MHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBIZWFkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBIZWFkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFN0YW5kYXJkICovXG5cbi51aS5oZWFkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogY2FsYygycmVtIC0gIDAuMTQyODU3MTRlbSApIDBlbSAxcmVtO1xuICBwYWRkaW5nOiAwZW0gMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogLTAuMTQyODU3MTRlbTtcbn1cblxuLnVpLmhlYWRlcjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWFyZ2luOiAwZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyID4gLmljb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBvcGFjaXR5OiAxO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBwYWRkaW5nLXRvcDogMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiBXaXRoIFRleHQgTm9kZSAqL1xuXG4udWkuaGVhZGVyIC5pY29uOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciA+IC5pbWFnZTpub3QoLmljb24pLFxuLnVpLmhlYWRlciA+IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMC4xNDI4NTcxNGVtO1xuICB3aWR0aDogMi41ZW07XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmhlYWRlciA+IC5pbWFnZTpub3QoLmljb24pOm9ubHktY2hpbGQsXG4udWkuaGVhZGVyID4gaW1nOm9ubHktY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciAuY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogQWZ0ZXIgSW1hZ2UgKi9cblxuLnVpLmhlYWRlciA+IGltZyArIC5jb250ZW50LFxuLnVpLmhlYWRlciA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiBBZnRlciBJY29uICovXG5cbi51aS5oZWFkZXIgPiAuaWNvbiArIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gTG9vc2UgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXIgLnVpLmxhYmVsIHtcbiAgZm9udC1zaXplOiAnJztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogUG9zaXRpb25pbmcgKi9cblxuLnVpLmhlYWRlciArIHAge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5oMS51aS5oZWFkZXIge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbmgyLnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuaDMudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuXG5oNC51aS5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMDcxNDI4NTdyZW07XG59XG5cbmg1LnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLyogU3ViIEhlYWRlciAqL1xuXG5oMS51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbmgyLnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuaDMudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5oNC51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbmg1LnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuIENvbnRlbnQgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmh1Z2UuaGVhZGVyIHtcbiAgbWluLWhlaWdodDogMWVtO1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLnVpLmxhcmdlLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuXG4udWkubWVkaXVtLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuXG4udWkuc21hbGwuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjA3MTQyODU3ZW07XG59XG5cbi51aS50aW55LmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBTdWIgSGVhZGVyICovXG5cbi51aS5odWdlLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmxhcmdlLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLnNtYWxsLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLnRpbnkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgSGVhZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN1Yi5oZWFkZXIge1xuICBwYWRkaW5nOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMTQyODU3MTRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICcnO1xufVxuXG4udWkuc21hbGwuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xufVxuXG4udWkuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xufVxuXG4udWkubGFyZ2Uuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xufVxuXG4udWkuaHVnZS5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDJyZW0gMGVtIDFyZW07XG59XG5cbi51aS5pY29uLmhlYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5pY29uLmhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmljb24uaGVhZGVyIC5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMGVtO1xuICBmb250LXNpemU6IDNlbTtcbiAgbWFyZ2luOiAwZW0gYXV0byAwLjVyZW07XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5pY29uLmhlYWRlciAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi51aS5pY29uLmhlYWRlciAuY2lyY3VsYXIuaWNvbiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4udWkuaWNvbi5oZWFkZXIgLnNxdWFyZS5pY29uIHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi51aS5ibG9jay5pY29uLmhlYWRlciAuaWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLmljb24uaGVhZGVyLmFsaWduZWQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRpc2FibGVkLmhlYWRlciB7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmhlYWRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnVpLmludmVydGVkLmF0dGFjaGVkLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICM1NDU0NTQgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSh0cmFuc3BhcmVudCksIHRvKHJnYmEoMCwgMCwgMCwgMC4wNSkpKTtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6ICM1NDU0NTQgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NCAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHRyYW5zcGFyZW50KSwgdG8ocmdiYSgwLCAwLCAwLCAwLjA1KSkpO1xuICBiYWNrZ3JvdW5kOiAjNTQ1NDU0IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NCBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5pbnZlcnRlZC5ibG9jay5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0gUmVkIC0tLSovXG5cbi51aS5yZWQuaGVhZGVyIHtcbiAgY29sb3I6ICNEQjI4MjggIWltcG9ydGFudDtcbn1cblxuYS51aS5yZWQuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkMDE5MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLnJlZC5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0RCMjgyODtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnJlZC5oZWFkZXIge1xuICBjb2xvcjogI0ZGNjk1RSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLnJlZC5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmNTE0NCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBPcmFuZ2UgLS0tKi9cblxuLnVpLm9yYW5nZS5oZWFkZXIge1xuICBjb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xufVxuXG5hLnVpLm9yYW5nZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2YyNjIwMiAhaW1wb3J0YW50O1xufVxuXG4udWkub3JhbmdlLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRjI3MTFDO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmhlYWRlciB7XG4gIGNvbG9yOiAjRkY4NTFCICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQub3JhbmdlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmY3NzAxICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIE9saXZlIC0tLSovXG5cbi51aS5vbGl2ZS5oZWFkZXIge1xuICBjb2xvcjogI0I1Q0MxOCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLm9saXZlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjYTdiZDBkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5vbGl2ZS5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0I1Q0MxODtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLm9saXZlLmhlYWRlciB7XG4gIGNvbG9yOiAjRDlFNzc4ICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQub2xpdmUuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkOGVhNWMgIWltcG9ydGFudDtcbn1cblxuLyotLS0gWWVsbG93IC0tLSovXG5cbi51aS55ZWxsb3cuaGVhZGVyIHtcbiAgY29sb3I6ICNGQkJEMDggIWltcG9ydGFudDtcbn1cblxuYS51aS55ZWxsb3cuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNlYWFlMDAgIWltcG9ydGFudDtcbn1cblxuLnVpLnllbGxvdy5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0ZCQkQwODtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnllbGxvdy5oZWFkZXIge1xuICBjb2xvcjogI0ZGRTIxRiAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLnllbGxvdy5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZGYwNSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBHcmVlbiAtLS0qL1xuXG4udWkuZ3JlZW4uaGVhZGVyIHtcbiAgY29sb3I6ICMyMUJBNDUgIWltcG9ydGFudDtcbn1cblxuYS51aS5ncmVlbi5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzE2YWIzOSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JlZW4uZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMUJBNDU7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5ncmVlbi5oZWFkZXIge1xuICBjb2xvcjogIzJFQ0M0MCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLmdyZWVuLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMjJiZTM0ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFRlYWwgLS0tKi9cblxuLnVpLnRlYWwuaGVhZGVyIHtcbiAgY29sb3I6ICMwMEI1QUQgIWltcG9ydGFudDtcbn1cblxuYS51aS50ZWFsLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMDA5Yzk1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS50ZWFsLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBCNUFEO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQudGVhbC5oZWFkZXIge1xuICBjb2xvcjogIzZERkZGRiAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLnRlYWwuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICM1NGZmZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0gQmx1ZSAtLS0qL1xuXG4udWkuYmx1ZS5oZWFkZXIge1xuICBjb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmJsdWUuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMxNjc4YzIgIWltcG9ydGFudDtcbn1cblxuLnVpLmJsdWUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMTg1RDA7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5ibHVlLmhlYWRlciB7XG4gIGNvbG9yOiAjNTRDOEZGICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQuYmx1ZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzNhYzBmZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBWaW9sZXQgLS0tKi9cblxuLnVpLnZpb2xldC5oZWFkZXIge1xuICBjb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnZpb2xldC5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzU4MjliYiAhaW1wb3J0YW50O1xufVxuXG4udWkudmlvbGV0LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNjQzNUM5O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQudmlvbGV0LmhlYWRlciB7XG4gIGNvbG9yOiAjQTI5MUZCICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQudmlvbGV0LmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjOGE3M2ZmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFB1cnBsZSAtLS0qL1xuXG4udWkucHVycGxlLmhlYWRlciB7XG4gIGNvbG9yOiAjQTMzM0M4ICFpbXBvcnRhbnQ7XG59XG5cbmEudWkucHVycGxlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjOTYyN2JhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wdXJwbGUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNBMzMzQzg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuaGVhZGVyIHtcbiAgY29sb3I6ICNEQzczRkYgIWltcG9ydGFudDtcbn1cblxuYS51aS5pbnZlcnRlZC5wdXJwbGUuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkNjVhZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0gUGluayAtLS0qL1xuXG4udWkucGluay5oZWFkZXIge1xuICBjb2xvcjogI0UwMzk5NyAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnBpbmsuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNlNjFhOGQgIWltcG9ydGFudDtcbn1cblxuLnVpLnBpbmsuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFMDM5OTc7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5waW5rLmhlYWRlciB7XG4gIGNvbG9yOiAjRkY4RURGICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQucGluay5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmNzRkOCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBCcm93biAtLS0qL1xuXG4udWkuYnJvd24uaGVhZGVyIHtcbiAgY29sb3I6ICNBNTY3M0YgIWltcG9ydGFudDtcbn1cblxuYS51aS5icm93bi5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzk3NWIzMyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnJvd24uZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNBNTY3M0Y7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5icm93bi5oZWFkZXIge1xuICBjb2xvcjogI0Q2N0MxQyAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLmJyb3duLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjYzg2ZjExICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEdyZXkgLS0tKi9cblxuLnVpLmdyZXkuaGVhZGVyIHtcbiAgY29sb3I6ICM3Njc2NzYgIWltcG9ydGFudDtcbn1cblxuYS51aS5ncmV5LmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjODM4MzgzICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmV5LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNzY3Njc2O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuZ3JleS5oZWFkZXIge1xuICBjb2xvcjogI0RDRERERSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLmdyZXkuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNjZmQwZDIgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5hbGlnbmVkLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi51aS5yaWdodC5hbGlnbmVkLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udWkuY2VudGVyZWQuaGVhZGVyLFxuLnVpLmNlbnRlci5hbGlnbmVkLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmp1c3RpZmllZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4udWkuanVzdGlmaWVkLmhlYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGVkLmhlYWRlcixcbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uaGVhZGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uaGVhZGVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuaGVhZGVyIHtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpdmlkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGluZy5oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5kaXZpZGluZy5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MXJlbTtcbn1cblxuLnVpLmRpdmlkaW5nLmhlYWRlciAuaWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLmludmVydGVkLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEJsb2NrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ibG9jay5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5cmVtIDFyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnRpbnkuYmxvY2suaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuYmxvY2suaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkuYmxvY2suaGVhZGVyOm5vdChoMSk6bm90KGgyKTpub3QoaDMpOm5vdChoNCk6bm90KGg1KTpub3QoaDYpIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UuYmxvY2suaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuaHVnZS5ibG9jay5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hdHRhY2hlZC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5cmVtIDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbn1cblxuLnVpLmF0dGFjaGVkLmJsb2NrLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG59XG5cbi51aS5hdHRhY2hlZDpub3QoLnRvcCk6bm90KC5ib3R0b20pLmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi51aS50b3AuYXR0YWNoZWQuaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLmJvdHRvbS5hdHRhY2hlZC5oZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBBdHRhY2hlZCBTaXplcyAqL1xuXG4udWkudGlueS5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnNtYWxsLmF0dGFjaGVkLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xufVxuXG4udWkuYXR0YWNoZWQuaGVhZGVyOm5vdChoMSk6bm90KGgyKTpub3QoaDMpOm5vdChoNCk6bm90KGg1KTpub3QoaDYpIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi51aS5sYXJnZS5hdHRhY2hlZC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmh1Z2UuYXR0YWNoZWQuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlcjpub3QoaDEpOm5vdChoMik6bm90KGgzKTpub3QoaDQpOm5vdChoNSk6bm90KGg2KSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBJY29uXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEljb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ljb25zJztcbiAgc3JjOiB1cmwoXCIuL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybChcIi4vdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2ljb25zLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMudHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMuc3ZnI2ljb25zXCIpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbmkuaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgbWFyZ2luOiAwZW0gMC4yNXJlbSAwZW0gMGVtO1xuICB3aWR0aDogMS4xOGVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgZm9udC1mYW1pbHk6ICdJY29ucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5pLmljb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5pY29uLmxvYWRpbmcge1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBpY29uLWxvYWRpbmcgMnMgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb246IGljb24tbG9hZGluZyAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBpY29uLWxvYWRpbmcge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaWNvbi1sb2FkaW5nIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaS5pY29uLmhvdmVyIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG5pLmljb24uYWN0aXZlIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG5pLmVtcGhhc2l6ZWQuaWNvbiB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuaS5kaXNhYmxlZC5pY29uIHtcbiAgb3BhY2l0eTogMC40NSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkuZml0dGVkLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBMaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkubGluay5pY29uLFxuaS5saW5rLmljb25zIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuXG5pLmxpbmsuaWNvbjpob3ZlcixcbmkubGluay5pY29uczpob3ZlciB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDaXJjdWxhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmNpcmN1bGFyLmljb24ge1xuICBib3JkZXItcmFkaXVzOiA1MDBlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjVlbSAwZW0gIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAwLjFlbSByZ2JhKDAsIDAsIDAsIDAuMSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDAuMWVtIHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldDtcbiAgd2lkdGg6IDJlbSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDJlbSAhaW1wb3J0YW50O1xufVxuXG5pLmNpcmN1bGFyLmludmVydGVkLmljb24ge1xuICBib3JkZXI6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBGbGlwcGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkuZmxpcHBlZC5pY29uLFxuaS5ob3Jpem9udGFsbHkuZmxpcHBlZC5pY29uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG59XG5cbmkudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBSb3RhdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkucm90YXRlZC5pY29uLFxuaS5yaWdodC5yb3RhdGVkLmljb24sXG5pLmNsb2Nrd2lzZS5yb3RhdGVkLmljb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG5pLmxlZnQucm90YXRlZC5pY29uLFxuaS5jb3VudGVyY2xvY2t3aXNlLnJvdGF0ZWQuaWNvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmJvcmRlcmVkLmljb24ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgcGFkZGluZzogMC41ZW0gMGVtICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMC4xZW0gcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0O1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAwLjFlbSByZ2JhKDAsIDAsIDAsIDAuMSkgaW5zZXQ7XG59XG5cbmkuYm9yZGVyZWQuaW52ZXJ0ZWQuaWNvbiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEludmVydGVkIFNoYXBlcyAqL1xuXG5pLmludmVydGVkLmJvcmRlcmVkLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuaWNvbiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVkICovXG5cbmkucmVkLmljb24ge1xuICBjb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLnJlZC5pY29uIHtcbiAgY29sb3I6ICNGRjY5NUUgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5yZWQuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucmVkLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIE9yYW5nZSAqL1xuXG5pLm9yYW5nZS5pY29uIHtcbiAgY29sb3I6ICNGMjcxMUMgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5vcmFuZ2UuaWNvbiB7XG4gIGNvbG9yOiAjRkY4NTFCICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQub3JhbmdlLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLm9yYW5nZS5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBZZWxsb3cgKi9cblxuaS55ZWxsb3cuaWNvbiB7XG4gIGNvbG9yOiAjRkJCRDA4ICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQueWVsbG93Lmljb24ge1xuICBjb2xvcjogI0ZGRTIxRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLnllbGxvdy5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci55ZWxsb3cuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDggIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogT2xpdmUgKi9cblxuaS5vbGl2ZS5pY29uIHtcbiAgY29sb3I6ICNCNUNDMTggIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5vbGl2ZS5pY29uIHtcbiAgY29sb3I6ICNEOUU3NzggIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5vbGl2ZS5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5vbGl2ZS5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBHcmVlbiAqL1xuXG5pLmdyZWVuLmljb24ge1xuICBjb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmdyZWVuLmljb24ge1xuICBjb2xvcjogIzJFQ0M0MCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLmdyZWVuLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmdyZWVuLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIFRlYWwgKi9cblxuaS50ZWFsLmljb24ge1xuICBjb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLnRlYWwuaWNvbiB7XG4gIGNvbG9yOiAjNkRGRkZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQudGVhbC5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci50ZWFsLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUFEICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJsdWUgKi9cblxuaS5ibHVlLmljb24ge1xuICBjb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJsdWUuaWNvbiB7XG4gIGNvbG9yOiAjNTRDOEZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQuYmx1ZS5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5ibHVlLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZpb2xldCAqL1xuXG5pLnZpb2xldC5pY29uIHtcbiAgY29sb3I6ICM2NDM1QzkgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC52aW9sZXQuaWNvbiB7XG4gIGNvbG9yOiAjQTI5MUZCICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQudmlvbGV0Lmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLnZpb2xldC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBQdXJwbGUgKi9cblxuaS5wdXJwbGUuaWNvbiB7XG4gIGNvbG9yOiAjQTMzM0M4ICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQucHVycGxlLmljb24ge1xuICBjb2xvcjogI0RDNzNGRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLnB1cnBsZS5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5wdXJwbGUuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzggIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogUGluayAqL1xuXG5pLnBpbmsuaWNvbiB7XG4gIGNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQucGluay5pY29uIHtcbiAgY29sb3I6ICNGRjhFREYgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5waW5rLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLnBpbmsuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTcgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogQnJvd24gKi9cblxuaS5icm93bi5pY29uIHtcbiAgY29sb3I6ICNBNTY3M0YgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5icm93bi5pY29uIHtcbiAgY29sb3I6ICNENjdDMUMgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5icm93bi5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5icm93bi5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBHcmV5ICovXG5cbmkuZ3JleS5pY29uIHtcbiAgY29sb3I6ICM3Njc2NzYgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ncmV5Lmljb24ge1xuICBjb2xvcjogI0RDRERERSAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLmdyZXkuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIuZ3JleS5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCbGFjayAqL1xuXG5pLmJsYWNrLmljb24ge1xuICBjb2xvcjogIzFCMUMxRCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJsYWNrLmljb24ge1xuICBjb2xvcjogIzU0NTQ1NCAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLmJsYWNrLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmJsYWNrLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLm1pbmkuaWNvbixcbmkubWluaS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNGVtO1xufVxuXG5pLnRpbnkuaWNvbixcbmkudGlueS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNWVtO1xufVxuXG5pLnNtYWxsLmljb24sXG5pLnNtYWxsLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xufVxuXG5pLmljb24sXG5pLmljb25zIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmkubGFyZ2UuaWNvbixcbmkubGFyZ2UuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cblxuaS5iaWcuaWNvbixcbmkuYmlnLmljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG5pLmh1Z2UuaWNvbixcbmkuaHVnZS5pY29ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuaS5tYXNzaXZlLmljb24sXG5pLm1hc3NpdmUuaWNvbnMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmkuaWNvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmkuaWNvbnMgLmljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBtYXJnaW46IDBlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG5pLmljb25zIC5pY29uOmZpcnN0LWNoaWxkIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG4vKiBDb3JuZXIgSWNvbiAqL1xuXG5pLmljb25zIC5jb3JuZXIuaWNvbiB7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjQ1ZW07XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMCAjRkZGRkZGLCAxcHggLTFweCAwICNGRkZGRkYsIC0xcHggMXB4IDAgI0ZGRkZGRiwgMXB4IDFweCAwICNGRkZGRkY7XG59XG5cbmkuaWNvbnMgLnRvcC5yaWdodC5jb3JuZXIuaWNvbiB7XG4gIHRvcDogMDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuaS5pY29ucyAudG9wLmxlZnQuY29ybmVyLmljb24ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG59XG5cbmkuaWNvbnMgLmJvdHRvbS5sZWZ0LmNvcm5lci5pY29uIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG5pLmljb25zIC5ib3R0b20ucmlnaHQuY29ybmVyLmljb24ge1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG59XG5cbmkuaWNvbnMgLmludmVydGVkLmNvcm5lci5pY29uIHtcbiAgdGV4dC1zaGFkb3c6IC0xcHggLTFweCAwICMxQjFDMUQsIDFweCAtMXB4IDAgIzFCMUMxRCwgLTFweCAxcHggMCAjMUIxQzFELCAxcHggMXB4IDAgIzFCMUMxRDtcbn1cblxuLypcbiAqIEZvbnQgQXdlc29tZSA1LjAuOCBieSBAZm9udGF3ZXNvbWUgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChJY29uczogQ0MgQlkgNC4wIExpY2Vuc2UsIEZvbnRzOiBTSUwgT0ZMIDEuMSBMaWNlbnNlLCBDU1M6IE1JVCBMaWNlbnNlKVxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cblNlbWFudGljLVVJIGludGVncmF0aW9uIG9mIGZvbnQtYXdlc29tZSA6XG5cbi8vL2NsYXNzIG5hbWVzIGFyZSBzZXBhcmF0ZWRcbmkuaWNvbi5jaXJjbGUgPT4gaS5pY29uLmNpcmNsZVxuaS5pY29uLmNpcmNsZS1vID0+IGkuaWNvbi5jaXJjbGUub3V0bGluZVxuXG4vL2FiYnJldmlhdGlvbiBhcmUgcmVwbGFjZWQgYnkgZnVsbCBsZXR0ZXJzOlxuaS5pY29uLmVsbGlwc2lzLWggPT4gaS5pY29uLmVsbGlwc2lzLmhvcml6b250YWxcbmkuaWNvbi5lbGxpcHNpcy12ID0+IGkuaWNvbi5lbGxpcHNpcy52ZXJ0aWNhbFxuLmFscGhhID0+IC5pLmljb24uYWxwaGFiZXRcbi5hc2MgPT4gLmkuaWNvbi5hc2NlbmRpbmdcbi5kZXNjID0+IC5pLmljb24uZGVzY2VuZGluZ1xuLmFsdCA9Pi5hbHRlcm5hdGVcblxuQVNDSUkgb3JkZXIgaXMgY29uc2VydmVkIGZvciBlYXNpZXIgbWFpbnRlbmFuY2UuXG5cbkljb25zIHRoYXQgb25seSBoYXZlIG9uZSBzdHlsZSAnb3V0bGluZScsICdzcXVhcmUnIGV0YyBkbyBub3QgcmVxdWlyZSB0aGlzIGNsYXNzXG5mb3IgaW5zdGFuY2UgYGxlbW9uIGljb25gIG5vdCBgbGVtb24gb3V0bGluZSBpY29uYCBzaW5jZSB0aGVyZSBpcyBvbmx5IG9uZSBsZW1vblxuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgSWNvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIERlcHJlY2F0ZWQgKkluL091dCBOYW1pbmcgQ29uZmxpY3QpICovXG5cbmkuaWNvbi5saW5rZWRpbi5pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMVwiO1xufVxuXG5pLmljb24uem9vbS5pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZVwiO1xufVxuXG5pLmljb24uem9vbS5vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTBcIjtcbn1cblxuaS5pY29uLnNpZ24uaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjZcIjtcbn1cblxuaS5pY29uLmluLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMThcIjtcbn1cblxuaS5pY29uLmxvZy5vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjVcIjtcbn1cblxuaS5pY29uLnNpZ24ub3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY1XCI7XG59XG5cbi8qIEljb25zICovXG5cbmkuaWNvbi5cXDM1IDAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbn1cblxuaS5pY29uLmFjY2Vzc2libGUuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2OFwiO1xufVxuXG5pLmljb24uYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNjlcIjtcbn1cblxuaS5pY29uLmFkZHJlc3MuYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiOVwiO1xufVxuXG5pLmljb24uYWRkcmVzcy5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJiXCI7XG59XG5cbmkuaWNvbi5hZGp1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDJcIjtcbn1cblxuaS5pY29uLmFkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3MFwiO1xufVxuXG5pLmljb24uYWR2ZXJzYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmFcIjtcbn1cblxuaS5pY29uLmFmZmlsaWF0ZXRoZW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzZiXCI7XG59XG5cbmkuaWNvbi5hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzZjXCI7XG59XG5cbmkuaWNvbi5hbGlnbi5jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzdcIjtcbn1cblxuaS5pY29uLmFsaWduLmp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzlcIjtcbn1cblxuaS5pY29uLmFsaWduLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzZcIjtcbn1cblxuaS5pY29uLmFsaWduLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM4XCI7XG59XG5cbmkuaWNvbi5hbWF6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzBcIjtcbn1cblxuaS5pY29uLmFtYXpvbi5wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmNcIjtcbn1cblxuaS5pY29uLmFtYnVsYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmOVwiO1xufVxuXG5pLmljb24uYW1lcmljYW4uc2lnbi5sYW5ndWFnZS5pbnRlcnByZXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTNcIjtcbn1cblxuaS5pY29uLmFtaWxpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2ZFwiO1xufVxuXG5pLmljb24uYW5jaG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNkXCI7XG59XG5cbmkuaWNvbi5hbmRyb2lkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdiXCI7XG59XG5cbmkuaWNvbi5hbmdlbGxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDlcIjtcbn1cblxuaS5pY29uLmFuZ2xlLmRvdWJsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAzXCI7XG59XG5cbmkuaWNvbi5hbmdsZS5kb3VibGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwMFwiO1xufVxuXG5pLmljb24uYW5nbGUuZG91YmxlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG59XG5cbmkuaWNvbi5hbmdsZS5kb3VibGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDJcIjtcbn1cblxuaS5pY29uLmFuZ2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDdcIjtcbn1cblxuaS5pY29uLmFuZ2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDRcIjtcbn1cblxuaS5pY29uLmFuZ2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG59XG5cbmkuaWNvbi5hbmdsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG5pLmljb24uYW5ncnljcmVhdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2ZVwiO1xufVxuXG5pLmljb24uYW5ndWxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyMFwiO1xufVxuXG5pLmljb24uYXBwLnN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzZmXCI7XG59XG5cbmkuaWNvbi5hcHAuc3RvcmUuaW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzcwXCI7XG59XG5cbmkuaWNvbi5hcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3MVwiO1xufVxuXG5pLmljb24uYXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzlcIjtcbn1cblxuaS5pY29uLmFwcGxlLnBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxNVwiO1xufVxuXG5pLmljb24uYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuXG5pLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzU4XCI7XG59XG5cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNTlcIjtcbn1cblxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWFcIjtcbn1cblxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWJcIjtcbn1cblxuaS5pY29uLmFycm93LmNpcmNsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFiXCI7XG59XG5cbmkuaWNvbi5hcnJvdy5jaXJjbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOFwiO1xufVxuXG5pLmljb24uYXJyb3cuY2lyY2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE5XCI7XG59XG5cbmkuaWNvbi5hcnJvdy5jaXJjbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWFcIjtcbn1cblxuaS5pY29uLmFycm93LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbn1cblxuaS5pY29uLmFycm93LmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjBcIjtcbn1cblxuaS5pY29uLmFycm93LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG59XG5cbmkuaWNvbi5hcnJvdy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MlwiO1xufVxuXG5pLmljb24uYXJyb3dzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMlwiO1xufVxuXG5pLmljb24uYXJyb3dzLmFsdGVybmF0ZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM3XCI7XG59XG5cbmkuaWNvbi5hcnJvd3MuYWx0ZXJuYXRlLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM4XCI7XG59XG5cbmkuaWNvbi5hc3Npc3RpdmUubGlzdGVuaW5nLnN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cblxuaS5pY29uLmFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY5XCI7XG59XG5cbmkuaWNvbi5hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzcyXCI7XG59XG5cbmkuaWNvbi5hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYVwiO1xufVxuXG5pLmljb24uYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3M1wiO1xufVxuXG5pLmljb24uYXVkaW8uZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWVcIjtcbn1cblxuaS5pY29uLmF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxY1wiO1xufVxuXG5pLmljb24uYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3NFwiO1xufVxuXG5pLmljb24uYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDIxXCI7XG59XG5cbmkuaWNvbi5hd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzVcIjtcbn1cblxuaS5pY29uLmJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRhXCI7XG59XG5cbmkuaWNvbi5iYWxhbmNlLnNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRlXCI7XG59XG5cbmkuaWNvbi5iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWVcIjtcbn1cblxuaS5pY29uLmJhbmQuYWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDYyXCI7XG59XG5cbmkuaWNvbi5iYW5kY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNVwiO1xufVxuXG5pLmljb24uYmFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyYVwiO1xufVxuXG5pLmljb24uYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuXG5pLmljb24uYmFzZWJhbGwuYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzM1wiO1xufVxuXG5pLmljb24uYmFza2V0YmFsbC5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDM0XCI7XG59XG5cbmkuaWNvbi5iYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNkXCI7XG59XG5cbmkuaWNvbi5iYXR0ZXJ5LmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ0XCI7XG59XG5cbmkuaWNvbi5iYXR0ZXJ5LmZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDBcIjtcbn1cblxuaS5pY29uLmJhdHRlcnkuaGFsZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0MlwiO1xufVxuXG5pLmljb24uYmF0dGVyeS5xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQzXCI7XG59XG5cbmkuaWNvbi5iYXR0ZXJ5LnRocmVlLnF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQxXCI7XG59XG5cbmkuaWNvbi5iZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzZcIjtcbn1cblxuaS5pY29uLmJlZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmNcIjtcbn1cblxuaS5pY29uLmJlaGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjRcIjtcbn1cblxuaS5pY29uLmJlaGFuY2Uuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI1XCI7XG59XG5cbmkuaWNvbi5iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYzXCI7XG59XG5cbmkuaWNvbi5iZWxsLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY2XCI7XG59XG5cbmkuaWNvbi5iaWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA2XCI7XG59XG5cbmkuaWNvbi5iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzhcIjtcbn1cblxuaS5pY29uLmJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTVcIjtcbn1cblxuaS5pY29uLmJpcnRoZGF5LmNha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmRcIjtcbn1cblxuaS5pY29uLmJpdGJ1Y2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3MVwiO1xufVxuXG5pLmljb24uYml0Y29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3OVwiO1xufVxuXG5pLmljb24uYml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3YVwiO1xufVxuXG5pLmljb24uYmxhY2sudGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdlXCI7XG59XG5cbmkuaWNvbi5ibGFja2JlcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdiXCI7XG59XG5cbmkuaWNvbi5ibGluZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5ZFwiO1xufVxuXG5pLmljb24uYmxvZ2dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3Y1wiO1xufVxuXG5pLmljb24uYmxvZ2dlci5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdkXCI7XG59XG5cbmkuaWNvbi5ibHVldG9vdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTNcIjtcbn1cblxuaS5pY29uLmJsdWV0b290aC5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk0XCI7XG59XG5cbmkuaWNvbi5ib2xkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMyXCI7XG59XG5cbmkuaWNvbi5ib2x0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU3XCI7XG59XG5cbmkuaWNvbi5ib21iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUyXCI7XG59XG5cbmkuaWNvbi5ib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJkXCI7XG59XG5cbmkuaWNvbi5ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZVwiO1xufVxuXG5pLmljb24uYm93bGluZy5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDM2XCI7XG59XG5cbmkuaWNvbi5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NjZcIjtcbn1cblxuaS5pY29uLmJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDY4XCI7XG59XG5cbmkuaWNvbi5icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmExXCI7XG59XG5cbmkuaWNvbi5icmllZmNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjFcIjtcbn1cblxuaS5pY29uLmJ0YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YVwiO1xufVxuXG5pLmljb24uYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg4XCI7XG59XG5cbmkuaWNvbi5idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhZFwiO1xufVxuXG5pLmljb24uYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTFcIjtcbn1cblxuaS5pY29uLmJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG59XG5cbmkuaWNvbi5idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzdmXCI7XG59XG5cbmkuaWNvbi5idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDdcIjtcbn1cblxuaS5pY29uLmJ1eXNlbGxhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGRcIjtcbn1cblxuaS5pY29uLmNhbGN1bGF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWNcIjtcbn1cblxuaS5pY29uLmNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMzXCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzNcIjtcbn1cblxuaS5pY29uLmNhbGVuZGFyLmNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhci5taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3MlwiO1xufVxuXG5pLmljb24uY2FsZW5kYXIucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3MVwiO1xufVxuXG5pLmljb24uY2FsZW5kYXIudGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzNcIjtcbn1cblxuaS5pY29uLmNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMFwiO1xufVxuXG5pLmljb24uY2FtZXJhLnJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgzXCI7XG59XG5cbmkuaWNvbi5jYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjlcIjtcbn1cblxuaS5pY29uLmNhcmV0LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDdcIjtcbn1cblxuaS5pY29uLmNhcmV0LmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDlcIjtcbn1cblxuaS5pY29uLmNhcmV0LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG59XG5cbmkuaWNvbi5jYXJldC5zcXVhcmUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MFwiO1xufVxuXG5pLmljb24uY2FyZXQuc3F1YXJlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTFcIjtcbn1cblxuaS5pY29uLmNhcmV0LnNxdWFyZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MlwiO1xufVxuXG5pLmljb24uY2FyZXQuc3F1YXJlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUxXCI7XG59XG5cbmkuaWNvbi5jYXJldC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOFwiO1xufVxuXG5pLmljb24uY2FydC5hcnJvdy5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG5cbmkuaWNvbi5jYXJ0LnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTdcIjtcbn1cblxuaS5pY29uLmNjLmFtYXpvbi5wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmRcIjtcbn1cblxuaS5pY29uLmNjLmFtZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbn1cblxuaS5pY29uLmNjLmFwcGxlLnBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxNlwiO1xufVxuXG5pLmljb24uY2MuZGluZXJzLmNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbn1cblxuaS5pY29uLmNjLmRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG59XG5cbmkuaWNvbi5jYy5qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGJcIjtcbn1cblxuaS5pY29uLmNjLm1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjFcIjtcbn1cblxuaS5pY29uLmNjLnBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuXG5pLmljb24uY2Muc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY1XCI7XG59XG5cbmkuaWNvbi5jYy52aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG59XG5cbmkuaWNvbi5jZW50ZXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgwXCI7XG59XG5cbmkuaWNvbi5jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhM1wiO1xufVxuXG5pLmljb24uY2hhcnQuYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZVwiO1xufVxuXG5pLmljb24uY2hhcnQuYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDgwXCI7XG59XG5cbmkuaWNvbi5jaGFydC5saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAxXCI7XG59XG5cbmkuaWNvbi5jaGFydC5waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cblxuaS5pY29uLmNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5cbmkuaWNvbi5jaGVjay5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNThcIjtcbn1cblxuaS5pY29uLmNoZWNrLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuXG5pLmljb24uY2hlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MzlcIjtcbn1cblxuaS5pY29uLmNoZXNzLmJpc2hvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzYVwiO1xufVxuXG5pLmljb24uY2hlc3MuYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0M2NcIjtcbn1cblxuaS5pY29uLmNoZXNzLmtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0M2ZcIjtcbn1cblxuaS5pY29uLmNoZXNzLmtuaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0MVwiO1xufVxuXG5pLmljb24uY2hlc3MucGF3bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0M1wiO1xufVxuXG5pLmljb24uY2hlc3MucXVlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDVcIjtcbn1cblxuaS5pY29uLmNoZXNzLnJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDdcIjtcbn1cblxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2FcIjtcbn1cblxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzdcIjtcbn1cblxuaS5pY29uLmNoZXZyb24uY2lyY2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM4XCI7XG59XG5cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzOVwiO1xufVxuXG5pLmljb24uY2hldnJvbi5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG5cbmkuaWNvbi5jaGV2cm9uLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTNcIjtcbn1cblxuaS5pY29uLmNoZXZyb24ucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cblxuaS5pY29uLmNoZXZyb24udXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzdcIjtcbn1cblxuaS5pY29uLmNoaWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFlXCI7XG59XG5cbmkuaWNvbi5jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjhcIjtcbn1cblxuaS5pY29uLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMVwiO1xufVxuXG5pLmljb24uY2lyY2xlLm5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNlXCI7XG59XG5cbmkuaWNvbi5jbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMjhcIjtcbn1cblxuaS5pY29uLmNsaXBib2FyZC5jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2Y1wiO1xufVxuXG5pLmljb24uY2xpcGJvYXJkLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NmRcIjtcbn1cblxuaS5pY29uLmNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5cbmkuaWNvbi5jbG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZFwiO1xufVxuXG5pLmljb24uY2xvc2VkLmNhcHRpb25pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGFcIjtcbn1cblxuaS5pY29uLmNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMyXCI7XG59XG5cbmkuaWNvbi5jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgzXCI7XG59XG5cbmkuaWNvbi5jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzg0XCI7XG59XG5cbmkuaWNvbi5jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODVcIjtcbn1cblxuaS5pY29uLmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjFcIjtcbn1cblxuaS5pY29uLmNvZGUuYnJhbmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI2XCI7XG59XG5cbmkuaWNvbi5jb2RlcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNiXCI7XG59XG5cbmkuaWNvbi5jb2RpZXBpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NFwiO1xufVxuXG5pLmljb24uY29mZmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY0XCI7XG59XG5cbmkuaWNvbi5jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTNcIjtcbn1cblxuaS5pY29uLmNvZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODVcIjtcbn1cblxuaS5pY29uLmNvbHVtbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGJcIjtcbn1cblxuaS5pY29uLmNvbW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cblxuaS5pY29uLmNvbW1lbnQuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdhXCI7XG59XG5cbmkuaWNvbi5jb21tZW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NlwiO1xufVxuXG5pLmljb24uY29tcGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZVwiO1xufVxuXG5pLmljb24uY29tcHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjZcIjtcbn1cblxuaS5pY29uLmNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBlXCI7XG59XG5cbmkuaWNvbi5jb250YW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmRcIjtcbn1cblxuaS5pY29uLmNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzVcIjtcbn1cblxuaS5pY29uLmNvcHlyaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuXG5pLmljb24uY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzg4XCI7XG59XG5cbmkuaWNvbi5jcmVhdGl2ZS5jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVlXCI7XG59XG5cbmkuaWNvbi5jcmVkaXQuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZFwiO1xufVxuXG5pLmljb24uY3JvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNVwiO1xufVxuXG5pLmljb24uY3Jvc3NoYWlyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YlwiO1xufVxuXG5pLmljb24uY3NzMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzY1wiO1xufVxuXG5pLmljb24uY3NzMy5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGJcIjtcbn1cblxuaS5pY29uLmN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjJcIjtcbn1cblxuaS5pY29uLmN1YmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIzXCI7XG59XG5cbmkuaWNvbi5jdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzRcIjtcbn1cblxuaS5pY29uLmN1dHRsZWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGNcIjtcbn1cblxuaS5pY29uLmQuYW5kLmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGRcIjtcbn1cblxuaS5pY29uLmRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjEwXCI7XG59XG5cbmkuaWNvbi5kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMFwiO1xufVxuXG5pLmljb24uZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNFwiO1xufVxuXG5pLmljb24uZGVsaWNpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE1XCI7XG59XG5cbmkuaWNvbi5kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGVcIjtcbn1cblxuaS5pY29uLmRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGZcIjtcbn1cblxuaS5pY29uLmRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDhcIjtcbn1cblxuaS5pY29uLmRldmlhbnRhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmRcIjtcbn1cblxuaS5pY29uLmRpZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTZcIjtcbn1cblxuaS5pY29uLmRpZ2l0YWwub2NlYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTFcIjtcbn1cblxuaS5pY29uLmRpc2NvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTJcIjtcbn1cblxuaS5pY29uLmRpc2NvdXJzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5M1wiO1xufVxuXG5pLmljb24uZG5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDcxXCI7XG59XG5cbmkuaWNvbi5kb2NodWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTRcIjtcbn1cblxuaS5pY29uLmRvY2tlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5NVwiO1xufVxuXG5pLmljb24uZG9sbGFyLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTVcIjtcbn1cblxuaS5pY29uLmRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDcyXCI7XG59XG5cbmkuaWNvbi5kb2xseS5mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc0XCI7XG59XG5cbmkuaWNvbi5kb3QuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5cbmkuaWNvbi5kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxOVwiO1xufVxuXG5pLmljb24uZHJhZnQyZGlnaXRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5NlwiO1xufVxuXG5pLmljb24uZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2RcIjtcbn1cblxuaS5pY29uLmRyaWJiYmxlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5N1wiO1xufVxuXG5pLmljb24uZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2YlwiO1xufVxuXG5pLmljb24uZHJ1cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE5XCI7XG59XG5cbmkuaWNvbi5keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTlcIjtcbn1cblxuaS5pY29uLmVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOWFcIjtcbn1cblxuaS5pY29uLmVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODJcIjtcbn1cblxuaS5pY29uLmVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDRcIjtcbn1cblxuaS5pY29uLmVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDUyXCI7XG59XG5cbmkuaWNvbi5lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MzBcIjtcbn1cblxuaS5pY29uLmVsbGlwc2lzLmhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDFcIjtcbn1cblxuaS5pY29uLmVsbGlwc2lzLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQyXCI7XG59XG5cbmkuaWNvbi5lbWJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyM1wiO1xufVxuXG5pLmljb24uZW1waXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQxXCI7XG59XG5cbmkuaWNvbi5lbnZlbG9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMFwiO1xufVxuXG5pLmljb24uZW52ZWxvcGUub3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNlwiO1xufVxuXG5pLmljb24uZW52ZWxvcGUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk5XCI7XG59XG5cbmkuaWNvbi5lbnZpcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTlcIjtcbn1cblxuaS5pY29uLmVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZFwiO1xufVxuXG5pLmljb24uZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzlkXCI7XG59XG5cbmkuaWNvbi5ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyZVwiO1xufVxuXG5pLmljb24uZXRzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkN1wiO1xufVxuXG5pLmljb24uZXVyby5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG5cbmkuaWNvbi5leGNoYW5nZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNjJcIjtcbn1cblxuaS5pY29uLmV4Y2xhbWF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJhXCI7XG59XG5cbmkuaWNvbi5leGNsYW1hdGlvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmFcIjtcbn1cblxuaS5pY29uLmV4Y2xhbWF0aW9uLnRyaWFuZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG59XG5cbmkuaWNvbi5leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjVcIjtcbn1cblxuaS5pY29uLmV4cGFuZC5hcnJvd3MuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzFlXCI7XG59XG5cbmkuaWNvbi5leHBlZGl0ZWRzc2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2VcIjtcbn1cblxuaS5pY29uLmV4dGVybmFsLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1ZFwiO1xufVxuXG5pLmljb24uZXh0ZXJuYWwuc3F1YXJlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2MFwiO1xufVxuXG5pLmljb24uZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG59XG5cbmkuaWNvbi5leWUuZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYlwiO1xufVxuXG5pLmljb24uZXllLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcwXCI7XG59XG5cbmkuaWNvbi5mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YVwiO1xufVxuXG5pLmljb24uZmFjZWJvb2suZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5ZVwiO1xufVxuXG5pLmljb24uZmFjZWJvb2subWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzlmXCI7XG59XG5cbmkuaWNvbi5mYWNlYm9vay5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODJcIjtcbn1cblxuaS5pY29uLmZhc3QuYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDlcIjtcbn1cblxuaS5pY29uLmZhc3QuZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1MFwiO1xufVxuXG5pLmljb24uZmF4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFjXCI7XG59XG5cbmkuaWNvbi5mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODJcIjtcbn1cblxuaS5pY29uLmZpZ2h0ZXIuamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZiXCI7XG59XG5cbmkuaWNvbi5maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTViXCI7XG59XG5cbmkuaWNvbi5maWxlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1Y1wiO1xufVxuXG5pLmljb24uZmlsZS5hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM2XCI7XG59XG5cbmkuaWNvbi5maWxlLmF1ZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM3XCI7XG59XG5cbmkuaWNvbi5maWxlLmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzlcIjtcbn1cblxuaS5pY29uLmZpbGUuZXhjZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzNcIjtcbn1cblxuaS5pY29uLmZpbGUuaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzVcIjtcbn1cblxuaS5pY29uLmZpbGUucGRmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMxXCI7XG59XG5cbmkuaWNvbi5maWxlLnBvd2VycG9pbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzRcIjtcbn1cblxuaS5pY29uLmZpbGUudmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzhcIjtcbn1cblxuaS5pY29uLmZpbGUud29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMlwiO1xufVxuXG5pLmljb24uZmlsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOFwiO1xufVxuXG5pLmljb24uZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIwXCI7XG59XG5cbmkuaWNvbi5maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZkXCI7XG59XG5cbmkuaWNvbi5maXJlLmV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNFwiO1xufVxuXG5pLmljb24uZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2OVwiO1xufVxuXG5pLmljb24uZmlyc3QuYWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc5XCI7XG59XG5cbmkuaWNvbi5maXJzdC5vcmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiMFwiO1xufVxuXG5pLmljb24uZmlyc3RkcmFmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhMVwiO1xufVxuXG5pLmljb24uZmxhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNFwiO1xufVxuXG5pLmljb24uZmxhZy5jaGVja2VyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWVcIjtcbn1cblxuaS5pY29uLmZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMzXCI7XG59XG5cbmkuaWNvbi5mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmVcIjtcbn1cblxuaS5pY29uLmZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0ZFwiO1xufVxuXG5pLmljb24uZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE3XCI7XG59XG5cbmkuaWNvbi5mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2JcIjtcbn1cblxuaS5pY29uLmZvbGRlci5vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdjXCI7XG59XG5cbmkuaWNvbi5mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMxXCI7XG59XG5cbmkuaWNvbi5mb250LmF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjRcIjtcbn1cblxuaS5pY29uLmZvbnQuYXdlc29tZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWNcIjtcbn1cblxuaS5pY29uLmZvbnQuYXdlc29tZS5mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI1XCI7XG59XG5cbmkuaWNvbi5mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODBcIjtcbn1cblxuaS5pY29uLmZvbnRpY29ucy5maTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhMlwiO1xufVxuXG5pLmljb24uZm9vdGJhbGwuYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0ZVwiO1xufVxuXG5pLmljb24uZm9ydC5hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjg2XCI7XG59XG5cbmkuaWNvbi5mb3J0LmF3ZXNvbWUuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2EzXCI7XG59XG5cbmkuaWNvbi5mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxMVwiO1xufVxuXG5pLmljb24uZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZVwiO1xufVxuXG5pLmljb24uZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MFwiO1xufVxuXG5pLmljb24uZnJlZS5jb2RlLmNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzVcIjtcbn1cblxuaS5pY29uLmZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTRcIjtcbn1cblxuaS5pY29uLmZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTE5XCI7XG59XG5cbmkuaWNvbi5mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cblxuaS5pY29uLmdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWJcIjtcbn1cblxuaS5pY29uLmdhdmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUzXCI7XG59XG5cbmkuaWNvbi5nZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTVcIjtcbn1cblxuaS5pY29uLmdlbmRlcmxlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmRcIjtcbn1cblxuaS5pY29uLmdldC5wb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjVcIjtcbn1cblxuaS5pY29uLmdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYwXCI7XG59XG5cbmkuaWNvbi5nZy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjFcIjtcbn1cblxuaS5pY29uLmdpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmJcIjtcbn1cblxuaS5pY29uLmdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkM1wiO1xufVxuXG5pLmljb24uZ2l0LnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMlwiO1xufVxuXG5pLmljb24uZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG59XG5cbmkuaWNvbi5naXRodWIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTEzXCI7XG59XG5cbmkuaWNvbi5naXRodWIuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkyXCI7XG59XG5cbmkuaWNvbi5naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTZcIjtcbn1cblxuaS5pY29uLmdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5NlwiO1xufVxuXG5pLmljb24uZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI2XCI7XG59XG5cbmkuaWNvbi5nbGFzcy5tYXJ0aW5pOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAwXCI7XG59XG5cbmkuaWNvbi5nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNVwiO1xufVxuXG5pLmljb24uZ2xpZGUuZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhNlwiO1xufVxuXG5pLmljb24uZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWNcIjtcbn1cblxuaS5pY29uLmdvZm9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhN1wiO1xufVxuXG5pLmljb24uZ29sZi5iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDUwXCI7XG59XG5cbmkuaWNvbi5nb29kcmVhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYThcIjtcbn1cblxuaS5pY29uLmdvb2RyZWFkcy5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E5XCI7XG59XG5cbmkuaWNvbi5nb29nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTBcIjtcbn1cblxuaS5pY29uLmdvb2dsZS5kcml2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhYVwiO1xufVxuXG5pLmljb24uZ29vZ2xlLnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWJcIjtcbn1cblxuaS5pY29uLmdvb2dsZS5wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmIzXCI7XG59XG5cbmkuaWNvbi5nb29nbGUucGx1cy5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ1XCI7XG59XG5cbmkuaWNvbi5nb29nbGUucGx1cy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDRcIjtcbn1cblxuaS5pY29uLmdvb2dsZS53YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWVcIjtcbn1cblxuaS5pY29uLmdyYWR1YXRpb24uY2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlkXCI7XG59XG5cbmkuaWNvbi5ncmF0aXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NFwiO1xufVxuXG5pLmljb24uZ3JhdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNlwiO1xufVxuXG5pLmljb24uZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWNcIjtcbn1cblxuaS5pY29uLmdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2FkXCI7XG59XG5cbmkuaWNvbi5ndWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2FlXCI7XG59XG5cbmkuaWNvbi5oLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZFwiO1xufVxuXG5pLmljb24uaGFja2VyLm5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDRcIjtcbn1cblxuaS5pY29uLmhhY2tlci5uZXdzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhZlwiO1xufVxuXG5pLmljb24uaGFuZC5saXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNThcIjtcbn1cblxuaS5pY29uLmhhbmQucGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTZcIjtcbn1cblxuaS5pY29uLmhhbmQucGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWJcIjtcbn1cblxuaS5pY29uLmhhbmQucG9pbnQuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhN1wiO1xufVxuXG5pLmljb24uaGFuZC5wb2ludC5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG5cbmkuaWNvbi5oYW5kLnBvaW50LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE0XCI7XG59XG5cbmkuaWNvbi5oYW5kLnBvaW50LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE2XCI7XG59XG5cbmkuaWNvbi5oYW5kLnBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWFcIjtcbn1cblxuaS5pY29uLmhhbmQucm9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NVwiO1xufVxuXG5pLmljb24uaGFuZC5zY2lzc29yczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1N1wiO1xufVxuXG5pLmljb24uaGFuZC5zcG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1OVwiO1xufVxuXG5pLmljb24uaGFuZHNoYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI1XCI7XG59XG5cbmkuaWNvbi5oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkyXCI7XG59XG5cbmkuaWNvbi5oZGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTBcIjtcbn1cblxuaS5pY29uLmhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGNcIjtcbn1cblxuaS5pY29uLmhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjVcIjtcbn1cblxuaS5pY29uLmhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG59XG5cbmkuaWNvbi5oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWVcIjtcbn1cblxuaS5pY29uLmhpcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NTJcIjtcbn1cblxuaS5pY29uLmhpcmUuYS5oZWxwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjBcIjtcbn1cblxuaS5pY29uLmhpc3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGFcIjtcbn1cblxuaS5pY29uLmhvY2tleS5wdWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDUzXCI7XG59XG5cbmkuaWNvbi5ob21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG59XG5cbmkuaWNvbi5ob29saTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyN1wiO1xufVxuXG5pLmljb24uaG9zcGl0YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjhcIjtcbn1cblxuaS5pY29uLmhvc3BpdGFsLnN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3ZVwiO1xufVxuXG5pLmljb24uaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2IxXCI7XG59XG5cbmkuaWNvbi5ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTRcIjtcbn1cblxuaS5pY29uLmhvdXJnbGFzcy5lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTNcIjtcbn1cblxuaS5pY29uLmhvdXJnbGFzcy5oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUyXCI7XG59XG5cbmkuaWNvbi5ob3VyZ2xhc3Muc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTFcIjtcbn1cblxuaS5pY29uLmhvdXp6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjdjXCI7XG59XG5cbmkuaWNvbi5odG1sNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzYlwiO1xufVxuXG5pLmljb24uaHVic3BvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiMlwiO1xufVxuXG5pLmljb24uaS5jdXJzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDZcIjtcbn1cblxuaS5pY29uLmlkLmJhZGdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMxXCI7XG59XG5cbmkuaWNvbi5pZC5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMyXCI7XG59XG5cbmkuaWNvbi5pbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZVwiO1xufVxuXG5pLmljb24uaW1hZ2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzAyXCI7XG59XG5cbmkuaWNvbi5pbWRiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQ4XCI7XG59XG5cbmkuaWNvbi5pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxY1wiO1xufVxuXG5pLmljb24uaW5kZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNjXCI7XG59XG5cbmkuaWNvbi5pbmR1c3RyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3NVwiO1xufVxuXG5pLmljb24uaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyOVwiO1xufVxuXG5pLmljb24uaW5mby5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWFcIjtcbn1cblxuaS5pY29uLmluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2ZFwiO1xufVxuXG5pLmljb24uaW50ZXJuZXQuZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmJcIjtcbn1cblxuaS5pY29uLmlveGhvc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDhcIjtcbn1cblxuaS5pY29uLml0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzM1wiO1xufVxuXG5pLmljb24uaXR1bmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2I0XCI7XG59XG5cbmkuaWNvbi5pdHVuZXMubm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNVwiO1xufVxuXG5pLmljb24uamVua2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNlwiO1xufVxuXG5pLmljb24uam9nZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjdcIjtcbn1cblxuaS5pY29uLmpvb21sYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhYVwiO1xufVxuXG5pLmljb24uanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjhcIjtcbn1cblxuaS5pY29uLmpzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiOVwiO1xufVxuXG5pLmljb24uanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbn1cblxuaS5pY29uLmtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NFwiO1xufVxuXG5pLmljb24ua2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWNcIjtcbn1cblxuaS5pY29uLmtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiYVwiO1xufVxuXG5pLmljb24ua2lja3N0YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmJcIjtcbn1cblxuaS5pY29uLmtpY2tzdGFydGVyLms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmNcIjtcbn1cblxuaS5pY29uLmtvcnZ1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyZlwiO1xufVxuXG5pLmljb24ubGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWJcIjtcbn1cblxuaS5pY29uLmxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOVwiO1xufVxuXG5pLmljb24ubGFyYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZFwiO1xufVxuXG5pLmljb24ubGFzdGZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAyXCI7XG59XG5cbmkuaWNvbi5sYXN0Zm0uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAzXCI7XG59XG5cbmkuaWNvbi5sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZjXCI7XG59XG5cbmkuaWNvbi5sZWFucHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjEyXCI7XG59XG5cbmkuaWNvbi5sZW1vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5NFwiO1xufVxuXG5pLmljb24ubGVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxZFwiO1xufVxuXG5pLmljb24ubGV2ZWwuZG93bi5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmVcIjtcbn1cblxuaS5pY29uLmxldmVsLnVwLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZlwiO1xufVxuXG5pLmljb24ubGlmZS5yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNkXCI7XG59XG5cbmkuaWNvbi5saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWJcIjtcbn1cblxuaS5pY29uLmxpbmVjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2MwXCI7XG59XG5cbmkuaWNvbi5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMxXCI7XG59XG5cbmkuaWNvbi5saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4Y1wiO1xufVxuXG5pLmljb24ubGlua2VkaW4uYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUxXCI7XG59XG5cbmkuaWNvbi5saW5vZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjhcIjtcbn1cblxuaS5pY29uLmxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdjXCI7XG59XG5cbmkuaWNvbi5saXJhLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTVcIjtcbn1cblxuaS5pY29uLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2FcIjtcbn1cblxuaS5pY29uLmxpc3QuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIyXCI7XG59XG5cbmkuaWNvbi5saXN0Lm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5cbmkuaWNvbi5saXN0LnVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNhXCI7XG59XG5cbmkuaWNvbi5sb2NhdGlvbi5hcnJvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNFwiO1xufVxuXG5pLmljb24ubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyM1wiO1xufVxuXG5pLmljb24ubG9jay5vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2MxXCI7XG59XG5cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzA5XCI7XG59XG5cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzBhXCI7XG59XG5cbmkuaWNvbi5sb25nLmFycm93LmFsdGVybmF0ZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwYlwiO1xufVxuXG5pLmljb24ubG9uZy5hcnJvdy5hbHRlcm5hdGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMGNcIjtcbn1cblxuaS5pY29uLmxvdy52aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYThcIjtcbn1cblxuaS5pY29uLmx5ZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzNcIjtcbn1cblxuaS5pY29uLm1hZ2VudG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzRcIjtcbn1cblxuaS5pY29uLm1hZ2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQwXCI7XG59XG5cbmkuaWNvbi5tYWduZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzZcIjtcbn1cblxuaS5pY29uLm1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODNcIjtcbn1cblxuaS5pY29uLm1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OVwiO1xufVxuXG5pLmljb24ubWFwLm1hcmtlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MVwiO1xufVxuXG5pLmljb24ubWFwLm1hcmtlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzVcIjtcbn1cblxuaS5pY29uLm1hcC5waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzZcIjtcbn1cblxuaS5pY29uLm1hcC5zaWduczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3N1wiO1xufVxuXG5pLmljb24ubWFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyMlwiO1xufVxuXG5pLmljb24ubWFycy5kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjdcIjtcbn1cblxuaS5pY29uLm1hcnMuc3Ryb2tlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI5XCI7XG59XG5cbmkuaWNvbi5tYXJzLnN0cm9rZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG5cbmkuaWNvbi5tYXJzLnN0cm9rZS52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYVwiO1xufVxuXG5pLmljb24ubWF4Y2RuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM2XCI7XG59XG5cbmkuaWNvbi5tZWRhcHBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2M2XCI7XG59XG5cbmkuaWNvbi5tZWRpdW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2FcIjtcbn1cblxuaS5pY29uLm1lZGl1bS5tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2M3XCI7XG59XG5cbmkuaWNvbi5tZWRraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmFcIjtcbn1cblxuaS5pY29uLm1lZHJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2M4XCI7XG59XG5cbmkuaWNvbi5tZWV0dXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTBcIjtcbn1cblxuaS5pY29uLm1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYVwiO1xufVxuXG5pLmljb24ubWVyY3VyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyM1wiO1xufVxuXG5pLmljb24ubWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRiXCI7XG59XG5cbmkuaWNvbi5taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMwXCI7XG59XG5cbmkuaWNvbi5taWNyb3Bob25lLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMxXCI7XG59XG5cbmkuaWNvbi5taWNyb3NvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzY2FcIjtcbn1cblxuaS5pY29uLm1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY4XCI7XG59XG5cbmkuaWNvbi5taW51cy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTZcIjtcbn1cblxuaS5pY29uLm1pbnVzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0NlwiO1xufVxuXG5pLmljb24ubWl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2NiXCI7XG59XG5cbmkuaWNvbi5taXhjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4OVwiO1xufVxuXG5pLmljb24ubWl6dW5pOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2NjXCI7XG59XG5cbmkuaWNvbi5tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGJcIjtcbn1cblxuaS5pY29uLm1vYmlsZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzY2RcIjtcbn1cblxuaS5pY29uLm1vZHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODVcIjtcbn1cblxuaS5pY29uLm1vbmVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkMFwiO1xufVxuXG5pLmljb24ubW9uZXkuYmlsbC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDFcIjtcbn1cblxuaS5pY29uLm1vb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODZcIjtcbn1cblxuaS5pY29uLm1vdG9yY3ljbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWNcIjtcbn1cblxuaS5pY29uLm1vdXNlLnBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDVcIjtcbn1cblxuaS5pY29uLm11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAxXCI7XG59XG5cbmkuaWNvbi5uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QyXCI7XG59XG5cbmkuaWNvbi5uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmNcIjtcbn1cblxuaS5pY29uLm5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYVwiO1xufVxuXG5pLmljb24ubmludGVuZG8uc3dpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE4XCI7XG59XG5cbmkuaWNvbi5ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE5XCI7XG59XG5cbmkuaWNvbi5ub2RlLmpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QzXCI7XG59XG5cbmkuaWNvbi5ucG06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDRcIjtcbn1cblxuaS5pY29uLm5zODpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkNVwiO1xufVxuXG5pLmljb24ubnV0cml0aW9uaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDZcIjtcbn1cblxuaS5pY29uLm9iamVjdC5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0N1wiO1xufVxuXG5pLmljb24ub2JqZWN0LnVuZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDhcIjtcbn1cblxuaS5pY29uLm9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjNcIjtcbn1cblxuaS5pY29uLm9kbm9rbGFzc25pa2kuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY0XCI7XG59XG5cbmkuaWNvbi5vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzZFwiO1xufVxuXG5pLmljb24ub3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTliXCI7XG59XG5cbmkuaWNvbi5vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2YVwiO1xufVxuXG5pLmljb24ub3B0aW4ubW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzY1wiO1xufVxuXG5pLmljb24ub3NpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFhXCI7XG59XG5cbmkuaWNvbi5vdXRkZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNiXCI7XG59XG5cbmkuaWNvbi5wYWdlNDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkN1wiO1xufVxuXG5pLmljb24ucGFnZWxpbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThjXCI7XG59XG5cbmkuaWNvbi5wYWludC5icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmY1wiO1xufVxuXG5pLmljb24ucGFsZmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Q4XCI7XG59XG5cbmkuaWNvbi5wYWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODJcIjtcbn1cblxuaS5pY29uLnBhcGVyLnBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ4XCI7XG59XG5cbmkuaWNvbi5wYXBlcmNsaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzZcIjtcbn1cblxuaS5pY29uLnBhcmFncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZFwiO1xufVxuXG5pLmljb24ucGFzdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWFcIjtcbn1cblxuaS5pY29uLnBhdHJlb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDlcIjtcbn1cblxuaS5pY29uLnBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRjXCI7XG59XG5cbmkuaWNvbi5wYXVzZS5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGJcIjtcbn1cblxuaS5pY29uLnBhdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMFwiO1xufVxuXG5pLmljb24ucGF5cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVkXCI7XG59XG5cbmkuaWNvbi5wZW4uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRiXCI7XG59XG5cbmkuaWNvbi5wZW5jaWwuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzAzXCI7XG59XG5cbmkuaWNvbi5wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk1XCI7XG59XG5cbmkuaWNvbi5wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZGFcIjtcbn1cblxuaS5pY29uLnBoYWJyaWNhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RiXCI7XG59XG5cbmkuaWNvbi5waG9lbml4LmZyYW1ld29yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkY1wiO1xufVxuXG5pLmljb24ucGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTVcIjtcbn1cblxuaS5pY29uLnBob25lLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OFwiO1xufVxuXG5pLmljb24ucGhvbmUudm9sdW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmEwXCI7XG59XG5cbmkuaWNvbi5waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NTdcIjtcbn1cblxuaS5pY29uLnBpZWQucGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWVcIjtcbn1cblxuaS5pY29uLnBpZWQucGlwZXIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE4XCI7XG59XG5cbmkuaWNvbi5waWVkLnBpcGVyLnBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE3XCI7XG59XG5cbmkuaWNvbi5waWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4NFwiO1xufVxuXG5pLmljb24ucGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQyXCI7XG59XG5cbmkuaWNvbi5waW50ZXJlc3QucDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzMVwiO1xufVxuXG5pLmljb24ucGludGVyZXN0LnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkM1wiO1xufVxuXG5pLmljb24ucGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzJcIjtcbn1cblxuaS5pY29uLnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGJcIjtcbn1cblxuaS5pY29uLnBsYXkuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ0XCI7XG59XG5cbmkuaWNvbi5wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkZlwiO1xufVxuXG5pLmljb24ucGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNlwiO1xufVxuXG5pLmljb24ucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2N1wiO1xufVxuXG5pLmljb24ucGx1cy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTVcIjtcbn1cblxuaS5pY29uLnBsdXMuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZlXCI7XG59XG5cbmkuaWNvbi5wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNlXCI7XG59XG5cbmkuaWNvbi5wb3VuZC5zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5cbmkuaWNvbi5wb3dlci5vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cblxuaS5pY29uLnByaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJmXCI7XG59XG5cbmkuaWNvbi5wcm9kdWN0Lmh1bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODhcIjtcbn1cblxuaS5pY29uLnB1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlMVwiO1xufVxuXG5pLmljb24ucHV6emxlLnBpZWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJlXCI7XG59XG5cbmkuaWNvbi5weXRob246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTJcIjtcbn1cblxuaS5pY29uLnFxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ2XCI7XG59XG5cbmkuaWNvbi5xcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjlcIjtcbn1cblxuaS5pY29uLnF1ZXN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI4XCI7XG59XG5cbmkuaWNvbi5xdWVzdGlvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTlcIjtcbn1cblxuaS5pY29uLnF1aWRkaXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1OFwiO1xufVxuXG5pLmljb24ucXVpbnNjYXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDU5XCI7XG59XG5cbmkuaWNvbi5xdW9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNFwiO1xufVxuXG5pLmljb24ucXVvdGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwZFwiO1xufVxuXG5pLmljb24ucXVvdGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGVcIjtcbn1cblxuaS5pY29uLnJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NFwiO1xufVxuXG5pLmljb24ucmF2ZWxyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkOVwiO1xufVxuXG5pLmljb24ucmVhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MWJcIjtcbn1cblxuaS5pY29uLnJlYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQwXCI7XG59XG5cbmkuaWNvbi5yZWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI4XCI7XG59XG5cbmkuaWNvbi5yZWRyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlM1wiO1xufVxuXG5pLmljb24ucmVkZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWExXCI7XG59XG5cbmkuaWNvbi5yZWRkaXQuYWxpZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODFcIjtcbn1cblxuaS5pY29uLnJlZGRpdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTJcIjtcbn1cblxuaS5pY29uLnJlZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWVcIjtcbn1cblxuaS5pY29uLnJlZG8uYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY5XCI7XG59XG5cbmkuaWNvbi5yZWdpc3RlcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVkXCI7XG59XG5cbmkuaWNvbi5yZW5kYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U0XCI7XG59XG5cbmkuaWNvbi5yZW5yZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGJcIjtcbn1cblxuaS5pY29uLnJlcGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U1XCI7XG59XG5cbmkuaWNvbi5yZXBseS5hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjJcIjtcbn1cblxuaS5pY29uLnJlcGx5ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlNlwiO1xufVxuXG5pLmljb24ucmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U3XCI7XG59XG5cbmkuaWNvbi5yZXR3ZWV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc5XCI7XG59XG5cbmkuaWNvbi5yb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE4XCI7XG59XG5cbmkuaWNvbi5yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzVcIjtcbn1cblxuaS5pY29uLnJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZThcIjtcbn1cblxuaS5pY29uLnJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTlcIjtcbn1cblxuaS5pY29uLnJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZVwiO1xufVxuXG5pLmljb24ucnNzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0M1wiO1xufVxuXG5pLmljb24ucnVibGUuc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OFwiO1xufVxuXG5pLmljb24ucnVwZWUuc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NlwiO1xufVxuXG5pLmljb24uc2FmYXJpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY3XCI7XG59XG5cbmkuaWNvbi5zYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFlXCI7XG59XG5cbmkuaWNvbi5zYXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM3XCI7XG59XG5cbmkuaWNvbi5zY2hsaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWFcIjtcbn1cblxuaS5pY29uLnNjcmliZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4YVwiO1xufVxuXG5pLmljb24uc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG59XG5cbmkuaWNvbi5zZWFyY2gubWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTBcIjtcbn1cblxuaS5pY29uLnNlYXJjaC5wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBlXCI7XG59XG5cbmkuaWNvbi5zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlYlwiO1xufVxuXG5pLmljb24uc2VsbGNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGFcIjtcbn1cblxuaS5pY29uLnNlbGxzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxM1wiO1xufVxuXG5pLmljb24uc2VydmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMzXCI7XG59XG5cbmkuaWNvbi5zZXJ2aWNlc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWNcIjtcbn1cblxuaS5pY29uLnNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG5cbmkuaWNvbi5zaGFyZS5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTBcIjtcbn1cblxuaS5pY29uLnNoYXJlLmFsdGVybmF0ZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTFcIjtcbn1cblxuaS5pY29uLnNoYXJlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZFwiO1xufVxuXG5pLmljb24uc2hla2VsLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGJcIjtcbn1cblxuaS5pY29uLnNoaWVsZC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWRcIjtcbn1cblxuaS5pY29uLnNoaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWFcIjtcbn1cblxuaS5pY29uLnNoaXBwaW5nLmZhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OGJcIjtcbn1cblxuaS5pY29uLnNoaXJ0c2luYnVsazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxNFwiO1xufVxuXG5pLmljb24uc2hvcHBpbmcuYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkwXCI7XG59XG5cbmkuaWNvbi5zaG9wcGluZy5iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTFcIjtcbn1cblxuaS5pY29uLnNob3BwaW5nLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cblxuaS5pY29uLnNob3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjY1wiO1xufVxuXG5pLmljb24uc2lnbi5sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhN1wiO1xufVxuXG5pLmljb24uc2lnbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEyXCI7XG59XG5cbmkuaWNvbi5zaW1wbHlidWlsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxNVwiO1xufVxuXG5pLmljb24uc2lzdHJpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZVwiO1xufVxuXG5pLmljb24uc2l0ZW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlOFwiO1xufVxuXG5pLmljb24uc2t5YXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTZcIjtcbn1cblxuaS5pY29uLnNreXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdlXCI7XG59XG5cbmkuaWNvbi5zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OFwiO1xufVxuXG5pLmljb24uc2xhY2suaGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZlwiO1xufVxuXG5pLmljb24uc2xpZGVycy5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRlXCI7XG59XG5cbmkuaWNvbi5zbGlkZXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU3XCI7XG59XG5cbmkuaWNvbi5zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOFwiO1xufVxuXG5pLmljb24uc25hcGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWJcIjtcbn1cblxuaS5pY29uLnNuYXBjaGF0Lmdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFjXCI7XG59XG5cbmkuaWNvbi5zbmFwY2hhdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWRcIjtcbn1cblxuaS5pY29uLnNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkY1wiO1xufVxuXG5pLmljb24uc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkY1wiO1xufVxuXG5pLmljb24uc29ydC5hbHBoYWJldC5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVkXCI7XG59XG5cbmkuaWNvbi5zb3J0LmFscGhhYmV0LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVlXCI7XG59XG5cbmkuaWNvbi5zb3J0LmFtb3VudC5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYwXCI7XG59XG5cbmkuaWNvbi5zb3J0LmFtb3VudC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MVwiO1xufVxuXG5pLmljb24uc29ydC5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRkXCI7XG59XG5cbmkuaWNvbi5zb3J0Lm51bWVyaWMuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MlwiO1xufVxuXG5pLmljb24uc29ydC5udW1lcmljLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYzXCI7XG59XG5cbmkuaWNvbi5zb3J0LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRlXCI7XG59XG5cbmkuaWNvbi5zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJlXCI7XG59XG5cbmkuaWNvbi5zcGFjZS5zaHV0dGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk3XCI7XG59XG5cbmkuaWNvbi5zcGVha2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2YzXCI7XG59XG5cbmkuaWNvbi5zcGlubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTEwXCI7XG59XG5cbmkuaWNvbi5zcG90aWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJjXCI7XG59XG5cbmkuaWNvbi5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzhcIjtcbn1cblxuaS5pY29uLnNxdWFyZS5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDVjXCI7XG59XG5cbmkuaWNvbi5zdGFjay5leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4ZFwiO1xufVxuXG5pLmljb24uc3RhY2sub3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmNcIjtcbn1cblxuaS5pY29uLnN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDVcIjtcbn1cblxuaS5pY29uLnN0YXIuaGFsZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OVwiO1xufVxuXG5pLmljb24uc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmNVwiO1xufVxuXG5pLmljb24uc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjZcIjtcbn1cblxuaS5pY29uLnN0ZWFtLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiN1wiO1xufVxuXG5pLmljb24uc3RlYW0uc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Y2XCI7XG59XG5cbmkuaWNvbi5zdGVwLmJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ4XCI7XG59XG5cbmkuaWNvbi5zdGVwLmZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTFcIjtcbn1cblxuaS5pY29uLnN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYxXCI7XG59XG5cbmkuaWNvbi5zdGlja2VyLm11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZjdcIjtcbn1cblxuaS5pY29uLnN0aWNreS5ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ5XCI7XG59XG5cbmkuaWNvbi5zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRkXCI7XG59XG5cbmkuaWNvbi5zdG9wLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4ZFwiO1xufVxuXG5pLmljb24uc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmYyXCI7XG59XG5cbmkuaWNvbi5zdHJhdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjhcIjtcbn1cblxuaS5pY29uLnN0cmVldC52aWV3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFkXCI7XG59XG5cbmkuaWNvbi5zdHJpa2V0aHJvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNjXCI7XG59XG5cbmkuaWNvbi5zdHJpcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjlcIjtcbn1cblxuaS5pY29uLnN0cmlwZS5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJhXCI7XG59XG5cbmkuaWNvbi5zdHVkaW92aW5hcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZjhcIjtcbn1cblxuaS5pY29uLnN0dW1ibGV1cG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE0XCI7XG59XG5cbmkuaWNvbi5zdHVtYmxldXBvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTNcIjtcbn1cblxuaS5pY29uLnN1YnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyY1wiO1xufVxuXG5pLmljb24uc3Vid2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM5XCI7XG59XG5cbmkuaWNvbi5zdWl0Y2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMlwiO1xufVxuXG5pLmljb24uc3VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg1XCI7XG59XG5cbmkuaWNvbi5zdXBlcnBvd2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkZFwiO1xufVxuXG5pLmljb24uc3VwZXJzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmJcIjtcbn1cblxuaS5pY29uLnN1cHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmOVwiO1xufVxuXG5pLmljb24uc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMVwiO1xufVxuXG5pLmljb24uc3luYy5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjFcIjtcbn1cblxuaS5pY29uLnN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OGVcIjtcbn1cblxuaS5pY29uLnRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNlXCI7XG59XG5cbmkuaWNvbi50YWJsZS50ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NWRcIjtcbn1cblxuaS5pY29uLnRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwYVwiO1xufVxuXG5pLmljb24udGFibGV0LmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmYVwiO1xufVxuXG5pLmljb24udGFjaG9tZXRlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmRcIjtcbn1cblxuaS5pY29uLnRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyYlwiO1xufVxuXG5pLmljb24udGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyY1wiO1xufVxuXG5pLmljb24udGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWVcIjtcbn1cblxuaS5pY29uLnRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmFcIjtcbn1cblxuaS5pY29uLnRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM2XCI7XG59XG5cbmkuaWNvbi50ZWxlZ3JhbS5wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmZVwiO1xufVxuXG5pLmljb24udGVuY2VudC53ZWlibzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkNVwiO1xufVxuXG5pLmljb24udGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjBcIjtcbn1cblxuaS5pY29uLnRleHQuaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM0XCI7XG59XG5cbmkuaWNvbi50ZXh0LndpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM1XCI7XG59XG5cbmkuaWNvbi50aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYVwiO1xufVxuXG5pLmljb24udGgubGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDlcIjtcbn1cblxuaS5pY29uLnRoLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGJcIjtcbn1cblxuaS5pY29uLnRoZW1laXNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiMlwiO1xufVxuXG5pLmljb24udGhlcm1vbWV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTFcIjtcbn1cblxuaS5pY29uLnRoZXJtb21ldGVyLmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNiXCI7XG59XG5cbmkuaWNvbi50aGVybW9tZXRlci5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM3XCI7XG59XG5cbmkuaWNvbi50aGVybW9tZXRlci5oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM5XCI7XG59XG5cbmkuaWNvbi50aGVybW9tZXRlci5xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNhXCI7XG59XG5cbmkuaWNvbi50aGVybW9tZXRlci50aHJlZS5xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjOFwiO1xufVxuXG5pLmljb24udGh1bWJzLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjVcIjtcbn1cblxuaS5pY29uLnRodW1icy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NFwiO1xufVxuXG5pLmljb24udGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhkXCI7XG59XG5cbmkuaWNvbi50aWNrZXQuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ZmXCI7XG59XG5cbmkuaWNvbi50aW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG5pLmljb24udGltZXMuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU3XCI7XG59XG5cbmkuaWNvbi50aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQzXCI7XG59XG5cbmkuaWNvbi50b2dnbGUub2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA0XCI7XG59XG5cbmkuaWNvbi50b2dnbGUub246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDVcIjtcbn1cblxuaS5pY29uLnRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1Y1wiO1xufVxuXG5pLmljb24udHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzhcIjtcbn1cblxuaS5pY29uLnRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI0XCI7XG59XG5cbmkuaWNvbi50cmFuc2dlbmRlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjVcIjtcbn1cblxuaS5pY29uLnRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY4XCI7XG59XG5cbmkuaWNvbi50cmFzaC5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZWRcIjtcbn1cblxuaS5pY29uLnRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmJcIjtcbn1cblxuaS5pY29uLnRyZWxsbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MVwiO1xufVxuXG5pLmljb24udHJpcGFkdmlzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjJcIjtcbn1cblxuaS5pY29uLnRyb3BoeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MVwiO1xufVxuXG5pLmljb24udHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDFcIjtcbn1cblxuaS5pY29uLnR0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuXG5pLmljb24udHVtYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTczXCI7XG59XG5cbmkuaWNvbi50dW1ibHIuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc0XCI7XG59XG5cbmkuaWNvbi50djpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2Y1wiO1xufVxuXG5pLmljb24udHdpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU4XCI7XG59XG5cbmkuaWNvbi50d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk5XCI7XG59XG5cbmkuaWNvbi50d2l0dGVyLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MVwiO1xufVxuXG5pLmljb24udHlwbzM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmJcIjtcbn1cblxuaS5pY29uLnViZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDJcIjtcbn1cblxuaS5pY29uLnVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDAzXCI7XG59XG5cbmkuaWNvbi51bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlOVwiO1xufVxuXG5pLmljb24udW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNkXCI7XG59XG5cbmkuaWNvbi51bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUyXCI7XG59XG5cbmkuaWNvbi51bmRvLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlYVwiO1xufVxuXG5pLmljb24udW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDRcIjtcbn1cblxuaS5pY29uLnVuaXZlcnNhbC5hY2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWFcIjtcbn1cblxuaS5pY29uLnVuaXZlcnNpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWNcIjtcbn1cblxuaS5pY29uLnVubGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyN1wiO1xufVxuXG5pLmljb24udW5sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDljXCI7XG59XG5cbmkuaWNvbi51bmxvY2suYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNlXCI7XG59XG5cbmkuaWNvbi51bnRhcHBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDA1XCI7XG59XG5cbmkuaWNvbi51cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTNcIjtcbn1cblxuaS5pY29uLnVzYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4N1wiO1xufVxuXG5pLmljb24udXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwN1wiO1xufVxuXG5pLmljb24udXNlci5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmRcIjtcbn1cblxuaS5pY29uLnVzZXIubWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjBcIjtcbn1cblxuaS5pY29uLnVzZXIucGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuXG5pLmljb24udXNlci5zZWNyZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWJcIjtcbn1cblxuaS5pY29uLnVzZXIudGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnVzZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMwXCI7XG59XG5cbmkuaWNvbi51c3N1bm5haDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwN1wiO1xufVxuXG5pLmljb24udXRlbnNpbC5zcG9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlNVwiO1xufVxuXG5pLmljb24udXRlbnNpbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTdcIjtcbn1cblxuaS5pY29uLnZhYWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwOFwiO1xufVxuXG5pLmljb24udmVudXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjFcIjtcbn1cblxuaS5pY29uLnZlbnVzLmRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuXG5pLmljb24udmVudXMubWFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOFwiO1xufVxuXG5pLmljb24udmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzN1wiO1xufVxuXG5pLmljb24udmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE5XCI7XG59XG5cbmkuaWNvbi52aWFkZW8uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFhXCI7XG59XG5cbmkuaWNvbi52aWJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwOVwiO1xufVxuXG5pLmljb24udmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2RcIjtcbn1cblxuaS5pY29uLnZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBhXCI7XG59XG5cbmkuaWNvbi52aW1lby5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTRcIjtcbn1cblxuaS5pY29uLnZpbWVvLnY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2RcIjtcbn1cblxuaS5pY29uLnZpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2FcIjtcbn1cblxuaS5pY29uLnZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg5XCI7XG59XG5cbmkuaWNvbi52bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MGJcIjtcbn1cblxuaS5pY29uLnZvbGxleWJhbGwuYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1ZlwiO1xufVxuXG5pLmljb24udm9sdW1lLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjdcIjtcbn1cblxuaS5pY29uLnZvbHVtZS5vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjZcIjtcbn1cblxuaS5pY29uLnZvbHVtZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOFwiO1xufVxuXG5pLmljb24udnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MWZcIjtcbn1cblxuaS5pY29uLndhcmVob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5NFwiO1xufVxuXG5pLmljb24ud2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGFcIjtcbn1cblxuaS5pY29uLndlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5NlwiO1xufVxuXG5pLmljb24ud2VpeGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ3XCI7XG59XG5cbmkuaWNvbi53aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzMlwiO1xufVxuXG5pLmljb24ud2hhdHNhcHAuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBjXCI7XG59XG5cbmkuaWNvbi53aGVlbGNoYWlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkzXCI7XG59XG5cbmkuaWNvbi53aG1jczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQwZFwiO1xufVxuXG5pLmljb24ud2lmaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYlwiO1xufVxuXG5pLmljb24ud2lraXBlZGlhLnc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjZcIjtcbn1cblxuaS5pY29uLndpbmRvdy5jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxMFwiO1xufVxuXG5pLmljb24ud2luZG93Lm1heGltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQwXCI7XG59XG5cbmkuaWNvbi53aW5kb3cubWluaW1pemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDFcIjtcbn1cblxuaS5pY29uLndpbmRvdy5yZXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQyXCI7XG59XG5cbmkuaWNvbi53aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdhXCI7XG59XG5cbmkuaWNvbi53b24uc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OVwiO1xufVxuXG5pLmljb24ud29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlhXCI7XG59XG5cbmkuaWNvbi53b3JkcHJlc3Muc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDExXCI7XG59XG5cbmkuaWNvbi53cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk3XCI7XG59XG5cbmkuaWNvbi53cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRlXCI7XG59XG5cbmkuaWNvbi53cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk4XCI7XG59XG5cbmkuaWNvbi53cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cblxuaS5pY29uLnhib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTJcIjtcbn1cblxuaS5pY29uLnhpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjhcIjtcbn1cblxuaS5pY29uLnhpbmcuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY5XCI7XG59XG5cbmkuaWNvbi55LmNvbWJpbmF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2JcIjtcbn1cblxuaS5pY29uLnlhaG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTllXCI7XG59XG5cbmkuaWNvbi55YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTNcIjtcbn1cblxuaS5pY29uLnlhbmRleC5pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE0XCI7XG59XG5cbmkuaWNvbi55ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU5XCI7XG59XG5cbmkuaWNvbi55ZW4uc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuXG5pLmljb24ueW9hc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjFcIjtcbn1cblxuaS5pY29uLnlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjdcIjtcbn1cblxuaS5pY29uLnlvdXR1YmUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDMxXCI7XG59XG5cbi8qIEFsaWFzZXMgKi9cblxuaS5pY29uLmNoZXNzLnJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDdcIjtcbn1cblxuaS5pY29uLm9yZGVyZWQubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYlwiO1xufVxuXG5pLmljb24udW5vcmRlcmVkLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2FcIjtcbn1cblxuaS5pY29uLnVzZXIuZG9jdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG5cbmkuaWNvbi5zaGllbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWRcIjtcbn1cblxuaS5pY29uLnB1enpsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZVwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQuYW1hem9uLnBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQyZFwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQuYW1lcmljYW4uZXhwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQuZGluZXJzLmNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbn1cblxuaS5pY29uLmNyZWRpdC5jYXJkLmRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG59XG5cbmkuaWNvbi5jcmVkaXQuY2FyZC5qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGJcIjtcbn1cblxuaS5pY29uLmNyZWRpdC5jYXJkLm1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjFcIjtcbn1cblxuaS5pY29uLmNyZWRpdC5jYXJkLnBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQuc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY1XCI7XG59XG5cbmkuaWNvbi5jcmVkaXQuY2FyZC52aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG59XG5cbmkuaWNvbi5hZGQuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU1XCI7XG59XG5cbmkuaWNvbi5hZGQuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZlXCI7XG59XG5cbmkuaWNvbi5hZGQudG8uY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cblxuaS5pY29uLmFkZC50by5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5cbmkuaWNvbi5hZGQudXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuXG5pLmljb24uYWRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG59XG5cbmkuaWNvbi5hbGFybS5tdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY2XCI7XG59XG5cbmkuaWNvbi5hbGFybTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmM1wiO1xufVxuXG5pLmljb24uYWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmEyXCI7XG59XG5cbmkuaWNvbi5hbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTJcIjtcbn1cblxuaS5pY29uLmFtZXJpY2FuLmV4cHJlc3MuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuXG5pLmljb24uYW1lcmljYW4uZXhwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuXG5pLmljb24uYW1leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmM1wiO1xufVxuXG5pLmljb24uYW5ub3VuY2VtZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGExXCI7XG59XG5cbmkuaWNvbi5hcmVhLmNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZlXCI7XG59XG5cbmkuaWNvbi5hcmVhLmdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZlXCI7XG59XG5cbmkuaWNvbi5hcnJvdy5kb3duLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMThcIjtcbn1cblxuaS5pY29uLmFzZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmRcIjtcbn1cblxuaS5pY29uLmFzbC5pbnRlcnByZXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTNcIjtcbn1cblxuaS5pY29uLmFzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhM1wiO1xufVxuXG5pLmljb24uYXNzaXN0aXZlLmxpc3RlbmluZy5kZXZpY2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmEyXCI7XG59XG5cbmkuaWNvbi5hdHRhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzZcIjtcbn1cblxuaS5pY29uLmF0dGVudGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2YVwiO1xufVxuXG5pLmljb24uYmFsYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZVwiO1xufVxuXG5pLmljb24uYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZjXCI7XG59XG5cbmkuaWNvbi5iYXRodHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNkXCI7XG59XG5cbmkuaWNvbi5iYXR0ZXJ5LmZvdXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDBcIjtcbn1cblxuaS5pY29uLmJhdHRlcnkuaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0MVwiO1xufVxuXG5pLmljb24uYmF0dGVyeS5sb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDNcIjtcbn1cblxuaS5pY29uLmJhdHRlcnkubWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQyXCI7XG59XG5cbmkuaWNvbi5iYXR0ZXJ5Lm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0M1wiO1xufVxuXG5pLmljb24uYmF0dGVyeS50aHJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0MVwiO1xufVxuXG5pLmljb24uYmF0dGVyeS50d286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDJcIjtcbn1cblxuaS5pY29uLmJhdHRlcnkuemVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0NFwiO1xufVxuXG5pLmljb24uYmlydGhkYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmRcIjtcbn1cblxuaS5pY29uLmJsb2NrLmxheW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOVwiO1xufVxuXG5pLmljb24uYmx1ZXRvb3RoLmFsdGVybmF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk0XCI7XG59XG5cbmkuaWNvbi5icm9rZW4uY2hhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjdcIjtcbn1cblxuaS5pY29uLmJyb3dzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjJcIjtcbn1cblxuaS5pY29uLmNhbGwuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk4XCI7XG59XG5cbmkuaWNvbi5jYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk1XCI7XG59XG5cbmkuaWNvbi5jYW5jZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cblxuaS5pY29uLmNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBhXCI7XG59XG5cbmkuaWNvbi5jaGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMVwiO1xufVxuXG5pLmljb24uY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NVwiO1xufVxuXG5pLmljb24uY2hlY2tlZC5jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3NFwiO1xufVxuXG5pLmljb24uY2hlY2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5cbmkuaWNvbi5jaXJjbGUubm90Y2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjZVwiO1xufVxuXG5pLmljb24uY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLmNueTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuXG5pLmljb24uY29ja3RhaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDBcIjtcbn1cblxuaS5pY29uLmNvbW1lbnRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cblxuaS5pY29uLmNvbXB1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA4XCI7XG59XG5cbmkuaWNvbi5jb25maWd1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cblxuaS5pY29uLmNvbnRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzlcIjtcbn1cblxuaS5pY29uLmRlYWZuZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE0XCI7XG59XG5cbmkuaWNvbi5kZWxldGUuY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzNcIjtcbn1cblxuaS5pY29uLmRlbGV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG5pLmljb24uZGV0ZWN0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFiXCI7XG59XG5cbmkuaWNvbi5kaW5lcnMuY2x1Yi5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRjXCI7XG59XG5cbmkuaWNvbi5kaW5lcnMuY2x1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0Y1wiO1xufVxuXG5pLmljb24uZGlzY292ZXIuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMlwiO1xufVxuXG5pLmljb24uZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjJcIjtcbn1cblxuaS5pY29uLmRpc2N1c3Npb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg2XCI7XG59XG5cbmkuaWNvbi5kb2N0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjBcIjtcbn1cblxuaS5pY29uLmRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NVwiO1xufVxuXG5pLmljb24uZG9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1ZVwiO1xufVxuXG5pLmljb24uZHJpYmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3ZFwiO1xufVxuXG5pLmljb24uZHJpdmVycy5saWNlbnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMyXCI7XG59XG5cbmkuaWNvbi5kcm9wZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuXG5pLmljb24uZWVyY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkYVwiO1xufVxuXG5pLmljb24uZW1lcmdlbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY5XCI7XG59XG5cbmkuaWNvbi5lbnZpcmEuZ2FsbGVyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5OVwiO1xufVxuXG5pLmljb24uZXJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmRcIjtcbn1cblxuaS5pY29uLmV1cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1M1wiO1xufVxuXG5pLmljb24uZXVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1M1wiO1xufVxuXG5pLmljb24uZXllZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmYlwiO1xufVxuXG5pLmljb24uZmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjRcIjtcbn1cblxuaS5pY29uLmZhY3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzVcIjtcbn1cblxuaS5pY29uLmZhdm9yaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA1XCI7XG59XG5cbmkuaWNvbi5mZWVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDllXCI7XG59XG5cbmkuaWNvbi5mZW1hbGUuaG9tb3NleHVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuXG5pLmljb24uZmlsZS50ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XG59XG5cbmkuaWNvbi5maW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU1XCI7XG59XG5cbmkuaWNvbi5maXJzdC5haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmFcIjtcbn1cblxuaS5pY29uLmZpdmUuaHVuZHJlZC5waXhlbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmVcIjtcbn1cblxuaS5pY29uLmZvcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjZcIjtcbn1cblxuaS5pY29uLmdhbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWJcIjtcbn1cblxuaS5pY29uLmdheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyN1wiO1xufVxuXG5pLmljb24uZ2JwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5cbmkuaWNvbi5naXR0aXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODRcIjtcbn1cblxuaS5pY29uLmdvb2dsZS5wbHVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiM1wiO1xufVxuXG5pLmljb24uZ29vZ2xlLnBsdXMub2ZmaWNpYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjNcIjtcbn1cblxuaS5pY29uLmdyYWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTVcIjtcbn1cblxuaS5pY29uLmdyYWR1YXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWRcIjtcbn1cblxuaS5pY29uLmdyaWQubGF5b3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBhXCI7XG59XG5cbmkuaWNvbi5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMFwiO1xufVxuXG5pLmljb24uaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZFwiO1xufVxuXG5pLmljb24uaGFuZC52aWN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjViXCI7XG59XG5cbmkuaWNvbi5oYW5kaWNhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5M1wiO1xufVxuXG5pLmljb24uaGFyZC5vZi5oZWFyaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE0XCI7XG59XG5cbmkuaWNvbi5oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGNcIjtcbn1cblxuaS5pY29uLmhlbHAuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU5XCI7XG59XG5cbmkuaWNvbi5oZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI4XCI7XG59XG5cbmkuaWNvbi5oZXRlcm9zZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cblxuaS5pY29uLmhpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cblxuaS5pY29uLmhvdGVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM2XCI7XG59XG5cbmkuaWNvbi5ob3VyZ2xhc3MuZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NFwiO1xufVxuXG5pLmljb24uaG91cmdsYXNzLmZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTRcIjtcbn1cblxuaS5pY29uLmhvdXJnbGFzcy5vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTFcIjtcbn1cblxuaS5pY29uLmhvdXJnbGFzcy50aHJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1M1wiO1xufVxuXG5pLmljb24uaG91cmdsYXNzLnR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1MlwiO1xufVxuXG5pLmljb24uaWRlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYlwiO1xufVxuXG5pLmljb24uaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBiXCI7XG59XG5cbmkuaWNvbi5pbi1jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG5cbmkuaWNvbi5pbnI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTZcIjtcbn1cblxuaS5pY29uLmludGVyZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI0XCI7XG59XG5cbmkuaWNvbi5pbnRlcnNleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNFwiO1xufVxuXG5pLmljb24uamFwYW4uY3JlZGl0LmJ1cmVhdS5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG59XG5cbmkuaWNvbi5qYXBhbi5jcmVkaXQuYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRiXCI7XG59XG5cbmkuaWNvbi5qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGJcIjtcbn1cblxuaS5pY29uLmpweTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuXG5pLmljb24ua3J3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU5XCI7XG59XG5cbmkuaWNvbi5sYWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzNcIjtcbn1cblxuaS5pY29uLmxhdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZVwiO1xufVxuXG5pLmljb24ubGVnYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTNcIjtcbn1cblxuaS5pY29uLmxlc2JpYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjZcIjtcbn1cblxuaS5pY29uLmxpZ2h0bmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlN1wiO1xufVxuXG5pLmljb24ubGlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuXG5pLmljb24ubGluZS5ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwMVwiO1xufVxuXG5pLmljb24ubGlua2VkaW4uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG59XG5cbmkuaWNvbi5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMxXCI7XG59XG5cbmkuaWNvbi5saXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk1XCI7XG59XG5cbmkuaWNvbi5saXN0LmxheW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYlwiO1xufVxuXG5pLmljb24ubWFnbmlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZVwiO1xufVxuXG5pLmljb24ubWFpbC5mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG5cbmkuaWNvbi5tYWlsLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OVwiO1xufVxuXG5pLmljb24ubWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMFwiO1xufVxuXG5pLmljb24ubWFsZS5ob21vc2V4dWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI3XCI7XG59XG5cbmkuaWNvbi5tYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjJcIjtcbn1cblxuaS5pY29uLm1hcmtlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MVwiO1xufVxuXG5pLmljb24ubWFycy5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjlcIjtcbn1cblxuaS5pY29uLm1hcnMuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYlwiO1xufVxuXG5pLmljb24ubWFycy52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYVwiO1xufVxuXG5pLmljb24ubWFzdGVyY2FyZC5jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYxXCI7XG59XG5cbmkuaWNvbi5tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYxXCI7XG59XG5cbmkuaWNvbi5taWNyb3NvZnQuZWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MlwiO1xufVxuXG5pLmljb24ubWlsaXRhcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmJcIjtcbn1cblxuaS5pY29uLm1zLmVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODJcIjtcbn1cblxuaS5pY29uLm11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzFcIjtcbn1cblxuaS5pY29uLm5ldy5waWVkLnBpcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFlXCI7XG59XG5cbmkuaWNvbi5ub24uYmluYXJ5LnRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIzXCI7XG59XG5cbmkuaWNvbi5udW1iZXJlZC5saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5cbmkuaWNvbi5vcHRpbm1vbnN0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2NcIjtcbn1cblxuaS5pY29uLm9wdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGVcIjtcbn1cblxuaS5pY29uLm90aGVyLmdlbmRlci5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG5cbmkuaWNvbi5vdGhlci5nZW5kZXIudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cblxuaS5pY29uLm90aGVyLmdlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuXG5pLmljb24ucGF5bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZFwiO1xufVxuXG5pLmljb24ucGF5cGFsLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjRcIjtcbn1cblxuaS5pY29uLnBlbmNpbC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cblxuaS5pY29uLnBob3RvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMwXCI7XG59XG5cbmkuaWNvbi5waWN0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNlXCI7XG59XG5cbmkuaWNvbi5waWUuY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cblxuaS5pY29uLnBpZS5ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwMFwiO1xufVxuXG5pLmljb24ucGllZC5waXBlci5oYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWVcIjtcbn1cblxuaS5pY29uLnBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuXG5pLmljb24ucGx1cy5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5cbmkuaWNvbi5wb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjVcIjtcbn1cblxuaS5pY29uLnBvaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG59XG5cbmkuaWNvbi5wb2ludGluZy5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE3XCI7XG59XG5cbmkuaWNvbi5wb2ludGluZy5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG5cbmkuaWNvbi5wb2ludGluZy5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNFwiO1xufVxuXG5pLmljb24ucG9pbnRpbmcudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTZcIjtcbn1cblxuaS5pY29uLnBvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5cbmkuaWNvbi5wb3dlci5jb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU2XCI7XG59XG5cbmkuaWNvbi5wb3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMVwiO1xufVxuXG5pLmljb24ucHJpdmFjeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NFwiO1xufVxuXG5pLmljb24uci5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWRcIjtcbn1cblxuaS5pY29uLnJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTlcIjtcbn1cblxuaS5pY29uLnJlY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZFwiO1xufVxuXG5pLmljb24ucmVmcmVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMVwiO1xufVxuXG5pLmljb24ucmVtb3ZlLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuXG5pLmljb24ucmVtb3ZlLmZyb20uY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzJcIjtcbn1cblxuaS5pY29uLnJlbW92ZS51c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5cbmkuaWNvbi5yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLnJlcGVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxZVwiO1xufVxuXG5pLmljb24ucm1iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5cbmkuaWNvbi5yb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNThcIjtcbn1cblxuaS5pY29uLnJ1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OFwiO1xufVxuXG5pLmljb24ucnVibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNThcIjtcbn1cblxuaS5pY29uLnJ1cGVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU2XCI7XG59XG5cbmkuaWNvbi5zMTU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2RcIjtcbn1cblxuaS5pY29uLnNlbGVjdGVkLnJhZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5cbmkuaWNvbi5zZW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ4XCI7XG59XG5cbmkuaWNvbi5zZXR0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEzXCI7XG59XG5cbmkuaWNvbi5zZXR0aW5nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NVwiO1xufVxuXG5pLmljb24uc2hla2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBiXCI7XG59XG5cbmkuaWNvbi5zaGVxZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGJcIjtcbn1cblxuaS5pY29uLnNoaXBwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQxXCI7XG59XG5cbmkuaWNvbi5zaG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdhXCI7XG59XG5cbmkuaWNvbi5zaHVmZmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc0XCI7XG59XG5cbmkuaWNvbi5zaHV0ZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMVwiO1xufVxuXG5pLmljb24uc2lkZWJhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuXG5pLmljb24uc2lnbmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhN1wiO1xufVxuXG5pLmljb24uc2lnbnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ0XCI7XG59XG5cbmkuaWNvbi5zbGlkZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRlXCI7XG59XG5cbmkuaWNvbi5zb2NjZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cblxuaS5pY29uLnNvcnQuYWxwaGFiZXQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVkXCI7XG59XG5cbmkuaWNvbi5zb3J0LmFscGhhYmV0LmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWVcIjtcbn1cblxuaS5pY29uLnNvcnQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRlXCI7XG59XG5cbmkuaWNvbi5zb3J0LmNvbnRlbnQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYwXCI7XG59XG5cbmkuaWNvbi5zb3J0LmNvbnRlbnQuZGVzY2VuZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MVwiO1xufVxuXG5pLmljb24uc29ydC5kZXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRkXCI7XG59XG5cbmkuaWNvbi5zb3J0Lm51bWVyaWMuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYyXCI7XG59XG5cbmkuaWNvbi5zb3J0Lm51bWVyaWMuZGVzY2VuZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2M1wiO1xufVxuXG5pLmljb24uc291bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjVcIjtcbn1cblxuaS5pY29uLnNweTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxYlwiO1xufVxuXG5pLmljb24uc3RyaXBlLmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjVcIjtcbn1cblxuaS5pY29uLnN0dWRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWRcIjtcbn1cblxuaS5pY29uLnRhbGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cblxuaS5pY29uLnRhcmdldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MFwiO1xufVxuXG5pLmljb24udGVsZXR5cGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTRcIjtcbn1cblxuaS5pY29uLnRlbGV2aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmNcIjtcbn1cblxuaS5pY29uLnRleHQuY3Vyc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ2XCI7XG59XG5cbmkuaWNvbi50ZXh0LnRlbGVwaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuXG5pLmljb24udGhlbWUuaXNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiMlwiO1xufVxuXG5pLmljb24udGhlbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDNcIjtcbn1cblxuaS5pY29uLnRoZXJtb21ldGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmM3XCI7XG59XG5cbmkuaWNvbi50aHVtYi50YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhkXCI7XG59XG5cbmkuaWNvbi50aW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5cbmkuaWNvbi50bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1Y1wiO1xufVxuXG5pLmljb24udG9nZ2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTBcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkxXCI7XG59XG5cbmkuaWNvbi50b2dnbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTJcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MVwiO1xufVxuXG5pLmljb24udHJhbnNsYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFiXCI7XG59XG5cbmkuaWNvbi50cmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjFcIjtcbn1cblxuaS5pY29uLnRyZWF0bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMVwiO1xufVxuXG5pLmljb24udHJpYW5nbGUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuXG5pLmljb24udHJpYW5nbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOVwiO1xufVxuXG5pLmljb24udHJpYW5nbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbn1cblxuaS5pY29uLnRyaWFuZ2xlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG5cbmkuaWNvbi50cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTVcIjtcbn1cblxuaS5pY29uLnVuaGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZVwiO1xufVxuXG5pLmljb24udW5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG5cbmkuaWNvbi51bm11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzBcIjtcbn1cblxuaS5pY29uLnVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NVwiO1xufVxuXG5pLmljb24udXNlci5jYW5jZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnVzZXIuY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnVzZXIuZGVsZXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5cbmkuaWNvbi51c2VyLng6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnZjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJiXCI7XG59XG5cbmkuaWNvbi52aWRlby5jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2RcIjtcbn1cblxuaS5pY29uLnZpZGVvLnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cblxuaS5pY29uLnZpc2EuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMFwiO1xufVxuXG5pLmljb24udmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMFwiO1xufVxuXG5pLmljb24udm9sdW1lLmNvbnRyb2wucGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTBcIjtcbn1cblxuaS5pY29uLndhaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cblxuaS5pY29uLndhcm5pbmcuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZhXCI7XG59XG5cbmkuaWNvbi53YXJuaW5nLnNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzFcIjtcbn1cblxuaS5pY29uLndhcm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmFcIjtcbn1cblxuaS5pY29uLndlY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkN1wiO1xufVxuXG5pLmljb24ud2ktZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWJcIjtcbn1cblxuaS5pY29uLndpa2lwZWRpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2NlwiO1xufVxuXG5pLmljb24ud2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkxXCI7XG59XG5cbmkuaWNvbi53aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cblxuaS5pY29uLndvbWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIxXCI7XG59XG5cbmkuaWNvbi53b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cblxuaS5pY29uLndvcmRwcmVzcy5iZWdpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5N1wiO1xufVxuXG5pLmljb24ud29yZHByZXNzLmZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk4XCI7XG59XG5cbmkuaWNvbi53b3JsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhY1wiO1xufVxuXG5pLmljb24ud3JpdGUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRiXCI7XG59XG5cbmkuaWNvbi54OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG5cbmkuaWNvbi55YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xufVxuXG5pLmljb24ueWNvbWJpbmF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyM2JcIjtcbn1cblxuaS5pY29uLnllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuXG5pLmljb24uemlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg3XCI7XG59XG5cbmkuaWNvbi56b29tLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBlXCI7XG59XG5cbmkuaWNvbi56b29tLW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMFwiO1xufVxuXG5pLmljb24uem9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZVwiO1xufVxuXG5pLmljb24uYml0YnVja2V0LnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3MVwiO1xufVxuXG5pLmljb24uY2hlY2ttYXJrLmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuXG5pLmljb24uY2lyY2xlLnRoaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cblxuaS5pY29uLmNsb3VkLmRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgxXCI7XG59XG5cbmkuaWNvbi5jbG91ZC51cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODJcIjtcbn1cblxuaS5pY29uLmNvbXBvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cblxuaS5pY29uLmNvbnZlcnNhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NlwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQuYWx0ZXJuYXRpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cblxuaS5pY29uLmN1cnJlbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QxXCI7XG59XG5cbmkuaWNvbi5kYXNoYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmRcIjtcbn1cblxuaS5pY29uLmRpYW1vbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTVcIjtcbn1cblxuaS5pY29uLmRpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTBcIjtcbn1cblxuaS5pY29uLmV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzYyXCI7XG59XG5cbmkuaWNvbi5leHRlcm5hbC5zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZFwiO1xufVxuXG5pLmljb24uZXh0ZXJuYWwuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzYwXCI7XG59XG5cbmkuaWNvbi5leHRlcm5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1ZFwiO1xufVxuXG5pLmljb24uZmFjZWJvb2sub2ZmaWNpYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODJcIjtcbn1cblxuaS5pY29uLmZvb2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTdcIjtcbn1cblxuaS5pY29uLmhvdXJnbGFzcy56ZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjUzXCI7XG59XG5cbmkuaWNvbi5sZXZlbC5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2JlXCI7XG59XG5cbmkuaWNvbi5sZXZlbC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZlwiO1xufVxuXG5pLmljb24ubG9nb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY1XCI7XG59XG5cbmkuaWNvbi5tZWFucGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuXG5pLmljb24ubW9uZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDFcIjtcbn1cblxuaS5pY29uLm1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjJcIjtcbn1cblxuaS5pY29uLnBlbmNpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwM1wiO1xufVxuXG5pLmljb24ucHJvdGVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyM1wiO1xufVxuXG5pLmljb24ucmFkaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTJcIjtcbn1cblxuaS5pY29uLnJlbW92ZS5ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZVwiO1xufVxuXG5pLmljb24ucmVzaXplLmhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMzdcIjtcbn1cblxuaS5pY29uLnJlc2l6ZS52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMzOFwiO1xufVxuXG5pLmljb24uc2lnbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmNlwiO1xufVxuXG5pLmljb24uc2lnbi1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjVcIjtcbn1cblxuaS5pY29uLnNwb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmU1XCI7XG59XG5cbmkuaWNvbi5zdGFyLmhhbGYuZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODlcIjtcbn1cblxuaS5pY29uLnN0YXIuaGFsZi5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg5XCI7XG59XG5cbmkuaWNvbi50aWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmZcIjtcbn1cblxuaS5pY29uLnRpbWVzLnJlY3RhbmdsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxMFwiO1xufVxuXG5pLmljb24ud3JpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cblxuaS5pY29uLnlvdXR1YmUucGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2N1wiO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBPdXRsaW5lIEljb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBPdXRsaW5lIEljb24gKi9cblxuLyogTG9hZCAmIERlZmluZSBJY29uIEZvbnQgKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3V0bGluZS1pY29ucyc7XG4gIHNyYzogdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvb3V0bGluZS1pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvb3V0bGluZS1pY29ucy5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvb3V0bGluZS1pY29ucy53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyksIHVybChcIi4vdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL291dGxpbmUtaWNvbnMud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvb3V0bGluZS1pY29ucy50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCIuL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9vdXRsaW5lLWljb25zLnN2ZyNpY29uc1wiKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5pLmljb24ub3V0bGluZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3V0bGluZS1pY29ucyc7XG59XG5cbi8qIEljb24gRGVmaW5pdGlvbnMgKi9cblxuaS5pY29uLmFkZHJlc3MuYm9vay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI5XCI7XG59XG5cbmkuaWNvbi5hZGRyZXNzLmNhcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiYlwiO1xufVxuXG5pLmljb24uYXJyb3cuYWx0ZXJuYXRlLmNpcmNsZS5kb3duLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNThcIjtcbn1cblxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUubGVmdC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzU5XCI7XG59XG5cbmkuaWNvbi5hcnJvdy5hbHRlcm5hdGUuY2lyY2xlLnJpZ2h0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWFcIjtcbn1cblxuaS5pY29uLmFycm93LmFsdGVybmF0ZS5jaXJjbGUudXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1YlwiO1xufVxuXG5pLmljb24uYmVsbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYzXCI7XG59XG5cbmkuaWNvbi5iZWxsLnNsYXNoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjZcIjtcbn1cblxuaS5pY29uLmJvb2ttYXJrLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmVcIjtcbn1cblxuaS5pY29uLmJ1aWxkaW5nLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWRcIjtcbn1cblxuaS5pY29uLmNhbGVuZGFyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzNcIjtcbn1cblxuaS5pY29uLmNhbGVuZGFyLmFsdGVybmF0ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDczXCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhci5jaGVjay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhci5taW51cy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcyXCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhci5wbHVzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzFcIjtcbn1cblxuaS5pY29uLmNhbGVuZGFyLnRpbWVzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzNcIjtcbn1cblxuaS5pY29uLmNhcmV0LnNxdWFyZS5kb3duLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTBcIjtcbn1cblxuaS5pY29uLmNhcmV0LnNxdWFyZS5sZWZ0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTFcIjtcbn1cblxuaS5pY29uLmNhcmV0LnNxdWFyZS5yaWdodC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG5cbmkuaWNvbi5jYXJldC5zcXVhcmUudXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MVwiO1xufVxuXG5pLmljb24uY2hhcnQuYmFyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODBcIjtcbn1cblxuaS5pY29uLmNoZWNrLmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU4XCI7XG59XG5cbmkuaWNvbi5jaGVjay5zcXVhcmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YVwiO1xufVxuXG5pLmljb24uY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cblxuaS5pY29uLmNsaXBib2FyZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzI4XCI7XG59XG5cbmkuaWNvbi5jbG9jay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5cbmkuaWNvbi5jbG9uZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjRkXCI7XG59XG5cbmkuaWNvbi5jbG9zZWQuY2FwdGlvbmluZy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBhXCI7XG59XG5cbmkuaWNvbi5jb21tZW50Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cblxuaS5pY29uLmNvbW1lbnQuYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyN2FcIjtcbn1cblxuaS5pY29uLmNvbW1lbnRzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODZcIjtcbn1cblxuaS5pY29uLmNvbXBhc3Mub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZVwiO1xufVxuXG5pLmljb24uY29weS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM1XCI7XG59XG5cbmkuaWNvbi5jb3B5cmlnaHQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZFwiO1xufVxuXG5pLmljb24uZG90LmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5cbmkuaWNvbi5lZGl0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDRcIjtcbn1cblxuaS5pY29uLmVudmVsb3BlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTBcIjtcbn1cblxuaS5pY29uLmVudmVsb3BlLm9wZW4ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNlwiO1xufVxuXG5pLmljb24uZXllLnNsYXNoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cblxuaS5pY29uLmZpbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YlwiO1xufVxuXG5pLmljb24uZmlsZS5hbHRlcm5hdGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1Y1wiO1xufVxuXG5pLmljb24uZmlsZS5hcmNoaXZlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzZcIjtcbn1cblxuaS5pY29uLmZpbGUuYXVkaW8ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjN1wiO1xufVxuXG5pLmljb24uZmlsZS5jb2RlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzlcIjtcbn1cblxuaS5pY29uLmZpbGUuZXhjZWwub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjM1wiO1xufVxuXG5pLmljb24uZmlsZS5pbWFnZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM1XCI7XG59XG5cbmkuaWNvbi5maWxlLnBkZi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMxXCI7XG59XG5cbmkuaWNvbi5maWxlLnBvd2VycG9pbnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNFwiO1xufVxuXG5pLmljb24uZmlsZS52aWRlby5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM4XCI7XG59XG5cbmkuaWNvbi5maWxlLndvcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMlwiO1xufVxuXG5pLmljb24uZmxhZy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG5cbmkuaWNvbi5mb2xkZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3YlwiO1xufVxuXG5pLmljb24uZm9sZGVyLm9wZW4ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3Y1wiO1xufVxuXG5pLmljb24uZnJvd24ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOVwiO1xufVxuXG5pLmljb24uZnV0Ym9sLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTNcIjtcbn1cblxuaS5pY29uLmdlbS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E1XCI7XG59XG5cbmkuaWNvbi5oYW5kLmxpemFyZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU4XCI7XG59XG5cbmkuaWNvbi5oYW5kLnBhcGVyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTZcIjtcbn1cblxuaS5pY29uLmhhbmQucGVhY2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1YlwiO1xufVxuXG5pLmljb24uaGFuZC5wb2ludC5kb3duLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cblxuaS5pY29uLmhhbmQucG9pbnQubGVmdC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG5cbmkuaWNvbi5oYW5kLnBvaW50LnJpZ2h0Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTRcIjtcbn1cblxuaS5pY29uLmhhbmQucG9pbnQudXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNlwiO1xufVxuXG5pLmljb24uaGFuZC5wb2ludGVyLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWFcIjtcbn1cblxuaS5pY29uLmhhbmQucm9jay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU1XCI7XG59XG5cbmkuaWNvbi5oYW5kLnNjaXNzb3JzLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTdcIjtcbn1cblxuaS5pY29uLmhhbmQuc3BvY2sub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1OVwiO1xufVxuXG5pLmljb24uaGFuZHNoYWtlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjVcIjtcbn1cblxuaS5pY29uLmhkZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEwXCI7XG59XG5cbmkuaWNvbi5oZWFydC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG59XG5cbmkuaWNvbi5ob3NwaXRhbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY4XCI7XG59XG5cbmkuaWNvbi5ob3VyZ2xhc3Mub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NFwiO1xufVxuXG5pLmljb24uaWQuYmFkZ2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjMVwiO1xufVxuXG5pLmljb24uaWQuY2FyZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmMyXCI7XG59XG5cbmkuaWNvbi5pbWFnZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNlXCI7XG59XG5cbmkuaWNvbi5pbWFnZXMub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwMlwiO1xufVxuXG5pLmljb24ua2V5Ym9hcmQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExY1wiO1xufVxuXG5pLmljb24ubGVtb24ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5NFwiO1xufVxuXG5pLmljb24ubGlmZS5yaW5nLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2RcIjtcbn1cblxuaS5pY29uLmxpZ2h0YnVsYi5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGViXCI7XG59XG5cbmkuaWNvbi5saXN0LmFsdGVybmF0ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIyXCI7XG59XG5cbmkuaWNvbi5tYXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3OVwiO1xufVxuXG5pLmljb24ubWVoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWFcIjtcbn1cblxuaS5pY29uLm1pbnVzLnNxdWFyZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ2XCI7XG59XG5cbmkuaWNvbi5tb25leS5iaWxsLmFsdGVybmF0ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QxXCI7XG59XG5cbmkuaWNvbi5tb29uLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODZcIjtcbn1cblxuaS5pY29uLm5ld3NwYXBlci5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVhXCI7XG59XG5cbmkuaWNvbi5vYmplY3QuZ3JvdXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0N1wiO1xufVxuXG5pLmljb24ub2JqZWN0LnVuZ3JvdXAub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OFwiO1xufVxuXG5pLmljb24ucGFwZXIucGxhbmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkOFwiO1xufVxuXG5pLmljb24ucGF1c2UuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGJcIjtcbn1cblxuaS5pY29uLnBsYXkuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cblxuaS5pY29uLnBsdXMuc3F1YXJlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmVcIjtcbn1cblxuaS5pY29uLnF1ZXN0aW9uLmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU5XCI7XG59XG5cbmkuaWNvbi5yZWdpc3RlcmVkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWRcIjtcbn1cblxuaS5pY29uLnNhdmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjN1wiO1xufVxuXG5pLmljb24uc2hhcmUuc3F1YXJlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGRcIjtcbn1cblxuaS5pY29uLnNtaWxlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMThcIjtcbn1cblxuaS5pY29uLnNub3dmbGFrZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRjXCI7XG59XG5cbmkuaWNvbi5zcXVhcmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuXG5pLmljb24uc3Rhci5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA1XCI7XG59XG5cbmkuaWNvbi5zdGFyLmhhbGYub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OVwiO1xufVxuXG5pLmljb24uc3RpY2t5Lm5vdGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OVwiO1xufVxuXG5pLmljb24uc3RvcC5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4ZFwiO1xufVxuXG5pLmljb24uc3VuLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODVcIjtcbn1cblxuaS5pY29uLnRodW1icy5kb3duLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjVcIjtcbn1cblxuaS5pY29uLnRodW1icy51cC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY0XCI7XG59XG5cbmkuaWNvbi50aW1lcy5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuXG5pLmljb24udHJhc2guYWx0ZXJuYXRlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZWRcIjtcbn1cblxuaS5pY29uLnVzZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwN1wiO1xufVxuXG5pLmljb24udXNlci5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiZFwiO1xufVxuXG5pLmljb24ud2luZG93LmNsb3NlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTBcIjtcbn1cblxuaS5pY29uLndpbmRvdy5tYXhpbWl6ZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmQwXCI7XG59XG5cbmkuaWNvbi53aW5kb3cubWluaW1pemUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkMVwiO1xufVxuXG5pLmljb24ud2luZG93LnJlc3RvcmUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkMlwiO1xufVxuXG4vKiBPdXRsaW5lIEFsaWFzZXMgKi9cblxuaS5pY29uLmRpc2sub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMFwiO1xufVxuXG5pLmljb24uaGVhcnQuZW1wdHksXG5pLmljb24uc3Rhci5lbXB0eSB7XG4gIGZvbnQtZmFtaWx5OiAnb3V0bGluZS1pY29ucyc7XG59XG5cbmkuaWNvbi5oZWFydC5lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuXG5pLmljb24uc3Rhci5lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OVwiO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBCcmFuZCBJY29uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogTG9hZCAmIERlZmluZSBCcmFuZCBGb250ICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbiAgc3JjOiB1cmwoXCIuL3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9icmFuZC1pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybChcIi4vdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2JyYW5kLWljb25zLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMudHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKFwiLi90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvYnJhbmQtaWNvbnMuc3ZnI2ljb25zXCIpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qIEJyYW5kIEljb24gRm9udCBGYW1pbHkgKi9cblxuaS5pY29uLlxcMzUgMDBweCxcbmkuaWNvbi5hY2Nlc3NpYmxlLmljb24sXG5pLmljb24uYWNjdXNvZnQsXG5pLmljb24uYWRuLFxuaS5pY29uLmFkdmVyc2FsLFxuaS5pY29uLmFmZmlsaWF0ZXRoZW1lLFxuaS5pY29uLmFsZ29saWEsXG5pLmljb24uYW1hem9uLFxuaS5pY29uLmFtYXpvbi5wYXksXG5pLmljb24uYW1pbGlhLFxuaS5pY29uLmFuZHJvaWQsXG5pLmljb24uYW5nZWxsaXN0LFxuaS5pY29uLmFuZ3J5Y3JlYXRpdmUsXG5pLmljb24uYW5ndWxhcixcbmkuaWNvbi5hcHAuc3RvcmUsXG5pLmljb24uYXBwLnN0b3JlLmlvcyxcbmkuaWNvbi5hcHBlcixcbmkuaWNvbi5hcHBsZSxcbmkuaWNvbi5hcHBsZS5wYXksXG5pLmljb24uYXN5bW1ldHJpayxcbmkuaWNvbi5hdWRpYmxlLFxuaS5pY29uLmF1dG9wcmVmaXhlcixcbmkuaWNvbi5hdmlhbmV4LFxuaS5pY29uLmF2aWF0byxcbmkuaWNvbi5hd3MsXG5pLmljb24uYmFuZGNhbXAsXG5pLmljb24uYmVoYW5jZSxcbmkuaWNvbi5iZWhhbmNlLnNxdWFyZSxcbmkuaWNvbi5iaW1vYmplY3QsXG5pLmljb24uYml0YnVja2V0LFxuaS5pY29uLmJpdGNvaW4sXG5pLmljb24uYml0eSxcbmkuaWNvbi5ibGFjay50aWUsXG5pLmljb24uYmxhY2tiZXJyeSxcbmkuaWNvbi5ibG9nZ2VyLFxuaS5pY29uLmJsb2dnZXIuYixcbmkuaWNvbi5ibHVldG9vdGgsXG5pLmljb24uYmx1ZXRvb3RoLmIsXG5pLmljb24uYnRjLFxuaS5pY29uLmJ1cm9tb2JlbGV4cGVydGUsXG5pLmljb24uYnV5c2VsbGFkcyxcbmkuaWNvbi5jYy5hbWF6b24ucGF5LFxuaS5pY29uLmNjLmFtZXgsXG5pLmljb24uY2MuYXBwbGUucGF5LFxuaS5pY29uLmNjLmRpbmVycy5jbHViLFxuaS5pY29uLmNjLmRpc2NvdmVyLFxuaS5pY29uLmNjLmpjYixcbmkuaWNvbi5jYy5tYXN0ZXJjYXJkLFxuaS5pY29uLmNjLnBheXBhbCxcbmkuaWNvbi5jYy5zdHJpcGUsXG5pLmljb24uY2MudmlzYSxcbmkuaWNvbi5jZW50ZXJjb2RlLFxuaS5pY29uLmNocm9tZSxcbmkuaWNvbi5jbG91ZHNjYWxlLFxuaS5pY29uLmNsb3Vkc21pdGgsXG5pLmljb24uY2xvdWR2ZXJzaWZ5LFxuaS5pY29uLmNvZGVwZW4sXG5pLmljb24uY29kaWVwaWUsXG5pLmljb24uY29ubmVjdGRldmVsb3AsXG5pLmljb24uY29udGFvLFxuaS5pY29uLmNwYW5lbCxcbmkuaWNvbi5jcmVhdGl2ZS5jb21tb25zLFxuaS5pY29uLmNzczMsXG5pLmljb24uY3NzMy5hbHRlcm5hdGUsXG5pLmljb24uY3V0dGxlZmlzaCxcbmkuaWNvbi5kLmFuZC5kLFxuaS5pY29uLmRhc2hjdWJlLFxuaS5pY29uLmRlbGljaW91cyxcbmkuaWNvbi5kZXBsb3lkb2csXG5pLmljb24uZGVza3BybyxcbmkuaWNvbi5kZXZpYW50YXJ0LFxuaS5pY29uLmRpZ2csXG5pLmljb24uZGlnaXRhbC5vY2VhbixcbmkuaWNvbi5kaXNjb3JkLFxuaS5pY29uLmRpc2NvdXJzZSxcbmkuaWNvbi5kb2NodWIsXG5pLmljb24uZG9ja2VyLFxuaS5pY29uLmRyYWZ0MmRpZ2l0YWwsXG5pLmljb24uZHJpYmJibGUsXG5pLmljb24uZHJpYmJibGUuc3F1YXJlLFxuaS5pY29uLmRyb3Bib3gsXG5pLmljb24uZHJ1cGFsLFxuaS5pY29uLmR5YWxvZyxcbmkuaWNvbi5lYXJseWJpcmRzLFxuaS5pY29uLmVkZ2UsXG5pLmljb24uZWxlbWVudG9yLFxuaS5pY29uLmVtYmVyLFxuaS5pY29uLmVtcGlyZSxcbmkuaWNvbi5lbnZpcmEsXG5pLmljb24uZXJsYW5nLFxuaS5pY29uLmV0aGVyZXVtLFxuaS5pY29uLmV0c3ksXG5pLmljb24uZXhwZWRpdGVkc3NsLFxuaS5pY29uLmZhY2Vib29rLFxuaS5pY29uLmZhY2Vib29rLmYsXG5pLmljb24uZmFjZWJvb2subWVzc2VuZ2VyLFxuaS5pY29uLmZhY2Vib29rLnNxdWFyZSxcbmkuaWNvbi5maXJlZm94LFxuaS5pY29uLmZpcnN0Lm9yZGVyLFxuaS5pY29uLmZpcnN0ZHJhZnQsXG5pLmljb24uZmxpY2tyLFxuaS5pY29uLmZsaXBib2FyZCxcbmkuaWNvbi5mbHksXG5pLmljb24uZm9udC5hd2Vzb21lLFxuaS5pY29uLmZvbnQuYXdlc29tZS5hbHRlcm5hdGUsXG5pLmljb24uZm9udC5hd2Vzb21lLmZsYWcsXG5pLmljb24uZm9udGljb25zLFxuaS5pY29uLmZvbnRpY29ucy5maSxcbmkuaWNvbi5mb3J0LmF3ZXNvbWUsXG5pLmljb24uZm9ydC5hd2Vzb21lLmFsdGVybmF0ZSxcbmkuaWNvbi5mb3J1bWJlZSxcbmkuaWNvbi5mb3Vyc3F1YXJlLFxuaS5pY29uLmZyZWUuY29kZS5jYW1wLFxuaS5pY29uLmZyZWVic2QsXG5pLmljb24uZ2V0LnBvY2tldCxcbmkuaWNvbi5nZyxcbmkuaWNvbi5nZy5jaXJjbGUsXG5pLmljb24uZ2l0LFxuaS5pY29uLmdpdC5zcXVhcmUsXG5pLmljb24uZ2l0aHViLFxuaS5pY29uLmdpdGh1Yi5hbHRlcm5hdGUsXG5pLmljb24uZ2l0aHViLnNxdWFyZSxcbmkuaWNvbi5naXRrcmFrZW4sXG5pLmljb24uZ2l0bGFiLFxuaS5pY29uLmdpdHRlcixcbmkuaWNvbi5nbGlkZSxcbmkuaWNvbi5nbGlkZS5nLFxuaS5pY29uLmdvZm9yZSxcbmkuaWNvbi5nb29kcmVhZHMsXG5pLmljb24uZ29vZHJlYWRzLmcsXG5pLmljb24uZ29vZ2xlLFxuaS5pY29uLmdvb2dsZS5kcml2ZSxcbmkuaWNvbi5nb29nbGUucGxheSxcbmkuaWNvbi5nb29nbGUucGx1cyxcbmkuaWNvbi5nb29nbGUucGx1cy5nLFxuaS5pY29uLmdvb2dsZS5wbHVzLnNxdWFyZSxcbmkuaWNvbi5nb29nbGUud2FsbGV0LFxuaS5pY29uLmdyYXRpcGF5LFxuaS5pY29uLmdyYXYsXG5pLmljb24uZ3JpcGZpcmUsXG5pLmljb24uZ3J1bnQsXG5pLmljb24uZ3VscCxcbmkuaWNvbi5oYWNrZXIubmV3cyxcbmkuaWNvbi5oYWNrZXIubmV3cy5zcXVhcmUsXG5pLmljb24uaGlwcyxcbmkuaWNvbi5oaXJlLmEuaGVscGVyLFxuaS5pY29uLmhvb2xpLFxuaS5pY29uLmhvdGphcixcbmkuaWNvbi5ob3V6eixcbmkuaWNvbi5odG1sNSxcbmkuaWNvbi5odWJzcG90LFxuaS5pY29uLmltZGIsXG5pLmljb24uaW5zdGFncmFtLFxuaS5pY29uLmludGVybmV0LmV4cGxvcmVyLFxuaS5pY29uLmlveGhvc3QsXG5pLmljb24uaXR1bmVzLFxuaS5pY29uLml0dW5lcy5ub3RlLFxuaS5pY29uLmplbmtpbnMsXG5pLmljb24uam9nZXQsXG5pLmljb24uam9vbWxhLFxuaS5pY29uLmpzLFxuaS5pY29uLmpzLnNxdWFyZSxcbmkuaWNvbi5qc2ZpZGRsZSxcbmkuaWNvbi5rZXljZG4sXG5pLmljb24ua2lja3N0YXJ0ZXIsXG5pLmljb24ua2lja3N0YXJ0ZXIuayxcbmkuaWNvbi5rb3J2dWUsXG5pLmljb24ubGFyYXZlbCxcbmkuaWNvbi5sYXN0Zm0sXG5pLmljb24ubGFzdGZtLnNxdWFyZSxcbmkuaWNvbi5sZWFucHViLFxuaS5pY29uLmxlc3MsXG5pLmljb24ubGluZWNoYXQsXG5pLmljb24ubGlua2VkaW4sXG5pLmljb24ubGlua2VkaW4uYWx0ZXJuYXRlLFxuaS5pY29uLmxpbmtlZGluLmluLFxuaS5pY29uLmxpbm9kZSxcbmkuaWNvbi5saW51eCxcbmkuaWNvbi5seWZ0LFxuaS5pY29uLm1hZ2VudG8sXG5pLmljb24ubWF4Y2RuLFxuaS5pY29uLm1lZGFwcHMsXG5pLmljb24ubWVkaXVtLFxuaS5pY29uLm1lZGl1bS5tLFxuaS5pY29uLm1lZHJ0LFxuaS5pY29uLm1lZXR1cCxcbmkuaWNvbi5taWNyb3NvZnQsXG5pLmljb24ubWl4LFxuaS5pY29uLm1peGNsb3VkLFxuaS5pY29uLm1penVuaSxcbmkuaWNvbi5tb2R4LFxuaS5pY29uLm1vbmVybyxcbmkuaWNvbi5uYXBzdGVyLFxuaS5pY29uLm5pbnRlbmRvLnN3aXRjaCxcbmkuaWNvbi5ub2RlLFxuaS5pY29uLm5vZGUuanMsXG5pLmljb24ubnBtLFxuaS5pY29uLm5zOCxcbmkuaWNvbi5udXRyaXRpb25peCxcbmkuaWNvbi5vZG5va2xhc3NuaWtpLFxuaS5pY29uLm9kbm9rbGFzc25pa2kuc3F1YXJlLFxuaS5pY29uLm9wZW5jYXJ0LFxuaS5pY29uLm9wZW5pZCxcbmkuaWNvbi5vcGVyYSxcbmkuaWNvbi5vcHRpbi5tb25zdGVyLFxuaS5pY29uLm9zaSxcbmkuaWNvbi5wYWdlNCxcbmkuaWNvbi5wYWdlbGluZXMsXG5pLmljb24ucGFsZmVkLFxuaS5pY29uLnBhdHJlb24sXG5pLmljb24ucGF5cGFsLFxuaS5pY29uLnBlcmlzY29wZSxcbmkuaWNvbi5waGFicmljYXRvcixcbmkuaWNvbi5waG9lbml4LmZyYW1ld29yayxcbmkuaWNvbi5waHAsXG5pLmljb24ucGllZC5waXBlcixcbmkuaWNvbi5waWVkLnBpcGVyLmFsdGVybmF0ZSxcbmkuaWNvbi5waWVkLnBpcGVyLnBwLFxuaS5pY29uLnBpbnRlcmVzdCxcbmkuaWNvbi5waW50ZXJlc3QucCxcbmkuaWNvbi5waW50ZXJlc3Quc3F1YXJlLFxuaS5pY29uLnBsYXlzdGF0aW9uLFxuaS5pY29uLnByb2R1Y3QuaHVudCxcbmkuaWNvbi5wdXNoZWQsXG5pLmljb24ucHl0aG9uLFxuaS5pY29uLnFxLFxuaS5pY29uLnF1aW5zY2FwZSxcbmkuaWNvbi5xdW9yYSxcbmkuaWNvbi5yYXZlbHJ5LFxuaS5pY29uLnJlYWN0LFxuaS5pY29uLnJlYmVsLFxuaS5pY29uLnJlZHJpdmVyLFxuaS5pY29uLnJlZGRpdCxcbmkuaWNvbi5yZWRkaXQuYWxpZW4sXG5pLmljb24ucmVkZGl0LnNxdWFyZSxcbmkuaWNvbi5yZW5kYWN0LFxuaS5pY29uLnJlbnJlbixcbmkuaWNvbi5yZXBseWQsXG5pLmljb24ucmVzb2x2aW5nLFxuaS5pY29uLnJvY2tldGNoYXQsXG5pLmljb24ucm9ja3JtcyxcbmkuaWNvbi5zYWZhcmksXG5pLmljb24uc2FzcyxcbmkuaWNvbi5zY2hsaXgsXG5pLmljb24uc2NyaWJkLFxuaS5pY29uLnNlYXJjaGVuZ2luLFxuaS5pY29uLnNlbGxjYXN0LFxuaS5pY29uLnNlbGxzeSxcbmkuaWNvbi5zZXJ2aWNlc3RhY2ssXG5pLmljb24uc2hpcnRzaW5idWxrLFxuaS5pY29uLnNpbXBseWJ1aWx0LFxuaS5pY29uLnNpc3RyaXgsXG5pLmljb24uc2t5YXRsYXMsXG5pLmljb24uc2t5cGUsXG5pLmljb24uc2xhY2ssXG5pLmljb24uc2xhY2suaGFzaCxcbmkuaWNvbi5zbGlkZXNoYXJlLFxuaS5pY29uLnNuYXBjaGF0LFxuaS5pY29uLnNuYXBjaGF0Lmdob3N0LFxuaS5pY29uLnNuYXBjaGF0LnNxdWFyZSxcbmkuaWNvbi5zb3VuZGNsb3VkLFxuaS5pY29uLnNwZWFrYXAsXG5pLmljb24uc3BvdGlmeSxcbmkuaWNvbi5zdGFjay5leGNoYW5nZSxcbmkuaWNvbi5zdGFjay5vdmVyZmxvdyxcbmkuaWNvbi5zdGF5bGlua2VkLFxuaS5pY29uLnN0ZWFtLFxuaS5pY29uLnN0ZWFtLnNxdWFyZSxcbmkuaWNvbi5zdGVhbS5zeW1ib2wsXG5pLmljb24uc3RpY2tlci5tdWxlLFxuaS5pY29uLnN0cmF2YSxcbmkuaWNvbi5zdHJpcGUsXG5pLmljb24uc3RyaXBlLnMsXG5pLmljb24uc3R1ZGlvdmluYXJpLFxuaS5pY29uLnN0dW1ibGV1cG9uLFxuaS5pY29uLnN0dW1ibGV1cG9uLmNpcmNsZSxcbmkuaWNvbi5zdXBlcnBvd2VycyxcbmkuaWNvbi5zdXBwbGUsXG5pLmljb24udGVsZWdyYW0sXG5pLmljb24udGVsZWdyYW0ucGxhbmUsXG5pLmljb24udGVuY2VudC53ZWlibyxcbmkuaWNvbi50aGVtZWlzbGUsXG5pLmljb24udHJlbGxvLFxuaS5pY29uLnRyaXBhZHZpc29yLFxuaS5pY29uLnR1bWJscixcbmkuaWNvbi50dW1ibHIuc3F1YXJlLFxuaS5pY29uLnR3aXRjaCxcbmkuaWNvbi50d2l0dGVyLFxuaS5pY29uLnR3aXR0ZXIuc3F1YXJlLFxuaS5pY29uLnR5cG8zLFxuaS5pY29uLnViZXIsXG5pLmljb24udWlraXQsXG5pLmljb24udW5pcmVnaXN0cnksXG5pLmljb24udW50YXBwZCxcbmkuaWNvbi51c2IsXG5pLmljb24udXNzdW5uYWgsXG5pLmljb24udmFhZGluLFxuaS5pY29uLnZpYWNvaW4sXG5pLmljb24udmlhZGVvLFxuaS5pY29uLnZpYWRlby5zcXVhcmUsXG5pLmljb24udmliZXIsXG5pLmljb24udmltZW8sXG5pLmljb24udmltZW8uc3F1YXJlLFxuaS5pY29uLnZpbWVvLnYsXG5pLmljb24udmluZSxcbmkuaWNvbi52ayxcbmkuaWNvbi52bnYsXG5pLmljb24udnVlanMsXG5pLmljb24ud2VjaGF0LFxuaS5pY29uLndlaWJvLFxuaS5pY29uLndlaXhpbixcbmkuaWNvbi53aGF0c2FwcCxcbmkuaWNvbi53aGF0c2FwcC5zcXVhcmUsXG5pLmljb24ud2htY3MsXG5pLmljb24ud2lraXBlZGlhLncsXG5pLmljb24ud2luZG93cyxcbmkuaWNvbi53b3JkcHJlc3MsXG5pLmljb24ud29yZHByZXNzLnNpbXBsZSxcbmkuaWNvbi53cGJlZ2lubmVyLFxuaS5pY29uLndwZXhwbG9yZXIsXG5pLmljb24ud3Bmb3JtcyxcbmkuaWNvbi54Ym94LFxuaS5pY29uLnhpbmcsXG5pLmljb24ueGluZy5zcXVhcmUsXG5pLmljb24ueS5jb21iaW5hdG9yLFxuaS5pY29uLnlhaG9vLFxuaS5pY29uLnlhbmRleCxcbmkuaWNvbi55YW5kZXguaW50ZXJuYXRpb25hbCxcbmkuaWNvbi55ZWxwLFxuaS5pY29uLnlvYXN0LFxuaS5pY29uLnlvdXR1YmUsXG5pLmljb24ueW91dHViZS5zcXVhcmUge1xuICBmb250LWZhbWlseTogJ2JyYW5kLWljb25zJztcbn1cblxuLyogQnJhbmQgSWNvbnMgSWRlYWxseSBXb3VsZCBCZSBEZWZpbmVkIEhlcmUgKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDIuNC4yIC0gSW1hZ2VcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgSW1hZ2VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5pbWcudWkuaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLmltYWdlIHN2Zyxcbi51aS5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5oaWRkZW4uaW1hZ2VzLFxuLnVpLmhpZGRlbi5pbWFnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS5oaWRkZW4udHJhbnNpdGlvbi5pbWFnZXMsXG4udWkuaGlkZGVuLnRyYW5zaXRpb24uaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuaW1hZ2VzID4gLmhpZGRlbi50cmFuc2l0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5kaXNhYmxlZC5pbWFnZXMsXG4udWkuZGlzYWJsZWQuaW1hZ2Uge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbmxpbmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbmxpbmUuaW1hZ2UsXG4udWkuaW5saW5lLmltYWdlIHN2Zyxcbi51aS5pbmxpbmUuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICBWZXJ0aWNhbCBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRvcC5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLnRvcC5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2UsXG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSb3VuZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucm91bmRlZC5pbWFnZXMgLmltYWdlLFxuLnVpLnJvdW5kZWQuaW1hZ2UsXG4udWkucm91bmRlZC5pbWFnZXMgLmltYWdlID4gKixcbi51aS5yb3VuZGVkLmltYWdlID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ib3JkZXJlZC5pbWFnZXMgLmltYWdlLFxuLnVpLmJvcmRlcmVkLmltYWdlcyBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2VzIHN2Zyxcbi51aS5ib3JkZXJlZC5pbWFnZSBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2Ugc3ZnLFxuaW1nLnVpLmJvcmRlcmVkLmltYWdlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jaXJjdWxhci5pbWFnZXMsXG4udWkuY2lyY3VsYXIuaW1hZ2Uge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udWkuY2lyY3VsYXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5jaXJjdWxhci5pbWFnZSxcbi51aS5jaXJjdWxhci5pbWFnZXMgLmltYWdlID4gKixcbi51aS5jaXJjdWxhci5pbWFnZSA+ICoge1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5pbWFnZXMsXG4udWkuZmx1aWQuaW1hZ2UsXG4udWkuZmx1aWQuaW1hZ2VzIGltZyxcbi51aS5mbHVpZC5pbWFnZXMgc3ZnLFxuLnVpLmZsdWlkLmltYWdlIHN2Zyxcbi51aS5mbHVpZC5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBdmF0YXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hdmF0YXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5hdmF0YXIuaW1hZ2VzIGltZyxcbi51aS5hdmF0YXIuaW1hZ2VzIHN2Zyxcbi51aS5hdmF0YXIuaW1hZ2UgaW1nLFxuLnVpLmF2YXRhci5pbWFnZSBzdmcsXG4udWkuYXZhdGFyLmltYWdlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3BhY2VkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zcGFjZWQuaW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBzcGFjZWRcIl0uaW1hZ2Uge1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgc3BhY2VkXCJdLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRlZC5pbWFnZSxcbi51aS5mbG9hdGVkLmltYWdlcyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4udWkucmlnaHQuZmxvYXRlZC5pbWFnZXMsXG4udWkucmlnaHQuZmxvYXRlZC5pbWFnZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLnVpLmZsb2F0ZWQuaW1hZ2VzOmxhc3QtY2hpbGQsXG4udWkuZmxvYXRlZC5pbWFnZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkuY2VudGVyZWQuaW1hZ2VzLFxuLnVpLmNlbnRlcmVkLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW1hZ2VzIC5pbWFnZSxcbi51aS5taW5pLmltYWdlcyBpbWcsXG4udWkubWluaS5pbWFnZXMgc3ZnLFxuLnVpLm1pbmkuaW1hZ2Uge1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG5cbi51aS50aW55LmltYWdlcyAuaW1hZ2UsXG4udWkudGlueS5pbWFnZXMgaW1nLFxuLnVpLnRpbnkuaW1hZ2VzIHN2Zyxcbi51aS50aW55LmltYWdlIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuaW1hZ2VzIC5pbWFnZSxcbi51aS5zbWFsbC5pbWFnZXMgaW1nLFxuLnVpLnNtYWxsLmltYWdlcyBzdmcsXG4udWkuc21hbGwuaW1hZ2Uge1xuICB3aWR0aDogMTUwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkubWVkaXVtLmltYWdlcyAuaW1hZ2UsXG4udWkubWVkaXVtLmltYWdlcyBpbWcsXG4udWkubWVkaXVtLmltYWdlcyBzdmcsXG4udWkubWVkaXVtLmltYWdlIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmltYWdlcyAuaW1hZ2UsXG4udWkubGFyZ2UuaW1hZ2VzIGltZyxcbi51aS5sYXJnZS5pbWFnZXMgc3ZnLFxuLnVpLmxhcmdlLmltYWdlIHtcbiAgd2lkdGg6IDQ1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmJpZy5pbWFnZXMgLmltYWdlLFxuLnVpLmJpZy5pbWFnZXMgaW1nLFxuLnVpLmJpZy5pbWFnZXMgc3ZnLFxuLnVpLmJpZy5pbWFnZSB7XG4gIHdpZHRoOiA2MDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmltYWdlcyAuaW1hZ2UsXG4udWkuaHVnZS5pbWFnZXMgaW1nLFxuLnVpLmh1Z2UuaW1hZ2VzIHN2Zyxcbi51aS5odWdlLmltYWdlIHtcbiAgd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuaW1hZ2VzIC5pbWFnZSxcbi51aS5tYXNzaXZlLmltYWdlcyBpbWcsXG4udWkubWFzc2l2ZS5pbWFnZXMgc3ZnLFxuLnVpLm1hc3NpdmUuaW1hZ2Uge1xuICB3aWR0aDogOTYwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5pbWFnZXMge1xuICBmb250LXNpemU6IDBlbTtcbiAgbWFyZ2luOiAwZW0gLTAuMjVyZW0gMHJlbTtcbn1cblxuLnVpLmltYWdlcyAuaW1hZ2UsXG4udWkuaW1hZ2VzID4gaW1nLFxuLnVpLmltYWdlcyA+IHN2ZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwZW0gMC4yNXJlbSAwLjVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIElucHV0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuaW5wdXQgPiBpbnB1dCB7XG4gIG1hcmdpbjogMGVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tcy1mbGV4OiAxIDAgYXV0bztcbiAgZmxleDogMSAwIGF1dG87XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMC42Nzg1NzE0M2VtIDFlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBsYWNlaG9sZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBicm93c2VycyByZXF1aXJlIHRoZXNlIHJ1bGVzIHNlcGFyYXRlICovXG5cbi51aS5pbnB1dCA+IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG5cbi51aS5pbnB1dCA+IGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG5cbi51aS5pbnB1dCA+IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDE5MSwgMTkxLCAxOTEsIDAuODcpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGlzYWJsZWQuaW5wdXQsXG4udWkuaW5wdXQ6bm90KC5kaXNhYmxlZCkgaW5wdXRbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC40NTtcbn1cblxuLnVpLmRpc2FibGVkLmlucHV0ID4gaW5wdXQsXG4udWkuaW5wdXQ6bm90KC5kaXNhYmxlZCkgaW5wdXRbZGlzYWJsZWRdIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5wdXQgPiBpbnB1dDphY3RpdmUsXG4udWkuaW5wdXQuZG93biBpbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBiYWNrZ3JvdW5kOiAjRkFGQUZBO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcubG9hZGluZy5pbnB1dCA+IGkuaWNvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0wLjY0Mjg1NzE0ZW0gMGVtIDBlbSAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmxvYWRpbmcubG9hZGluZy5pbnB1dCA+IGkuaWNvbjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODU3MTRlbSAwZW0gMGVtIC0wLjY0Mjg1NzE0ZW07XG4gIHdpZHRoOiAxLjI4NTcxNDI5ZW07XG4gIGhlaWdodDogMS4yODU3MTQyOWVtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIGFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlucHV0LmZvY3VzID4gaW5wdXQsXG4udWkuaW5wdXQgPiBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzg1QjdEOTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW5wdXQuZm9jdXMgPiBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi51aS5pbnB1dCA+IGlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC44Nyk7XG59XG5cbi51aS5pbnB1dC5mb2N1cyA+IGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0ID4gaW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KTtcbn1cblxuLnVpLmlucHV0LmZvY3VzID4gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0ID4gaW5wdXQ6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC44Nyk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZGNjtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xuICBjb2xvcjogIzlGM0EzODtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBFcnJvciBQbGFjZWhvbGRlciAqL1xuXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuXG4udWkuaW5wdXQuZXJyb3IgPiBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2U3YmRiYyAhaW1wb3J0YW50O1xufVxuXG4vKiBGb2N1c2VkIEVycm9yIFBsYWNlaG9sZGVyICovXG5cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNkYTk3OTY7XG59XG5cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0OmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNkYTk3OTY7XG59XG5cbi51aS5pbnB1dC5lcnJvciA+IGlucHV0OmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2ICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFRyYW5zcGFyZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudHJhbnNwYXJlbnQuaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMGVtICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBUcmFuc3BhcmVudCBJY29uICovXG5cbi51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gaS5pY29uIHtcbiAgd2lkdGg6IDEuMWVtO1xufVxuXG4udWkudHJhbnNwYXJlbnQuaWNvbi5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS50cmFuc3BhcmVudFtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBUcmFuc3BhcmVudCBJbnZlcnRlZCAqL1xuXG4udWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0ID4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQgPiBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi51aS50cmFuc3BhcmVudC5pbnZlcnRlZC5pbnB1dCA+IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmlucHV0ID4gaS5pY29uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMHB4O1xuICByaWdodDogMHB4O1xuICBtYXJnaW46IDBlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMi42NzE0Mjg1N2VtO1xuICBvcGFjaXR5OiAwLjU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLnVpLmljb24uaW5wdXQgPiBpLmljb246bm90KC5saW5rKSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udWkuaWNvbi5pbnB1dCA+IGlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMi42NzE0Mjg1N2VtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pY29uLmlucHV0ID4gaS5pY29uOmJlZm9yZSxcbi51aS5pY29uLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xufVxuXG4udWkuaWNvbi5pbnB1dCA+IGkubGluay5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWkuaWNvbi5pbnB1dCA+IGkuY2lyY3VsYXIuaWNvbiB7XG4gIHRvcDogMC4zNWVtO1xuICByaWdodDogMC41ZW07XG59XG5cbi8qIExlZnQgSWNvbiBJbnB1dCAqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaS5pY29uIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpLmNpcmN1bGFyLmljb24ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMC41ZW07XG59XG5cbi51aVtjbGFzcyo9XCJsZWZ0IGljb25cIl0uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMi42NzE0Mjg1N2VtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBGb2N1cyAqL1xuXG4udWkuaWNvbi5pbnB1dCA+IGlucHV0OmZvY3VzIH4gaS5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBMYWJlbGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBBZGphY2VudCBMYWJlbCAqL1xuXG4udWkubGFiZWxlZC5pbnB1dCA+IC5sYWJlbCB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi51aS5sYWJlbGVkLmlucHV0ID4gLmxhYmVsOm5vdCguY29ybmVyKSB7XG4gIHBhZGRpbmctdG9wOiAwLjc4NTcxNDI5ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc4NTcxNDI5ZW07XG59XG5cbi8qIFJlZ3VsYXIgTGFiZWwgb24gTGVmdCAqL1xuXG4udWkubGFiZWxlZC5pbnB1dDpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSAubGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xufVxuXG4udWkubGFiZWxlZC5pbnB1dDpub3QoW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdKSAubGFiZWw6Zmlyc3QtY2hpbGQgKyBpbnB1dCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5sYWJlbGVkLmlucHV0Om5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pIC5sYWJlbDpmaXJzdC1jaGlsZCArIGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICM4NUI3RDk7XG59XG5cbi8qIFJlZ3VsYXIgTGFiZWwgb24gUmlnaHQgKi9cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaW5wdXQgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmlucHV0ID4gaW5wdXQgKyAubGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGxhYmVsZWRcIl0uaW5wdXQgPiBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzg1QjdEOSAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgTGFiZWwgKi9cblxuLnVpLmxhYmVsZWQuaW5wdXQgLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xuICBmb250LXNpemU6IDAuNjQyODU3MTRlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLyogU3BhY2luZyB3aXRoIGNvcm5lciBsYWJlbCAqL1xuXG4udWlbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl06bm90KFtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdKS5sYWJlbGVkLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVlbSAhaW1wb3J0YW50O1xufVxuXG4udWlbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgY29ybmVyIGxhYmVsZWRcIl0pID4gaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiAzLjI1ZW0gIWltcG9ydGFudDtcbn1cblxuLnVpW2NsYXNzKj1cImNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdKSA+IC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1ZW07XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBjb3JuZXIgbGFiZWxlZFwiXS5sYWJlbGVkLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDIuNWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMy4yNWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJsZWZ0IGNvcm5lciBsYWJlbGVkXCJdLmljb24uaW5wdXQgPiAuaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1ZW07XG59XG5cbi8qIENvcm5lciBMYWJlbCBQb3NpdGlvbiAgKi9cblxuLnVpLmlucHV0ID4gLnVpLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xufVxuXG4udWkuaW5wdXQgPiAudWkubGVmdC5jb3JuZXIubGFiZWwge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b24sXG4udWkuYWN0aW9uLmlucHV0ID4gLmJ1dHRvbnMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi51aS5hY3Rpb24uaW5wdXQgPiAuYnV0dG9uLFxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjc4NTcxNDI5ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc4NTcxNDI5ZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLyogQnV0dG9uIG9uIFJpZ2h0ICovXG5cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiBpbnB1dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCksXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uczpub3QoOmZpcnN0LWNoaWxkKSA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuZHJvcGRvd246bGFzdC1jaGlsZCxcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9uOmxhc3QtY2hpbGQsXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gLmJ1dHRvbnM6bGFzdC1jaGlsZCA+IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwcHggMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBweDtcbn1cblxuLyogSW5wdXQgRm9jdXMgKi9cblxuLnVpLmFjdGlvbi5pbnB1dDpub3QoW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdKSA+IGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjODVCN0Q5ICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJ1dHRvbiBvbiBMZWZ0ICovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IGlucHV0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmRyb3Bkb3duLFxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmJ1dHRvbixcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmRyb3Bkb3duOmZpcnN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmJ1dHRvbjpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b25zOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMHB4IDBweCAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBJbnB1dCBGb2N1cyAqL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0uaW5wdXQgPiBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjODVCN0Q5ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3RhbmRhcmQgKi9cblxuLnVpLmludmVydGVkLmlucHV0ID4gaW5wdXQge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5pbnB1dCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnVpLmZsdWlkLmlucHV0ID4gaW5wdXQge1xuICB3aWR0aDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW5wdXQge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjllbTtcbn1cblxuLnVpLnNtYWxsLmlucHV0IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG59XG5cbi51aS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkubGFyZ2UuaW5wdXQge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmJpZy5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOWVtO1xufVxuXG4udWkuaHVnZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuXG4udWkubWFzc2l2ZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBMYWJlbFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExhYmVsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbjogMGVtIDAuMTQyODU3MTRlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U4RThFODtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgcGFkZGluZzogMC41ODMzZW0gMC44MzNlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7XG59XG5cbi51aS5sYWJlbDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi51aS5sYWJlbDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi8qIExpbmsgKi9cblxuYS51aS5sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogSW5zaWRlIExpbmsgKi9cblxuLnVpLmxhYmVsID4gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjFzIG9wYWNpdHkgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4xcyBvcGFjaXR5IGVhc2U7XG59XG5cbi51aS5sYWJlbCA+IGE6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkubGFiZWwgPiBpbWcge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDIuMTY2NmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIEljb24gKi9cblxuLnVpLmxhYmVsID4gLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwZW0gMC43NWVtIDBlbSAwZW07XG59XG5cbi8qIERldGFpbCAqL1xuXG4udWkubGFiZWwgPiAuZGV0YWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4udWkubGFiZWwgPiAuZGV0YWlsIC5pY29uIHtcbiAgbWFyZ2luOiAwZW0gMC4yNWVtIDBlbSAwZW07XG59XG5cbi8qIFJlbW92YWJsZSBsYWJlbCAqL1xuXG4udWkubGFiZWwgPiAuY2xvc2UuaWNvbixcbi51aS5sYWJlbCA+IC5kZWxldGUuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIG9wYWNpdHk6IDAuNTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7XG59XG5cbi51aS5sYWJlbCA+IC5kZWxldGUuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMgPiAubGFiZWwge1xuICBtYXJnaW46IDBlbSAwLjVlbSAwLjVlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oZWFkZXIgPiAudWkubGFiZWwge1xuICBtYXJnaW4tdG9wOiAtMC4yOTE2NWVtO1xufVxuXG4vKiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBvbiBhdHRhY2hlZCBzZWdtZW50ICovXG5cbi51aS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5sZWZ0LmF0dGFjaGVkLmxhYmVsLFxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5sZWZ0LmF0dGFjaGVkLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbn1cblxuLnVpLmF0dGFjaGVkLnNlZ21lbnQgPiAudWkudG9wLnJpZ2h0LmF0dGFjaGVkLmxhYmVsLFxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5yaWdodC5hdHRhY2hlZC5sYWJlbCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4udWkudG9wLmF0dGFjaGVkLnNlZ21lbnQgPiAudWkuYm90dG9tLmxlZnQuYXR0YWNoZWQubGFiZWwge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4udWkudG9wLmF0dGFjaGVkLnNlZ21lbnQgPiAudWkuYm90dG9tLnJpZ2h0LmF0dGFjaGVkLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi8qIFBhZGRpbmcgb24gbmV4dCBjb250ZW50IGFmdGVyIGEgbGFiZWwgKi9cblxuLnVpLnRvcC5hdHRhY2hlZC5sYWJlbDpmaXJzdC1jaGlsZCArIDpub3QoLmF0dGFjaGVkKSxcbi51aS50b3AuYXR0YWNoZWQubGFiZWwgKyBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSArICoge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ib3R0b20uYXR0YWNoZWQubGFiZWw6Zmlyc3QtY2hpbGQgfiA6bGFzdC1jaGlsZDpub3QoLmF0dGFjaGVkKSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW1hZ2UubGFiZWwge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgbWF4LXdpZHRoOiA5OTk5cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNFOEU4RTg7XG4gIHBhZGRpbmc6IDAuNTgzM2VtIDAuODMzZW0gMC41ODMzZW0gMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmltYWdlLmxhYmVsIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgaGVpZ2h0OiAyLjE2NjZlbTtcbiAgbWFyZ2luOiAtMC41ODMzZW0gMC41ZW0gLTAuNTgzM2VtIC0wLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5pbWFnZS5sYWJlbCAuZGV0YWlsIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBtYXJnaW46IC0wLjU4MzNlbSAtMC44MzNlbSAtMC41ODMzZW0gMC41ZW07XG4gIHBhZGRpbmc6IDAuNTgzM2VtIDAuODMzZW07XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIFRhZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFnLmxhYmVscyAubGFiZWwsXG4udWkudGFnLmxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnVpLnRhZy5sYWJlbHMgLmxhYmVsOmJlZm9yZSxcbi51aS50YWcubGFiZWw6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTAwJTtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHdpZHRoOiAxLjU2ZW07XG4gIGhlaWdodDogMS41NmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi51aS50YWcubGFiZWxzIC5sYWJlbDphZnRlcixcbi51aS50YWcubGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogLTAuMjVlbTtcbiAgbWFyZ2luLXRvcDogLTAuMjVlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICB3aWR0aDogMC41ZW07XG4gIGhlaWdodDogMC41ZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAtMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm94LXNoYWRvdzogMCAtMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDb3JuZXIgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvcm5lci5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwZW07XG4gIHJpZ2h0OiAwZW07XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWNvbG9yOiAjRThFOEU4O1xuICB3aWR0aDogNGVtO1xuICBoZWlnaHQ6IDRlbTtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuXG4vKiBJY29uIExhYmVsICovXG5cbi51aS5jb3JuZXIubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4udWkuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICByaWdodDogMGVtO1xuICB0b3A6IDBlbTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwZW07XG4gIGhlaWdodDogMGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiAwZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA0ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuXG4udWkuY29ybmVyLmxhYmVsIC5pY29uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC42NDI4NTcxNGVtO1xuICBsZWZ0OiAwLjc4NTcxNDI5ZW07XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNGVtO1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyogTGVmdCBDb3JuZXIgKi9cblxuLnVpLmxlZnQuY29ybmVyLmxhYmVsLFxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDBlbTtcbn1cblxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgYm9yZGVyLXRvcDogNGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDRlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xufVxuXG4udWkubGVmdC5jb3JuZXIubGFiZWwgLmljb24ge1xuICBsZWZ0OiAtMC43ODU3MTQyOWVtO1xufVxuXG4vKiBTZWdtZW50ICovXG5cbi51aS5zZWdtZW50ID4gLnVpLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IC0xcHg7XG59XG5cbi51aS5zZWdtZW50ID4gLnVpLmxlZnQuY29ybmVyLmxhYmVsIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IC0xcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJpYmJvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmliYm9uLmxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDBlbTtcbiAgbWluLXdpZHRoOiAtd2Via2l0LW1heC1jb250ZW50O1xuICBtaW4td2lkdGg6IC1tb3otbWF4LWNvbnRlbnQ7XG4gIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi51aS5yaWJib24ubGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDBlbSAxLjJlbSAxLjJlbSAwZW07XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDBlbTtcbiAgaGVpZ2h0OiAwZW07XG59XG5cbi8qIFBvc2l0aW9uaW5nICovXG5cbi51aS5yaWJib24ubGFiZWwge1xuICBsZWZ0OiBjYWxjKC0xcmVtIC0gMS4yZW0pO1xuICBtYXJnaW4tcmlnaHQ6IC0xLjJlbTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDFyZW0gKyAxLjJlbSk7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMmVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogY2FsYygxMDAlICsgMXJlbSArIDEuMmVtKTtcbiAgcGFkZGluZy1sZWZ0OiAxLjJlbTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxcmVtICsgMS4yZW0pO1xufVxuXG4vKiBSaWdodCBSaWJib24gKi9cblxuLnVpW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMCU7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMS4yZW0gMS4yZW0gMGVtIDBlbTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLyogSW5zaWRlIFRhYmxlICovXG5cbi51aS5pbWFnZSA+IC5yaWJib24ubGFiZWwsXG4udWkuY2FyZCAuaW1hZ2UgPiAucmliYm9uLmxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFyZW07XG59XG5cbi51aS5jYXJkIC5pbWFnZSA+IC51aS5yaWJib24ubGFiZWwsXG4udWkuaW1hZ2UgPiAudWkucmliYm9uLmxhYmVsIHtcbiAgbGVmdDogY2FsYygtLTAuMDVyZW0gLSAxLjJlbSk7XG59XG5cbi51aS5jYXJkIC5pbWFnZSA+IC51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWwsXG4udWkuaW1hZ2UgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgbGVmdDogY2FsYygxMDAlICsgLTAuMDVyZW0gKyAxLjJlbSk7XG4gIHBhZGRpbmctbGVmdDogMC44MzNlbTtcbn1cblxuLyogSW5zaWRlIFRhYmxlICovXG5cbi51aS50YWJsZSB0ZCA+IC51aS5yaWJib24ubGFiZWwge1xuICBsZWZ0OiBjYWxjKC0wLjc4NTcxNDI5ZW0gLSAxLjJlbSk7XG59XG5cbi51aS50YWJsZSB0ZCA+IC51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWwge1xuICBsZWZ0OiBjYWxjKDEwMCUgKyAwLjc4NTcxNDI5ZW0gKyAxLjJlbSk7XG4gIHBhZGRpbmctbGVmdDogMC44MzNlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmxhYmVsLFxuLnVpLmF0dGFjaGVkLmxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwZW07XG4gIHRvcDogMGVtO1xuICBsZWZ0OiAwZW07XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjE0Mjg1NzFyZW0gMC4yMTQyODU3MXJlbSAwZW0gMGVtO1xufVxuXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjIxNDI4NTcxcmVtIDAuMjE0Mjg1NzFyZW07XG59XG5cbi51aVtjbGFzcyo9XCJ0b3AgbGVmdCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yMTQyODU3MXJlbSAwZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi51aVtjbGFzcyo9XCJ0b3AgcmlnaHQgYXR0YWNoZWRcIl0ubGFiZWwge1xuICB3aWR0aDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjE0Mjg1NzFyZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJib3R0b20gbGVmdCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3MTQyOXJlbSAwZW0gMC4yMTQyODU3MXJlbTtcbn1cblxuLnVpW2NsYXNzKj1cImJvdHRvbSByaWdodCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwZW07XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwZW07XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwLjIxNDI4NTcxcmVtIDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVsLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYS51aS5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7XG4gIGJvcmRlci1jb2xvcjogI0UwRTBFMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLmxhYmVscyBhLmxhYmVsOmhvdmVyOmJlZm9yZSxcbmEudWkubGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QwRDBEMDtcbiAgYm9yZGVyLWNvbG9yOiAjRDBEMEQwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLnVpLmFjdGl2ZS5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDBEMEQwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZSBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5hLnVpLmxhYmVscyAuYWN0aXZlLmxhYmVsOmhvdmVyLFxuYS51aS5hY3RpdmUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzhDOEM4O1xuICBib3JkZXItY29sb3I6ICNDOEM4Qzg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4udWkubGFiZWxzIGEuYWN0aXZlLmxhYmVsOkFjdGl2ZUhvdmVyOmJlZm9yZSxcbmEudWkuYWN0aXZlLmxhYmVsOkFjdGl2ZUhvdmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDOEM4Qzg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVscy52aXNpYmxlIC5sYWJlbCxcbi51aS5sYWJlbC52aXNpYmxlOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMuaGlkZGVuIC5sYWJlbCxcbi51aS5sYWJlbC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLSBSZWQgLS0tKi9cblxuLnVpLnJlZC5sYWJlbHMgLmxhYmVsLFxuLnVpLnJlZC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4MjggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjREIyODI4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLnJlZC5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5yZWQubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAxOTE5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2QwMTkxOSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLnJlZC5jb3JuZXIubGFiZWwsXG4udWkucmVkLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkucmVkLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2IyMWUxZSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMucmVkLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjREIyODI4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucmVkLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy5yZWQubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZDAxOTE5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2QwMTkxOSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBPcmFuZ2UgLS0tKi9cblxuLnVpLm9yYW5nZS5sYWJlbHMgLmxhYmVsLFxuLnVpLm9yYW5nZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjRjI3MTFDICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLm9yYW5nZS5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5vcmFuZ2UubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI2MjAyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2YyNjIwMiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLm9yYW5nZS5jb3JuZXIubGFiZWwsXG4udWkub3JhbmdlLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkub3JhbmdlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2NmNTkwYyAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMub3JhbmdlLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRjI3MTFDICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMub3JhbmdlLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy5vcmFuZ2UubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZjI2MjAyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2YyNjIwMiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBZZWxsb3cgLS0tKi9cblxuLnVpLnllbGxvdy5sYWJlbHMgLmxhYmVsLFxuLnVpLnllbGxvdy5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjRkJCRDA4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLnllbGxvdy5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS55ZWxsb3cubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFhZTAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2VhYWUwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLnllbGxvdy5jb3JuZXIubGFiZWwsXG4udWkueWVsbG93LmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkueWVsbG93LnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2NkOTkwMyAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMueWVsbG93LmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkJCRDA4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0ZCQkQwOCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMueWVsbG93LmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy55ZWxsb3cubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZWFhZTAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2VhYWUwMCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBPbGl2ZSAtLS0qL1xuXG4udWkub2xpdmUubGFiZWxzIC5sYWJlbCxcbi51aS5vbGl2ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjQjVDQzE4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLm9saXZlLmxhYmVscyAubGFiZWw6aG92ZXIsXG5hLnVpLm9saXZlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E3YmQwZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNhN2JkMGQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogQ29ybmVyICovXG5cbi51aS5vbGl2ZS5jb3JuZXIubGFiZWwsXG4udWkub2xpdmUuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLyogUmliYm9uICovXG5cbi51aS5vbGl2ZS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMxOThmMzUgIWltcG9ydGFudDtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLm9saXZlLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjQjVDQzE4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0I1Q0MxOCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMub2xpdmUubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLmJhc2ljLm9saXZlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogI2E3YmQwZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNhN2JkMGQgIWltcG9ydGFudDtcbn1cblxuLyotLS0gR3JlZW4gLS0tKi9cblxuLnVpLmdyZWVuLmxhYmVscyAubGFiZWwsXG4udWkuZ3JlZW4ubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5ncmVlbi5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5ncmVlbi5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMTZhYjM5ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIENvcm5lciAqL1xuXG4udWkuZ3JlZW4uY29ybmVyLmxhYmVsLFxuLnVpLmdyZWVuLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkuZ3JlZW4ucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTk4ZjM1ICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5ncmVlbi5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMyMUJBNDUgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmdyZWVuLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy5ncmVlbi5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxNmFiMzkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMTZhYjM5ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFRlYWwgLS0tKi9cblxuLnVpLnRlYWwubGFiZWxzIC5sYWJlbCxcbi51aS50ZWFsLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMwMEI1QUQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogTGluayAqL1xuXG4udWkudGVhbC5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS50ZWFsLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOWM5NSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMwMDljOTUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogQ29ybmVyICovXG5cbi51aS50ZWFsLmNvcm5lci5sYWJlbCxcbi51aS50ZWFsLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkudGVhbC5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMDgyN2MgIWltcG9ydGFudDtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnRlYWwubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMEI1QUQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMDBCNUFEICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy50ZWFsLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy50ZWFsLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwOWM5NSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMwMDljOTUgIWltcG9ydGFudDtcbn1cblxuLyotLS0gQmx1ZSAtLS0qL1xuXG4udWkuYmx1ZS5sYWJlbHMgLmxhYmVsLFxuLnVpLmJsdWUubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5ibHVlLmxhYmVscyAubGFiZWw6aG92ZXIsXG5hLnVpLmJsdWUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY3OGMyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzE2NzhjMiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLmJsdWUuY29ybmVyLmxhYmVsLFxuLnVpLmJsdWUuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLyogUmliYm9uICovXG5cbi51aS5ibHVlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzFhNjlhNCAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuYmx1ZS5sYWJlbCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMyMTg1RDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsdWUubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLmJhc2ljLmJsdWUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMTY3OGMyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzE2NzhjMiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBWaW9sZXQgLS0tKi9cblxuLnVpLnZpb2xldC5sYWJlbHMgLmxhYmVsLFxuLnVpLnZpb2xldC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1QzkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjNjQzNUM5ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLnZpb2xldC5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS52aW9sZXQubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgyOWJiICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzU4MjliYiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLnZpb2xldC5jb3JuZXIubGFiZWwsXG4udWkudmlvbGV0LmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkudmlvbGV0LnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzUwMmFhMSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMudmlvbGV0LmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNjQzNUM5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMudmlvbGV0LmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy52aW9sZXQubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTgyOWJiICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzU4MjliYiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBQdXJwbGUgLS0tKi9cblxuLnVpLnB1cnBsZS5sYWJlbHMgLmxhYmVsLFxuLnVpLnB1cnBsZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjQTMzM0M4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLnB1cnBsZS5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5wdXJwbGUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTYyN2JhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk2MjdiYSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLnB1cnBsZS5jb3JuZXIubGFiZWwsXG4udWkucHVycGxlLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJpYmJvbiAqL1xuXG4udWkucHVycGxlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzgyMjk5ZiAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMucHVycGxlLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjQTMzM0M4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5iYXNpYy5wdXJwbGUubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOTYyN2JhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk2MjdiYSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBQaW5rIC0tLSovXG5cbi51aS5waW5rLmxhYmVscyAubGFiZWwsXG4udWkucGluay5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTcgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLnBpbmsubGFiZWxzIC5sYWJlbDpob3ZlcixcbmEudWkucGluay5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjFhOGQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZTYxYThkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIENvcm5lciAqL1xuXG4udWkucGluay5jb3JuZXIubGFiZWwsXG4udWkucGluay5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKiBSaWJib24gKi9cblxuLnVpLnBpbmsucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzcxZjdlICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5waW5rLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0UwMzk5NyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucGluay5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkuYmFzaWMucGluay5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNlNjFhOGQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZTYxYThkICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEJyb3duIC0tLSovXG5cbi51aS5icm93bi5sYWJlbHMgLmxhYmVsLFxuLnVpLmJyb3duLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRiAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNBNTY3M0YgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogTGluayAqL1xuXG4udWkuYnJvd24ubGFiZWxzIC5sYWJlbDpob3ZlcixcbmEudWkuYnJvd24ubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc1YjMzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk3NWIzMyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLmJyb3duLmNvcm5lci5sYWJlbCxcbi51aS5icm93bi5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKiBSaWJib24gKi9cblxuLnVpLmJyb3duLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTAzMSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuYnJvd24ubGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNBNTY3M0YgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjQTU2NzNGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5icm93bi5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkuYmFzaWMuYnJvd24ubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOTc1YjMzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk3NWIzMyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBHcmV5IC0tLSovXG5cbi51aS5ncmV5LmxhYmVscyAubGFiZWwsXG4udWkuZ3JleS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzYgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjNzY3Njc2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLmdyZXkubGFiZWxzIC5sYWJlbDpob3ZlcixcbmEudWkuZ3JleS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MzgzODMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjODM4MzgzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIENvcm5lciAqL1xuXG4udWkuZ3JleS5jb3JuZXIubGFiZWwsXG4udWkuZ3JleS5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKiBSaWJib24gKi9cblxuLnVpLmdyZXkucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjODA1MDMxICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5ncmV5LmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNzY3Njc2ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NiAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JleS5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkuYmFzaWMuZ3JleS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICM4MzgzODMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjODM4MzgzICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEJsYWNrIC0tLSovXG5cbi51aS5ibGFjay5sYWJlbHMgLmxhYmVsLFxuLnVpLmJsYWNrLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMxQjFDMUQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogTGluayAqL1xuXG4udWkuYmxhY2subGFiZWxzIC5sYWJlbDpob3ZlcixcbmEudWkuYmxhY2subGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyOTJhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzI3MjkyYSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JuZXIgKi9cblxuLnVpLmJsYWNrLmNvcm5lci5sYWJlbCxcbi51aS5ibGFjay5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKiBSaWJib24gKi9cblxuLnVpLmJsYWNrLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTAzMSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuYmxhY2subGFiZWwge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxQjFDMUQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMUIxQzFEICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ibGFjay5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkuYmFzaWMuYmxhY2subGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjcyOTJhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzI3MjkyYSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLmxhYmVsIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBMaW5rICovXG5cbmEudWkuYmFzaWMubGFiZWw6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgY29sb3I6ICMxZTcwYmY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFBvaW50aW5nICovXG5cbi51aS5iYXNpYy5wb2ludGluZy5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbC5mbHVpZCxcbi51aS5mbHVpZC5sYWJlbHMgPiAubGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQubGFiZWxzIC5sYWJlbCxcbi51aS5pbnZlcnRlZC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEhvcml6b250YWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhvcml6b250YWwubGFiZWxzIC5sYWJlbCxcbi51aS5ob3Jpem9udGFsLmxhYmVsIHtcbiAgbWFyZ2luOiAwZW0gMC41ZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMC40ZW0gMC44MzNlbTtcbiAgbWluLXdpZHRoOiAzZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNpcmN1bGFyLmxhYmVscyAubGFiZWwsXG4udWkuY2lyY3VsYXIubGFiZWwge1xuICBtaW4td2lkdGg6IDJlbTtcbiAgbWluLWhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAwLjVlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLnVpLmVtcHR5LmNpcmN1bGFyLmxhYmVscyAubGFiZWwsXG4udWkuZW1wdHkuY2lyY3VsYXIubGFiZWwge1xuICBtaW4td2lkdGg6IDBlbTtcbiAgbWluLWhlaWdodDogMGVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMC41ZW07XG4gIGhlaWdodDogMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUG9pbnRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBvaW50aW5nLmxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWkuYXR0YWNoZWQucG9pbnRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi51aS5wb2ludGluZy5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IG5vbmU7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbn1cblxuLyogQXJyb3cgKi9cblxuLnVpLnBvaW50aW5nLmxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAwLjY2NjZlbTtcbiAgaGVpZ2h0OiAwLjY2NjZlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7XG59XG5cbi8qLS0tIEFib3ZlIC0tLSovXG5cbi51aS5wb2ludGluZy5sYWJlbCxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBhYm92ZVwiXS5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLnVpLnBvaW50aW5nLmxhYmVsOmJlZm9yZSxcbi51aVtjbGFzcyo9XCJwb2ludGluZyBhYm92ZVwiXS5sYWJlbDpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDFweCAwcHggMHB4IDFweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB0b3A6IDAlO1xuICBsZWZ0OiA1MCU7XG59XG5cbi8qLS0tIEJlbG93IC0tLSovXG5cbi51aVtjbGFzcyo9XCJib3R0b20gcG9pbnRpbmdcIl0ubGFiZWwsXG4udWlbY2xhc3MqPVwicG9pbnRpbmcgYmVsb3dcIl0ubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLnVpW2NsYXNzKj1cImJvdHRvbSBwb2ludGluZ1wiXS5sYWJlbDpiZWZvcmUsXG4udWlbY2xhc3MqPVwicG9pbnRpbmcgYmVsb3dcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAwcHggMXB4IDFweCAwcHg7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG59XG5cbi8qLS0tIExlZnQgLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgcG9pbnRpbmdcIl0ubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjY2NjZlbTtcbn1cblxuLnVpW2NsYXNzKj1cImxlZnQgcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAwcHggMHB4IDFweCAxcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDBlbTtcbn1cblxuLyotLS0gUmlnaHQgLS0tKi9cblxuLnVpW2NsYXNzKj1cInJpZ2h0IHBvaW50aW5nXCJdLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjY2NmVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDBweCAwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIHRvcDogNTAlO1xuICByaWdodDogMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cblxuLyogQmFzaWMgUG9pbnRpbmcgKi9cblxuLyotLS0gQWJvdmUgLS0tKi9cblxuLnVpLmJhc2ljLnBvaW50aW5nLmxhYmVsOmJlZm9yZSxcbi51aS5iYXNpY1tjbGFzcyo9XCJwb2ludGluZyBhYm92ZVwiXS5sYWJlbDpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4vKi0tLSBCZWxvdyAtLS0qL1xuXG4udWkuYmFzaWNbY2xhc3MqPVwiYm90dG9tIHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSxcbi51aS5iYXNpY1tjbGFzcyo9XCJwb2ludGluZyBiZWxvd1wiXS5sYWJlbDpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMXB4O1xufVxuXG4vKi0tLSBMZWZ0IC0tLSovXG5cbi51aS5iYXNpY1tjbGFzcyo9XCJsZWZ0IHBvaW50aW5nXCJdLmxhYmVsOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAtMXB4O1xufVxuXG4vKi0tLSBSaWdodCAtLS0qL1xuXG4udWkuYmFzaWNbY2xhc3MqPVwicmlnaHQgcG9pbnRpbmdcIl0ubGFiZWw6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAtMXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgRmxvYXRpbmcgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdG9wOiAtMWVtO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIC0xLjVlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkubGFiZWxzIC5sYWJlbCxcbi51aS5taW5pLmxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjY0Mjg1NzE0cmVtO1xufVxuXG4udWkudGlueS5sYWJlbHMgLmxhYmVsLFxuLnVpLnRpbnkubGFiZWwge1xuICBmb250LXNpemU6IDAuNzE0Mjg1NzFyZW07XG59XG5cbi51aS5zbWFsbC5sYWJlbHMgLmxhYmVsLFxuLnVpLnNtYWxsLmxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkubGFiZWxzIC5sYWJlbCxcbi51aS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cblxuLnVpLmxhcmdlLmxhYmVscyAubGFiZWwsXG4udWkubGFyZ2UubGFiZWwge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5iaWcubGFiZWxzIC5sYWJlbCxcbi51aS5iaWcubGFiZWwge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmxhYmVscyAubGFiZWwsXG4udWkuaHVnZS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUubGFiZWxzIC5sYWJlbCxcbi51aS5tYXNzaXZlLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBMaXN0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTGlzdFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxudWwudWkubGlzdCxcbm9sLnVpLmxpc3QsXG4udWkubGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICBwYWRkaW5nOiAwZW0gMGVtO1xufVxuXG51bC51aS5saXN0OmZpcnN0LWNoaWxkLFxub2wudWkubGlzdDpmaXJzdC1jaGlsZCxcbi51aS5saXN0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBwYWRkaW5nLXRvcDogMGVtO1xufVxuXG51bC51aS5saXN0Omxhc3QtY2hpbGQsXG5vbC51aS5saXN0Omxhc3QtY2hpbGQsXG4udWkubGlzdDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogTGlzdCBJdGVtICovXG5cbnVsLnVpLmxpc3QgbGksXG5vbC51aS5saXN0IGxpLFxuLnVpLmxpc3QgPiAuaXRlbSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZzogMC4yMTQyODU3MWVtIDBlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTRlbTtcbn1cblxudWwudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxub2wudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxuLnVpLmxpc3QgPiAubGlzdCA+IC5pdGVtLFxuLnVpLmxpc3QgPiAuaXRlbTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG51bC51aS5saXN0IGxpOmZpcnN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpmaXJzdC1jaGlsZCxcbi51aS5saXN0IC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxudWwudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDBlbTtcbn1cblxuLyogQ2hpbGQgTGlzdCAqL1xuXG51bC51aS5saXN0IHVsLFxub2wudWkubGlzdCBvbCxcbi51aS5saXN0IC5saXN0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwLjc1ZW0gMGVtIDAuMjVlbSAwLjVlbTtcbn1cblxuLyogQ2hpbGQgSXRlbSAqL1xuXG51bC51aS5saXN0IHVsIGxpLFxub2wudWkubGlzdCBvbCBsaSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nOiAwLjE0Mjg1NzE0ZW0gMGVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uLFxuLnVpLmxpc3QgPiAuaXRlbSA+IGkuaWNvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nLXRvcDogMGVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI4NTcxNDI5ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpLmljb246b25seS1jaGlsZCxcbi51aS5saXN0ID4gLml0ZW0gPiBpLmljb246b25seS1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogSW1hZ2UgKi9cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5saXN0ID4gLml0ZW0gPiAuaW1hZ2Uge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAwZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2U6bm90KDpvbmx5LWNoaWxkKTpub3QoaW1nKSxcbi51aS5saXN0ID4gLml0ZW0gPiAuaW1hZ2U6bm90KDpvbmx5LWNoaWxkKTpub3QoaW1nKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlIGltZyxcbi51aS5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGltZy5pbWFnZSxcbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2U6b25seS1jaGlsZCxcbi51aS5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UsXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qIENvbnRlbnQgKi9cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50LFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pY29uICsgLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAwLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGltZy5pbWFnZSArIC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IGltZy5pbWFnZSArIC5jb250ZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50ID4gLmxpc3QsXG4udWkubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQgPiAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIHBhZGRpbmctbGVmdDogMGVtO1xufVxuXG4vKiBIZWFkZXIgKi9cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSAuaGVhZGVyLFxuLnVpLmxpc3QgPiAuaXRlbSAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIERlc2NyaXB0aW9uICovXG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uLFxuLnVpLmxpc3QgPiAuaXRlbSAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cblxuLyogQ2hpbGQgTGluayAqL1xuXG4udWkubGlzdCA+IC5pdGVtIGEsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIExpbmtpbmcgSXRlbSAqL1xuXG4udWkubGlzdCAubGlzdCA+IGEuaXRlbSxcbi51aS5saXN0ID4gYS5pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzQxODNDNDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW06aG92ZXIsXG4udWkubGlzdCA+IGEuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKiBMaW5rZWQgSXRlbSBJY29ucyAqL1xuXG4udWkubGlzdCAubGlzdCA+IGEuaXRlbSBpLmljb24sXG4udWkubGlzdCA+IGEuaXRlbSBpLmljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4vKiBIZWFkZXIgTGluayAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIGEuaGVhZGVyLFxuLnVpLmxpc3QgPiAuaXRlbSBhLmhlYWRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICM0MTgzQzQgIWltcG9ydGFudDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBhLmhlYWRlcjpob3Zlcixcbi51aS5saXN0ID4gLml0ZW0gYS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzFlNzBiZiAhaW1wb3J0YW50O1xufVxuXG4vKiBGbG9hdGVkIENvbnRlbnQgKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5saXN0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmxpc3Qge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSxcbi51aS5saXN0ID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDBlbSAxZW0gMGVtIDBlbTtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSxcbi51aS5saXN0ID4gLml0ZW0gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW0sXG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBwYWRkaW5nOiAwLjIxNDI4NTcxZW0gMGVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNGVtO1xufVxuXG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLm1lbnUgLnVpLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwZW07XG59XG5cbi51aS5tZW51IC51aS5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLmxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmhvcml6b250YWwubGlzdDpub3QoLmNlbGxlZCkgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmhvcml6b250YWwubGlzdCAubGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UsXG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0gPiAuaW1hZ2UsXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaWNvbixcbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pY29uLFxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmNvbnRlbnQsXG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0gPiAuY29udGVudCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIFBhZGRpbmcgb24gYWxsIGVsZW1lbnRzICovXG5cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDAuMjE0Mjg1NzFlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjE0Mjg1NzFlbTtcbn1cblxuLyogSG9yaXpvbnRhbCBMaXN0ICovXG5cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IGkuaWNvbiB7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW0gMC4yNWVtIDBlbSAwZW07XG59XG5cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pY29uLFxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGlzdCAubGlzdCA+IC5kaXNhYmxlZC5pdGVtLFxuLnVpLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLmRpc2FibGVkLml0ZW0sXG4udWkuaW52ZXJ0ZWQubGlzdCA+IC5kaXNhYmxlZC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW06aG92ZXIgLmljb24sXG4udWkubGlzdCA+IGEuaXRlbTpob3ZlciAuaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IGEuaXRlbSA+IC5pY29uLFxuLnVpLmludmVydGVkLmxpc3QgPiBhLml0ZW0gPiAuaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uLFxuLnVpLmludmVydGVkLmxpc3QgPiAuaXRlbSAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4vKiBJdGVtIExpbmsgKi9cblxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiBhLml0ZW0sXG4udWkuaW52ZXJ0ZWQubGlzdCA+IGEuaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLmludmVydGVkLmxpc3QgLmxpc3QgPiBhLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubGlzdCA+IGEuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKiBMaW5raW5nIENvbnRlbnQgKi9cblxuLnVpLmludmVydGVkLmxpc3QgLml0ZW0gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmxpc3QgLml0ZW0gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpc3RbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0gLmltYWdlLFxuLnVpLmxpc3RbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0gLmNvbnRlbnQsXG4udWkubGlzdCBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XG59XG5cbi51aS5saXN0W2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIC5pbWFnZSxcbi51aS5saXN0W2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIC5jb250ZW50LFxuLnVpLmxpc3QgW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4udWkubGlzdFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSAuaW1hZ2UsXG4udWkubGlzdFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSAuY29udGVudCxcbi51aS5saXN0IFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5saXN0IC5pdGVtLFxuLnVpLmxpbmsubGlzdCBhLml0ZW0sXG4udWkubGluay5saXN0IC5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMXMgY29sb3IgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4xcyBjb2xvciBlYXNlO1xufVxuXG4udWkubGluay5saXN0Lmxpc3QgYS5pdGVtOmhvdmVyLFxuLnVpLmxpbmsubGlzdC5saXN0IC5pdGVtIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkubGluay5saXN0Lmxpc3QgYS5pdGVtOmFjdGl2ZSxcbi51aS5saW5rLmxpc3QubGlzdCAuaXRlbSBhOm5vdCgudWkpOmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi51aS5saW5rLmxpc3QubGlzdCAuYWN0aXZlLml0ZW0sXG4udWkubGluay5saXN0Lmxpc3QgLmFjdGl2ZS5pdGVtIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLmxpbmsubGlzdCAuaXRlbSxcbi51aS5pbnZlcnRlZC5saW5rLmxpc3QgYS5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdCAuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IGEuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCAuaXRlbSBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLml0ZW06YWN0aXZlLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5pdGVtIGE6bm90KC51aSk6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QubGlzdCBhLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdC5saXN0IC5hY3RpdmUuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2VsZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjVlbSAwLjVlbTtcbiAgbWFyZ2luOiAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMXMgY29sb3IgZWFzZSwgMC4xcyBwYWRkaW5nLWxlZnQgZWFzZSwgMC4xcyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2U7XG4gIHRyYW5zaXRpb246IDAuMXMgY29sb3IgZWFzZSwgMC4xcyBwYWRkaW5nLWxlZnQgZWFzZSwgMC4xcyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2U7XG59XG5cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkuc2VsZWN0aW9uLmxpc3QubGlzdCA+IC5pdGVtOmhvdmVyLFxuLnVpLnNlbGVjdGlvbi5saXN0ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbTphY3RpdmUsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4udWkuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbS5hY3RpdmUsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0sXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbS5hY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyogQ2VsbGVkIC8gRGl2aWRlZCBTZWxlY3Rpb24gTGlzdCAqL1xuXG4udWkuY2VsbGVkLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuZGl2aWRlZC5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmNlbGxlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQW5pbWF0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFuaW1hdGVkLmxpc3QgPiAuaXRlbSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4yNXMgY29sb3IgZWFzZSAwLjFzLCAwLjI1cyBwYWRkaW5nLWxlZnQgZWFzZSAwLjFzLCAwLjI1cyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UgMC4xcztcbiAgdHJhbnNpdGlvbjogMC4yNXMgY29sb3IgZWFzZSAwLjFzLCAwLjI1cyBwYWRkaW5nLWxlZnQgZWFzZSAwLjFzLCAwLjI1cyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UgMC4xcztcbn1cblxuLnVpLmFuaW1hdGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSA+IC5pdGVtOmhvdmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLmxpc3Q6bm90KC5zZWxlY3Rpb24pIC5saXN0ID4gLml0ZW0sXG4udWkuZml0dGVkLmxpc3Q6bm90KC5zZWxlY3Rpb24pID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDBlbTtcbiAgcGFkZGluZy1yaWdodDogMGVtO1xufVxuXG4udWkuZml0dGVkLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuZml0dGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCdWxsZXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG51bC51aS5saXN0LFxuLnVpLmJ1bGxldGVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxudWwudWkubGlzdCBsaSxcbi51aS5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuYnVsbGV0ZWQubGlzdCA+IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG51bC51aS5saXN0IGxpOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgY29udGVudDogJ+KAoic7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG51bC51aS5saXN0IGxpOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0IC5saXN0ID4gYS5pdGVtOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0ID4gYS5pdGVtOmJlZm9yZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG51bC51aS5saXN0IHVsLFxuLnVpLmJ1bGxldGVkLmxpc3QgLmxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG5cbi8qIEhvcml6b250YWwgQnVsbGV0ZWQgKi9cblxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0LFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbnVsLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCBsaSxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjc1cmVtO1xufVxuXG51bC51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgbGk6Zmlyc3QtY2hpbGQsXG4udWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG51bC51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgbGk6OmJlZm9yZSxcbi51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTo6YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbnVsLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCBsaTpmaXJzdC1jaGlsZDo6YmVmb3JlLFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBPcmRlcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbm9sLnVpLmxpc3QsXG4udWkub3JkZXJlZC5saXN0LFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCxcbm9sLnVpLmxpc3Qgb2wge1xuICBjb3VudGVyLXJlc2V0OiBvcmRlcmVkO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5vbC51aS5saXN0IGxpLFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLm9yZGVyZWQubGlzdCA+IC5pdGVtIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbm9sLnVpLmxpc3QgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyZWQ7XG4gIGNvbnRlbnQ6IGNvdW50ZXJzKG9yZGVyZWQsIFwiLlwiKSBcIiBcIjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbm9sLnVpLmludmVydGVkLmxpc3QgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmludmVydGVkLmxpc3QgPiAuaXRlbTpiZWZvcmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4vKiBWYWx1ZSAqL1xuXG4udWkub3JkZXJlZC5saXN0ID4gLmxpc3QgPiAuaXRlbVtkYXRhLXZhbHVlXSxcbi51aS5vcmRlcmVkLmxpc3QgPiAuaXRlbVtkYXRhLXZhbHVlXSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZSk7XG59XG5cbm9sLnVpLmxpc3QgbGlbdmFsdWVdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIodmFsdWUpO1xufVxuXG4vKiBDaGlsZCBMaXN0cyAqL1xuXG5vbC51aS5saXN0IG9sLFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG5cbm9sLnVpLmxpc3Qgb2wgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMmVtO1xufVxuXG4vKiBIb3Jpem9udGFsIE9yZGVyZWQgKi9cblxub2wudWkuaG9yaXpvbnRhbC5saXN0LFxuLnVpLm9yZGVyZWQuaG9yaXpvbnRhbC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxub2wudWkuaG9yaXpvbnRhbC5saXN0IGxpOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5vcmRlcmVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZWQubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5kaXZpZGVkLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi51aS5kaXZpZGVkLmxpc3QgLml0ZW0gLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi51aS5kaXZpZGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5kaXZpZGVkLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFN1YiBNZW51ICovXG5cbi51aS5kaXZpZGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xufVxuXG4vKiBEaXZpZGVkIGJ1bGxldGVkICovXG5cbi51aS5kaXZpZGVkLmJ1bGxldGVkLmxpc3Q6bm90KC5ob3Jpem9udGFsKSxcbi51aS5kaXZpZGVkLmJ1bGxldGVkLmxpc3QgLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBwYWRkaW5nLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmRpdmlkZWQuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOm5vdCguaG9yaXpvbnRhbCkge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG5cbi8qIERpdmlkZWQgT3JkZXJlZCAqL1xuXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLm9yZGVyZWQubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xufVxuXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3QgLml0ZW0gLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjE0Mjg1NzFlbTtcbn1cblxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5pdGVtIC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLyogRGl2aWRlZCBTZWxlY3Rpb24gKi9cblxuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4vKiBEaXZpZGVkIGhvcml6b250YWwgKi9cblxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xufVxuXG4udWkuZGl2aWRlZC5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG5cbi51aS5kaXZpZGVkLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBtYXJnaW46IDBlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNjtcbn1cblxuLnVpLmhvcml6b250YWwuZGl2aWRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQubGlzdCA+IC5saXN0LFxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENlbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQubGlzdCA+IC5saXN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIFBhZGRpbmcgb24gYWxsIGVsZW1lbnRzICovXG5cbi51aS5jZWxsZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwLjIxNDI4NTcxZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjIxNDI4NTcxZW07XG59XG5cbi8qIFN1YiBNZW51ICovXG5cbi51aS5jZWxsZWQubGlzdCAuaXRlbSAubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXdpZHRoOiAwcHg7XG59XG5cbi51aS5jZWxsZWQubGlzdCAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMHB4O1xufVxuXG4vKiBDZWxsZWQgQnVsbGV0ZWQgKi9cblxuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmJ1bGxldGVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0IC5pdGVtIC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MWVtO1xufVxuXG4vKiBDZWxsZWQgT3JkZXJlZCAqL1xuXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xufVxuXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCAuaXRlbSAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIG1hcmdpbi1yaWdodDogMGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyODU3MWVtO1xufVxuXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCAubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG5cbi8qIENlbGxlZCBIb3Jpem9udGFsICovXG5cbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5ob3Jpem9udGFsLmNlbGxlZC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNjtcbn1cblxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkLFxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmNlbGxlZC5pbnZlcnRlZC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLmludmVydGVkLmxpc3QgPiAubGlzdCB7XG4gIGJvcmRlci1jb2xvcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLnVpLmNlbGxlZC5pbnZlcnRlZC5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuaW52ZXJ0ZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItY29sb3I6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJlbGF4ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJlbGF4ZWQubGlzdDpub3QoLmhvcml6b250YWwpID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICBwYWRkaW5nLXRvcDogMC40Mjg1NzE0M2VtO1xufVxuXG4udWkucmVsYXhlZC5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNDI4NTcxNDNlbTtcbn1cblxuLnVpLmhvcml6b250YWwucmVsYXhlZC5saXN0IC5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCksXG4udWkuaG9yaXpvbnRhbC5yZWxheGVkLmxpc3QgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cblxuLnVpLmhvcml6b250YWwucmVsYXhlZC5saXN0IC5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSxcbi51aS5ob3Jpem9udGFsLnJlbGF4ZWQubGlzdCA+IC5pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4vKiBWZXJ5IFJlbGF4ZWQgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIHBhZGRpbmctdG9wOiAwLjg1NzE0Mjg2ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdDpub3QoLmhvcml6b250YWwpID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjg1NzE0Mjg2ZW07XG59XG5cbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0IC5saXN0ID4gLml0ZW06bm90KDpmaXJzdC1jaGlsZCksXG4udWkuaG9yaXpvbnRhbFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCA+IC5pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG59XG5cbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0IC5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSxcbi51aS5ob3Jpem9udGFsW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0ID4gLml0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5saXN0IHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5ZW07XG59XG5cbi51aS50aW55Lmxpc3Qge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnNtYWxsLmxpc3Qge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cblxuLnVpLmxpc3Qge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLmxpc3Qge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmJpZy5saXN0IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG5cbi51aS5odWdlLmxpc3Qge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNlbTtcbn1cblxuLnVpLm1hc3NpdmUubGlzdCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuXG4udWkubWluaS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5taW5pLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS50aW55Lmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmxhcmdlLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmJpZy5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaHVnZS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkubWFzc2l2ZS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIExvYWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExvYWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU3RhbmRhcmQgU2l6ZSAqL1xuXG4udWkubG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLyogU3RhdGljIFNoYXBlICovXG5cbi51aS5sb2FkZXI6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlcjogMC4yZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKiBBY3RpdmUgU2hhcGUgKi9cblxuLnVpLmxvYWRlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGxvYWRlciAwLjZzIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbn1cblxuLyogQWN0aXZlIEFuaW1hdGlvbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbG9hZGVyIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxvYWRlciB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyogU2l6ZXMgKi9cblxuLnVpLm1pbmkubG9hZGVyOmJlZm9yZSxcbi51aS5taW5pLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuNXJlbTtcbn1cblxuLnVpLnRpbnkubG9hZGVyOmJlZm9yZSxcbi51aS50aW55LmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAxLjE0Mjg1NzE0cmVtO1xuICBoZWlnaHQ6IDEuMTQyODU3MTRyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuNTcxNDI4NTdyZW07XG59XG5cbi51aS5zbWFsbC5sb2FkZXI6YmVmb3JlLFxuLnVpLnNtYWxsLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAxLjcxNDI4NTcxcmVtO1xuICBoZWlnaHQ6IDEuNzE0Mjg1NzFyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuODU3MTQyODZyZW07XG59XG5cbi51aS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAyLjI4NTcxNDI5cmVtO1xuICBoZWlnaHQ6IDIuMjg1NzE0MjlyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTEuMTQyODU3MTRyZW07XG59XG5cbi51aS5sYXJnZS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxhcmdlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAzLjQyODU3MTQzcmVtO1xuICBoZWlnaHQ6IDMuNDI4NTcxNDNyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTEuNzE0Mjg1NzFyZW07XG59XG5cbi51aS5iaWcubG9hZGVyOmJlZm9yZSxcbi51aS5iaWcubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IDMuNzE0Mjg1NzFyZW07XG4gIGhlaWdodDogMy43MTQyODU3MXJlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMS44NTcxNDI4NnJlbTtcbn1cblxuLnVpLmh1Z2UubG9hZGVyOmJlZm9yZSxcbi51aS5odWdlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiA0LjE0Mjg1NzE0cmVtO1xuICBoZWlnaHQ6IDQuMTQyODU3MTRyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTIuMDcxNDI4NTdyZW07XG59XG5cbi51aS5tYXNzaXZlLmxvYWRlcjpiZWZvcmUsXG4udWkubWFzc2l2ZS5sb2FkZXI6YWZ0ZXIge1xuICB3aWR0aDogNC41NzE0Mjg1N3JlbTtcbiAgaGVpZ2h0OiA0LjU3MTQyODU3cmVtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIC0yLjI4NTcxNDI5cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNob3cgaW5zaWRlIGFjdGl2ZSBkaW1tZXIgKi9cblxuLnVpLmRpbW1lciAubG9hZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIEJsYWNrIERpbW1lciAqL1xuXG4udWkuZGltbWVyIC51aS5sb2FkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4udWkuZGltbWVyIC51aS5sb2FkZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG4udWkuZGltbWVyIC51aS5sb2FkZXI6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFdoaXRlIERpbW1lciAoSW52ZXJ0ZWQpICovXG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS5sb2FkZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlcjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRleHQubG9hZGVyIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW5kZXRlcm1pbmF0ZS5sb2FkZXI6YWZ0ZXIge1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS4ycztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjJzO1xufVxuXG4udWkubG9hZGVyLmFjdGl2ZSxcbi51aS5sb2FkZXIudmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkubG9hZGVyLmRpc2FibGVkLFxuLnVpLmxvYWRlci5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIExvYWRlciAqL1xuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS5taW5pLmxvYWRlcixcbi51aS5taW5pLmxvYWRlciB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS50aW55LmxvYWRlcixcbi51aS50aW55LmxvYWRlciB7XG4gIHdpZHRoOiAxLjE0Mjg1NzE0cmVtO1xuICBoZWlnaHQ6IDEuMTQyODU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NmVtO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS5zbWFsbC5sb2FkZXIsXG4udWkuc21hbGwubG9hZGVyIHtcbiAgd2lkdGg6IDEuNzE0Mjg1NzFyZW07XG4gIGhlaWdodDogMS43MTQyODU3MXJlbTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlcixcbi51aS5sb2FkZXIge1xuICB3aWR0aDogMi4yODU3MTQyOXJlbTtcbiAgaGVpZ2h0OiAyLjI4NTcxNDI5cmVtO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmludmVydGVkLmRpbW1lciAudWkubGFyZ2UubG9hZGVyLFxuLnVpLmxhcmdlLmxvYWRlciB7XG4gIHdpZHRoOiAzLjQyODU3MTQzcmVtO1xuICBoZWlnaHQ6IDMuNDI4NTcxNDNyZW07XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNGVtO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS5iaWcubG9hZGVyLFxuLnVpLmJpZy5sb2FkZXIge1xuICB3aWR0aDogMy43MTQyODU3MXJlbTtcbiAgaGVpZ2h0OiAzLjcxNDI4NTcxcmVtO1xuICBmb250LXNpemU6IDEuMjg1NzE0MjllbTtcbn1cblxuLnVpLmludmVydGVkLmRpbW1lciAudWkuaHVnZS5sb2FkZXIsXG4udWkuaHVnZS5sb2FkZXIge1xuICB3aWR0aDogNC4xNDI4NTcxNHJlbTtcbiAgaGVpZ2h0OiA0LjE0Mjg1NzE0cmVtO1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNlbTtcbn1cblxuLnVpLmludmVydGVkLmRpbW1lciAudWkubWFzc2l2ZS5sb2FkZXIsXG4udWkubWFzc2l2ZS5sb2FkZXIge1xuICB3aWR0aDogNC41NzE0Mjg1N3JlbTtcbiAgaGVpZ2h0OiA0LjU3MTQyODU3cmVtO1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFlbTtcbn1cblxuLyogVGV4dCBMb2FkZXIgKi9cblxuLnVpLm1pbmkudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogMS4xNDI4NTcxNHJlbTtcbiAgcGFkZGluZy10b3A6IDEuOTI4NTcxNDNyZW07XG59XG5cbi51aS5zbWFsbC50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogMS43MTQyODU3MXJlbTtcbiAgcGFkZGluZy10b3A6IDIuNXJlbTtcbn1cblxuLnVpLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAyLjI4NTcxNDI5cmVtO1xuICBwYWRkaW5nLXRvcDogMy4wNzE0Mjg1N3JlbTtcbn1cblxuLnVpLmxhcmdlLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAzLjQyODU3MTQzcmVtO1xuICBwYWRkaW5nLXRvcDogNC4yMTQyODU3MXJlbTtcbn1cblxuLnVpLmJpZy50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogMy43MTQyODU3MXJlbTtcbiAgcGFkZGluZy10b3A6IDQuNXJlbTtcbn1cblxuLnVpLmh1Z2UudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDQuMTQyODU3MTRyZW07XG4gIHBhZGRpbmctdG9wOiA0LjkyODU3MTQzcmVtO1xufVxuXG4udWkubWFzc2l2ZS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogNC41NzE0Mjg1N3JlbTtcbiAgcGFkZGluZy10b3A6IDUuMzU3MTQyODZyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5sb2FkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4udWkuaW52ZXJ0ZWQubG9hZGVyOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cblxuLnVpLmludmVydGVkLmxvYWRlcjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIElubGluZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5saW5lLmxvYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwZW07XG4gIGxlZnQ6IDBlbTtcbiAgdG9wOiAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi51aS5pbmxpbmUubG9hZGVyLmFjdGl2ZSxcbi51aS5pbmxpbmUubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qIENlbnRlcmVkIElubGluZSAqL1xuXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci5hY3RpdmUsXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci52aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIExvYWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBwbGFjZWhvbGRlclNoaW1tZXIgMnMgbGluZWFyO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyU2hpbW1lciAycyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuMDgpKSwgY29sb3Itc3RvcCgxNSUsIHJnYmEoMCwgMCwgMCwgMC4xNSkpLCBjb2xvci1zdG9wKDMwJSwgcmdiYSgwLCAwLCAwLCAwLjA4KSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuMDgpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDE1JSwgcmdiYSgwLCAwLCAwLCAwLjA4KSAzMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC4wOCkgMCUsIHJnYmEoMCwgMCwgMCwgMC4xNSkgMTUlLCByZ2JhKDAsIDAsIDAsIDAuMDgpIDMwJSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTIwMHB4IDEwMCU7XG4gIG1heC13aWR0aDogMzByZW07XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBwbGFjZWhvbGRlclNoaW1tZXIge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMDBweCAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTIwMHB4IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlclNoaW1tZXIge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMDBweCAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTIwMHB4IDA7XG4gIH1cbn1cblxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyICsgLnVpLnBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMTVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMTVzO1xufVxuXG4udWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuXG4udWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIgKyAudWkucGxhY2Vob2xkZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40NXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40NXM7XG59XG5cbi51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciArIC51aS5wbGFjZWhvbGRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi51aS5wbGFjZWhvbGRlcixcbi51aS5wbGFjZWhvbGRlciA+IDpiZWZvcmUsXG4udWkucGxhY2Vob2xkZXIgLmltYWdlLmhlYWRlcjphZnRlcixcbi51aS5wbGFjZWhvbGRlciAubGluZSxcbi51aS5wbGFjZWhvbGRlciAubGluZTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIEltYWdlICovXG5cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2U6bm90KC5oZWFkZXIpOm5vdCgudWkpIHtcbiAgaGVpZ2h0OiAxMDBweDtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5zcXVhcmUuaW1hZ2U6bm90KC5oZWFkZXIpIHtcbiAgaGVpZ2h0OiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDEvMSBhc3BlY3QgcmF0aW8gKi9cbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG5cbi51aS5wbGFjZWhvbGRlciAucmVjdGFuZ3VsYXIuaW1hZ2U6bm90KC5oZWFkZXIpIHtcbiAgaGVpZ2h0OiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDQvMyBhc3BlY3QgcmF0aW8gKi9cbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cblxuLyogTGluZXMgKi9cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAubGluZTphZnRlciB7XG4gIHRvcDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmJlZm9yZSB7XG4gIGxlZnQ6IDBweDtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgcmlnaHQ6IDBweDtcbn1cblxuLyogQW55IExpbmVzICovXG5cbi51aS5wbGFjZWhvbGRlciAubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6YmVmb3JlLFxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgaGVpZ2h0OiAwLjVlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbi8qIEhlYWRlciBJbWFnZSArIDIgTGluZXMgKi9cblxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIExpbmUgT3V0ZGVudCAqL1xuXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDEpOmFmdGVyIHtcbiAgd2lkdGg6IDAlO1xufVxuXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDIpOmFmdGVyIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5saW5lOm50aC1jaGlsZCgzKTphZnRlciB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi51aS5wbGFjZWhvbGRlciAubGluZTpudGgtY2hpbGQoNCk6YWZ0ZXIge1xuICB3aWR0aDogMzUlO1xufVxuXG4udWkucGxhY2Vob2xkZXIgLmxpbmU6bnRoLWNoaWxkKDUpOmFmdGVyIHtcbiAgd2lkdGg6IDY1JTtcbn1cblxuLyogSGVhZGVyIExpbmUgMSAmIDIqL1xuXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjQyODU3MTRlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6YmVmb3JlLFxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6YWZ0ZXIge1xuICBoZWlnaHQ6IDAuNjQyODU3MTRlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAwLjY0Mjg1NzE0ZW07XG59XG5cbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyIC5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5oZWFkZXIgLmxpbmU6bnRoLWNoaWxkKDIpOmFmdGVyIHtcbiAgd2lkdGg6IDYwJTtcbn1cblxuLyogSW1hZ2UgSGVhZGVyICovXG5cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyIC5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IDNlbTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5pbWFnZS5oZWFkZXIgLmxpbmU6YmVmb3JlIHtcbiAgd2lkdGg6IDAuNzE0Mjg1NzFyZW07XG59XG5cbi51aS5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC44NTcxNDI4NmVtO1xuICBjb250ZW50OiAnJztcbiAgbWFyZ2luLWxlZnQ6IDNlbTtcbn1cblxuLyogU3BhY2luZyAqL1xuXG4udWkucGxhY2Vob2xkZXIgLmltYWdlIC5saW5lOmZpcnN0LWNoaWxkLFxuLnVpLnBsYWNlaG9sZGVyIC5wYXJhZ3JhcGggLmxpbmU6Zmlyc3QtY2hpbGQsXG4udWkucGxhY2Vob2xkZXIgLmhlYWRlciAubGluZTpmaXJzdC1jaGlsZCB7XG4gIGhlaWdodDogMC4wMXB4O1xufVxuXG4udWkucGxhY2Vob2xkZXIgLmltYWdlOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAucGFyYWdyYXBoOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSxcbi51aS5wbGFjZWhvbGRlciAuaGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSB7XG4gIGhlaWdodDogMS40Mjg1NzE0M2VtO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIEludmVydGVkIENvbnRlbnQgTG9hZGVyICovXG5cbi51aS5pbnZlcnRlZC5wbGFjZWhvbGRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkpLCBjb2xvci1zdG9wKDE1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE0KSksIGNvbG9yLXN0b3AoMzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCkgMTUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpIDMwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE0KSAxNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkgMzAlKTtcbn1cblxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyID4gOmJlZm9yZSxcbi51aS5pbnZlcnRlZC5wbGFjZWhvbGRlciAuaW1hZ2UuaGVhZGVyOmFmdGVyLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIC5saW5lLFxuLnVpLmludmVydGVkLnBsYWNlaG9sZGVyIC5saW5lOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGxhY2Vob2xkZXIgLmZ1bGwubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogMCU7XG59XG5cbi51aS5wbGFjZWhvbGRlciAudmVyeS5sb25nLmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5sb25nLmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDM1JTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC5tZWRpdW0ubGluZS5saW5lLmxpbmU6YWZ0ZXIge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWkucGxhY2Vob2xkZXIgLnNob3J0LmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDY1JTtcbn1cblxuLnVpLnBsYWNlaG9sZGVyIC52ZXJ5LnNob3J0LmxpbmUubGluZS5saW5lOmFmdGVyIHtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5wbGFjZWhvbGRlciB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFJhaWxcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUmFpbHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5yYWlsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAlO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnVpLmxlZnQucmFpbCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwZW0gMnJlbSAwZW0gMGVtO1xuICBtYXJnaW46IDBlbSAycmVtIDBlbSAwZW07XG59XG5cbi51aS5yaWdodC5yYWlsIHtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDJyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMnJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnRlcm5hbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxlZnQuaW50ZXJuYWwucmFpbCB7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMnJlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAycmVtO1xufVxuXG4udWkucmlnaHQuaW50ZXJuYWwucmFpbCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwJTtcbiAgcGFkZGluZzogMGVtIDJyZW0gMGVtIDBlbTtcbiAgbWFyZ2luOiAwZW0gMnJlbSAwZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGl2aWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGluZy5yYWlsIHtcbiAgd2lkdGg6IDMwMi41cHg7XG59XG5cbi51aS5sZWZ0LmRpdmlkaW5nLnJhaWwge1xuICBwYWRkaW5nOiAwZW0gMi41cmVtIDBlbSAwZW07XG4gIG1hcmdpbjogMGVtIDIuNXJlbSAwZW0gMGVtO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkucmlnaHQuZGl2aWRpbmcucmFpbCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMi41cmVtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDIuNXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERpc3RhbmNlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2xvc2UucmFpbCB7XG4gIHdpZHRoOiBjYWxjKCAzMDBweCAgKyAgMWVtICk7XG59XG5cbi51aS5jbG9zZS5sZWZ0LnJhaWwge1xuICBwYWRkaW5nOiAwZW0gMWVtIDBlbSAwZW07XG4gIG1hcmdpbjogMGVtIDFlbSAwZW0gMGVtO1xufVxuXG4udWkuY2xvc2UucmlnaHQucmFpbCB7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDFlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS52ZXJ5LmNsb3NlLnJhaWwge1xuICB3aWR0aDogY2FsYyggMzAwcHggICsgIDAuNWVtICk7XG59XG5cbi51aS52ZXJ5LmNsb3NlLmxlZnQucmFpbCB7XG4gIHBhZGRpbmc6IDBlbSAwLjVlbSAwZW0gMGVtO1xuICBtYXJnaW46IDBlbSAwLjVlbSAwZW0gMGVtO1xufVxuXG4udWkudmVyeS5jbG9zZS5yaWdodC5yYWlsIHtcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMC41ZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmF0dGFjaGVkLmxlZnQucmFpbCxcbi51aS5hdHRhY2hlZC5yaWdodC5yYWlsIHtcbiAgcGFkZGluZzogMGVtO1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLnJhaWwge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG5cbi51aS50aW55LnJhaWwge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG5cbi51aS5zbWFsbC5yYWlsIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkucmFpbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLnJhaWwge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbi51aS5iaWcucmFpbCB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmh1Z2UucmFpbCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUucmFpbCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDIuNC4yIC0gUmV2ZWFsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUmV2ZWFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucmV2ZWFsIHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogMGVtICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAzICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwLjFzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDAuMXM7XG59XG5cbi51aS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgei1pbmRleDogMiAhaW1wb3J0YW50O1xufVxuXG4vKiBNYWtlIHN1cmUgaG92ZXJlZCBlbGVtZW50IGlzIG9uIHRvcCBvZiBvdGhlciByZXZlYWwgKi9cblxuLnVpLmFjdGl2ZS5yZXZlYWwgLnZpc2libGUuY29udGVudCxcbi51aS5yZXZlYWw6aG92ZXIgLnZpc2libGUuY29udGVudCB7XG4gIHotaW5kZXg6IDQgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNsaWRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2xpZGUucmV2ZWFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnVpLnNsaWRlLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC41cyBlYXNlIDAuMXM7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXMgZWFzZSAwLjFzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlIDAuMXM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2UgMC4xcywgLXdlYmtpdC10cmFuc2Zvcm0gMC41cyBlYXNlIDAuMXM7XG59XG5cbi51aS5zbGlkZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgbGVmdDogMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5zbGlkZS5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJpZ2h0LnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUucmlnaHQucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnNsaWRlLnJpZ2h0LnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJpZ2h0LmFjdGl2ZS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQsXG4udWkuc2xpZGUucmlnaHQucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnVwLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUudXAuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkuc2xpZGUudXAucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS51cC5hY3RpdmUucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50LFxuLnVpLnNsaWRlLnVwLnJldmVhbDpob3ZlciA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5kb3duLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5kb3duLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnNsaWRlLmRvd24ucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUuZG93bi5hY3RpdmUucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50LFxuLnVpLnNsaWRlLmRvd24ucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmFkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZhZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5mYWRlLmFjdGl2ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLmZhZGUucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1vdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tb3ZlLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS5tb3ZlLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBtYXJnaW46IDBlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpIDAuMXM7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xcywgLXdlYmtpdC10cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKSAwLjFzO1xufVxuXG4udWkubW92ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb3ZlLnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udWkubW92ZS5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5tb3ZlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkubW92ZS5yaWdodC5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5tb3ZlLnJpZ2h0LnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vdmUudXAuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkubW92ZS51cC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vdmUuZG93bi5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5tb3ZlLmRvd24ucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFJvdGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJvdGF0ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cblxuLnVpLnJvdGF0ZS5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50LFxuLnVpLnJvdGF0ZS5yaWdodC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbn1cblxuLnVpLnJvdGF0ZS5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmlnaHQuYWN0aXZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQsXG4udWkucm90YXRlLnJpZ2h0LnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDExMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDExMGRlZyk7XG59XG5cbi51aS5yb3RhdGUubGVmdC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG59XG5cbi51aS5yb3RhdGUubGVmdC5hY3RpdmUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUubGVmdC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTEwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTExMGRlZyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRpc2FibGVkLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kaXNhYmxlZC5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmhpZGRlbi5jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnJldmVhbCA+IC51aS5yaWJib24ubGFiZWwge1xuICB6LWluZGV4OiA1O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52aXNpYmxlLnJldmVhbCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEluc3RhbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnN0YW50LnJldmVhbCA+IC5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFNlZ21lbnRcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTZWdtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2VnbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAxcmVtIDBlbTtcbiAgcGFkZGluZzogMWVtIDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNlZ21lbnQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5zZWdtZW50Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qIFZlcnRpY2FsICovXG5cbi51aS52ZXJ0aWNhbC5zZWdtZW50IHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmctbGVmdDogMGVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwZW07XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkudmVydGljYWwuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTG9vc2UgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSGVhZGVyICovXG5cbi51aS5pbnZlcnRlZC5zZWdtZW50ID4gLnVpLmhlYWRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBMYWJlbCAqL1xuXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLnNlZ21lbnQgPiBbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMGVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMGVtO1xufVxuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnNlZ21lbnQgPiBbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMGVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuc2VnbWVudDpub3QoLnRvcCk6bm90KC5ib3R0b20pID4gW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApOm5vdCguYm90dG9tKSA+IFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubGFiZWwge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW07XG59XG5cbi8qIEdyaWQgKi9cblxuLnVpLnBhZ2UuZ3JpZC5zZWdtZW50LFxuLnVpLmdyaWQgPiAucm93ID4gLnVpLnNlZ21lbnQuY29sdW1uLFxuLnVpLmdyaWQgPiAudWkuc2VnbWVudC5jb2x1bW4ge1xuICBwYWRkaW5nLXRvcDogMmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMmVtO1xufVxuXG4udWkuZ3JpZC5zZWdtZW50IHtcbiAgbWFyZ2luOiAxcmVtIDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyogVGFibGUgKi9cblxuLnVpLmJhc2ljLnRhYmxlLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZS5zZWdtZW50IHtcbiAgcGFkZGluZzogMWVtIDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFBsYWNlaG9sZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7XG4gIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbm9uZTtcbiAgYW5pbWF0aW9uOiBub25lO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMWVtIDFlbTtcbiAgbWluLWhlaWdodDogMThyZW07XG4gIGJhY2tncm91bmQ6ICNGOUZBRkI7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDI1cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMDUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMnB4IDI1cHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMDUpIGluc2V0O1xufVxuXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuYnV0dG9uLFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgLmZpZWxkLFxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgdGV4dGFyZWEsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCA+IC51aS5pbnB1dCxcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IC5idXR0b24ge1xuICBtYXgtd2lkdGg6IDE1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uIC5idXR0b24sXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uIC5maWVsZCxcbi51aS5wbGFjZWhvbGRlci5zZWdtZW50IC5jb2x1bW4gdGV4dGFyZWEsXG4udWkucGxhY2Vob2xkZXIuc2VnbWVudCAuY29sdW1uID4gLnVpLmlucHV0IHtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnVpLnBsYWNlaG9sZGVyLnNlZ21lbnQgPiAuaW5saW5lIHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLmlubGluZSA+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDBweCAwLjM1NzE0Mjg2cmVtIDBweCAwcHg7XG59XG5cbi51aS5wbGFjZWhvbGRlci5zZWdtZW50ID4gLmlubGluZSA+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGlsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBpbGVkLnNlZ21lbnRzLFxuLnVpLnBpbGVkLnNlZ21lbnQge1xuICBtYXJnaW46IDNlbSAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJyc7XG4gIGJveC1zaGFkb3c6ICcnO1xuICB6LWluZGV4OiBhdXRvO1xufVxuXG4udWkucGlsZWQuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLnBpbGVkLnNlZ21lbnQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLnBpbGVkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnBpbGVkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5waWxlZC5zZWdtZW50OmFmdGVyLFxuLnVpLnBpbGVkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAnJztcbiAgYm94LXNoYWRvdzogJyc7XG59XG5cbi51aS5waWxlZC5zZWdtZW50czpiZWZvcmUsXG4udWkucGlsZWQuc2VnbWVudDpiZWZvcmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xLjJkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMS4yZGVnKTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMjtcbn1cblxuLnVpLnBpbGVkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnBpbGVkLnNlZ21lbnQ6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEuMmRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDEuMmRlZyk7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qIFBpbGVkIEF0dGFjaGVkICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0ucGlsZWQuc2VnbWVudCB7XG4gIG1hcmdpbi10b3A6IDNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5waWxlZC5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogM2VtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3RhY2tlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhY2tlZC5zZWdtZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNGVtO1xufVxuXG4udWkuc3RhY2tlZC5zZWdtZW50czpiZWZvcmUsXG4udWkuc3RhY2tlZC5zZWdtZW50czphZnRlcixcbi51aS5zdGFja2VkLnNlZ21lbnQ6YmVmb3JlLFxuLnVpLnN0YWNrZWQuc2VnbWVudDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTNweDtcbiAgbGVmdDogMCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2cHg7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi51aS5zdGFja2VkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQWRkIGFkZGl0aW9uYWwgcGFnZSAqL1xuXG4udWkudGFsbC5zdGFja2VkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS50YWxsLnN0YWNrZWQuc2VnbWVudDpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm90dG9tOiAwcHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnRzOmJlZm9yZSxcbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnRzOmFmdGVyLFxuLnVpLnN0YWNrZWQuaW52ZXJ0ZWQuc2VnbWVudDpiZWZvcmUsXG4udWkuc3RhY2tlZC5pbnZlcnRlZC5zZWdtZW50OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBhZGRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGFkZGVkLnNlZ21lbnQge1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnNlZ21lbnQge1xuICBwYWRkaW5nOiAzZW07XG59XG5cbi8qIFBhZGRlZCB2ZXJ0aWNhbCAqL1xuXG4udWkucGFkZGVkLnNlZ21lbnQudmVydGljYWwuc2VnbWVudCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS52ZXJ0aWNhbC5zZWdtZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC5zZWdtZW50IHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi8qIENvbXBhY3QgR3JvdXAgKi9cblxuLnVpLmNvbXBhY3Quc2VnbWVudHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi51aS5jb21wYWN0LnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLnNlZ21lbnRzIC5jb21wYWN0LnNlZ21lbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXg6IDAgMSBhdXRvO1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNpcmN1bGFyLnNlZ21lbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwYWRkaW5nOiAyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJhaXNlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmFpc2VkLnNlZ21lbnRzLFxuLnVpLnJhaXNlZC5zZWdtZW50IHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMHB4IDJweCAxMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMHB4IDJweCAxMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBHcm91cCAqL1xuXG4udWkuc2VnbWVudHMge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAxcmVtIDBlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnNlZ21lbnRzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuc2VnbWVudHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyogTmVzdGVkIFNlZ21lbnQgKi9cblxuLnVpLnNlZ21lbnRzID4gLnNlZ21lbnQge1xuICB0b3A6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgbWFyZ2luOiAwZW07XG4gIHdpZHRoOiBhdXRvO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5zZWdtZW50czpub3QoLmhvcml6b250YWwpID4gLnNlZ21lbnQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIGJvdHRvbTogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIHRvcDogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLyogQm90dG9tICovXG5cbi51aS5zZWdtZW50czpub3QoLmhvcml6b250YWwpID4gLnNlZ21lbnQ6bGFzdC1jaGlsZCB7XG4gIHRvcDogMHB4O1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCBub25lO1xuICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBPbmx5ICovXG5cbi51aS5zZWdtZW50czpub3QoLmhvcml6b250YWwpID4gLnNlZ21lbnQ6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi8qIE5lc3RlZCBHcm91cCAqL1xuXG4udWkuc2VnbWVudHMgPiAudWkuc2VnbWVudHMge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAxcmVtIDFyZW07XG59XG5cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50czpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50ICsgLnNlZ21lbnRzOm5vdCguaG9yaXpvbnRhbCkge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qIEhvcml6b250YWwgR3JvdXAgKi9cblxuLnVpLmhvcml6b250YWwuc2VnbWVudHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBwYWRkaW5nOiAwZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIG1hcmdpbjogMXJlbSAwZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIE5lc3RlZCBIb3Jpem9udGFsIEdyb3VwICovXG5cbi51aS5zZWdtZW50cyA+IC5ob3Jpem9udGFsLnNlZ21lbnRzIHtcbiAgbWFyZ2luOiAwZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLyogSG9yaXpvbnRhbCBTZWdtZW50ICovXG5cbi51aS5ob3Jpem9udGFsLnNlZ21lbnRzID4gLnNlZ21lbnQge1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgLW1zLWZsZXg6IDEgMSAwcHg7XG4gIC8qIFNvbHZlcyAjMjU1MCBNUyBGbGV4ICovXG4gIG1hcmdpbjogMGVtO1xuICBtaW4td2lkdGg6IDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLyogQm9yZGVyIEZpeGVzICovXG5cbi51aS5zZWdtZW50cyA+IC5ob3Jpem9udGFsLnNlZ21lbnRzOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLmhvcml6b250YWwuc2VnbWVudHMgPiAuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5zZWdtZW50IHtcbiAgb3BhY2l0eTogMC40NTtcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLnNlZ21lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG5cbi51aS5sb2FkaW5nLnNlZ21lbnQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4udWkubG9hZGluZy5zZWdtZW50OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMS41ZW0gMGVtIDBlbSAtMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGhlaWdodDogM2VtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2VnbWVudC1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IHNlZ21lbnQtc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjNzY3Njc2IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB6LWluZGV4OiAxMDE7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzZWdtZW50LXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2VnbWVudC1zcGluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENsZWFyaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jbGVhcmluZy5zZWdtZW50OmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBSZWQgKi9cblxuLnVpLnJlZC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNEQjI4MjggIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBPcmFuZ2UgKi9cblxuLnVpLm9yYW5nZS5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGMjcxMUMgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBZZWxsb3cgKi9cblxuLnVpLnllbGxvdy5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGQkJEMDggIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBPbGl2ZSAqL1xuXG4udWkub2xpdmUuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjQjVDQzE4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1Q0MxOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBHcmVlbiAqL1xuXG4udWkuZ3JlZW4uc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBUZWFsICovXG5cbi51aS50ZWFsLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzAwQjVBRCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCbHVlICovXG5cbi51aS5ibHVlLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzIxODVEMCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYmx1ZS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBWaW9sZXQgKi9cblxuLnVpLnZpb2xldC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM2NDM1QzkgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBQdXJwbGUgKi9cblxuLnVpLnB1cnBsZS5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNBMzMzQzggIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBQaW5rICovXG5cbi51aS5waW5rLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI0UwMzk5NyAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucGluay5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwMzk5NyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCcm93biAqL1xuXG4udWkuYnJvd24uc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjQTU2NzNGICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBHcmV5ICovXG5cbi51aS5ncmV5LnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzc2NzY3NiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JleS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCbGFjayAqL1xuXG4udWkuYmxhY2suc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMUIxQzFEICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0uc2VnbWVudCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLnNlZ21lbnQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLnNlZ21lbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsb2F0ZWQuc2VnbWVudCxcbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uc2VnbWVudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uc2VnbWVudCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCxcbi51aS5wcmltYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4vKiBOZXN0ZWQgKi9cblxuLnVpLmludmVydGVkLnNlZ21lbnQgLnNlZ21lbnQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLmludmVydGVkLnNlZ21lbnQgLmludmVydGVkLnNlZ21lbnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4vKiBBdHRhY2hlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuYXR0YWNoZWQuc2VnbWVudCB7XG4gIGJvcmRlci1jb2xvcjogIzU1NTU1NTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEVtcGhhc2lzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNlY29uZGFyeSAqL1xuXG4udWkuc2Vjb25kYXJ5LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjNGM0ZjUyIC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpKSwgdG8ocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpKSk7XG4gIGJhY2tncm91bmQ6ICM0YzRmNTIgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgMTAwJSk7XG4gIGJhY2tncm91bmQ6ICM0YzRmNTIgbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDEwMCUpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuXG4vKiBUZXJ0aWFyeSAqL1xuXG4udWkudGVydGlhcnkuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6ICNEQ0REREU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS50ZXJ0aWFyeS5pbnZlcnRlZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogIzcxNzU3OSAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSkpLCB0byhyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpKSk7XG4gIGJhY2tncm91bmQ6ICM3MTc1NzkgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSAxMDAlKTtcbiAgYmFja2dyb3VuZDogIzcxNzU3OSBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSAxMDAlKTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaWRkbGUgKi9cblxuLnVpLmF0dGFjaGVkLnNlZ21lbnQge1xuICB0b3A6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgbWFyZ2luOiAwZW0gLTFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICgtMXB4ICogMikpO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgtMXB4ICogMikpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG59XG5cbi51aS5hdHRhY2hlZDpub3QoLm1lc3NhZ2UpICsgLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogVG9wICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0uc2VnbWVudCB7XG4gIGJvdHRvbTogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIHRvcDogMHB4O1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLnNlZ21lbnRbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4vKiBCb3R0b20gKi9cblxuLnVpLnNlZ21lbnRbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdIHtcbiAgYm90dG9tOiAwcHg7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCBub25lO1xuICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkuc2VnbWVudFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkubWluaS5zZWdtZW50IHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS5zZWdtZW50cyAuc2VnbWVudCxcbi51aS50aW55LnNlZ21lbnQge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG5cbi51aS5zbWFsbC5zZWdtZW50cyAuc2VnbWVudCxcbi51aS5zbWFsbC5zZWdtZW50IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLmxhcmdlLnNlZ21lbnQge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbi51aS5iaWcuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkuYmlnLnNlZ21lbnQge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLnNlZ21lbnRzIC5zZWdtZW50LFxuLnVpLmh1Z2Uuc2VnbWVudCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuc2VnbWVudHMgLnNlZ21lbnQsXG4udWkubWFzc2l2ZS5zZWdtZW50IHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBTdGVwXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUGx1cmFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc3RlcHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2g7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtYXJnaW46IDFlbSAwZW07XG4gIGJhY2tncm91bmQ6ICcnO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIEZpcnN0IFN0ZXBzICovXG5cbi51aS5zdGVwczpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLyogTGFzdCBTdGVwcyAqL1xuXG4udWkuc3RlcHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU2luZ3VsYXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zdGVwcyAuc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleDogMSAwIGF1dG87XG4gIGZsZXg6IDEgMCBhdXRvO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMGVtIDBlbTtcbiAgcGFkZGluZzogMS4xNDI4NTcxNGVtIDJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbn1cblxuLyogQXJyb3cgKi9cblxuLnVpLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwJTtcbiAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IDEuMTQyODU3MTRlbTtcbiAgaGVpZ2h0OiAxLjE0Mjg1NzE0ZW07XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLXdpZHRoOiAwcHggMXB4IDFweCAwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKiBGaXJzdCBTdGVwICovXG5cbi51aS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLyogTGFzdCBTdGVwICovXG5cbi51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLyogT25seSBTdGVwICovXG5cbi51aS5zdGVwcyAuc3RlcDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFRpdGxlICovXG5cbi51aS5zdGVwcyAuc3RlcCAudGl0bGUge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi51aS5zdGVwcyAuc3RlcCA+IC50aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBEZXNjcmlwdGlvbiAqL1xuXG4udWkuc3RlcHMgLnN0ZXAgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuc3RlcHMgLnN0ZXAgPiAuZGVzY3JpcHRpb24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwIC50aXRsZSB+IC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkuc3RlcHMgLnN0ZXAgPiAuaWNvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBtYXJnaW46IDBlbSAxcmVtIDBlbSAwZW07XG59XG5cbi51aS5zdGVwcyAuc3RlcCA+IC5pY29uLFxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24gfiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtbXMtZmxleDogMCAxIGF1dG87XG4gIGZsZXg6IDAgMSBhdXRvO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBtaWRkbGU7XG4gIGFsaWduLXNlbGY6IG1pZGRsZTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24gfiAuY29udGVudCB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDEgMCBhdXRvO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMSAwIGF1dG87XG4gIGZsZXgtZ3JvdzogMSAwIGF1dG87XG59XG5cbi8qIEhvcml6b250YWwgSWNvbiAqL1xuXG4udWkuc3RlcHM6bm90KC52ZXJ0aWNhbCkgLnN0ZXAgPiAuaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5zdGVwcyAubGluay5zdGVwLFxuLnVpLnN0ZXBzIGEuc3RlcCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vcmRlcmVkLnN0ZXBzIHtcbiAgY291bnRlci1yZXNldDogb3JkZXJlZDtcbn1cblxuLnVpLm9yZGVyZWQuc3RlcHMgLnN0ZXA6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29udGVudDogY291bnRlcnMob3JkZXJlZCwgXCIuXCIpO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBtaWRkbGU7XG4gIGFsaWduLXNlbGY6IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb3VudGVyLWluY3JlbWVudDogb3JkZXJlZDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkub3JkZXJlZC5zdGVwcyAuc3RlcCA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogbWlkZGxlO1xuICBhbGlnbi1zZWxmOiBtaWRkbGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXAge1xuICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcbiAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBBcnJvdyAqL1xuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6YWZ0ZXIge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDAlO1xuICBib3JkZXItd2lkdGg6IDBweCAxcHggMXB4IDBweDtcbn1cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5hY3RpdmUuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS52ZXJ0aWNhbC5zdGVwcyAuYWN0aXZlLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgIFJlc3BvbnNpdmVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNb2JpbGUgKERlZmF1bHQpICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLnN0ZXBzOm5vdCgudW5zdGFja2FibGUpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogMGVtO1xuICAgIHBhZGRpbmc6IDEuMTQyODU3MTRlbSAyZW07XG4gIH1cblxuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDEuMTQyODU3MTRlbSAyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBlbSAwZW07XG4gIH1cblxuICAudWkuc3RlcHM6bm90KC51bnN0YWNrYWJsZSkgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gIH1cblxuICAvKiBBcnJvdyAqL1xuXG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogQ29udGVudCAqL1xuXG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcCAuY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLyogSWNvbiAqL1xuXG4gIC51aS5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcCA+IC5pY29uLFxuICAudWkub3JkZXJlZC5zdGVwczpub3QoLnVuc3RhY2thYmxlKSAuc3RlcDpiZWZvcmUge1xuICAgIG1hcmdpbjogMGVtIDBlbSAxcmVtIDBlbTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogTGluayBIb3ZlciAqL1xuXG4udWkuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcixcbi51aS5zdGVwcyBhLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuc3RlcDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGOUZBRkI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIExpbmsgRG93biAqL1xuXG4udWkuc3RlcHMgLmxpbmsuc3RlcDphY3RpdmU6OmFmdGVyLFxuLnVpLnN0ZXBzIC5saW5rLnN0ZXA6YWN0aXZlLFxuLnVpLnN0ZXBzIGEuc3RlcDphY3RpdmU6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuc3RlcDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZSB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0RjU7XG59XG5cbi51aS5zdGVwcyAuc3RlcC5hY3RpdmUgLnRpdGxlIHtcbiAgY29sb3I6ICM0MTgzQzQ7XG59XG5cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmFjdGl2ZTpiZWZvcmUsXG4udWkuc3RlcHMgLmFjdGl2ZS5zdGVwIC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi8qIEFjdGl2ZSBBcnJvdyAqL1xuXG4udWkuc3RlcHMgLnN0ZXA6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLnN0ZXBzIC5hY3RpdmUuc3RlcDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS5zdGVwcyAuYWN0aXZlLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEFjdGl2ZSBIb3ZlciAqL1xuXG4udWkuc3RlcHMgLmxpbmsuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIC5saW5rLmFjdGl2ZS5zdGVwOmhvdmVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICNEQ0REREU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKiBDb21wbGV0ZWQgKi9cblxuLnVpLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZCA+IC5pY29uOmJlZm9yZSxcbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZDpiZWZvcmUge1xuICBjb2xvcjogIzIxQkE0NTtcbn1cblxuLyogRGlzYWJsZWQgKi9cblxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwLFxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwIC50aXRsZSxcbi51aS5zdGVwcyAuZGlzYWJsZWQuc3RlcCAuZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXA6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRhYmxldCBPciBCZWxvdyAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC8qIFN0ZXBzICovXG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXAge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXItcmFkaXVzOiAwZW07XG4gICAgcGFkZGluZzogMS4xNDI4NTcxNGVtIDJlbTtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIC5zdGVwOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAxLjE0Mjg1NzE0ZW0gMmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gIH1cblxuICAvKiBBcnJvdyAqL1xuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBDb250ZW50ICovXG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXAgLmNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC8qIEljb24gKi9cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcCA+IC5pY29uLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5vcmRlcmVkLnN0ZXBzIC5zdGVwOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDFyZW0gMGVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGbHVpZCAqL1xuXG4udWkuZmx1aWQuc3RlcHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvcCAqL1xuXG4udWkuYXR0YWNoZWQuc3RlcHMge1xuICB3aWR0aDogY2FsYygxMDAlICsgKC0tMXB4ICogMikpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIC0xcHggMDtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgKyAoLS0xcHggKiAyKSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwZW0gMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTcxNDI5cmVtIDBlbSAwZW07XG59XG5cbi8qIEJvdHRvbSAqL1xuXG4udWkuYm90dG9tLmF0dGFjaGVkLnN0ZXBzIHtcbiAgbWFyZ2luOiAwIC0xcHggMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmJvdHRvbS5hdHRhY2hlZC5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5ib3R0b20uYXR0YWNoZWQuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEV2ZW5seSBEaXZpZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vbmUuc3RlcHMsXG4udWkudHdvLnN0ZXBzLFxuLnVpLnRocmVlLnN0ZXBzLFxuLnVpLmZvdXIuc3RlcHMsXG4udWkuZml2ZS5zdGVwcyxcbi51aS5zaXguc3RlcHMsXG4udWkuc2V2ZW4uc3RlcHMsXG4udWkuZWlnaHQuc3RlcHMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLm9uZS5zdGVwcyA+IC5zdGVwLFxuLnVpLnR3by5zdGVwcyA+IC5zdGVwLFxuLnVpLnRocmVlLnN0ZXBzID4gLnN0ZXAsXG4udWkuZm91ci5zdGVwcyA+IC5zdGVwLFxuLnVpLmZpdmUuc3RlcHMgPiAuc3RlcCxcbi51aS5zaXguc3RlcHMgPiAuc3RlcCxcbi51aS5zZXZlbi5zdGVwcyA+IC5zdGVwLFxuLnVpLmVpZ2h0LnN0ZXBzID4gLnN0ZXAge1xuICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4udWkub25lLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnR3by5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLnRocmVlLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMzMuMzMzJTtcbn1cblxuLnVpLmZvdXIuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aS5maXZlLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMjAlO1xufVxuXG4udWkuc2l4LnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTYuNjY2JTtcbn1cblxuLnVpLnNldmVuLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTQuMjg1JTtcbn1cblxuLnVpLmVpZ2h0LnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLnN0ZXBzIC5zdGVwLFxuLnVpLm1pbmkuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cblxuLnVpLnRpbnkuc3RlcHMgLnN0ZXAsXG4udWkudGlueS5zdGVwIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuc3RlcHMgLnN0ZXAsXG4udWkuc21hbGwuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwLFxuLnVpLnN0ZXAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5sYXJnZS5zdGVwcyAuc3RlcCxcbi51aS5sYXJnZS5zdGVwIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLnN0ZXBzIC5zdGVwLFxuLnVpLmJpZy5zdGVwIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuXG4udWkuaHVnZS5zdGVwcyAuc3RlcCxcbi51aS5odWdlLnN0ZXAge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG5cbi51aS5tYXNzaXZlLnN0ZXBzIC5zdGVwLFxuLnVpLm1hc3NpdmUuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU3RlcCc7XG4gIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04OztiYXNlNjQsQUFFQUFBQU9BSUFBQXdCZ1QxTXZNajNoU1FFQUFBRHNBQUFBVm1OdFlYRFFFaG0zQUFBQlJBQUFBVXBqZG5RZ0Jrbi9sQUFBQnV3QUFBQWNabkJuYllvS2VEc0FBQWNJQUFBSmtXZGhjM0FBQUFBUUFBQUc1QUFBQUFobmJIbG0zMmNFZGdBQUFwQUFBQUMyYUdWaFpBRXJQSHNBQUFOSUFBQUFObWhvWldFSFV3Tk5BQUFEZ0FBQUFDUm9iWFI0Q3lrQUFBQUFBNlFBQUFBTWJHOWpZUUE0QUZzQUFBT3dBQUFBQ0cxaGVIQUFwZ204QUFBRHVBQUFBQ0J1WVcxbHpKMGFIQUFBQTlnQUFBTE5jRzl6ZEs2OVFKZ0FBQWFvQUFBQU8zQnlaWENTb1pyL0FBQVFuQUFBQUZZQUFRTzRBWkFBQlFBSUFub0N2QUFBQUl3Q2VnSzhBQUFCNEFBeEFRSUFBQUlBQlFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVR1pGWkFCQTZBRG9BUU5TLzJvQVdnTUxBRThBQUFBQkFBQUFBQUFBQUFBQUF3QUFBQU1BQUFBY0FBRUFBQUFBQUVRQUF3QUJBQUFBSEFBRUFDZ0FBQUFHQUFRQUFRQUNBQURvQWYvL0FBQUFBT2dBLy84QUFCZ0JBQUVBQUFBQUFBQUFBQUVHQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQURwQUtZQUJVQUhFQVpEd0VBQVFGQ0FBSUJBbW9BQVFBQmFnQUFBR0VVRnhRREVpc0JGQWNCQmlJbkFTWTBQd0UyTWg4QkFUWXlId0VXQTZRUC9pQVFMQkQrNmc4UFRCQXNFS1FCYmhBc0VFd1BBaFlXRVA0Z0R3OEJGaEFzRUV3UUVLVUJieEFRVEJBQUFBSC8vZit4QTE4REN3QU1BQkpBRHdBQkFRcERBQUFBQ3dCRUZSTUNFU3NCRkE0QklpNENQZ0V5SGdFRFdYTEc2TWh1Qm5xODlMcCtBVjUxeEhSMHhPckVkSFRFQUFBQUFBRUFBQUFCQUFERGVScGRYdzg4OVFBTEErZ0FBQUFBenpXWWpRQUFBQURQTldCTi8vMy9zUU9rQXdzQUFBQUlBQUlBQUFBQUFBQUFBUUFBQTFML2FnQmFBK2dBQVAvM0E2UUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBTUQ2QUFBQStnQUFBTlpBQUFBQUFBQUFEZ0FXd0FCQUFBQUF3QVdBQUVBQUFBQUFBSUFCZ0FUQUc0QUFBQXRDWkVBQUFBQUFBQUFFZ0RlQUFFQUFBQUFBQUFBTlFBQUFBRUFBQUFBQUFFQUNBQTFBQUVBQUFBQUFBSUFCd0E5QUFFQUFBQUFBQU1BQ0FCRUFBRUFBQUFBQUFRQUNBQk1BQUVBQUFBQUFBVUFDd0JVQUFFQUFBQUFBQVlBQ0FCZkFBRUFBQUFBQUFvQUt3Qm5BQUVBQUFBQUFBc0FFd0NTQUFNQUFRUUpBQUFBYWdDbEFBTUFBUVFKQUFFQUVBRVBBQU1BQVFRSkFBSUFEZ0VmQUFNQUFRUUpBQU1BRUFFdEFBTUFBUVFKQUFRQUVBRTlBQU1BQVFRSkFBVUFGZ0ZOQUFNQUFRUUpBQVlBRUFGakFBTUFBUVFKQUFvQVZnRnpBQU1BQVFRSkFBc0FKZ0hKUTI5d2VYSnBaMmgwSUNoREtTQXlNREUwSUdKNUlHOXlhV2RwYm1Gc0lHRjFkR2h2Y25NZ1FDQm1iMjUwWld4c2J5NWpiMjFtYjI1MFpXeHNiMUpsWjNWc1lYSm1iMjUwWld4c2IyWnZiblJsYkd4dlZtVnljMmx2YmlBeExqQm1iMjUwWld4c2IwZGxibVZ5WVhSbFpDQmllU0J6ZG1jeWRIUm1JR1p5YjIwZ1JtOXVkR1ZzYkc4Z2NISnZhbVZqZEM1b2RIUndPaTh2Wm05dWRHVnNiRzh1WTI5dEFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFLQUJEQUNrQUlBQXlBREFBTVFBMEFDQUFZZ0I1QUNBQWJ3QnlBR2tBWndCcEFHNEFZUUJzQUNBQVlRQjFBSFFBYUFCdkFISUFjd0FnQUVBQUlBQm1BRzhBYmdCMEFHVUFiQUJzQUc4QUxnQmpBRzhBYlFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBVWdCbEFHY0FkUUJzQUdFQWNnQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVpnQnZBRzRBZEFCbEFHd0FiQUJ2QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVJ3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCekFIWUFad0F5QUhRQWRBQm1BQ0FBWmdCeUFHOEFiUUFnQUVZQWJ3QnVBSFFBWlFCc0FHd0Fid0FnQUhBQWNnQnZBR29BWlFCakFIUUFMZ0JvQUhRQWRBQndBRG9BTHdBdkFHWUFid0J1QUhRQVpRQnNBR3dBYndBdUFHTUFid0J0QUFBQUFBSUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdBQUFRSUJBd2xqYUdWamEyMWhjbXNHWTJseVkyeGxBQUFBQUFFQUFmLy9BQThBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRElBTWdNTC83RURDLyt4c0FBc3NDQmdaaTJ3QVN3Z1pDQ3d3RkN3QkNaYXNBUkZXMWdoSXlFYmlsZ2dzRkJRV0NHd1FGa2JJTEE0VUZnaHNEaFpXU0N3Q2tWaFpMQW9VRmdoc0FwRklMQXdVRmdoc0RCWkd5Q3d3RkJZSUdZZ2lvcGhJTEFLVUZoZ0d5Q3dJRkJZSWJBS1lCc2dzRFpRV0NHd05tQWJZRmxaV1J1d0FDdFpXU093QUZCWVpWbFpMYkFDTENCRklMQUVKV0ZrSUxBRlExQllzQVVqUXJBR0kwSWJJU0Zac0FGZ0xiQURMQ01oSXlFZ1pMRUZZa0lnc0FZalFySUtBQUlxSVNDd0JrTWdpaUNLc0FBcnNUQUZKWXBSV0dCUUcyRlNXVmdqV1NFZ3NFQlRXTEFBS3hzaHNFQlpJN0FBVUZobFdTMndCQ3l3QjBNcnNnQUNBRU5nUWkyd0JTeXdCeU5DSXlDd0FDTkNZYkNBWXJBQllMQUVLaTJ3Qml3Z0lFVWdzQUpGWTdBQlJXSmdSTEFCWUMyd0J5d2dJRVVnc0FBckk3RUNCQ1ZnSUVXS0kyRWdaQ0N3SUZCWUliQUFHN0F3VUZpd0lCdXdRRmxaSTdBQVVGaGxXYkFESlNOaFJFU3dBV0F0c0Fnc3NRVUZSYkFCWVVRdHNBa3NzQUZnSUNDd0NVTktzQUJRV0NDd0NTTkNXYkFLUTBxd0FGSllJTEFLSTBKWkxiQUtMQ0M0QkFCaUlMZ0VBR09LSTJHd0MwTmdJSXBnSUxBTEkwSWpMYkFMTEV0VVdMRUhBVVJaSkxBTlpTTjRMYkFNTEV0UldFdFRXTEVIQVVSWkd5RlpKTEFUWlNONExiQU5MTEVBREVOVldMRU1ERU93QVdGQ3NBb3JXYkFBUTdBQ0pVS3hDUUlsUXJFS0FpVkNzQUVXSXlDd0F5VlFXTEVCQUVOZ3NBUWxRb3FLSUlvalliQUpLaUVqc0FGaElJb2pZYkFKS2lFYnNRRUFRMkN3QWlWQ3NBSWxZYkFKS2lGWnNBbERSN0FLUTBkZ3NJQmlJTEFDUldPd0FVVmlZTEVBQUJNalJMQUJRN0FBUHJJQkFRRkRZRUl0c0E0c3NRQUZSVlJZQUxBTUkwSWdZTEFCWWJVTkRRRUFDd0JDUW9wZ3NRMEZLN0J0S3hzaVdTMndEeXl4QUE0ckxiQVFMTEVCRGlzdHNCRXNzUUlPS3kyd0VpeXhBdzRyTGJBVExMRUVEaXN0c0JRc3NRVU9LeTJ3RlN5eEJnNHJMYkFXTExFSERpc3RzQmNzc1FnT0t5MndHQ3l4Q1E0ckxiQVpMTEFJSzdFQUJVVlVXQUN3RENOQ0lHQ3dBV0cxRFEwQkFBc0FRa0tLWUxFTkJTdXdiU3NiSWxrdHNCb3NzUUFaS3kyd0d5eXhBUmtyTGJBY0xMRUNHU3N0c0Iwc3NRTVpLeTJ3SGl5eEJCa3JMYkFmTExFRkdTc3RzQ0Fzc1FZWkt5MndJU3l4QnhrckxiQWlMTEVJR1NzdHNDTXNzUWtaS3kyd0pDd2dQTEFCWUMyd0pTd2dZTEFOWUNCREk3QUJZRU93QWlWaHNBRmdzQ1FxSVMyd0ppeXdKU3V3SlNvdHNDY3NJQ0JISUNDd0FrVmpzQUZGWW1BallUZ2pJSXBWV0NCSElDQ3dBa1Zqc0FGRlltQWpZVGdiSVZrdHNDZ3NzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nrc3NBZ3JzUUFGUlZSWUFMQUJGckFuS3JBQkZUQWJJbGt0c0Nvc0lEV3dBV0F0c0Nzc0FMQURSV093QVVWaXNBQXJzQUpGWTdBQlJXS3dBQ3V3QUJhMEFBQUFBQUJFUGlNNHNTb0JGU290c0N3c0lEd2dSeUN3QWtWanNBRkZZbUN3QUVOaE9DMndMU3d1Rnp3dHNDNHNJRHdnUnlDd0FrVmpzQUZGWW1Dd0FFTmhzQUZEWXpndHNDOHNzUUlBRmlVZ0xpQkhzQUFqUXJBQ0pVbUtpa2NqUnlOaElGaGlHeUZac0FFalFySXVBUUVWRkNvdHNEQXNzQUFXc0FRbHNBUWxSeU5ISTJHd0JrVXJaWW91SXlBZ1BJbzRMYkF4TExBQUZyQUVKYkFFSlNBdVJ5TkhJMkVnc0FRalFyQUdSU3Nnc0dCUVdDQ3dRRkZZc3dJZ0F5QWJzd0ltQXhwWlFrSWpJTEFJUXlDS0kwY2pSeU5oSTBaZ3NBUkRzSUJpWUNDd0FDc2dpb3BoSUxBQ1EyQmtJN0FEUTJGa1VGaXdBa05oRzdBRFEyQlpzQU1sc0lCaVlTTWdJTEFFSmlOR1lUZ2JJN0FJUTBhd0FpV3dDRU5ISTBjallXQWdzQVJEc0lCaVlDTWdzQUFySTdBRVEyQ3dBQ3V3QlNWaHNBVWxzSUJpc0FRbVlTQ3dCQ1ZnWkNPd0F5VmdaRkJZSVJzaklWa2pJQ0N3QkNZalJtRTRXUzJ3TWl5d0FCWWdJQ0N3QlNZZ0xrY2pSeU5oSXp3NExiQXpMTEFBRmlDd0NDTkNJQ0FnUmlOSHNBQXJJMkU0TGJBMExMQUFGckFESmJBQ0pVY2pSeU5oc0FCVVdDNGdQQ01oRzdBQ0piQUNKVWNqUnlOaElMQUZKYkFFSlVjalJ5TmhzQVlsc0FVbFNiQUNKV0d3QVVWakl5QllZaHNoV1dPd0FVVmlZQ011SXlBZ1BJbzRJeUZaTGJBMUxMQUFGaUN3Q0VNZ0xrY2pSeU5oSUdDd0lHQm1zSUJpSXlBZ1BJbzRMYkEyTENNZ0xrYXdBaVZHVWxnZ1BGa3VzU1lCRkNzdHNEY3NJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T0N3aklDNUdzQUlsUmxKWUlEeFpJeUF1UnJBQ0pVWlFXQ0E4V1M2eEpnRVVLeTJ3T1N5d01Dc2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJMYkE2TExBeEs0b2dJRHl3QkNOQ2lqZ2pJQzVHc0FJbFJsSllJRHhaTHJFbUFSUXJzQVJETHJBbUt5MndPeXl3QUJhd0JDV3dCQ1lnTGtjalJ5TmhzQVpGS3lNZ1BDQXVJeml4SmdFVUt5MndQQ3l4Q0FRbFFyQUFGckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckFHUlNzZ3NHQlFXQ0N3UUZGWXN3SWdBeUFic3dJbUF4cFpRa0lqSUVld0JFT3dnR0pnSUxBQUt5Q0tpbUVnc0FKRFlHUWpzQU5EWVdSUVdMQUNRMkVic0FORFlGbXdBeVd3Z0dKaHNBSWxSbUU0SXlBOEl6Z2JJU0FnUmlOSHNBQXJJMkU0SVZteEpnRVVLeTJ3UFN5d01Dc3VzU1lCRkNzdHNENHNzREVySVNNZ0lEeXdCQ05DSXppeEpnRVVLN0FFUXk2d0ppc3RzRDhzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TENvdHNFQXNzQUFWSUVld0FDTkNzZ0FCQVJVVUV5NndMQ290c0VFc3NRQUJGQk93TFNvdHNFSXNzQzhxTGJCRExMQUFGa1VqSUM0Z1Jvb2pZVGl4SmdFVUt5MndSQ3l3Q0NOQ3NFTXJMYkJGTExJQUFEd3JMYkJHTExJQUFUd3JMYkJITExJQkFEd3JMYkJJTExJQkFUd3JMYkJKTExJQUFEMHJMYkJLTExJQUFUMHJMYkJMTExJQkFEMHJMYkJNTExJQkFUMHJMYkJOTExJQUFEa3JMYkJPTExJQUFUa3JMYkJQTExJQkFEa3JMYkJRTExJQkFUa3JMYkJSTExJQUFEc3JMYkJTTExJQUFUc3JMYkJUTExJQkFEc3JMYkJVTExJQkFUc3JMYkJWTExJQUFENHJMYkJXTExJQUFUNHJMYkJYTExJQkFENHJMYkJZTExJQkFUNHJMYkJaTExJQUFEb3JMYkJhTExJQUFUb3JMYkJiTExJQkFEb3JMYkJjTExJQkFUb3JMYkJkTExBeUt5NnhKZ0VVS3kyd1hpeXdNaXV3TmlzdHNGOHNzRElyc0RjckxiQmdMTEFBRnJBeUs3QTRLeTJ3WVN5d015c3VzU1lCRkNzdHNHSXNzRE1yc0RZckxiQmpMTEF6SzdBM0t5MndaQ3l3TXl1d09Dc3RzR1Vzc0RRckxyRW1BUlFyTGJCbUxMQTBLN0EyS3kyd1p5eXdOQ3V3TnlzdHNHZ3NzRFFyc0RnckxiQnBMTEExS3k2eEpnRVVLeTJ3YWl5d05TdXdOaXN0c0dzc3NEVXJzRGNyTGJCc0xMQTFLN0E0S3kyd2JTd3JzQWhsc0FNa1VIaXdBUlV3TFFBQUFFdTRBTWhTV0xFQkFZNVp1UWdBQ0FCaklMQUJJMFN3QXlOd3NnUW9DVVZTUkxJS0FnY3FzUVlCUkxFa0FZaFJXTEJBaUZpeEJnTkVzU1lCaUZGWXVBUUFpRml4QmdGRVdWbFpXYmdCLzRXd0JJMnhCUUJFQUFBPSkgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUFvVUFBNEFBQUFBRVBRQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJQVXk4eUFBQUJSQUFBQUVRQUFBQldQZUZKQVdOdFlYQUFBQUdJQUFBQU9nQUFBVXJRRWhtM1kzWjBJQUFBQWNRQUFBQVVBQUFBSEFaSi81Um1jR2R0QUFBQjJBQUFCUGtBQUFtUmlncDRPMmRoYzNBQUFBYlVBQUFBQ0FBQUFBZ0FBQUFRWjJ4NVpnQUFCdHdBQUFDdUFBQUF0dDluQkhab1pXRmtBQUFIakFBQUFEVUFBQUEyQVNzOGUyaG9aV0VBQUFmRUFBQUFJQUFBQUNRSFV3Tk5hRzEwZUFBQUIrUUFBQUFNQUFBQURBc3BBQUJzYjJOaEFBQUg4QUFBQUFnQUFBQUlBRGdBVzIxaGVIQUFBQWY0QUFBQUlBQUFBQ0FBcGdtOGJtRnRaUUFBQ0JnQUFBRjNBQUFDemN5ZEdoeHdiM04wQUFBSmtBQUFBQ29BQUFBN3JyMUFtSEJ5WlhBQUFBbThBQUFBVmdBQUFGYVNvWnIvZUp4allHVGV3VGlCZ1pXQmc2bUthUThEQTBNUGhHWjh3R0RJeU1UQXdNVEF5c3lBRlFTa3VhWXdPTHhnZU1ISUhQUS9peUdLbVp2Qkh5ak1DSklEQVBlOUMyQjRuR05nWUdCbWdHQVpCa1lHRUhBQjhoakJmQllHRFNETkJxUVpHWmdZR0Y0dy92OFBVdkNDQVVSTE1FTFZBd0VqRzhPSUJ3Qms1QWF2QUFCNG5HTmdRQU5HREViTTNQODNnakFBRUxRRDRYaWNuVlhaZHROV0ZKVThaSEFTT21TZ29BN1gzRGhRNjhxRUtSZ3dhU3JGZGlFZEhBaXRCQjJrREhUa25jYys2MnVPUXJ0V0gvbTA3bjA5SkxSMHJiWXNscysrUjF0bjJEcm5SaHdqS24wYWlHdlVvWktYQTZtc1BaWks5MGxjMTNVdmo1VU1CbkZkdGhKUFNadW9uU1JLYXQzc1VDN3hXT3NxV1NkWUorUGxJRlpQVlo1bm9BemlGQjVsU1VRYlJCdXBseVpKNG9uako0a1daeEFmSlVrZ0phTVFwOUxJVUVJMUdzUlMxYUZNNmRDcjF4TngwMERLUnFNZWRWaFU5MFBGSjhjMXA5U3NBMFlxVnpuQ0ZldlZScjRicHdNdmU1REVPc0d6clljeEhuaXNmcFFxa0lxUjZjZy9ka3BPbElhQlZISFVvVmJpNkRDVFgvZVJUQ3JOUUthTVlrV2w3b0c0M2YxMDJ4WXhQWFE2dmk1S2xVYXF1cm5PS0pydDBmR29neWdQMmNicHBOelEyZmJ3NVJsVFZLdGRjYlB0UUdZTlhFckpiSFNmUkFBZEpsTGo2UUZPTlp3Q3FSbjFSOFhaNTg4QkVzbGNsS284VlRLSGVnT1pNenQ3Y1RIdGJpZXJzbkNrbndjeWIzWjI0NTJIUTZkWGgzL1IraGRNNGN4SGorSmlmajVDK2xCcWZpSk9KS1ZHV016eXA0WWZjVmNnUXJreGlBc1h5dUJUaERsMFJkclpabDNqdFRIMmhzLzVTcWxoUFFuYTZLUDRmZ3I5VGlRckhHZFJvL1ZJbk0xajEzV3QzR2RRUzdXN0Z6c3lyME9WSXU3dkN3dXVNK2VFWVo0V0MxVmZudm5lQlRUL0JvaG4vRURlTklWTCs1WXBTclJ2bTZKTXUyaUtDdTBTVktWZE5zVVU3WW9wcG1uUG1tS0c5aDFUek5LZU16TGovOHZjNTVIN0hON3hrSnYyWGVTbWZRKzVhZDlIYnRvUGtKdFdJVGR0SGJscEx5QTNyVVp1MmxXak9uWUVHZ1pwRjFJVlFkQTBzdnBoM0ZhYjlVRFdqRFI4YVdEeUxtTEkrdXBFUjUyMXRjb2Z4WDkxNGdzSGNtbWlwN3NpRjV2aUxxL2JGajQ4M2U2cmo1cEczYkRWK01hUjhqQWVSbm9jbXRCWitjM2h2KzFOM1M2YTdqS3FNdWdCRlV3S3dBQmw3VUFDMHpyYkNhVDFtcWY0OGdkZ1hJWjR6a3BEdFZTZk80YW03K1Y1WC9leE9mRyt4KzNHTHJkY2Qza0pXZFlOY21QMjhOOVNaS3JySCtVdHJWUW5SNndySjQ5VmF4aERLcndvdXI2U2xIdTB0UnUvS0tteThsNlUxc3JuazVDYlBZTWJRbHUyN21Hd0kweHB5aVVlWGxPbEtEM1VVbzZ5UXl4dktjbzg0SlNMQzFxR3hMZ09kUTlxYThUcG9Yb1lHd3NoaHFHMHZSQndTQ2xkRmQrMHluZnhIcXRyMk9qNHhSWGg2WHB5RWhHZjRpcjdVZkJVMTBiOTZBN2F2R2JkTW9NcFZhcW4rNHhQc2EvYjlsRlphYVNPc3hlM1ZBZlhOT3NhT1JYVFQrUnI0SFJ2T0dqZEF6MVVmRFJCSTFVMXgrakdLR00wbGpYbDN3UjBNVlordzJqVll2czkzRStkcEZXc3VVdVk3SnNUOStDMHUvMHErN1djVzBiVy9kY0d2VzNraXA4ak1iOHRDdnc3QjJLM1pBM1VPNU9CR0F2SVdkQVl4aFltZHhpdWcyM0ViZlkvSnFmLzM0YUZSWEpYT3hxN2VlckQxWk5SSlhmWjhyakxUWFpaMTZNMlI5Vk9HdnNJalMwUE4rYlk0WElzdHNSZ1FiYit3Zjh4N2dGM2FWRUM0TkRJWlppSTJuU2hudXJoNmg2cnNXMDRWeElCZHMyeDQzUUFlZ0F1UWQ4Y3U5YnpDWUQxM0NQbkxzQjljZ2gyeUNINGxCeUN6OGk1QmZBNU9RUmZrRU13SUlkZ2w1dzdBQS9JSVhoSURzRWVPUVNQeU5rRStKSWNncS9JSVlqSklVakl1UTN3bUJ5Q0orUVFmRTBPd1RkR3JrNWsvcFlIMlFENnpxS2JRS21kR2h6YU9HUkdyazNZK3p4WTlvRkZaQjlhUk9xUmtlc1Q2bE1lTFBWN2kwajl3U0pTZnpSeVkwTDlpUWRML2RraVVuK3hpTlJueHBlWkl5bXZEcDd6amc3K0JKZnFyVjRBQUFBQUFRQUIvLzhBRDNpY1kyQmtBQUxtSlV3ekdFUVpaQndrK1JrWkdCbWRHSmdZbWJJWWdNd3NvR1NpaUxnSXM1QTJvd2c3STV1U09xT2FpVDJqbVpFOEk1Z1FZMTdDLzA5QlFFZmczeXQrZmg4Z3ZZUXhEMGo2OERPSmlRbjhVK0RuWnhRRGNRVUVsakxtQ3dCcEJnYkcvMy8vYjJTT1orWm00R0VRY3VBSDJzYmxETFNFbThGRlZKaEpFR2dMSDZPU0hwTWRvNUVjSTNOazBiRVhKL0xZcXZaODJWWEhHRmQ2cEtUa3lDc1F3UUFBcStRa3FBQUFlSnhqWUdSZ1lBRGl3NVZTc2ZIOE5sOFp1SmxmQUVVWXpwdk82SVhRQ2I3Ly8vN2Z5THlFbVJ2STVXQmdBb2tDQUZiL0RKQUFBQUI0bkdOZ1pHQmdEdnFmeFJERi9JS0I0ZjkzNWlVTVFCRVV3QXdBaTVZRnBnUG9BQUFENkFBQUExa0FBQUFBQUFBQU9BQmJBQUVBQUFBREFCWUFBUUFBQUFBQUFnQUdBQk1BYmdBQUFDMEprUUFBQUFCNG5IV1F5MnJDUUJTRy8vSFNpMEpiV3VpMnN5cEthYnhnTjRJZ1dIVFRicVM0TFRIR0pCSXpNaGtGWDZQdjBJZnBTL1JaK3B1TXBTaE5tTXgzdmpsejVtUUFYT01iQXZuenhKR3p3Qm1qbkFzNFJjOXlrZjdaY29uOFlybU1LdDRzbjlDL1c2N2dBWUhsS203d3dRcWlkTTVvZ1UvTEFsZmkwbklCRitMT2NwSCswWEtKM0xOY3hxMTR0WHhDNzFtdVlDSlN5MVhjaTYrQldtMTFGSVJHMWdaMTJXNjJPbks2bFlvcVN0eFl1bXNUS3AzS3ZweXJ4UGh4ckJ4UExmYzg5b04xN09wOXVKOG52azRqbGNpVzA5eXJrWi80MmpYK2JGYzkzUVJ0WStaeXJ0VlNEbTJHWEdtMThEM2poTWFzdW8zRzMvTXdnTUlLVzJoRXZLb1FCaEkxMmpybk5wcG9vVU9hTWtNeU04K0trTUJGVE9OaXpSMWh0cEl5N25QTUdTVzBQak5pc2dPUDMrV1JINU1DN285WlJSK3RIc1lUMHU2TUtQT1NmVG5zN2pCclJFcXlURGV6czkvZVUyeDRXcHZXY05ldVM1MTFKVEU4cUNGNUg3dTFCWTFINzJTM1ltaTdhUEQ5NS85K0FOMWZoRXNBZUp4allHS0FBQzRHN0lDWmdZR1JpWkdaTXprak5UazdON0VvbXkwNXN5ZzVKNVdCQVFCRTFRWkJBQUJMdUFESVVsaXhBUUdPV2JrSUFBZ0FZeUN3QVNORXNBTWpjTElFS0FsRlVrU3lDZ0lIS3JFR0FVU3hKQUdJVVZpd1FJaFlzUVlEUkxFbUFZaFJXTGdFQUloWXNRWUJSRmxaV1ZtNEFmK0ZzQVNOc1FVQVJBQUEpIGZvcm1hdCgnd29mZicpO1xufVxuXG4udWkuc3RlcHMgLnN0ZXAuY29tcGxldGVkID4gLmljb246YmVmb3JlLFxuLnVpLm9yZGVyZWQuc3RlcHMgLnN0ZXAuY29tcGxldGVkOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnU3RlcCc7XG4gIGNvbnRlbnQ6ICdcXGU4MDAnO1xuICAvKiAn7qCAJyAqL1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBCcmVhZGNydW1iXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBCcmVhZGNydW1iXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYnJlYWRjcnVtYiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMGVtIDBlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmJyZWFkY3J1bWI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5icmVhZGNydW1iOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRGl2aWRlciAqL1xuXG4udWkuYnJlYWRjcnVtYiAuZGl2aWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3BhY2l0eTogMC43O1xuICBtYXJnaW46IDBlbSAwLjIxNDI4NTcxcmVtIDBlbTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyogTGluayAqL1xuXG4udWkuYnJlYWRjcnVtYiBhIHtcbiAgY29sb3I6ICM0MTgzQzQ7XG59XG5cbi51aS5icmVhZGNydW1iIGE6aG92ZXIge1xuICBjb2xvcjogIzFlNzBiZjtcbn1cblxuLyogSWNvbiBEaXZpZGVyICovXG5cbi51aS5icmVhZGNydW1iIC5pY29uLmRpdmlkZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKiBTZWN0aW9uICovXG5cbi51aS5icmVhZGNydW1iIGEuc2VjdGlvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLmJyZWFkY3J1bWIgLnNlY3Rpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi8qIExvb3NlIENvdXBsaW5nICovXG5cbi51aS5icmVhZGNydW1iLnNlZ21lbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAxZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5icmVhZGNydW1iIC5hY3RpdmUuc2VjdGlvbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWluaS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5sYXJnZS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG5cbi51aS5tYXNzaXZlLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIEZvcm1cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBFbGVtZW50c1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtID4gcCB7XG4gIG1hcmdpbjogMWVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGaWVsZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW07XG59XG5cbi51aS5mb3JtIC5maWVsZDpsYXN0LWNoaWxkLFxuLnVpLmZvcm0gLmZpZWxkczpsYXN0LWNoaWxkIC5maWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgPiBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU3RhbmRhcmQgSW5wdXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSB0ZXh0YXJlYSxcbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIFNldCBtYXggaGVpZ2h0IG9uIHVudXN1YWwgaW5wdXQgKi9cblxuLnVpLmZvcm0gOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsXG4udWkuZm9ybSA6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbn1cblxuLnVpLmZvcm0gaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZmlsZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDBlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xuICBwYWRkaW5nOiAwLjY3ODU3MTQzZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAwZW0gdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG59XG5cbi8qIFRleHQgQXJlYSAqL1xuXG4udWkuZm9ybSB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMGVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAxZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWE6bm90KFtyb3dzXSkge1xuICBoZWlnaHQ6IDEyZW07XG4gIG1pbi1oZWlnaHQ6IDhlbTtcbiAgbWF4LWhlaWdodDogMjRlbTtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWEsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIElucHV0IHcvIGF0dGFjaGVkIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gaW5wdXQuYXR0YWNoZWQge1xuICB3aWR0aDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpYyBTZWxlY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICBwYWRkaW5nOiAwLjYyZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERyb3Bkb3duXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBCbG9jayAqL1xuXG4udWkuZm9ybSAuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5mb3JtIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyogSW5saW5lICovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24sXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24sXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBVSSBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQmxvY2sgKi9cblxuLnVpLmZvcm0gLmZpZWxkIC51aS5pbnB1dCxcbi51aS5mb3JtIC5maWVsZHMgLmZpZWxkIC51aS5pbnB1dCxcbi51aS5mb3JtIC53aWRlLmZpZWxkIC51aS5pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBJbmxpbmUgICovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZDpub3QoLndpZGUpIC51aS5pbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQ6bm90KC53aWRlKSAudWkuaW5wdXQge1xuICB3aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogQXV0byBJbnB1dCAqL1xuXG4udWkuZm9ybSAuZmllbGRzIC5maWVsZCAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZmllbGQgLnVpLmlucHV0IGlucHV0IHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qIEZ1bGwgV2lkdGggSW5wdXQgKi9cblxuLnVpLmZvcm0gLnRlbi5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLm5pbmUuZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC5laWdodC5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLnNldmVuLmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuc2l4LmZpZWxkcyAudWkuaW5wdXQgaW5wdXQsXG4udWkuZm9ybSAuZml2ZS5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLmZvdXIuZmllbGRzIC51aS5pbnB1dCBpbnB1dCxcbi51aS5mb3JtIC50aHJlZS5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLnR3by5maWVsZHMgLnVpLmlucHV0IGlucHV0LFxuLnVpLmZvcm0gLndpZGUuZmllbGQgLnVpLmlucHV0IGlucHV0IHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgd2lkdGg6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVHlwZXMgb2YgTWVzc2FnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5zdWNjZXNzLm1lc3NhZ2UsXG4udWkuZm9ybSAud2FybmluZy5tZXNzYWdlLFxuLnVpLmZvcm0gLmVycm9yLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBBc3N1bXB0aW9ucyAqL1xuXG4udWkuZm9ybSAubWVzc2FnZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVmFsaWRhdGlvbiBQcm9tcHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZCAucHJvbXB0LmxhYmVsIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTBCNEI0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOUYzQTM4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCAucHJvbXB0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCAucHJvbXB0IHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luOiAtMC4yNWVtIDBlbSAtMC41ZW0gMC41ZW07XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCAucHJvbXB0OmJlZm9yZSxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgLnByb21wdDpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDBweCAwcHggMXB4IDFweDtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQXV0b2ZpbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkLmZpZWxkIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDEwMHB4ICNGRkZGRjAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMTAwcHggI0ZGRkZGMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNFNURGQTEgIWltcG9ydGFudDtcbn1cblxuLyogRm9jdXMgKi9cblxuLnVpLmZvcm0gLmZpZWxkLmZpZWxkIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDEwMHB4ICNGRkZGRjAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMTAwcHggI0ZGRkZGMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNENUMzMTUgIWltcG9ydGFudDtcbn1cblxuLyogRXJyb3IgKi9cblxuLnVpLmZvcm0gLmVycm9yLmVycm9yIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDEwMHB4ICNGRkZBRjAgaW5zZXQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMTAwcHggI0ZGRkFGMCBpbnNldCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIGJyb3dzZXJzIHJlcXVpcmUgdGhlc2UgcnVsZXMgc2VwYXJhdGUgKi9cblxuLnVpLmZvcm0gOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG5cbi51aS5mb3JtIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxOTEsIDE5MSwgMTkxLCAwLjg3KSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxOTEsIDE5MSwgMTkxLCAwLjg3KTtcbn1cblxuLnVpLmZvcm0gOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC44Nyk7XG59XG5cbi51aS5mb3JtIDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSA6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjg3KTtcbn1cblxuLyogRXJyb3IgUGxhY2Vob2xkZXIgKi9cblxuLnVpLmZvcm0gLmVycm9yIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjO1xufVxuXG4udWkuZm9ybSAuZXJyb3IgOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTdiZGJjICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5lcnJvciA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2U3YmRiYztcbn1cblxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2O1xufVxuXG4udWkuZm9ybSAuZXJyb3IgOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZGE5Nzk2ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5lcnJvciA6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2RhOTc5Njtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAjODVCN0Q5O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMGVtIDBlbSByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBlbSAwZW0gcmdiYSgzNCwgMzYsIDM4LCAwLjM1KSBpbnNldDtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAjODVCN0Q5O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwZW0gMGVtIDBlbSByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBlbSAwZW0gcmdiYSgzNCwgMzYsIDM4LCAwLjM1KSBpbnNldDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN1Y2Nlc3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE9uIEZvcm0gKi9cblxuLnVpLmZvcm0uc3VjY2VzcyAuc3VjY2Vzcy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi51aS5mb3JtLnN1Y2Nlc3MgLmNvbXBhY3Quc3VjY2Vzcy5tZXNzYWdlOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udWkuZm9ybS5zdWNjZXNzIC5pY29uLnN1Y2Nlc3MubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBPbiBGb3JtICovXG5cbi51aS5mb3JtLndhcm5pbmcgLndhcm5pbmcubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuZm9ybS53YXJuaW5nIC5jb21wYWN0Lndhcm5pbmcubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVpLmZvcm0ud2FybmluZyAuaWNvbi53YXJuaW5nLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE9uIEZvcm0gKi9cblxuLnVpLmZvcm0uZXJyb3IgLmVycm9yLm1lc3NhZ2U6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLmZvcm0uZXJyb3IgLmNvbXBhY3QuZXJyb3IubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVpLmZvcm0uZXJyb3IgLmljb24uZXJyb3IubWVzc2FnZTpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyogT24gRmllbGQocykgKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgbGFiZWwsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgbGFiZWwsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuaW5wdXQsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmlucHV0IHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jb3JuZXIubGFiZWwsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNvcm5lci5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzlGM0EzODtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIHRleHRhcmVhLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgc2VsZWN0LFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZmlsZVwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kOiAjRkZGNkY2O1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQ7XG4gIGNvbG9yOiAjOUYzQTM4O1xuICBib3JkZXItcmFkaXVzOiAnJztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWE6Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0OmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRkZGNkY2O1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQ7XG4gIGNvbG9yOiAjOUYzQTM4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogUHJlc2VydmUgTmF0aXZlIFNlbGVjdCBTdHlsaW5ncyAqL1xuXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZW51bGlzdC1idXR0b247XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgRHJvcGRvd24gRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duIC5pdGVtLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93bixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLnRleHQsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duIC5pdGVtIHtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNjtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duOmhvdmVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNCAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd246aG92ZXIgLm1lbnUsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duOmhvdmVyIC5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkubXVsdGlwbGUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5tdWx0aXBsZS5zZWxlY3Rpb24uZHJvcGRvd24gPiAubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUFDQkNCO1xuICBjb2xvcjogIzlGM0EzODtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtOmhvdmVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAubWVudSAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkU3RTc7XG59XG5cbi8qIFNlbGVjdGVkICovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuc2VsZWN0ZWQuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJFN0U3O1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZEQ0ZDRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2tib3ggRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgLmJveCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94IHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsOmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSBsYWJlbDpiZWZvcmUsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkY2RjY7XG4gIGJvcmRlci1jb2xvcjogI0UwQjRCNDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCAuYm94OmFmdGVyIHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmRpc2FibGVkLmZpZWxkcyAuZmllbGQsXG4udWkuZm9ybSAuZGlzYWJsZWQuZmllbGQsXG4udWkuZm9ybSAuZmllbGQgOmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG5cbi51aS5mb3JtIC5maWVsZC5kaXNhYmxlZCA+IGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5kaXNhYmxlZCA+IGxhYmVsIHtcbiAgb3BhY2l0eTogMC40NTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkLmRpc2FibGVkIDpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udWkubG9hZGluZy5mb3JtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMCU7XG4gIGxlZnQ6IDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLnVpLmxvYWRpbmcuZm9ybTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuNWVtIDBlbSAwZW0gLTEuNWVtO1xuICB3aWR0aDogM2VtO1xuICBoZWlnaHQ6IDNlbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZvcm0tc3BpbiAwLjZzIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBmb3JtLXNwaW4gMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1jb2xvcjogIzc2NzY3NiByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgei1pbmRleDogMTAxO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZm9ybS1zcGluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZvcm0tc3BpbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEVsZW1lbnQgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgUmVxdWlyZWQgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkcy5ncm91cGVkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlciB7XG4gIG1hcmdpbjogLTAuMmVtIDBlbSAwZW0gMC4yZW07XG4gIGNvbnRlbnQ6ICcqJztcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHM6bm90KC5ncm91cGVkKSA+IC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkcy5ncm91cGVkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiBsYWJlbDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkczpub3QoLmdyb3VwZWQpID4gLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAlO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuZm9ybSBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggLmJveCxcbi51aS5pbnZlcnRlZC5mb3JtIC5pbmxpbmUuZmllbGRzID4gbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBsYWJlbCxcbi51aS5pbnZlcnRlZC5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IHAsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkID4gbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAuaW5saW5lLmZpZWxkID4gcCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi8qIEludmVydGVkIEZpZWxkICovXG5cbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5pbnZlcnRlZC5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmludmVydGVkLmZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4udWkuaW52ZXJ0ZWQuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgRmllbGQgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHcm91cGVkIFZlcnRpY2FsbHkgKi9cblxuLnVpLmZvcm0gLmdyb3VwZWQuZmllbGRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW07XG59XG5cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgPiBsYWJlbCB7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyAuZmllbGQsXG4udWkuZm9ybSAuZ3JvdXBlZC5pbmxpbmUuZmllbGRzIC5maWVsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuNWVtIDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpZWxkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3BsaXQgZmllbGRzICovXG5cbi51aS5mb3JtIC5maWVsZHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBtYXJnaW46IDBlbSAtMC41ZW0gMWVtO1xufVxuXG4udWkuZm9ybSAuZmllbGRzID4gLmZpZWxkIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXg6IDAgMSBhdXRvO1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG5cbi51aS5mb3JtIC5maWVsZHMgPiAuZmllbGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBPdGhlciBDb21iaW5hdGlvbnMgKi9cblxuLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuXG4udWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLmZvdXIuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLmZvcm0gLmZpdmUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aS5mb3JtIC5zaXguZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5zaXguZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cblxuLnVpLmZvcm0gLnNldmVuLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbn1cblxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZWlnaHQuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4udWkuZm9ybSAubmluZS5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDExLjExMTExMTExJTtcbn1cblxuLnVpLmZvcm0gLnRlbi5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnRlbi5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTAlO1xufVxuXG4vKiBTd2FwIHRvIGZ1bGwgd2lkdGggb24gbW9iaWxlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLmZvcm0gLmZpZWxkcyB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSBbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50d28uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGhyZWUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5zaXguZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnNpeC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5zZXZlbi5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuc2V2ZW4uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZWlnaHQuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmVpZ2h0LmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLm5pbmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLm5pbmUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGVuLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50ZW4uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtIDBlbSAxZW07XG4gIH1cbn1cblxuLyogU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG4udWkuZm9ybSAuZmllbGRzIC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDYuMjUlO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cblxuLnVpLmZvcm0gLm9uZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC50d28ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAudGhyZWUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZvdXIud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZpdmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnNpeC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5zZXZlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZWlnaHQud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLm5pbmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnRlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5lbGV2ZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnR3ZWx2ZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAudGhpcnRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZvdXJ0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZpZnRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnNpeHRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi8qIFN3YXAgdG8gZnVsbCB3aWR0aCBvbiBtb2JpbGUgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudHdvLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZHMsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC50d28uZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAudGhyZWUuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLnRocmVlLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkcyxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZvdXIuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGRzLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZml2ZS5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAudHdvLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAudGhyZWUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5mb3VyLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZml2ZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnNpeC53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLnNldmVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZWlnaHQud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5uaW5lLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAudGVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAuZWxldmVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAudHdlbHZlLndpZGUuZmllbGQsXG4gIC51aS5mb3JtOm5vdCgudW5zdGFja2FibGUpIC5maWVsZHM6bm90KC51bnN0YWNrYWJsZSkgPiAudGhpcnRlZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5mb3VydGVlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybTpub3QoLnVuc3RhY2thYmxlKSAuZmllbGRzOm5vdCgudW5zdGFja2FibGUpID4gLmZpZnRlZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm06bm90KC51bnN0YWNrYWJsZSkgLmZpZWxkczpub3QoLnVuc3RhY2thYmxlKSA+IC5zaXh0ZWVuLndpZGUuZmllbGQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZm9ybSAuZmllbGRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBFcXVhbCBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmZvcm0gLmZpZWxkcyA+IC5maWVsZCxcbi51aS5mb3JtIFtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIElubGluZSBGaWVsZHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDBlbSAxZW0gMGVtIDBlbTtcbn1cblxuLyogSW5saW5lIExhYmVsICovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IHAsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiBHcm91cGVkIElubGluZSBMYWJlbCAqL1xuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyA+IGxhYmVsIHtcbiAgbWFyZ2luOiAwLjAzNTcxNGVtIDFlbSAwZW0gMGVtO1xufVxuXG4vKiBJbmxpbmUgSW5wdXQgKi9cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBzZWxlY3QsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBMYWJlbCAqL1xuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiA6Zmlyc3QtY2hpbGQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwZW0gMC44NTcxNDI4NmVtIDBlbSAwZW07XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IDpvbmx5LWNoaWxkLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IDpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi8qIFdpZGUgKi9cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLndpZGUuZmllbGQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC53aWRlLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAud2lkZS5maWVsZCA+IHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5mb3JtIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xufVxuXG4udWkudGlueS5mb3JtIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLmZvcm0ge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5sYXJnZS5mb3JtIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLmZvcm0ge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmZvcm0ge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG5cbi51aS5tYXNzaXZlLmZvcm0ge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIEdyaWRcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmdyaWQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoO1xuICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBSZW1vdmUgR3V0dGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZ3JpZCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xufVxuXG4udWkucmVsYXhlZC5ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IC0yLjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTIuNXJlbTtcbn1cblxuLyogUHJlc2VydmUgUm93cyBTcGFjaW5nIG9uIENvbnNlY3V0aXZlIEdyaWRzICovXG5cbi51aS5ncmlkICsgLmdyaWQge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2x1bW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFN0YW5kYXJkIDE2IGNvbHVtbiAqL1xuXG4udWkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNi4yNSU7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUm93c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZ3JpZCA+IC5yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1ib3gtcGFjazogaW5oZXJpdDtcbiAgLW1zLWZsZXgtcGFjazogaW5oZXJpdDtcbiAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2g7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbHVtbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVmVydGljYWwgcGFkZGluZyB3aGVuIG5vIHJvd3MgKi9cblxuLnVpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmdyaWQgPiAucm93ID4gaW1nLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiA+IGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTG9vc2UgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQ29sbGFwc2UgTWFyZ2luIG9uIENvbnNlY3V0aXZlIEdyaWQgKi9cblxuLnVpLmdyaWQgPiAudWkuZ3JpZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmdyaWQgPiAudWkuZ3JpZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKiBTZWdtZW50IGluc2lkZSBBbGlnbmVkIEdyaWQgKi9cblxuLnVpLmdyaWQgLmFsaWduZWQucm93ID4gLmNvbHVtbiA+IC5zZWdtZW50Om5vdCguY29tcGFjdCk6bm90KC5hdHRhY2hlZCksXG4udWkuYWxpZ25lZC5ncmlkIC5jb2x1bW4gPiAuc2VnbWVudDpub3QoLmNvbXBhY3QpOm5vdCguYXR0YWNoZWQpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEFsaWduIERpdmlkZXJzIHdpdGggR3V0dGVyICovXG5cbi51aS5ncmlkIC5yb3cgKyAudWkuZGl2aWRlciB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbjogMXJlbSAxcmVtO1xufVxuXG4udWkuZ3JpZCAuY29sdW1uICsgLnVpLnZlcnRpY2FsLmRpdmlkZXIge1xuICBoZWlnaHQ6IGNhbGMoNTAlIC0gKDJyZW0gLyAyKSk7XG59XG5cbi8qIFJlbW92ZSBCb3JkZXIgb24gTGFzdCBIb3Jpem9udGFsIFNlZ21lbnQgKi9cblxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkID4gLmhvcml6b250YWwuc2VnbWVudCxcbi51aS5ncmlkID4gLmNvbHVtbjpsYXN0LWNoaWxkID4gLmhvcml6b250YWwuc2VnbWVudCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBhZ2UgR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLnBhZ2UuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwZW07XG4gICAgcGFkZGluZy1yaWdodDogMGVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gICAgcGFkZGluZy1yaWdodDogMmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnVpLnBhZ2UuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTkxOXB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTUlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyMyU7XG4gICAgcGFkZGluZy1yaWdodDogMjMlO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBDb2x1bW4gQ291bnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQXNzdW1lIGZ1bGwgd2lkdGggd2l0aCBvbmUgY29sdW1uICovXG5cbi51aS5ncmlkID4gLmNvbHVtbjpvbmx5LWNoaWxkLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbjpvbmx5LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEdyaWQgQmFzZWQgKi9cblxuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuXG4udWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cblxuLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiAxNC4yODU3MTQyOSU7XG59XG5cbi51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDExLjExMTExMTExJTtcbn1cblxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDkuMDkwOTA5MDklO1xufVxuXG4udWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogNy42OTIzMDc2OSU7XG59XG5cbi51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICB3aWR0aDogNy4xNDI4NTcxNCU7XG59XG5cbi51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclO1xufVxuXG4udWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIHdpZHRoOiA2LjI1JTtcbn1cblxuLyogUm93IEJhc2VkIE92ZXJyaWRlcyAqL1xuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTYuNjY2NjY2NjclICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDExLjExMTExMTExJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA5LjA5MDkwOTA5JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogOC4zMzMzMzMzMyUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogNy42OTIzMDc2OSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogNy4xNDI4NTcxNCUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA2LjY2NjY2NjY3JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi8qIENlbGxlZCBQYWdlICovXG5cbi51aS5jZWxsZWQucGFnZS5ncmlkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDb2x1bW4gV2lkdGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDE4Ljc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDU2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDkzLjc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFdpZHRoIHBlciBEZXZpY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlIFNpemluZyBDb21iaW5hdGlvbnMgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBUYWJsZXQgU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDU2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDkzLjc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIENvbXB1dGVyL0Rlc2t0b3AgU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIExhcmdlIE1vbml0b3IgU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTlweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogV2lkZXNjcmVlbiBTaXppbmcgQ29tYmluYXRpb25zICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENlbnRlcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jZW50ZXJlZC5ncmlkLFxuLnVpLmNlbnRlcmVkLmdyaWQgPiAucm93LFxuLnVpLmdyaWQgPiAuY2VudGVyZWQucm93IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi51aS5jZW50ZXJlZC5ncmlkID4gLmNvbHVtbjpub3QoLmFsaWduZWQpOm5vdCguanVzdGlmaWVkKTpub3QoLnJvdyksXG4udWkuY2VudGVyZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOm5vdCguYWxpZ25lZCk6bm90KC5qdXN0aWZpZWQpLFxuLnVpLmdyaWQgLmNlbnRlcmVkLnJvdyA+IC5jb2x1bW46bm90KC5hbGlnbmVkKTpub3QoLmp1c3RpZmllZCkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWkuZ3JpZCA+IC5jZW50ZXJlZC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuY2VudGVyZWQuY29sdW1uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSZWxheGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZWxheGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5yZWxheGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gLnJlbGF4ZWQucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG59XG5cbi8qIENvdXBsaW5nIHdpdGggVUkgRGl2aWRlciAqL1xuXG4udWkucmVsYXhlZC5ncmlkIC5yb3cgKyAudWkuZGl2aWRlcixcbi51aS5ncmlkIC5yZWxheGVkLnJvdyArIC51aS5kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCAucm93ICsgLnVpLmRpdmlkZXIsXG4udWkuZ3JpZCBbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLnJvdyArIC51aS5kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQYWRkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZGRlZC5ncmlkOm5vdCgudmVydGljYWxseSk6bm90KC5ob3Jpem9udGFsbHkpIHtcbiAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbn1cblxuW2NsYXNzKj1cImhvcml6b250YWxseSBwYWRkZWRcIl0udWkuZ3JpZCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuW2NsYXNzKj1cInZlcnRpY2FsbHkgcGFkZGVkXCJdLnVpLmdyaWQge1xuICBtYXJnaW4tdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFwiRmxvYXRlZFwiXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uY29sdW1uIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5jb2x1bW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW4ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKiBTd2FwIGZyb20gcGFkZGluZyB0byBtYXJnaW4gb24gY29sdW1ucyB0byBoYXZlIGRpdmlkZXJzIGFsaWduICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDByZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3cge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyogTm8gZGl2aWRlciBvbiBmaXJzdCBjb2x1bW4gb24gcm93ICovXG5cbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIE5vIHNwYWNlIG9uIHRvcCBvZiBmaXJzdCByb3cgKi9cblxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpmaXJzdC1jaGlsZCA+IC5jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qIERpdmlkZWQgUm93ICovXG5cbi51aS5ncmlkID4gLmRpdmlkZWQucm93ID4gLmNvbHVtbiB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5ncmlkID4gLmRpdmlkZWQucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogVmVydGljYWxseSBEaXZpZGVkICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICB0b3A6IDBlbTtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDAlIDFyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIFBhZGRlZCBIb3Jpem9udGFsbHkgRGl2aWRlZCAqL1xuXG5bY2xhc3MqPVwiaG9yaXpvbnRhbGx5IHBhZGRlZFwiXS51aS5kaXZpZGVkLmdyaWQsXG4udWkucGFkZGVkLmRpdmlkZWQuZ3JpZDpub3QoLnZlcnRpY2FsbHkpOm5vdCguaG9yaXpvbnRhbGx5KSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBGaXJzdCBSb3cgVmVydGljYWxseSBEaXZpZGVkICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBJbnZlcnRlZCBEaXZpZGVkICovXG5cbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQsXG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW52ZXJ0ZWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4vKiBSZWxheGVkICovXG5cbi51aS5yZWxheGVkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogMi41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIENlbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLmdyaWQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENTtcbn1cblxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4ICNENEQ0RDU7XG59XG5cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCAjRDRENEQ1O1xufVxuXG4udWkuY2VsbGVkLmdyaWQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi51aS5yZWxheGVkLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkucmVsYXhlZC5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogMS41ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDJlbTtcbn1cblxuLyogSW50ZXJuYWxseSBDZWxsZWQgKi9cblxuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWlbY2xhc3MqPVwiaW50ZXJuYWxseSBjZWxsZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aVtjbGFzcyo9XCJpbnRlcm5hbGx5IGNlbGxlZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVmVydGljYWxseSBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvcCBBbGlnbmVkICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi8qIE1pZGRsZSBBbGlnbmVkICovXG5cbi51aVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJvdHRvbSBBbGlnbmVkICovXG5cbi51aVtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLyogU3RyZXRjaGVkICovXG5cbi51aS5zdHJldGNoZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLmNvbHVtbixcbi51aS5ncmlkID4gLnN0cmV0Y2hlZC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiAuc3RyZXRjaGVkLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZ3JpZCA+IC5yb3cgPiAuc3RyZXRjaGVkLmNvbHVtbiB7XG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3ggIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4udWkuc3RyZXRjaGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiA+ICosXG4udWkuc3RyZXRjaGVkLmdyaWQgPiAuY29sdW1uID4gKixcbi51aS5ncmlkID4gLnN0cmV0Y2hlZC5yb3cgPiAuY29sdW1uID4gKixcbi51aS5ncmlkID4gLnN0cmV0Y2hlZC5jb2x1bW46bm90KC5yb3cpID4gKixcbi51aS5ncmlkID4gLnJvdyA+IC5zdHJldGNoZWQuY29sdW1uID4gKiB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBIb3Jpem9udGFsbHkgQ2VudGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVmdCBBbGlnbmVkICovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBpbmhlcml0O1xuICBhbGlnbi1zZWxmOiBpbmhlcml0O1xufVxuXG4vKiBDZW50ZXIgQWxpZ25lZCAqL1xuXG4udWlbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uY29sdW1uLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogaW5oZXJpdDtcbiAgYWxpZ24tc2VsZjogaW5oZXJpdDtcbn1cblxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmdyaWQge1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8qIFJpZ2h0IEFsaWduZWQgKi9cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLmNvbHVtbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGluaGVyaXQ7XG4gIGFsaWduLXNlbGY6IGluaGVyaXQ7XG59XG5cbi8qIEp1c3RpZmllZCAqL1xuXG4udWkuanVzdGlmaWVkLmdyaWQgPiAuY29sdW1uLFxuLnVpLmp1c3RpZmllZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5qdXN0aWZpZWQucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gLmp1c3RpZmllZC5jb2x1bW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmp1c3RpZmllZC5jb2x1bW4uY29sdW1uIHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBDb2xvcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkID4gLnJvdyA+IC5yZWQuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLm9yYW5nZS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAueWVsbG93LmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5vbGl2ZS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuZ3JlZW4uY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLnRlYWwuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmJsdWUuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLnZpb2xldC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAucHVycGxlLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5waW5rLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5icm93bi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuZ3JleS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuYmxhY2suY29sdW1uIHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi8qIFJlZCAqL1xuXG4udWkuZ3JpZCA+IC5yZWQucm93LFxuLnVpLmdyaWQgPiAucmVkLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5yZWQuY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogT3JhbmdlICovXG5cbi51aS5ncmlkID4gLm9yYW5nZS5yb3csXG4udWkuZ3JpZCA+IC5vcmFuZ2UuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLm9yYW5nZS5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBZZWxsb3cgKi9cblxuLnVpLmdyaWQgPiAueWVsbG93LnJvdyxcbi51aS5ncmlkID4gLnllbGxvdy5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAueWVsbG93LmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkJEMDggIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIE9saXZlICovXG5cbi51aS5ncmlkID4gLm9saXZlLnJvdyxcbi51aS5ncmlkID4gLm9saXZlLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5vbGl2ZS5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBHcmVlbiAqL1xuXG4udWkuZ3JpZCA+IC5ncmVlbi5yb3csXG4udWkuZ3JpZCA+IC5ncmVlbi5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuZ3JlZW4uY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogVGVhbCAqL1xuXG4udWkuZ3JpZCA+IC50ZWFsLnJvdyxcbi51aS5ncmlkID4gLnRlYWwuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLnRlYWwuY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogQmx1ZSAqL1xuXG4udWkuZ3JpZCA+IC5ibHVlLnJvdyxcbi51aS5ncmlkID4gLmJsdWUuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmJsdWUuY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogVmlvbGV0ICovXG5cbi51aS5ncmlkID4gLnZpb2xldC5yb3csXG4udWkuZ3JpZCA+IC52aW9sZXQuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLnZpb2xldC5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBQdXJwbGUgKi9cblxuLnVpLmdyaWQgPiAucHVycGxlLnJvdyxcbi51aS5ncmlkID4gLnB1cnBsZS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAucHVycGxlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBMzMzQzggIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIFBpbmsgKi9cblxuLnVpLmdyaWQgPiAucGluay5yb3csXG4udWkuZ3JpZCA+IC5waW5rLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5waW5rLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTcgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIEJyb3duICovXG5cbi51aS5ncmlkID4gLmJyb3duLnJvdyxcbi51aS5ncmlkID4gLmJyb3duLmNvbHVtbixcbi51aS5ncmlkID4gLnJvdyA+IC5icm93bi5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTU2NzNGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBHcmV5ICovXG5cbi51aS5ncmlkID4gLmdyZXkucm93LFxuLnVpLmdyaWQgPiAuZ3JleS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuZ3JleS5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiBCbGFjayAqL1xuXG4udWkuZ3JpZCA+IC5ibGFjay5yb3csXG4udWkuZ3JpZCA+IC5ibGFjay5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yb3cgPiAuYmxhY2suY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFcXVhbCBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLndpZGUuY29sdW1uLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLndpZGUuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0ucm93ID4gLndpZGUuY29sdW1uIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDA7XG4gIGZsZXgtZ3JvdzogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFJldmVyc2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5ncmlkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdLmdyaWQsXG4gIC51aS5zdGFja2FibGVbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdIHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIC8qIERpdmlkZWQgUmV2ZXJzZWQgKi9cblxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gICAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwibW9iaWxlIHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qIFZlcnRpY2FsbHkgRGl2aWRlZCBSZXZlcnNlZCAqL1xuXG4gIC51aS5ncmlkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXVtjbGFzcyo9XCJtb2JpbGUgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIH1cblxuICAudWkuZ3JpZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl1bY2xhc3MqPVwibW9iaWxlIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93Omxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qIENlbGxlZCBSZXZlcnNlZCAqL1xuXG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4ICNENEQ0RDU7XG4gICAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCAjRDRENEQ1O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8qIFRhYmxldCAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5ncmlkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0ucm93IHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdLmdyaWQge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG5cbiAgLyogRGl2aWRlZCBSZXZlcnNlZCAqL1xuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmRpdmlkZWQuZ3JpZDpub3QoW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXSkgPiAuY29sdW1uOmxhc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLyogVmVydGljYWxseSBEaXZpZGVkIFJldmVyc2VkICovXG5cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cInRhYmxldCB2ZXJ0aWNhbGx5IHJldmVyc2VkXCJdID4gLnJvdzpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAgIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgfVxuXG4gIC51aS5ncmlkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXVtjbGFzcyo9XCJ0YWJsZXQgdmVydGljYWxseSByZXZlcnNlZFwiXSA+IC5yb3c6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLyogQ2VsbGVkIFJldmVyc2VkICovXG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggI0Q0RDRENTtcbiAgICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4ICNENEQ0RDU7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHJldmVyc2VkXCJdLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLyogQ29tcHV0ZXIgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZ3JpZCxcbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIHJldmVyc2VkXCJdLmdyaWQgPiAucm93LFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5yb3cge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgdmVydGljYWxseSByZXZlcnNlZFwiXS5ncmlkIHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIC8qIERpdmlkZWQgUmV2ZXJzZWQgKi9cblxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAgIGJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLyogVmVydGljYWxseSBEaXZpZGVkIFJldmVyc2VkICovXG5cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cImNvbXB1dGVyIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93OmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gICAgYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICB9XG5cbiAgLnVpLmdyaWRbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdW2NsYXNzKj1cImNvbXB1dGVyIHZlcnRpY2FsbHkgcmV2ZXJzZWRcIl0gPiAucm93Omxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qIENlbGxlZCBSZXZlcnNlZCAqL1xuXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciByZXZlcnNlZFwiXS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggI0Q0RDRENTtcbiAgICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4ICNENEQ0RDU7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgcmV2ZXJzZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERvdWJsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRhYmxldCBPbmx5ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWkuZG91YmxpbmcuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAudWkuZ3JpZCA+IC5kb3VibGluZy5yb3csXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwZW07XG4gIH1cblxuICAudWlbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogTW9iaWxlIE9ubHkgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuZ3JpZCA+IC5kb3VibGluZy5yb3csXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDBlbSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93LnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc3RhY2thYmxlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLnJvdyA+IC53aWRlLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLndpZGUuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uLmdyaWQgPiAuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLmdyaWQgPiAuc3RhY2thYmxlLnN0YWNrYWJsZS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtIDBlbSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuZ3JpZDpub3QoLnZlcnRpY2FsbHkpID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwZW07XG4gICAgcGFkZGluZzogMGVtO1xuICB9XG5cbiAgLyogQ291cGxpbmcgKi9cblxuICAudWkuY29udGFpbmVyID4gLnVpLnN0YWNrYWJsZS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmNvbnRhaW5lciA+IC51aS5zdGFja2FibGUuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogRG9uJ3QgcGFkIGluc2lkZSBzZWdtZW50IG9yIG5lc3RlZCBncmlkICovXG5cbiAgLnVpLmdyaWQgLnVpLnN0YWNrYWJsZS5ncmlkLFxuICAudWkuc2VnbWVudDpub3QoLnZlcnRpY2FsKSAudWkuc3RhY2thYmxlLnBhZ2UuZ3JpZCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogRGl2aWRlZCBTdGFja2FibGUgKi9cblxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdzpmaXJzdC1jaGlsZCA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmludmVydGVkLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5pbnZlcnRlZC5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZDpub3QoLnZlcnRpY2FsbHkpLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbiAgLnVpLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQ6bm90KC52ZXJ0aWNhbGx5KS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdyB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkOm5vdCgudmVydGljYWxseSkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQ6bm90KC52ZXJ0aWNhbGx5KS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIHBhZGRpbmctbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE9ubHkgKERldmljZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGhlc2UgaW5jbHVkZSBhcmJpdHJhcnkgY2xhc3MgcmVwZXRpdGlvbnMgZm9yIGZvcmNlZCBzcGVjaWZpY2l0eSAqL1xuXG4vKiBNb2JpbGUgT25seSBIaWRlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBUYWJsZXQgT25seSBIaWRlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWlbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5yb3c6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5jb2x1bW46bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImxhcmdlIHNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIENvbXB1dGVyIE9ubHkgSGlkZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibGFyZ2Ugc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJsYXJnZSBzY3JlZW4gb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIndpZGVzY3JlZW4gb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBMYXJnZSBTY3JlZW4gT25seSBIaWRlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTkxOXB4KSB7XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwid2lkZXNjcmVlbiBvbmx5XCJdLnJvdzpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ3aWRlc2NyZWVuIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFdpZGVzY3JlZW4gT25seSBIaWRlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLnJvdzpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0YWJsZXQgb25seVwiXS5jb2x1bW46bm90KC5jb21wdXRlcikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuICogIyBTZW1hbnRpYyAtIE1lbnVcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTUgQ29udHJpYnV0b3JcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFyZW0gMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBtaW4taGVpZ2h0OiAyLjg1NzE0Mjg2ZW07XG59XG5cbi51aS5tZW51OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDBweDtcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLm1lbnU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xufVxuXG4udWkubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN1Yi1NZW51XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAubWVudSB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSA+IC5tZW51IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJdGVtXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnVpLm1lbnUgLml0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAuOTI4NTcxNDNlbSAxLjE0Mjg1NzE0ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG59XG5cbi51aS5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBweCAwcHggMC4yODU3MTQyOXJlbTtcbn1cblxuLyogQm9yZGVyICovXG5cbi51aS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMCU7XG4gIHJpZ2h0OiAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFRleHQgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLnRleHQuaXRlbSA+ICosXG4udWkubWVudSAuaXRlbSA+IGE6bm90KC51aSksXG4udWkubWVudSAuaXRlbSA+IHA6b25seS1jaGlsZCB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIC1tb3otdXNlci1zZWxlY3Q6IHRleHQ7XG4gIC1tcy11c2VyLXNlbGVjdDogdGV4dDtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi51aS5tZW51IC5pdGVtID4gcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi51aS5tZW51IC5pdGVtID4gcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5pdGVtID4gaS5pY29uIHtcbiAgb3BhY2l0eTogMC45O1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMC4zNTcxNDI4NmVtIDBlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSA+IC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMGVtO1xuICBtYXJnaW46IC0wLjVlbSAwZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc4NTcxNDI5ZW07XG4gIHBhZGRpbmctdG9wOiAwLjc4NTcxNDI5ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS1cbiBHcmlkIC8gQ29udGFpbmVyXG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51ID4gLmdyaWQsXG4udWkubWVudSA+IC5jb250YWluZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBpbmhlcml0O1xuICAtbXMtZmxleC1hbGlnbjogaW5oZXJpdDtcbiAgYWxpZ24taXRlbXM6IGluaGVyaXQ7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaW5oZXJpdDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBpbmhlcml0O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGluaGVyaXQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBpbmhlcml0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIElucHV0c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW0gPiAuaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLml0ZW0gPiAuaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMGVtO1xuICBtYXJnaW46IC0wLjVlbSAwZW07XG59XG5cbi51aS5tZW51IC5pdGVtID4gLmlucHV0IGlucHV0IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmctdG9wOiAwLjU3MTQyODU3ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjU3MTQyODU3ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaGVhZGVyLml0ZW0sXG4udWkudmVydGljYWwubWVudSAuaGVhZGVyLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgYmFja2dyb3VuZDogJyc7XG4gIHRleHQtdHJhbnNmb3JtOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5oZWFkZXI6bm90KC51aSkge1xuICBtYXJnaW46IDBlbSAwZW0gMC41ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERyb3Bkb3duc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRHJvcGRvd24gSWNvbiAqL1xuXG4udWkubWVudSAuaXRlbSA+IGkuZHJvcGRvd24uaWNvbiB7XG4gIHBhZGRpbmc6IDBlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDFlbTtcbn1cblxuLyogTWVudSAqL1xuXG4udWkubWVudSAuZHJvcGRvd24uaXRlbSAubWVudSB7XG4gIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMXB4KTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMGVtIDBweCAwcHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbn1cblxuLyogTWVudSBJdGVtcyAqL1xuXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDEuMTQyODU3MTRlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KSAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSA+IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KSAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuc2VsZWN0ZWQuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51ID4gLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KSAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAudWkuZHJvcGRvd24uaXRlbSAubWVudSAuaXRlbTpub3QoLmZpbHRlcmVkKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSAuaWNvbjpub3QoLmRyb3Bkb3duKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudDtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtIDAuNzVlbSAwZW0gMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNlY29uZGFyeSAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAubWVudSxcbi51aS50ZXh0Lm1lbnUgLmRyb3Bkb3duLml0ZW0gPiAubWVudSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIG1hcmdpbi10b3A6IDAuMzU3MTQyODZlbTtcbn1cblxuLyogUG9pbnRpbmcgKi9cblxuLnVpLm1lbnUgLnBvaW50aW5nLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBtYXJnaW4tdG9wOiAwLjc1ZW07XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5zZWFyY2guZHJvcGRvd24uaXRlbSA+IC5zZWFyY2gsXG4udWkuaW52ZXJ0ZWQubWVudSAuc2VhcmNoLmRyb3Bkb3duLml0ZW0gPiAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi8qIFZlcnRpY2FsICovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgbGVmdDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkudmVydGljYWwubWVudSAuZHJvcGRvd24uaXRlbS51cHdhcmQgLm1lbnUge1xuICBib3R0b206IDA7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtOm5vdCgudXB3YXJkKSAubWVudSB7XG4gIHRvcDogMDtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5kcm9wZG93bi5pdGVtIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLmFjdGl2ZS5pdGVtIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBFdmVubHkgRGl2aWRlZCAqL1xuXG4udWkuaXRlbS5tZW51IC5kcm9wZG93biAubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW0gPiAubGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjOTk5OTk5O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgcGFkZGluZzogMC4zZW0gMC43ODU3MTQyOWVtO1xufVxuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCB7XG4gIGJhY2tncm91bmQ6ICM5OTk5OTk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW4tdG9wOiAtMC4xNWVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC4xNWVtO1xuICBwYWRkaW5nOiAwLjNlbSAwLjc4NTcxNDI5ZW07XG59XG5cbi51aS5tZW51IC5pdGVtID4gLmZsb2F0aW5nLmxhYmVsIHtcbiAgcGFkZGluZzogMC4zZW0gMC43ODU3MTQyOWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW0gPiBpbWc6bm90KC51aSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogLTAuM2VtIDBlbTtcbiAgd2lkdGg6IDIuNWVtO1xufVxuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IGltZzpub3QoLnVpKTpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTGlzdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSBkaXZpZGVyIHNob3VsZG50IGFwcGx5ICovXG5cbi51aS5tZW51IC5saXN0IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaWRlYmFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTaG93IHZlcnRpY2FsIGRpdmlkZXJzIGJlbG93IGxhc3QgKi9cblxuLnVpLnZlcnRpY2FsLnNpZGViYXIubWVudSA+IC5pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi51aS52ZXJ0aWNhbC5zaWRlYmFyLm1lbnUgPiAuaXRlbTo6YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbnRhaW5lclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkubWVudSA+IC51aS5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkubWVudTpub3QoLnNlY29uZGFyeSk6bm90KC50ZXh0KTpub3QoLnRhYnVsYXIpOm5vdCguYm9yZGVybGVzcykgPiAuY29udGFpbmVyID4gLml0ZW06bm90KC5yaWdodCk6bm90KC5ib3JkZXJsZXNzKTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5tZW51IC5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQcmVzc2VkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5tZW51IC5pdGVtOmFjdGl2ZSxcbi51aS5tZW51IC5saW5rLml0ZW06YWN0aXZlLFxuLnVpLm1lbnUgYS5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLm1lbnUgLmFjdGl2ZS5pdGVtID4gaS5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBBY3RpdmUgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5hY3RpdmUuaXRlbTpob3Zlcixcbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbS5kaXNhYmxlZCxcbi51aS5tZW51IC5pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMykgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbkZsb2F0ZWQgTWVudSAvIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWZ0IEZsb2F0ZWQgKi9cblxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLmxlZnQuaXRlbSxcbi51aS5tZW51Om5vdCgudmVydGljYWwpIDpub3QoLmRyb3Bkb3duKSA+IC5sZWZ0Lm1lbnUge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKiBSaWdodCBGbG9hdGVkICovXG5cbi51aS5tZW51Om5vdCgudmVydGljYWwpIC5yaWdodC5pdGVtLFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLnJpZ2h0Lm1lbnUge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIFN3YXBwZWQgQm9yZGVycyAqL1xuXG4udWkubWVudSAucmlnaHQuaXRlbTo6YmVmb3JlLFxuLnVpLm1lbnUgLnJpZ2h0Lm1lbnUgPiAuaXRlbTo6YmVmb3JlIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKi0tLSBJdGVtIC0tLSovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwcHggMHB4O1xufVxuXG4udWkudmVydGljYWwubWVudSA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLyotLS0gTGFiZWwgLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubGFiZWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0gSWNvbiAtLS0qL1xuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IGkuaWNvbiB7XG4gIHdpZHRoOiAxLjE4ZW07XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwLjVlbTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubGFiZWwgKyBpLmljb24ge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMC41ZW0gMGVtIDBlbTtcbn1cblxuLyotLS0gQm9yZGVyIC0tLSovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMCU7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0gU3ViIE1lbnUgLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gPiAubWVudSB7XG4gIG1hcmdpbjogMC41ZW0gLTEuMTQyODU3MTRlbSAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMC41ZW0gMS4zMzMzMzMzM2VtO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgYS5pdGVtOmhvdmVyLFxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmxpbmsuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4udWkudmVydGljYWwubWVudSAubWVudSAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBWZXJ0aWNhbCBBY3RpdmUgKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51ID4gLmFjdGl2ZS5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBlbSAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51ID4gLmFjdGl2ZS5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgPiAuYWN0aXZlLml0ZW06b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuaXRlbSAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUYWJ1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFidWxhci5tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDRENEQ1O1xufVxuXG4udWkudGFidWxhci5mbHVpZC5tZW51IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICgxcHggKiAyKSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnRhYnVsYXIubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjkyODU3MTQzZW0gMS40Mjg1NzE0M2VtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLnRhYnVsYXIubWVudSAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkudGFidWxhci5tZW51IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiAjRDRENEQ1O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMHB4IDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3VwbGluZyB3aXRoIHNlZ21lbnQgZm9yIGF0dGFjaG1lbnQgKi9cblxuLnVpLnRhYnVsYXIubWVudSArIC5hdHRhY2hlZDpub3QoLnRvcCkuc2VnbWVudCxcbi51aS50YWJ1bGFyLm1lbnUgKyAuYXR0YWNoZWQ6bm90KC50b3ApLnNlZ21lbnQgKyAuYXR0YWNoZWQ6bm90KC50b3ApLnNlZ21lbnQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRvcC5hdHRhY2hlZC5zZWdtZW50ICsgLnVpLmJvdHRvbS50YWJ1bGFyLm1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAoMXB4ICogMikpO1xuICBsZWZ0OiAtMXB4O1xufVxuXG4vKiBCb3R0b20gVmVydGljYWwgVGFidWxhciAqL1xuXG4udWkuYm90dG9tLnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNENEQ0RDU7XG59XG5cbi51aS5ib3R0b20udGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLmJvdHRvbS50YWJ1bGFyLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZSAjRkZGRkZGO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAjRDRENEQ1O1xuICBtYXJnaW46IC0xcHggMHB4IDBweCAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZlcnRpY2FsIFRhYnVsYXIgKExlZnQpICovXG5cbi51aS52ZXJ0aWNhbC50YWJ1bGFyLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNENEQ0RDU7XG59XG5cbi51aS52ZXJ0aWNhbC50YWJ1bGFyLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udWkudmVydGljYWwudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIGJvcmRlci1jb2xvcjogI0Q0RDRENTtcbiAgbWFyZ2luOiAwcHggLTFweCAwcHggMHB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBweCAwcHggMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBWZXJ0aWNhbCBSaWdodCBUYWJ1bGFyICovXG5cbi51aS52ZXJ0aWNhbC5yaWdodC50YWJ1bGFyLm1lbnUge1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRDRENEQ1O1xufVxuXG4udWkudmVydGljYWwucmlnaHQudGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnZlcnRpY2FsLnJpZ2h0LnRhYnVsYXIubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiBub25lICNGRkZGRkY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICBib3JkZXItY29sb3I6ICNENEQ0RDU7XG4gIG1hcmdpbjogMHB4IDBweCAwcHggLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMHB4IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwcHggIWltcG9ydGFudDtcbn1cblxuLyogRHJvcGRvd24gKi9cblxuLnVpLnRhYnVsYXIubWVudSAuYWN0aXZlLmRyb3Bkb3duLml0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWdpbmF0aW9uLm1lbnUge1xuICBtYXJnaW46IDBlbTtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbn1cblxuLnVpLmNvbXBhY3QubWVudSAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi51aS5wYWdpbmF0aW9uLm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtIHtcbiAgbWluLXdpZHRoOiAzZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLnBhZ2luYXRpb24ubWVudSAuaWNvbi5pdGVtIGkuaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkucGFnaW5hdGlvbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiAwLjkyODU3MTQzZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY29uZGFyeS5tZW51IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjM1NzE0Mjg2ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuMzU3MTQyODZlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBib3JkZXI6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSXRlbSAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLml0ZW0ge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAwLjkyODU3MTQzZW07XG4gIG1hcmdpbjogMGVtIDAuMzU3MTQyODZlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyogTm8gRGl2aWRlciAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBIZWFkZXIgKi9cblxuLnVpLnNlY29uZGFyeS5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLml0ZW0gPiBpbWc6bm90KC51aSkge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLnNlY29uZGFyeS5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5tZW51IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5Lm1lbnUgYS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyogQWN0aXZlIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUgLmxpbmsuaXRlbSxcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSBhLml0ZW0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAuZHJvcGRvd24uaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4vKiBGaXggaXRlbSBtYXJnaW5zICovXG5cbi51aS5zZWNvbmRhcnkuaXRlbS5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi51aS5zZWNvbmRhcnkuaXRlbS5tZW51IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLnVpLnNlY29uZGFyeS5hdHRhY2hlZC5tZW51IHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuXG4udWkudmVydGljYWwuc2Vjb25kYXJ5Lm1lbnUgLml0ZW06bm90KC5kcm9wZG93bikgPiAubWVudSB7XG4gIG1hcmdpbjogMGVtIC0wLjkyODU3MTQzZW07XG59XG5cbi51aS52ZXJ0aWNhbC5zZWNvbmRhcnkubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMC41ZW0gMS4zMzMzMzMzM2VtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgU2Vjb25kYXJ5IFZlcnRpY2FsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWNvbmRhcnkudmVydGljYWwubWVudSA+IC5pdGVtIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDBlbSAwZW0gMC4zNTcxNDI4NmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWNvbmRhcnkudmVydGljYWwubWVudSA+IC5oZWFkZXIuaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLyogU3ViIE1lbnUgKi9cblxuLnVpLnZlcnRpY2FsLnNlY29uZGFyeS5tZW51IC5pdGVtID4gLm1lbnUgLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTZWNvbmRhcnkgUG9pbnRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLml0ZW0ge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAwZW0gMGVtIC0ycHg7XG4gIHBhZGRpbmc6IDAuODU3MTQyODZlbSAxLjE0Mjg1NzE0ZW07XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLyogSXRlbSBUeXBlcyAqL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC50ZXh0Lml0ZW0ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSBhLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIFByZXNzZWQgKi9cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5kcm9wZG93bi5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAubGluay5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSBhLml0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6ICMxQjFDMUQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyogQWN0aXZlIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKiBBY3RpdmUgRHJvcGRvd24gKi9cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC5hY3RpdmUuZHJvcGRvd24uaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFZlcnRpY2FsIFBvaW50aW5nICovXG5cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDBweDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIC0ycHggMGVtIDBlbTtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG59XG5cbi8qIFZlcnRpY2FsIEFjdGl2ZSAqL1xuXG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjMUIxQzFEO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IHtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBUZXh0IE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50ZXh0Lm1lbnUge1xuICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDFlbSAtMC41ZW07XG59XG5cbi51aS50ZXh0Lm1lbnUgLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIG1hcmdpbjogMGVtIDBlbTtcbiAgcGFkZGluZzogMC4zNTcxNDI4NmVtIDAuNWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cblxuLyogQm9yZGVyICovXG5cbi51aS50ZXh0Lm1lbnUgLml0ZW06YmVmb3JlLFxuLnVpLnRleHQubWVudSAubWVudSAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhlYWRlciAqL1xuXG4udWkudGV4dC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkudGV4dC5tZW51IC5pdGVtID4gaW1nOm5vdCgudWkpIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi8qLS0tIGZsdWlkIHRleHQgLS0tKi9cblxuLnVpLnRleHQuaXRlbS5tZW51IC5pdGVtIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi8qLS0tIHZlcnRpY2FsIHRleHQgLS0tKi9cblxuLnVpLnZlcnRpY2FsLnRleHQubWVudSB7XG4gIG1hcmdpbjogMWVtIDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLnRleHQubWVudTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDByZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDAuNTcxNDI4NTdlbSAwZW07XG4gIHBhZGRpbmctbGVmdDogMGVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLml0ZW0gPiBpLmljb24ge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMC4zNTcxNDI4NmVtIDBlbSAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgbWFyZ2luOiAwLjU3MTQyODU3ZW0gMGVtIDAuNzE0Mjg1NzFlbTtcbn1cblxuLyogVmVydGljYWwgU3ViIE1lbnUgKi9cblxuLnVpLnZlcnRpY2FsLnRleHQubWVudSAuaXRlbTpub3QoLmRyb3Bkb3duKSA+IC5tZW51IHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLml0ZW06bm90KC5kcm9wZG93bikgPiAubWVudSA+IC5pdGVtIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDAuNWVtIDBlbTtcbn1cblxuLyotLS0gaG92ZXIgLS0tKi9cblxuLnVpLnRleHQubWVudSAuaXRlbTpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLSBhY3RpdmUgLS0tKi9cblxuLnVpLnRleHQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKi0tLSBhY3RpdmUgaG92ZXIgLS0tKi9cblxuLnVpLnRleHQubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogRGlzYWJsZSBCYXJpYXRpb25zICovXG5cbi51aS50ZXh0LnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudGV4dC5hdHRhY2hlZC5tZW51IHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51LFxuLnVpLmludmVydGVkLnRleHQubWVudSAuaXRlbSxcbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUgLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi8qIEZsdWlkICovXG5cbi51aS5mbHVpZC50ZXh0Lm1lbnUge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEljb24gT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVmVydGljYWwgTWVudSAqL1xuXG4udWkudmVydGljYWwuaWNvbi5tZW51IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyogSXRlbSAqL1xuXG4udWkuaWNvbi5tZW51IC5pdGVtIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMUIxQzFEO1xufVxuXG4vKiBJY29uICovXG5cbi51aS5pY29uLm1lbnUgLml0ZW0gPiAuaWNvbjpub3QoLmRyb3Bkb3duKSB7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogSWNvbiBHeWxwaCAqL1xuXG4udWkuaWNvbi5tZW51IC5pY29uOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qICh4KSBJdGVtIEljb24gKi9cblxuLnVpLm1lbnUgLmljb24uaXRlbSA+IC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMGVtIGF1dG87XG59XG5cbi8qIFZlcnRpY2FsIEljb24gKi9cblxuLnVpLnZlcnRpY2FsLmljb24ubWVudSAuaXRlbSA+IC5pY29uOm5vdCguZHJvcGRvd24pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMGVtIGF1dG87XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuaWNvbi5tZW51IC5pdGVtIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIExhYmVsZWQgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSAqL1xuXG4udWkubGFiZWxlZC5pY29uLm1lbnUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIEl0ZW0gKi9cblxuLnVpLmxhYmVsZWQuaWNvbi5tZW51IC5pdGVtIHtcbiAgbWluLXdpZHRoOiA2ZW07XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkubGFiZWxlZC5pY29uLm1lbnUgLml0ZW0gPiAuaWNvbjpub3QoLmRyb3Bkb3duKSB7XG4gIGhlaWdodDogMWVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwZW0gYXV0byAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLyogRmx1aWQgKi9cblxuLnVpLmZsdWlkLmxhYmVsZWQuaWNvbi5tZW51ID4gLml0ZW0ge1xuICBtaW4td2lkdGg6IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc3RhY2thYmxlLm1lbnUge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUubWVudSAuaXRlbSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUubWVudSAuaXRlbTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUubWVudSAubGVmdC5tZW51LFxuICAudWkuc3RhY2thYmxlLm1lbnUgLmxlZnQuaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLm1lbnUgLnJpZ2h0Lm1lbnUsXG4gIC51aS5zdGFja2FibGUubWVudSAucmlnaHQuaXRlbSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUubWVudSAucmlnaHQubWVudSxcbiAgLnVpLnN0YWNrYWJsZS5tZW51IC5sZWZ0Lm1lbnUge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0gU3RhbmRhcmQgQ29sb3JzICAtLS0qL1xuXG4udWkubWVudSAucmVkLmFjdGl2ZS5pdGVtLFxuLnVpLnJlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAub3JhbmdlLmFjdGl2ZS5pdGVtLFxuLnVpLm9yYW5nZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0YyNzExQyAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAueWVsbG93LmFjdGl2ZS5pdGVtLFxuLnVpLnllbGxvdy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0ZCQkQwOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZCQkQwOCAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAub2xpdmUuYWN0aXZlLml0ZW0sXG4udWkub2xpdmUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6ICNCNUNDMTggIWltcG9ydGFudDtcbiAgY29sb3I6ICNCNUNDMTggIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLmdyZWVuLmFjdGl2ZS5pdGVtLFxuLnVpLmdyZWVuLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjFCQTQ1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC50ZWFsLmFjdGl2ZS5pdGVtLFxuLnVpLnRlYWwubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6ICMwMEI1QUQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMEI1QUQgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLmJsdWUuYWN0aXZlLml0ZW0sXG4udWkuYmx1ZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxODVEMCAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAudmlvbGV0LmFjdGl2ZS5pdGVtLFxuLnVpLnZpb2xldC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xuICBjb2xvcjogIzY0MzVDOSAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAucHVycGxlLmFjdGl2ZS5pdGVtLFxuLnVpLnB1cnBsZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAucGluay5hY3RpdmUuaXRlbSxcbi51aS5waW5rLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC5icm93bi5hY3RpdmUuaXRlbSxcbi51aS5icm93bi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI0E1NjczRiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0E1NjczRiAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAuZ3JleS5hY3RpdmUuaXRlbSxcbi51aS5ncmV5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjNzY3Njc2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNzY3Njc2ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLm1lbnUge1xuICBib3JkZXI6IDBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBNZW51IEl0ZW0gKi9cblxuLnVpLmludmVydGVkLm1lbnUgLml0ZW0sXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSA+IGE6bm90KC51aSkge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLmludmVydGVkLm1lbnUgLml0ZW0ubWVudSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLSBCb3JkZXIgLS0tKi9cblxuLnVpLmludmVydGVkLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cblxuLnVpLnZlcnRpY2FsLmludmVydGVkLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cblxuLyogU3ViIE1lbnUgKi9cblxuLnVpLnZlcnRpY2FsLmludmVydGVkLm1lbnUgLm1lbnUgLml0ZW0sXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAubWVudSAuaXRlbSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLyogSGVhZGVyICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIG1hcmdpbjogMGVtO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbS5kaXNhYmxlZCxcbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cblxuLyotLS0gSG92ZXIgLS0tKi9cblxuLnVpLmxpbmsuaW52ZXJ0ZWQubWVudSAuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5tZW51IC5kcm9wZG93bi5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSBhLml0ZW06aG92ZXIsXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSAubGluay5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLSBQcmVzc2VkIC0tLSovXG5cbi51aS5pbnZlcnRlZC5tZW51IGEuaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLSBBY3RpdmUgLS0tKi9cblxuLnVpLmludmVydGVkLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjM0QzRTNGICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBBY3RpdmUgSG92ZXIgLS0tKi9cblxuLnVpLmludmVydGVkLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzNEM0UzRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGVkLm1lbnUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwcmVtIDAuNXJlbSAwcmVtIDByZW07XG59XG5cbi51aS5mbG9hdGVkLm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkucmlnaHQuZmxvYXRlZC5tZW51IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDByZW0gMHJlbSAwcmVtIDAuNXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBSZWQgKi9cblxuLnVpLmludmVydGVkLm1lbnUgLnJlZC5hY3RpdmUuaXRlbSxcbi51aS5pbnZlcnRlZC5yZWQubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbn1cblxuLyogT3JhbmdlICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5vcmFuZ2UuYWN0aXZlLml0ZW0sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFllbGxvdyAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAueWVsbG93LmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLnllbGxvdy5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4vKiBPbGl2ZSAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAub2xpdmUuYWN0aXZlLml0ZW0sXG4udWkuaW52ZXJ0ZWQub2xpdmUubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUNDMTg7XG59XG5cbi51aS5pbnZlcnRlZC5vbGl2ZS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLm9saXZlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi8qIEdyZWVuICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5ncmVlbi5hY3RpdmUuaXRlbSxcbi51aS5pbnZlcnRlZC5ncmVlbi5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4ubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbn1cblxuLyogVGVhbCAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAudGVhbC5hY3RpdmUuaXRlbSxcbi51aS5pbnZlcnRlZC50ZWFsLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUFEO1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLnRlYWwubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbn1cblxuLyogQmx1ZSAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAuYmx1ZS5hY3RpdmUuaXRlbSxcbi51aS5pbnZlcnRlZC5ibHVlLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwO1xufVxuXG4udWkuaW52ZXJ0ZWQuYmx1ZS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLmJsdWUubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbn1cblxuLyogVmlvbGV0ICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC52aW9sZXQuYWN0aXZlLml0ZW0sXG4udWkuaW52ZXJ0ZWQudmlvbGV0Lm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xufVxuXG4udWkuaW52ZXJ0ZWQudmlvbGV0Lm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4udWkuaW52ZXJ0ZWQudmlvbGV0Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFB1cnBsZSAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAucHVycGxlLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLnB1cnBsZS5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4vKiBQaW5rICovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5waW5rLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLnBpbmsubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMDM5OTc7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4udWkuaW52ZXJ0ZWQucGluay5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4vKiBCcm93biAqL1xuXG4udWkuaW52ZXJ0ZWQubWVudSAuYnJvd24uYWN0aXZlLml0ZW0sXG4udWkuaW52ZXJ0ZWQuYnJvd24ubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0Y7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLmJyb3duLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi8qIEdyZXkgKi9cblxuLnVpLmludmVydGVkLm1lbnUgLmdyZXkuYWN0aXZlLml0ZW0sXG4udWkuaW52ZXJ0ZWQuZ3JleS5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cblxuLnVpLmludmVydGVkLmdyZXkubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5Lm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLm1lbnUgLml0ZW0sXG4udWkuZml0dGVkLm1lbnUgLml0ZW0gLm1lbnUgLml0ZW0sXG4udWkubWVudSAuZml0dGVkLml0ZW0ge1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi51aS5ob3Jpem9udGFsbHkuZml0dGVkLm1lbnUgLml0ZW0sXG4udWkuaG9yaXpvbnRhbGx5LmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLmhvcml6b250YWxseS5maXR0ZWQuaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAwLjkyODU3MTQzZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjkyODU3MTQzZW07XG59XG5cbi51aS52ZXJ0aWNhbGx5LmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLnZlcnRpY2FsbHkuZml0dGVkLm1lbnUgLml0ZW0gLm1lbnUgLml0ZW0sXG4udWkubWVudSAudmVydGljYWxseS5maXR0ZWQuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4xNDI4NTcxNGVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjE0Mjg1NzE0ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEJvcmRlcmxlc3Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ib3JkZXJsZXNzLm1lbnUgLml0ZW06YmVmb3JlLFxuLnVpLmJvcmRlcmxlc3MubWVudSAuaXRlbSAubWVudSAuaXRlbTpiZWZvcmUsXG4udWkubWVudSAuYm9yZGVybGVzcy5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC5tZW51IHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW46IDBlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVpLmNvbXBhY3QubWVudSAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW07XG59XG5cbi51aS5jb21wYWN0Lm1lbnUgLml0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkuY29tcGFjdC52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnVpLmNvbXBhY3QudmVydGljYWwubWVudSAuaXRlbTpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51LmZsdWlkLFxuLnVpLnZlcnRpY2FsLm1lbnUuZmx1aWQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEV2ZW5seSBTaXplZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbS5tZW51LFxuLnVpLml0ZW0ubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnVpLmF0dGFjaGVkLml0ZW0ubWVudSB7XG4gIG1hcmdpbjogMGVtIC0xcHggIWltcG9ydGFudDtcbn1cblxuLnVpLml0ZW0ubWVudSAuaXRlbTpsYXN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS5tZW51LnR3by5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLm1lbnUudGhyZWUuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4udWkubWVudS5mb3VyLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWkubWVudS5maXZlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMjAlO1xufVxuXG4udWkubWVudS5zaXguaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxNi42NjYlO1xufVxuXG4udWkubWVudS5zZXZlbi5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDE0LjI4NSU7XG59XG5cbi51aS5tZW51LmVpZ2h0Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aS5tZW51Lm5pbmUuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxMS4xMSU7XG59XG5cbi51aS5tZW51LnRlbi5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnVpLm1lbnUuZWxldmVuLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogOS4wOSU7XG59XG5cbi51aS5tZW51LnR3ZWx2ZS5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDguMzMzJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMTtcbiAgbWFyZ2luOiAwZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkubWVudS5maXhlZCxcbi51aS5tZW51LmZpeGVkIC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLm1lbnUuZml4ZWQgLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udWkuZml4ZWQubWVudSxcbi51aVtjbGFzcyo9XCJ0b3AgZml4ZWRcIl0ubWVudSB7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG59XG5cbi51aVtjbGFzcyo9XCJ0b3AgZml4ZWRcIl0ubWVudSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBmaXhlZFwiXS5tZW51IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgbGVmdDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udWlbY2xhc3MqPVwiYm90dG9tIGZpeGVkXCJdLm1lbnUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3R0b206IDBweDtcbiAgbGVmdDogMHB4O1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBmaXhlZFwiXS5tZW51IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIENvdXBsaW5nIHdpdGggR3JpZCAqL1xuXG4udWkuZml4ZWQubWVudSArIC51aS5ncmlkIHtcbiAgcGFkZGluZy10b3A6IDIuNzVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFBvaW50aW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wb2ludGluZy5tZW51IC5pdGVtOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAuNXB4IDBlbSAwZW07XG4gIHdpZHRoOiAwLjU3MTQyODU3ZW07XG4gIGhlaWdodDogMC41NzE0Mjg1N2VtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDRENEQ1O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDRENEQ1O1xuICB6LWluZGV4OiAyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbn1cblxuLnVpLnZlcnRpY2FsLnBvaW50aW5nLm1lbnUgLml0ZW06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgbWFyZ2luOiAwZW0gLTAuNXB4IDBlbSAwZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNENEQ0RDU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNENEQ0RDU7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLmRyb3Bkb3duLml0ZW06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIERvbid0IGRvdWJsZSB1cCBwb2ludGVycyAqL1xuXG4udWkucG9pbnRpbmcubWVudSAuZHJvcGRvd24uYWN0aXZlLml0ZW06YWZ0ZXIsXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQ29sb3JzICovXG5cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG5cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG5cbi51aS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWlkZGxlICovXG5cbi51aS5hdHRhY2hlZC5tZW51IHtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIG1hcmdpbjogMGVtIC0xcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAoLTFweCAqIDIpKTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoLTFweCAqIDIpKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuYXR0YWNoZWQgKyAudWkuYXR0YWNoZWQubWVudTpub3QoLnRvcCkge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4vKiBUb3AgKi9cblxuLnVpW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5tZW51IHtcbiAgYm90dG9tOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgdG9wOiAwcHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4udWkubWVudVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qIEJvdHRvbSAqL1xuXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLm1lbnUge1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICB0b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKiBBdHRhY2hlZCBNZW51IEl0ZW0gKi9cblxuLnVpLnRvcC5hdHRhY2hlZC5tZW51ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwZW0gMGVtO1xufVxuXG4udWkuYm90dG9tLmF0dGFjaGVkLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi8qIFRhYnVsYXIgQXR0YWNoZWQgKi9cblxuLnVpLmF0dGFjaGVkLm1lbnU6bm90KC50YWJ1bGFyKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG59XG5cbi51aS5hdHRhY2hlZC5pbnZlcnRlZC5tZW51IHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuYXR0YWNoZWQudGFidWxhci5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE1pbmkgKi9cblxuLnVpLm1pbmkubWVudSB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cblxuLnVpLm1pbmkudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiA5cmVtO1xufVxuXG4vKiBUaW55ICovXG5cbi51aS50aW55Lm1lbnUge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG5cbi51aS50aW55LnZlcnRpY2FsLm1lbnUge1xuICB3aWR0aDogMTFyZW07XG59XG5cbi8qIFNtYWxsICovXG5cbi51aS5zbWFsbC5tZW51IHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkuc21hbGwudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiAxM3JlbTtcbn1cblxuLyogTWVkaXVtICovXG5cbi51aS5tZW51IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiAxNXJlbTtcbn1cblxuLyogTGFyZ2UgKi9cblxuLnVpLmxhcmdlLm1lbnUge1xuICBmb250LXNpemU6IDEuMDcxNDI4NTdyZW07XG59XG5cbi51aS5sYXJnZS52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IDE4cmVtO1xufVxuXG4vKiBIdWdlICovXG5cbi51aS5odWdlLm1lbnUge1xuICBmb250LXNpemU6IDEuMjE0Mjg1NzFyZW07XG59XG5cbi51aS5odWdlLnZlcnRpY2FsLm1lbnUge1xuICB3aWR0aDogMjJyZW07XG59XG5cbi8qIEJpZyAqL1xuXG4udWkuYmlnLm1lbnUge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbi51aS5iaWcudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiAyMHJlbTtcbn1cblxuLyogTWFzc2l2ZSAqL1xuXG4udWkubWFzc2l2ZS5tZW51IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuXG4udWkubWFzc2l2ZS52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IDI1cmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBNZXNzYWdlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgTWVzc2FnZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY5O1xuICBwYWRkaW5nOiAxZW0gMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODVlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZSwgYmFja2dyb3VuZCAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjIyKSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMjIpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLm1lc3NhZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSGVhZGVyICovXG5cbi51aS5tZXNzYWdlIC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogLTAuMTQyODU3MTRlbSAwZW0gMHJlbSAwZW07XG59XG5cbi8qIERlZmF1bHQgZm9udCBzaXplICovXG5cbi51aS5tZXNzYWdlIC5oZWFkZXI6bm90KC51aSkge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLyogUGFyYWdyYXBoICovXG5cbi51aS5tZXNzYWdlIHAge1xuICBvcGFjaXR5OiAwLjg1O1xuICBtYXJnaW46IDAuNzVlbSAwZW07XG59XG5cbi51aS5tZXNzYWdlIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLm1lc3NhZ2UgLmhlYWRlciArIHAge1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG59XG5cbi8qIExpc3QgKi9cblxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAwZW07XG4gIG9wYWNpdHk6IDAuODU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgbWFyZ2luOiAwLjVlbSAwZW0gMGVtO1xufVxuXG4udWkubWVzc2FnZSAubGlzdDpub3QoLnVpKTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuM2VtIDFlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkubWVzc2FnZSAubGlzdDpub3QoLnVpKSBsaTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICfigKInO1xuICBsZWZ0OiAtMWVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLnVpLm1lc3NhZ2UgLmxpc3Q6bm90KC51aSkgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkubWVzc2FnZSA+IC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjZlbTtcbn1cblxuLyogQ2xvc2UgSWNvbiAqL1xuXG4udWkubWVzc2FnZSA+IC5jbG9zZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMGVtO1xuICB0b3A6IDAuNzg1NzVlbTtcbiAgcmlnaHQ6IDAuNWVtO1xuICBvcGFjaXR5OiAwLjc7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuXG4udWkubWVzc2FnZSA+IC5jbG9zZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogRmlyc3QgLyBMYXN0IEVsZW1lbnQgKi9cblxuLnVpLm1lc3NhZ2UgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLm1lc3NhZ2Uge1xuICBtYXJnaW46IDBweCAtMXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZpc2libGUudmlzaWJsZS52aXNpYmxlLnZpc2libGUubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuaWNvbi52aXNpYmxlLnZpc2libGUudmlzaWJsZS52aXNpYmxlLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGlkZGVuLmhpZGRlbi5oaWRkZW4uaGlkZGVuLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21wYWN0Lm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi51aS5jb21wYWN0Lmljb24ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcbiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQubWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cblxuLnVpLmF0dGFjaGVkICsgLnVpLmF0dGFjaGVkLm1lc3NhZ2U6bm90KC50b3ApOm5vdCguYm90dG9tKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLmJvdHRvbS5hdHRhY2hlZC5tZXNzYWdlIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQsIDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQsIDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLmJvdHRvbS5hdHRhY2hlZC5tZXNzYWdlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi51aS5hdHRhY2hlZC5pY29uLm1lc3NhZ2Uge1xuICB3aWR0aDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmljb24ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi51aS5pY29uLm1lc3NhZ2UgPiAuaWNvbjpub3QoLmNsb3NlKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi51aS5pY29uLm1lc3NhZ2UgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleDogMSAxIGF1dG87XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkuaWNvbi5tZXNzYWdlIC5pY29uOm5vdCguY2xvc2UpICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDByZW07XG59XG5cbi51aS5pY29uLm1lc3NhZ2UgLmNpcmN1bGFyLmljb24ge1xuICB3aWR0aDogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGluZy5tZXNzYWdlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjIyKSBpbnNldCwgMHB4IDJweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDBweCAycHggMTBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4yMikgaW5zZXQsIDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmxhY2subWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjFDMUQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVHlwZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFBvc2l0aXZlICovXG5cbi51aS5wb3NpdGl2ZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkZGNTtcbiAgY29sb3I6ICMyQzY2MkQ7XG59XG5cbi51aS5wb3NpdGl2ZS5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLnBvc2l0aXZlLm1lc3NhZ2Uge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTNDMjkzIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNBM0MyOTMgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkucG9zaXRpdmUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxQTUzMUI7XG59XG5cbi8qIE5lZ2F0aXZlICovXG5cbi51aS5uZWdhdGl2ZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZGNjtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi51aS5uZWdhdGl2ZS5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLm5lZ2F0aXZlLm1lc3NhZ2Uge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRTBCNEI0IGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNFMEI0QjQgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkubmVnYXRpdmUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICM5MTJEMkI7XG59XG5cbi8qIEluZm8gKi9cblxuLnVpLmluZm8ubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEZGRkY7XG4gIGNvbG9yOiAjMjc2Rjg2O1xufVxuXG4udWkuaW5mby5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLmluZm8ubWVzc2FnZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNBOUQ1REUgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0E5RDVERSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi51aS5pbmZvLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjMEU1NjZDO1xufVxuXG4vKiBXYXJuaW5nICovXG5cbi51aS53YXJuaW5nLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGQUYzO1xuICBjb2xvcjogIzU3M0EwODtcbn1cblxuLnVpLndhcm5pbmcubWVzc2FnZSxcbi51aS5hdHRhY2hlZC53YXJuaW5nLm1lc3NhZ2Uge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQzlCQTlCIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNDOUJBOUIgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkud2FybmluZy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzc5NEIwMjtcbn1cblxuLyogRXJyb3IgKi9cblxuLnVpLmVycm9yLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkY2O1xuICBjb2xvcjogIzlGM0EzODtcbn1cblxuLnVpLmVycm9yLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQuZXJyb3IubWVzc2FnZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNFMEI0QjQgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0UwQjRCNCBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi51aS5lcnJvci5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzkxMkQyQjtcbn1cblxuLyogU3VjY2VzcyAqL1xuXG4udWkuc3VjY2Vzcy5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkZGNTtcbiAgY29sb3I6ICMyQzY2MkQ7XG59XG5cbi51aS5zdWNjZXNzLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQuc3VjY2Vzcy5tZXNzYWdlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0EzQzI5MyBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTNDMjkzIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLnN1Y2Nlc3MubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxQTUzMUI7XG59XG5cbi8qIENvbG9ycyAqL1xuXG4udWkuaW52ZXJ0ZWQubWVzc2FnZSxcbi51aS5ibGFjay5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUMxRDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLnJlZC5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRThFNjtcbiAgY29sb3I6ICNEQjI4Mjg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNEQjI4MjggaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0RCMjgyOCBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi51aS5yZWQubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICNjODIxMjE7XG59XG5cbi51aS5vcmFuZ2UubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkVEREU7XG4gIGNvbG9yOiAjRjI3MTFDO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRjI3MTFDIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNGMjcxMUMgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkub3JhbmdlLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjZTc2NDBkO1xufVxuXG4udWkueWVsbG93Lm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOERCO1xuICBjb2xvcjogI0I1ODEwNTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0I1ODEwNSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQjU4MTA1IGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLnllbGxvdy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzljNmYwNDtcbn1cblxuLnVpLm9saXZlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJGREVGO1xuICBjb2xvcjogIzhBQkMxRTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzhBQkMxRSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjOEFCQzFFIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLm9saXZlLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjN2FhNjFhO1xufVxuXG4udWkuZ3JlZW4ubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNUY5RTc7XG4gIGNvbG9yOiAjMUVCQzMwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMUVCQzMwIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICMxRUJDMzAgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkuZ3JlZW4ubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxYWE2MmE7XG59XG5cbi51aS50ZWFsLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTFGN0Y3O1xuICBjb2xvcjogIzEwQTNBMztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzEwQTNBMyBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMTBBM0EzIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLnRlYWwubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMwZThjOGM7XG59XG5cbi51aS5ibHVlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREZGMEZGO1xuICBjb2xvcjogIzIxODVEMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggIzIxODVEMCBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjMjE4NUQwIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLmJsdWUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMxZTc3YmE7XG59XG5cbi51aS52aW9sZXQubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQUU3RkY7XG4gIGNvbG9yOiAjNjQzNUM5O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjNjQzNUM5IGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICM2NDM1QzkgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkudmlvbGV0Lm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjNWEzMGI1O1xufVxuXG4udWkucHVycGxlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZFN0ZGO1xuICBjb2xvcjogI0EzMzNDODtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0EzMzNDOCBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTMzM0M4IGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLnB1cnBsZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzkyMmViNDtcbn1cblxuLnVpLnBpbmsubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkUzRkI7XG4gIGNvbG9yOiAjRTAzOTk3O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRTAzOTk3IGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNFMDM5OTcgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udWkucGluay5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogI2RkMjM4Yjtcbn1cblxuLnVpLmJyb3duLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjFFMkQzO1xuICBjb2xvcjogI0E1NjczRjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0E1NjczRiBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQTU2NzNGIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLnVpLmJyb3duLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjOTM1YjM4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5ZW07XG59XG5cbi51aS50aW55Lm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnNtYWxsLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cblxuLnVpLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmJpZy5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG5cbi51aS5odWdlLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNlbTtcbn1cblxuLnVpLm1hc3NpdmUubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFRhYmxlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFRhYmxlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBQcm90b3R5cGUgKi9cblxuLnVpLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMWVtIDBlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDBweDtcbn1cblxuLnVpLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkudGFibGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBQYXJ0c1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogVGFibGUgQ29udGVudCAqL1xuXG4udWkudGFibGUgdGgsXG4udWkudGFibGUgdGQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2U7XG59XG5cbi8qIEhlYWRlcnMgKi9cblxuLnVpLnRhYmxlIHRoZWFkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudGFibGUgdGhlYWQgdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNGOUZBRkI7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBwYWRkaW5nOiAwLjkyODU3MTQzZW0gMC43ODU3MTQyOWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgZm9udC1zdHlsZTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDBlbSAwZW0gMGVtO1xufVxuXG4udWkudGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkID4gdGg6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4vKiBGb290ZXIgKi9cblxuLnVpLnRhYmxlIHRmb290IHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudGFibGUgdGZvb3QgdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgcGFkZGluZzogMC43ODU3MTQyOWVtIDAuNzg1NzE0MjllbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDBlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkudGFibGUgdGZvb3QgdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyOmZpcnN0LWNoaWxkID4gdGg6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKiBUYWJsZSBSb3cgKi9cblxuLnVpLnRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLnRhYmxlIHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogUmVwZWF0ZWQgdGJvZHkgKi9cblxuLnVpLnRhYmxlIHRib2R5ICsgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4vKiBUYWJsZSBDZWxscyAqL1xuXG4udWkudGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMC43ODU3MTQyOWVtO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG4vKiBJY29ucyAqL1xuXG4udWkudGFibGUgPiAuaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLnVpLnRhYmxlID4gLmljb246b25seS1jaGlsZCB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4vKiBUYWJsZSBTZWdtZW50ICovXG5cbi51aS50YWJsZS5zZWdtZW50IHtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkudGFibGUuc2VnbWVudDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS50YWJsZS5zZWdtZW50LnN0YWNrZWQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogUmVzcG9uc2l2ZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGJvZHksXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGgsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkge1xuICAgIHBhZGRpbmc6IDBlbTtcbiAgfVxuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aGVhZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0aCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4yNWVtIDAuNzVlbSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC8qIERlZmluaXRpb24gVGFibGUgKi9cblxuICAudWkuZGVmaW5pdGlvbi50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogVUkgSW1hZ2UgKi9cblxuLnVpLnRhYmxlIHRoIC5pbWFnZSxcbi51aS50YWJsZSB0aCAuaW1hZ2UgaW1nLFxuLnVpLnRhYmxlIHRkIC5pbWFnZSxcbi51aS50YWJsZSB0ZCAuaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29tcGxleFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0cnVjdHVyZWQudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4udWkuc3RydWN0dXJlZC50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi51aS5zdHJ1Y3R1cmVkLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkuc3RydWN0dXJlZC5iYXNpYy50YWJsZSB0aCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSB0ciB0aCxcbi51aS5zdHJ1Y3R1cmVkLmNlbGxlZC50YWJsZSB0ciB0ZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIERlZmluaXRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRoZWFkOm5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAxcHggI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAxcHggI0ZGRkZGRjtcbn1cblxuLnVpLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgY29sb3I6IG5vcm1hbDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMXB4IDBweCAxcHggI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAwcHggMXB4ICNGRkZGRkY7XG59XG5cbi8qIFJlbW92ZSBCb3JkZXIgKi9cblxuLnVpLmNlbGxlZC5kZWZpbml0aW9uLnRhYmxlIHRoZWFkOm5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAxcHggI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDFweCAjRkZGRkZGO1xufVxuXG4udWkuY2VsbGVkLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAwcHggMXB4ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMHB4IDFweCAjRkZGRkZGO1xufVxuXG4vKiBIaWdobGlnaHQgRGVmaW5pbmcgQ29sdW1uICovXG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkOm5vdCguaWdub3JlZCksXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0ciB0ZC5kZWZpbml0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xuICB0ZXh0LXRyYW5zZm9ybTogJyc7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJyc7XG4gIGJveC1zaGFkb3c6ICcnO1xuICB0ZXh0LWFsaWduOiAnJztcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmctbGVmdDogJyc7XG4gIHBhZGRpbmctcmlnaHQ6ICcnO1xufVxuXG4vKiBGaXggMm5kIENvbHVtbiAqL1xuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpIHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpudGgtY2hpbGQoMikge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRkOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQb3NpdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLnBvc2l0aXZlLFxuLnVpLnRhYmxlIHRkLnBvc2l0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAjQTNDMjkzIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjQTNDMjkzIGluc2V0O1xufVxuXG4udWkudGFibGUgdHIucG9zaXRpdmUsXG4udWkudGFibGUgdGQucG9zaXRpdmUge1xuICBiYWNrZ3JvdW5kOiAjRkNGRkY1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMkM2NjJEICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTmVnYXRpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0ci5uZWdhdGl2ZSxcbi51aS50YWJsZSB0ZC5uZWdhdGl2ZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggI0UwQjRCNCBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI0UwQjRCNCBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLm5lZ2F0aXZlLFxuLnVpLnRhYmxlIHRkLm5lZ2F0aXZlIHtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzlGM0EzOCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmVycm9yLFxuLnVpLnRhYmxlIHRkLmVycm9yIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAjRTBCNEI0IGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjRTBCNEI0IGluc2V0O1xufVxuXG4udWkudGFibGUgdHIuZXJyb3IsXG4udWkudGFibGUgdGQuZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiAjRkZGNkY2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOUYzQTM4ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2FybmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLndhcm5pbmcsXG4udWkudGFibGUgdGQud2FybmluZyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggI0M5QkE5QiBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI0M5QkE5QiBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLndhcm5pbmcsXG4udWkudGFibGUgdGQud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNGRkZBRjMgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NzNBMDggIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0ci5hY3RpdmUsXG4udWkudGFibGUgdGQuYWN0aXZlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuODcpIGluc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuODcpIGluc2V0O1xufVxuXG4udWkudGFibGUgdHIuYWN0aXZlLFxuLnVpLnRhYmxlIHRkLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTAgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NykgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmRpc2FibGVkIHRkLFxuLnVpLnRhYmxlIHRyIHRkLmRpc2FibGVkLFxuLnVpLnRhYmxlIHRyLmRpc2FibGVkOmhvdmVyLFxuLnVpLnRhYmxlIHRyOmhvdmVyIHRkLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGJvZHksXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB7XG4gICAgcGFkZGluZzogMGVtO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGhlYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSkgaW5zZXQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4yNWVtIDAuNzVlbTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBEZWZpbml0aW9uIFRhYmxlICovXG5cbiAgLnVpLmRlZmluaXRpb25bY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBUZXh0IEFsaWdubWVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiBWZXJ0aWNhbCBBbGlnbm1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkudGFibGVbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb2xsYXBzaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGUgdGguY29sbGFwc2luZyxcbi51aS50YWJsZSB0ZC5jb2xsYXBzaW5nIHtcbiAgd2lkdGg6IDFweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpeGVkLnRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLnVpLmZpeGVkLnRhYmxlIHRoLFxuLnVpLmZpeGVkLnRhYmxlIHRkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlbGVjdGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRib2R5IHRyOmhvdmVyLFxuLnVpLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWxlY3RhYmxlLmludmVydGVkLnRhYmxlIHRib2R5IHRyOmhvdmVyLFxuLnVpLmludmVydGVkLnRhYmxlIHRib2R5IHRyIHRkLnNlbGVjdGFibGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNlbGVjdGFibGUgQ2VsbCBMaW5rICovXG5cbi51aS50YWJsZSB0Ym9keSB0ciB0ZC5zZWxlY3RhYmxlIHtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkudGFibGUgdGJvZHkgdHIgdGQuc2VsZWN0YWJsZSA+IGE6bm90KC51aSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjllbSAwLjc4NTcxNDI5ZW07XG59XG5cbi8qIE90aGVyIFN0YXRlcyAqL1xuXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0ci5lcnJvcjpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLmVycm9yOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiAjZmZlN2U3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOTQzNjM0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLndhcm5pbmc6aG92ZXIsXG4udWkudGFibGUgdHIgdGQuc2VsZWN0YWJsZS53YXJuaW5nOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmY0ZTQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM0OTMxMDcgIWltcG9ydGFudDtcbn1cblxuLnVpLnNlbGVjdGFibGUudGFibGUgdHIuYWN0aXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUuYWN0aXZlOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0UwRTBFMCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0ci5wb3NpdGl2ZTpob3Zlcixcbi51aS50YWJsZSB0ciB0ZC5zZWxlY3RhYmxlLnBvc2l0aXZlOmhvdmVyLFxuLnVpLnNlbGVjdGFibGUudGFibGUgdHI6aG92ZXIgdGQucG9zaXRpdmUge1xuICBiYWNrZ3JvdW5kOiAjZjdmZmU2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjc1YjI4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWxlY3RhYmxlLnRhYmxlIHRyLm5lZ2F0aXZlOmhvdmVyLFxuLnVpLnRhYmxlIHRyIHRkLnNlbGVjdGFibGUubmVnYXRpdmU6aG92ZXIsXG4udWkuc2VsZWN0YWJsZS50YWJsZSB0cjpob3ZlciB0ZC5uZWdhdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmU3ZTcgIWltcG9ydGFudDtcbiAgY29sb3I6ICM5NDM2MzQgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaWRkbGUgKi9cblxuLnVpLmF0dGFjaGVkLnRhYmxlIHtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIG1hcmdpbjogMGVtIC0xcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAoLTFweCAqIDIpKTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoLTFweCAqIDIpKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDRENEQ1O1xufVxuXG4udWkuYXR0YWNoZWQgKyAudWkuYXR0YWNoZWQudGFibGU6bm90KC50b3ApIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogVG9wICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0udGFibGUge1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICB0b3A6IDBweDtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLyogQm90dG9tICovXG5cbi51aVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udGFibGUge1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICB0b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUsIG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmUsIG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLnRhYmxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RyaXBlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGFibGUgU3RyaXBpbmcgKi9cblxuLnVpLnN0cmlwZWQudGFibGUgPiB0cjpudGgtY2hpbGQoMm4pLFxuLnVpLnN0cmlwZWQudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgNTAsIDAuMDIpO1xufVxuXG4vKiBTdHJpcGVzICovXG5cbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlID4gdHI6bnRoLWNoaWxkKDJuKSxcbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuXG4vKiBBbGxvdyBzdHJpcGVkIGFjdGl2ZSBob3ZlciAqL1xuXG4udWkuc3RyaXBlZC5zZWxlY3RhYmxlLnNlbGVjdGFibGUuc2VsZWN0YWJsZS50YWJsZSB0Ym9keSB0ci5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRUZFRkVGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNpbmdsZSBMaW5lXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGVbY2xhc3MqPVwic2luZ2xlIGxpbmVcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cInNpbmdsZSBsaW5lXCJdIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cInNpbmdsZSBsaW5lXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJzaW5nbGUgbGluZVwiXSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBSZWQgKi9cblxuLnVpLnJlZC50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNEQjI4Mjg7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREIyODI4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIE9yYW5nZSAqL1xuXG4udWkub3JhbmdlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgI0YyNzExQztcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjcxMUMgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogWWVsbG93ICovXG5cbi51aS55ZWxsb3cudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjRkJCRDA4O1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBPbGl2ZSAqL1xuXG4udWkub2xpdmUudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjQjVDQzE4O1xufVxuXG4udWkuaW52ZXJ0ZWQub2xpdmUudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIEdyZWVuICovXG5cbi51aS5ncmVlbi50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICMyMUJBNDU7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogVGVhbCAqL1xuXG4udWkudGVhbC50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICMwMEI1QUQ7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVBRCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCbHVlICovXG5cbi51aS5ibHVlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzIxODVEMDtcbn1cblxuLnVpLmludmVydGVkLmJsdWUudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZpb2xldCAqL1xuXG4udWkudmlvbGV0LnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzY0MzVDOTtcbn1cblxuLnVpLmludmVydGVkLnZpb2xldC50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDM1QzkgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogUHVycGxlICovXG5cbi51aS5wdXJwbGUudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjQTMzM0M4O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBQaW5rICovXG5cbi51aS5waW5rLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgI0UwMzk5Nztcbn1cblxuLnVpLmludmVydGVkLnBpbmsudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTAzOTk3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIEJyb3duICovXG5cbi51aS5icm93bi50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNBNTY3M0Y7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNTY3M0YgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogR3JleSAqL1xuXG4udWkuZ3JleS50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICM3Njc2NzY7XG59XG5cbi51aS5pbnZlcnRlZC5ncmV5LnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKiBCbGFjayAqL1xuXG4udWkuYmxhY2sudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjMUIxQzFEO1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxhY2sudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQ29sdW1uIENvdW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHcmlkIEJhc2VkICovXG5cbi51aS5vbmUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS50d28uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLnRocmVlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi51aS5mb3VyLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aS5maXZlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aS5zaXguY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cblxuLnVpLnNldmVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyOSU7XG59XG5cbi51aS5laWdodC5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aS5uaW5lLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxMS4xMTExMTExMSU7XG59XG5cbi51aS50ZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnVpLmVsZXZlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogOS4wOTA5MDkwOSU7XG59XG5cbi51aS50d2VsdmUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMlO1xufVxuXG4udWkudGhpcnRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDcuNjkyMzA3NjklO1xufVxuXG4udWkuZm91cnRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDcuMTQyODU3MTQlO1xufVxuXG4udWkuZmlmdGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNi42NjY2NjY2NyU7XG59XG5cbi51aS5zaXh0ZWVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA2LjI1JTtcbn1cblxuLyogQ29sdW1uIFdpZHRoICovXG5cbi51aS50YWJsZSB0aC5vbmUud2lkZSxcbi51aS50YWJsZSB0ZC5vbmUud2lkZSB7XG4gIHdpZHRoOiA2LjI1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnR3by53aWRlLFxuLnVpLnRhYmxlIHRkLnR3by53aWRlIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4udWkudGFibGUgdGgudGhyZWUud2lkZSxcbi51aS50YWJsZSB0ZC50aHJlZS53aWRlIHtcbiAgd2lkdGg6IDE4Ljc1JTtcbn1cblxuLnVpLnRhYmxlIHRoLmZvdXIud2lkZSxcbi51aS50YWJsZSB0ZC5mb3VyLndpZGUge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWkudGFibGUgdGguZml2ZS53aWRlLFxuLnVpLnRhYmxlIHRkLmZpdmUud2lkZSB7XG4gIHdpZHRoOiAzMS4yNSU7XG59XG5cbi51aS50YWJsZSB0aC5zaXgud2lkZSxcbi51aS50YWJsZSB0ZC5zaXgud2lkZSB7XG4gIHdpZHRoOiAzNy41JTtcbn1cblxuLnVpLnRhYmxlIHRoLnNldmVuLndpZGUsXG4udWkudGFibGUgdGQuc2V2ZW4ud2lkZSB7XG4gIHdpZHRoOiA0My43NSU7XG59XG5cbi51aS50YWJsZSB0aC5laWdodC53aWRlLFxuLnVpLnRhYmxlIHRkLmVpZ2h0LndpZGUge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWkudGFibGUgdGgubmluZS53aWRlLFxuLnVpLnRhYmxlIHRkLm5pbmUud2lkZSB7XG4gIHdpZHRoOiA1Ni4yNSU7XG59XG5cbi51aS50YWJsZSB0aC50ZW4ud2lkZSxcbi51aS50YWJsZSB0ZC50ZW4ud2lkZSB7XG4gIHdpZHRoOiA2Mi41JTtcbn1cblxuLnVpLnRhYmxlIHRoLmVsZXZlbi53aWRlLFxuLnVpLnRhYmxlIHRkLmVsZXZlbi53aWRlIHtcbiAgd2lkdGg6IDY4Ljc1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnR3ZWx2ZS53aWRlLFxuLnVpLnRhYmxlIHRkLnR3ZWx2ZS53aWRlIHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnRoaXJ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQudGhpcnRlZW4ud2lkZSB7XG4gIHdpZHRoOiA4MS4yNSU7XG59XG5cbi51aS50YWJsZSB0aC5mb3VydGVlbi53aWRlLFxuLnVpLnRhYmxlIHRkLmZvdXJ0ZWVuLndpZGUge1xuICB3aWR0aDogODcuNSU7XG59XG5cbi51aS50YWJsZSB0aC5maWZ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuZmlmdGVlbi53aWRlIHtcbiAgd2lkdGg6IDkzLjc1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnNpeHRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5zaXh0ZWVuLndpZGUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNvcnRhYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGgge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkLFxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDpob3ZlciB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAxZW07XG4gIHdpZHRoOiBhdXRvO1xuICBvcGFjaXR5OiAwLjg7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC41ZW07XG4gIGZvbnQtZmFtaWx5OiAnSWNvbnMnO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguYXNjZW5kaW5nOmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjBkOCc7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5kZXNjZW5kaW5nOmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjBkNyc7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aC5kaXNhYmxlZDpob3ZlciB7XG4gIGN1cnNvcjogYXV0bztcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKTtcbn1cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogU29ydGVkICovXG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogU29ydGVkIEhvdmVyICovXG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSh0cmFuc3BhcmVudCksIHRvKHJnYmEoMCwgMCwgMCwgMC4wNSkpKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSh0cmFuc3BhcmVudCksIHRvKHJnYmEoMCwgMCwgMCwgMC4wNSkpKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUZXh0IENvbG9yICovXG5cbi51aS5pbnZlcnRlZC50YWJsZSB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLnRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIgdGQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIgdGQuZGlzYWJsZWQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQ6aG92ZXIgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHI6aG92ZXIgdGQuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cblxuLyogRGVmaW5pdGlvbiAqL1xuXG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSB0Zm9vdDpub3QoLmZ1bGwtd2lkdGgpIHRoOmZpcnN0LWNoaWxkLFxuLnVpLmludmVydGVkLmRlZmluaXRpb24udGFibGUgdGhlYWQ6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5cbi51aS5pbnZlcnRlZC5kZWZpbml0aW9uLnRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENvbGxhcHNpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb2xsYXBzaW5nLnRhYmxlIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMudGFibGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGhlYWQsXG4udWkuYmFzaWMudGFibGUgdGZvb3Qge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0aCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5iYXNpYy5zdHJpcGVkLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZlcnkgQmFzaWMgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGgsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpIHRkIHtcbiAgcGFkZGluZzogJyc7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGg6Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpIHRkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGg6bGFzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCB7XG4gIHBhZGRpbmctdG9wOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2VsbGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLnRhYmxlIHRyIHRoLFxuLnVpLmNlbGxlZC50YWJsZSB0ciB0ZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC50YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhZGRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZGRlZC50YWJsZSB0aCB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG59XG5cbi51aS5wYWRkZWQudGFibGUgdGgsXG4udWkucGFkZGVkLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMWVtIDFlbTtcbn1cblxuLyogVmVyeSAqL1xuXG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgdGgge1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMS41ZW0gMS41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3QudGFibGUgdGgge1xuICBwYWRkaW5nLWxlZnQ6IDAuN2VtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjdlbTtcbn1cblxuLnVpLmNvbXBhY3QudGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjVlbSAwLjdlbTtcbn1cblxuLyogVmVyeSAqL1xuXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlIHRoIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjZlbTtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjRlbSAwLjZlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNtYWxsICovXG5cbi51aS5zbWFsbC50YWJsZSB7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi8qIFN0YW5kYXJkICovXG5cbi51aS50YWJsZSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBMYXJnZSAqL1xuXG4udWkubGFyZ2UudGFibGUge1xuICBmb250LXNpemU6IDEuMWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBBZFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxMyBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgQWR2ZXJ0aXNlbWVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmFkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMWVtIDBlbTtcbn1cblxuLnVpLmFkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi51aS5hZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi51aS5hZCBpZnJhbWUge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtO1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWFkZXJib2FyZCAqL1xuXG4udWkubGVhZGVyYm9hcmQuYWQge1xuICB3aWR0aDogNzI4cHg7XG4gIGhlaWdodDogOTBweDtcbn1cblxuLyogTWVkaXVtIFJlY3RhbmdsZSAqL1xuXG4udWlbY2xhc3MqPVwibWVkaXVtIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cblxuLyogTGFyZ2UgUmVjdGFuZ2xlICovXG5cbi51aVtjbGFzcyo9XCJsYXJnZSByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMzM2cHg7XG4gIGhlaWdodDogMjgwcHg7XG59XG5cbi8qIEhhbGYgUGFnZSAqL1xuXG4udWlbY2xhc3MqPVwiaGFsZiBwYWdlXCJdLmFkIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNxdWFyZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3F1YXJlICovXG5cbi51aS5zcXVhcmUuYWQge1xuICB3aWR0aDogMjUwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi8qIFNtYWxsIFNxdWFyZSAqL1xuXG4udWlbY2xhc3MqPVwic21hbGwgc3F1YXJlXCJdLmFkIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmVjdGFuZ2xlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbWFsbCBSZWN0YW5nbGUgKi9cblxuLnVpW2NsYXNzKj1cInNtYWxsIHJlY3RhbmdsZVwiXS5hZCB7XG4gIHdpZHRoOiAxODBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cblxuLyogVmVydGljYWwgUmVjdGFuZ2xlICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbCByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMjQwcHg7XG4gIGhlaWdodDogNDAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG5cbi51aVtjbGFzcyo9XCJzcXVhcmUgYnV0dG9uXCJdLmFkIHtcbiAgd2lkdGg6IDEyNXB4O1xuICBoZWlnaHQ6IDEyNXB4O1xufVxuXG4udWlbY2xhc3MqPVwic21hbGwgYnV0dG9uXCJdLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNreXNjcmFwZXJzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTa3lzY3JhcGVyICovXG5cbi51aS5za3lzY3JhcGVyLmFkIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuXG4vKiBXaWRlIFNreXNjcmFwZXIgKi9cblxuLnVpW2NsYXNzKj1cIndpZGUgc2t5c2NyYXBlclwiXS5hZCB7XG4gIHdpZHRoOiAxNjBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCYW5uZXJzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBCYW5uZXIgKi9cblxuLnVpLmJhbm5lci5hZCB7XG4gIHdpZHRoOiA0NjhweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4vKiBWZXJ0aWNhbCBCYW5uZXIgKi9cblxuLnVpW2NsYXNzKj1cInZlcnRpY2FsIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiAyNDBweDtcbn1cblxuLyogVG9wIEJhbm5lciAqL1xuXG4udWlbY2xhc3MqPVwidG9wIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiA5MzBweDtcbiAgaGVpZ2h0OiAxODBweDtcbn1cblxuLyogSGFsZiBCYW5uZXIgKi9cblxuLnVpW2NsYXNzKj1cImhhbGYgYmFubmVyXCJdLmFkIHtcbiAgd2lkdGg6IDIzNHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBCb2FyZHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIExlYWRlcmJvYXJkICovXG5cbi51aVtjbGFzcyo9XCJsYXJnZSBsZWFkZXJib2FyZFwiXS5hZCB7XG4gIHdpZHRoOiA5NzBweDtcbiAgaGVpZ2h0OiA5MHB4O1xufVxuXG4vKiBCaWxsYm9hcmQgKi9cblxuLnVpLmJpbGxib2FyZC5hZCB7XG4gIHdpZHRoOiA5NzBweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBhbm9yYW1hXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBQYW5vcmFtYSAqL1xuXG4udWkucGFub3JhbWEuYWQge1xuICB3aWR0aDogOTgwcHg7XG4gIGhlaWdodDogMTIwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTmV0Ym9hcmRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE5ldGJvYXJkICovXG5cbi51aS5uZXRib2FyZC5hZCB7XG4gIHdpZHRoOiA1ODBweDtcbiAgaGVpZ2h0OiA0MDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBNb2JpbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIExhcmdlIE1vYmlsZSBCYW5uZXIgKi9cblxuLnVpW2NsYXNzKj1cImxhcmdlIG1vYmlsZSBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogMzIwcHg7XG4gIGhlaWdodDogMTAwcHg7XG59XG5cbi8qIE1vYmlsZSBMZWFkZXJib2FyZCAqL1xuXG4udWlbY2xhc3MqPVwibW9iaWxlIGxlYWRlcmJvYXJkXCJdLmFkIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIE1vYmlsZSBTaXplcyAqL1xuXG4udWkubW9iaWxlLmFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkubW9iaWxlLmFkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuY2VudGVyZWQuYWQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udWkudGVzdC5hZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzU0NTQ1NDtcbn1cblxuLnVpLnRlc3QuYWQ6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBjb250ZW50OiAnQWQnO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkubW9iaWxlLnRlc3QuYWQ6YWZ0ZXIge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnRlc3QuYWRbZGF0YS10ZXh0XTphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIEl0ZW1cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQ2FyZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDI5MHB4O1xuICBtaW4taGVpZ2h0OiAwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDBlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggM3B4IDBweCAjRDRENEQ1LCAwcHggMHB4IDBweCAxcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAzcHggMHB4ICNENEQ0RDUsIDBweCAwcHggMHB4IDFweCAjRDRENEQ1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuMXMgZWFzZTtcbiAgei1pbmRleDogJyc7XG59XG5cbi51aS5jYXJkIHtcbiAgbWFyZ2luOiAxZW0gMGVtO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCBhLFxuLnVpLmNhcmQgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLmNhcmQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5jYXJkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENhcmRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogLTAuODc1ZW0gLTAuNWVtO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAuODc1ZW0gMC41ZW07XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiBDbGVhcmluZyAqL1xuXG4udWkuY2FyZHM6YWZ0ZXIsXG4udWkuY2FyZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBDb25zZWN1dGl2ZSBDYXJkIEdyb3VwcyBQcmVzZXJ2ZSBSb3cgU3BhY2luZyAqL1xuXG4udWkuY2FyZHMgfiAudWkuY2FyZHMge1xuICBtYXJnaW4tdG9wOiAwLjg3NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFJvdW5kZWQgRWRnZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gOmZpcnN0LWNoaWxkLFxuLnVpLmNhcmQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gOmxhc3QtY2hpbGQsXG4udWkuY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiA6b25seS1jaGlsZCxcbi51aS5jYXJkID4gOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSxcbi51aS5jYXJkID4gLmltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcGFkZGluZzogMGVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSA+IGltZyxcbi51aS5jYXJkID4gLmltYWdlID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmltYWdlOm5vdCgudWkpID4gaW1nLFxuLnVpLmNhcmQgPiAuaW1hZ2U6bm90KC51aSkgPiBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCxcbi51aS5jYXJkID4gLmNvbnRlbnQge1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAxZW0gMWVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQ6YWZ0ZXIsXG4udWkuY2FyZCA+IC5jb250ZW50OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAnJztcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi8qIERlZmF1bHQgSGVhZGVyIFNpemUgKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXI6bm90KC51aSksXG4udWkuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMjg1NzE0MjllbTtcbiAgbWFyZ2luLXRvcDogLTAuMjE0MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NzE0MjllbTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5tZXRhICsgLmRlc2NyaXB0aW9uLFxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5oZWFkZXIgKyAuZGVzY3JpcHRpb24sXG4udWkuY2FyZCA+IC5jb250ZW50ID4gLm1ldGEgKyAuZGVzY3JpcHRpb24sXG4udWkuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciArIC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS1cbiBGbG9hdGVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLFxuLnVpLmNhcmQgW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIENvbnRlbnQgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkIC5jb250ZW50IGltZyxcbi51aS5jYXJkIC5jb250ZW50IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICcnO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCBpbWcuYXZhdGFyLFxuLnVpLmNhcmRzID4gLmNhcmQgLmF2YXRhciBpbWcsXG4udWkuY2FyZCBpbWcuYXZhdGFyLFxuLnVpLmNhcmQgLmF2YXRhciBpbWcge1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZXNjcmlwdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42OCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgcCxcbi51aS5jYXJkID4gLmNvbnRlbnQgcCB7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjVlbTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCBwOmxhc3QtY2hpbGQsXG4udWkuY2FyZCA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEsXG4udWkuY2FyZCAubWV0YSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSAqLFxuLnVpLmNhcmQgLm1ldGEgKiB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhIDpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgLm1ldGEgOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCAubWV0YSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xuICBtYXJnaW4tbGVmdDogMC4zZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHZW5lcmljICovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSxcbi51aS5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiAnJztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmNhcmQgPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICcnO1xufVxuXG4vKiBIZWFkZXIgKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IGEuaGVhZGVyLFxuLnVpLmNhcmQgPiAuY29udGVudCA+IGEuaGVhZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKiBNZXRhICovXG5cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhID4gYTpub3QoLnVpKSxcbi51aS5jYXJkIC5tZXRhID4gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmJ1dHRvbnMsXG4udWkuY2FyZCA+IC5idXR0b25zLFxuLnVpLmNhcmRzID4gLmNhcmQgPiAuYnV0dG9uLFxuLnVpLmNhcmQgPiAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwcHggLTFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICAycHggKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRGltbWVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCAuZGltbWVyLFxuLnVpLmNhcmQgLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICcnO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tLS1TdGFyLS0tLS0gKi9cblxuLyogSWNvbiAqL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24sXG4udWkuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgLnN0YXIuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjRkZCNzBBO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5hY3RpdmUuc3Rhci5pY29uLFxuLnVpLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLnN0YXIuaWNvbiB7XG4gIGNvbG9yOiAjRkZFNjIzO1xufVxuXG4vKi0tLS0tTGlrZS0tLS0tICovXG5cbi8qIEljb24gKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uLFxuLnVpLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjc1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5saWtlLmljb246aG92ZXIsXG4udWkuY2FyZCA+IC5jb250ZW50IC5saWtlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI0ZGMjczMztcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLmxpa2UuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5saWtlLmljb24ge1xuICBjb2xvcjogI0ZGMjczMztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tXG4gIEV4dHJhIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEsXG4udWkuY2FyZCA+IC5leHRyYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICBmbGV4LWdyb3c6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDBlbSAwZW07XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIHRvcDogMGVtO1xuICBsZWZ0OiAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKSxcbi51aS5jYXJkID4gLmV4dHJhIGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpOmhvdmVyLFxuLnVpLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhaXNlZC5jYXJkcyA+IC5jYXJkLFxuLnVpLnJhaXNlZC5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDBweCAycHggMTBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5yYWlzZWQuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZHMgLnJhaXNlZC5jYXJkOmhvdmVyLFxuYS51aS5yYWlzZWQuY2FyZDpob3Zlcixcbi51aS5saW5rLnJhaXNlZC5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSksIDBweCAycHggMTBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjI1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4yNSk7XG59XG5cbi51aS5yYWlzZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5yYWlzZWQuY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDRweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMHB4IDJweCAxMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDZW50ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VudGVyZWQuY2FyZHMge1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi51aS5jZW50ZXJlZC5jYXJkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5jYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTk5OXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgYS5jYXJkLFxuLnVpLmxpbmsuY2FyZHMgLmNhcmQsXG5hLnVpLmNhcmQsXG4udWkubGluay5jYXJkIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnVpLmNhcmRzIGEuY2FyZDpob3Zlcixcbi51aS5saW5rLmNhcmRzIC5jYXJkOmhvdmVyLFxuYS51aS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogNTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggM3B4IDBweCAjQkNCREJELCAwcHggMHB4IDBweCAxcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQsIDBweCAwcHggMHB4IDFweCAjRDRENEQ1O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVkICovXG5cbi51aS5yZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5yZWQuY2FyZCxcbi51aS5yZWQuY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjREIyODI4LCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjREIyODI4LCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbn1cblxuLnVpLnJlZC5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLnJlZC5jYXJkOmhvdmVyLFxuLnVpLnJlZC5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNkMDE5MTksIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNkMDE5MTksIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xufVxuXG4vKiBPcmFuZ2UgKi9cblxuLnVpLm9yYW5nZS5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLm9yYW5nZS5jYXJkLFxuLnVpLm9yYW5nZS5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNGMjcxMUMsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNGMjcxMUMsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xufVxuXG4udWkub3JhbmdlLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAub3JhbmdlLmNhcmQ6aG92ZXIsXG4udWkub3JhbmdlLmNhcmQ6aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI2YyNjIwMiwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI2YyNjIwMiwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG59XG5cbi8qIFllbGxvdyAqL1xuXG4udWkueWVsbG93LmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAueWVsbG93LmNhcmQsXG4udWkueWVsbG93LmNhcmQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0ZCQkQwOCwgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0ZCQkQwOCwgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG59XG5cbi51aS55ZWxsb3cuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC55ZWxsb3cuY2FyZDpob3Zlcixcbi51aS55ZWxsb3cuY2FyZDpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjZWFhZTAwLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjZWFhZTAwLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbn1cblxuLyogT2xpdmUgKi9cblxuLnVpLm9saXZlLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAub2xpdmUuY2FyZCxcbi51aS5vbGl2ZS5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNCNUNDMTgsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNCNUNDMTgsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xufVxuXG4udWkub2xpdmUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5vbGl2ZS5jYXJkOmhvdmVyLFxuLnVpLm9saXZlLmNhcmQ6aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI2E3YmQwZCwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI2E3YmQwZCwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG59XG5cbi8qIEdyZWVuICovXG5cbi51aS5ncmVlbi5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmdyZWVuLmNhcmQsXG4udWkuZ3JlZW4uY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMjFCQTQ1LCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMjFCQTQ1LCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbn1cblxuLnVpLmdyZWVuLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAuZ3JlZW4uY2FyZDpob3Zlcixcbi51aS5ncmVlbi5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMxNmFiMzksIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMxNmFiMzksIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xufVxuXG4vKiBUZWFsICovXG5cbi51aS50ZWFsLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAudGVhbC5jYXJkLFxuLnVpLnRlYWwuY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMDBCNUFELCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMDBCNUFELCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbn1cblxuLnVpLnRlYWwuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC50ZWFsLmNhcmQ6aG92ZXIsXG4udWkudGVhbC5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMwMDljOTUsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMwMDljOTUsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xufVxuXG4vKiBCbHVlICovXG5cbi51aS5ibHVlLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAuYmx1ZS5jYXJkLFxuLnVpLmJsdWUuY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMjE4NUQwLCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMjE4NUQwLCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbn1cblxuLnVpLmJsdWUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5ibHVlLmNhcmQ6aG92ZXIsXG4udWkuYmx1ZS5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMxNjc4YzIsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMxNjc4YzIsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xufVxuXG4vKiBWaW9sZXQgKi9cblxuLnVpLnZpb2xldC5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLnZpb2xldC5jYXJkLFxuLnVpLnZpb2xldC5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICM2NDM1QzksIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICM2NDM1QzksIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xufVxuXG4udWkudmlvbGV0LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAudmlvbGV0LmNhcmQ6aG92ZXIsXG4udWkudmlvbGV0LmNhcmQ6aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzU4MjliYiwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzU4MjliYiwgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG59XG5cbi8qIFB1cnBsZSAqL1xuXG4udWkucHVycGxlLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAucHVycGxlLmNhcmQsXG4udWkucHVycGxlLmNhcmQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0EzMzNDOCwgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0EzMzNDOCwgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG59XG5cbi51aS5wdXJwbGUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5wdXJwbGUuY2FyZDpob3Zlcixcbi51aS5wdXJwbGUuY2FyZDpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjOTYyN2JhLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjOTYyN2JhLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbn1cblxuLyogUGluayAqL1xuXG4udWkucGluay5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLnBpbmsuY2FyZCxcbi51aS5waW5rLmNhcmQge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0UwMzk5NywgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggI0UwMzk5NywgMHB4IDFweCAzcHggMHB4ICNENEQ0RDU7XG59XG5cbi51aS5waW5rLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAucGluay5jYXJkOmhvdmVyLFxuLnVpLnBpbmsuY2FyZDpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjZTYxYThkLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjZTYxYThkLCAwcHggMXB4IDNweCAwcHggI0JDQkRCRDtcbn1cblxuLyogQnJvd24gKi9cblxuLnVpLmJyb3duLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAuYnJvd24uY2FyZCxcbi51aS5icm93bi5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNBNTY3M0YsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICNBNTY3M0YsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xufVxuXG4udWkuYnJvd24uY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5icm93bi5jYXJkOmhvdmVyLFxuLnVpLmJyb3duLmNhcmQ6aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzk3NWIzMywgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzk3NWIzMywgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG59XG5cbi8qIEdyZXkgKi9cblxuLnVpLmdyZXkuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5ncmV5LmNhcmQsXG4udWkuZ3JleS5jYXJkIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICM3Njc2NzYsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICM3Njc2NzYsIDBweCAxcHggM3B4IDBweCAjRDRENEQ1O1xufVxuXG4udWkuZ3JleS5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLmdyZXkuY2FyZDpob3Zlcixcbi51aS5ncmV5LmNhcmQ6aG92ZXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzgzODM4MywgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjRDRENEQ1LCAwcHggMnB4IDBweCAwcHggIzgzODM4MywgMHB4IDFweCAzcHggMHB4ICNCQ0JEQkQ7XG59XG5cbi8qIEJsYWNrICovXG5cbi51aS5ibGFjay5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmJsYWNrLmNhcmQsXG4udWkuYmxhY2suY2FyZCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMUIxQzFELCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNENEQ0RDUsIDBweCAycHggMHB4IDBweCAjMUIxQzFELCAwcHggMXB4IDNweCAwcHggI0Q0RDRENTtcbn1cblxuLnVpLmJsYWNrLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAuYmxhY2suY2FyZDpob3Zlcixcbi51aS5ibGFjay5jYXJkOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMyNzI5MmEsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0Q0RDRENSwgMHB4IDJweCAwcHggMHB4ICMyNzI5MmEsIDBweCAxcHggM3B4IDBweCAjQkNCREJEO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBDYXJkIENvdW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkub25lLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi51aS5vbmUuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkudHdvLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gIG1hcmdpbi1yaWdodDogLTFlbTtcbn1cblxuLnVpLnR3by5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoIDUwJSAgLSAgMmVtICk7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuXG4udWkudGhyZWUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xufVxuXG4udWkudGhyZWUuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKCAzMy4zMzMzMzMzMyUgIC0gIDJlbSApO1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLnVpLmZvdXIuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xufVxuXG4udWkuZm91ci5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoIDI1JSAgLSAgMS41ZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG59XG5cbi51aS5maXZlLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbn1cblxuLnVpLmZpdmUuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKCAyMCUgIC0gIDEuNWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogMC43NWVtO1xufVxuXG4udWkuc2l4LmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbn1cblxuLnVpLnNpeC5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoIDE2LjY2NjY2NjY3JSAgLSAgMS41ZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG59XG5cbi51aS5zZXZlbi5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xufVxuXG4udWkuc2V2ZW4uY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKCAxNC4yODU3MTQyOSUgIC0gIDFlbSApO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG5cbi51aS5laWdodC5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xufVxuXG4udWkuZWlnaHQuY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKCAxMi41JSAgLSAgMWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4udWkubmluZS5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xufVxuXG4udWkubmluZS5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IGNhbGMoIDExLjExMTExMTExJSAgLSAgMWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4udWkudGVuLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41ZW07XG59XG5cbi51aS50ZW4uY2FyZHMgPiAuY2FyZCB7XG4gIHdpZHRoOiBjYWxjKCAxMCUgIC0gIDFlbSApO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRG91Ymxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlIE9ubHkgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnR3by5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnRocmVlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZm91ci5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggNTAlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuc2V2ZW4uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5zZXZlbi5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoIDMzLjMzMzMzMzMzJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5uaW5lLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG59XG5cbi8qIFRhYmxldCBPbmx5ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnR3by5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnRocmVlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZm91ci5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggNTAlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCAzMy4zMzMzMzMzMyUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCAzMy4zMzMzMzMzMyUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyA+IC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNzVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1ZW07XG4gIH1cblxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoIDI1JSAgLSAgMS41ZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG5cbiAgLnVpLm5pbmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbiAgfVxuXG4gIC51aS5uaW5lLmRvdWJsaW5nLmNhcmRzID4gLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCAyNSUgIC0gIDEuNWVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbiAgfVxuXG4gIC51aS50ZW4uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbiAgfVxuXG4gIC51aS50ZW4uZG91YmxpbmcuY2FyZHMgPiAuY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoIDIwJSAgLSAgMS41ZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU3RhY2thYmxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLnN0YWNrYWJsZS5jYXJkcyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuY2FyZHMgLmNhcmQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDBlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5jYXJkcyA+IC5jYXJkIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMWVtIDFlbTtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGNhbGMoIDEwMCUgIC0gIDJlbSApICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIENvbW1lbnRcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMge1xuICBtYXJnaW46IDEuNWVtIDBlbTtcbiAgbWF4LXdpZHRoOiA2NTBweDtcbn1cblxuLnVpLmNvbW1lbnRzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuY29tbWVudHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb21tZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMC41ZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMC41ZW0gMGVtIDBlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIHBhZGRpbmctdG9wOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBOZXN0ZWQgQ29tbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuY29tbWVudHMge1xuICBtYXJnaW46IDBlbSAwZW0gMC41ZW0gMC41ZW07XG4gIHBhZGRpbmc6IDFlbSAwZW0gMWVtIDFlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5jb21tZW50czpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuY29tbWVudHMgLmNvbW1lbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQXZhdGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmF2YXRhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMi41ZW07XG4gIGhlaWdodDogYXV0bztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMC4yZW0gMGVtIDBlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IGltZy5hdmF0YXIsXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmF2YXRhciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwZW0gYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBJZiB0aGVyZSBpcyBhbiBhdmF0YXIgbW92ZSBjb250ZW50IG92ZXIgKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50ID4gLmF2YXRhciB+IC5jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDMuNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF1dGhvclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hdXRob3Ige1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgYS5hdXRob3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCBhLmF1dGhvcjpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE1ldGFkYXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLm1ldGFkYXRhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5tZXRhZGF0YSA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwZW07XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCAubWV0YWRhdGEgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIENvbW1lbnQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC50ZXh0IHtcbiAgbWFyZ2luOiAwLjI1ZW0gMGVtIDAuNWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBVc2VyIEFjdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwZW0gMC43NWVtIDBlbSAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyBhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGEuYWN0aXZlLFxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBSZXBseSBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgPiAucmVwbHkuZm9ybSB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5yZXBseS5mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5yZXBseS5mb3JtIHRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGhlaWdodDogMTJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuY29sbGFwc2VkLmNvbW1lbnRzLFxuLnVpLmNvbW1lbnRzIC5jb2xsYXBzZWQuY29tbWVudHMsXG4udWkuY29tbWVudHMgLmNvbGxhcHNlZC5jb21tZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBUaHJlYWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRocmVhZGVkLmNvbW1lbnRzIC5jb21tZW50IC5jb21tZW50cyB7XG4gIG1hcmdpbjogLTEuNWVtIDAgLTFlbSAxLjI1ZW07XG4gIHBhZGRpbmc6IDNlbSAwZW0gMmVtIDIuMjVlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTWluaW1hbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmltYWwuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICByaWdodDogMHB4O1xuICBsZWZ0OiBhdXRvO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xufVxuXG4udWkubWluaW1hbC5jb21tZW50cyAuY29tbWVudCA+IC5jb250ZW50OmhvdmVyID4gLmFjdGlvbnMge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuY29tbWVudHMge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG5cbi51aS50aW55LmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuY29tbWVudHMge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuXG4udWkuaHVnZS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuY29tbWVudHMge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBGZWVkXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgQWN0aXZpdHkgRmVlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmZlZWQge1xuICBtYXJnaW46IDFlbSAwZW07XG59XG5cbi51aS5mZWVkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuZmVlZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRXZlbnQgKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4yMTQyODU3MXJlbSAwZW07XG4gIG1hcmdpbjogMGVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDBweDtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qIEV2ZW50IExhYmVsICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCAuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1ZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAubGFiZWwgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCArIC5jb250ZW50IHtcbiAgbWFyZ2luOiAwLjVlbSAwZW0gMC4zNTcxNDI4NmVtIDEuMTQyODU3MTRlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBDb250ZW50ICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudDpsYXN0LWNoaWxkID4gLmNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMGVtO1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZGF0ZSB7XG4gIG1hcmdpbjogLTAuNXJlbSAwZW0gMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3VtbWFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSB7XG4gIG1hcmdpbjogMGVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKiBTdW1tYXJ5IEltYWdlICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLnN1bW1hcnkgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMGVtO1xuICBtYXJnaW46IC0wLjI1ZW0gMC4yNWVtIDBlbSAwZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVXNlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAudXNlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLnVzZXIgaW1nIHtcbiAgbWFyZ2luOiAtMC4yNWVtIDAuMjVlbSAwZW0gMGVtO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBJbmxpbmUgRGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGF0ZSBpbnNpZGUgU3VtbWFyeSAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5zdW1tYXJ5ID4gLmRhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuNWVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgRXh0cmEgU3VtbWFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZXh0cmEge1xuICBtYXJnaW46IDAuNWVtIDBlbSAwZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIEltYWdlcyAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS5pbWFnZXMgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbiAgd2lkdGg6IDZlbTtcbn1cblxuLyogVGV4dCAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS50ZXh0IHtcbiAgcGFkZGluZzogMGVtO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2ZW07XG4gIG1hcmdpbjogMC41ZW0gMGVtIDBlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+ICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAqOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRvcDogMGVtO1xuICBsZWZ0OiAtMWVtO1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmxpa2Uge1xuICBjb2xvcjogJyc7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBjb2xvciBlYXNlO1xuICB0cmFuc2l0aW9uOiAwLjJzIGNvbG9yIGVhc2U7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmxpa2U6aG92ZXIgLmljb24ge1xuICBjb2xvcjogI0ZGMjczMztcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSAuYWN0aXZlLmxpa2UgLmljb24ge1xuICBjb2xvcjogI0VGNDA0QTtcbn1cblxuLyogRmlyc3QgZWxlbWVudCAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBBY3Rpb24gKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSBhLFxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IC5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIGE6aG92ZXIsXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIGE6aG92ZXIgLmljb24sXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gLmljb246aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zbWFsbC5mZWVkIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkuZmVlZCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmZlZWQge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBJdGVtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFlbSAwZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMHJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgei1pbmRleDogJyc7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1zXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMge1xuICBtYXJnaW46IDEuNWVtIDBlbTtcbn1cblxuLnVpLml0ZW1zOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pdGVtczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWF4LWhlaWdodDogJyc7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHRvcDtcbiAgYWxpZ24tc2VsZjogdG9wO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZTpvbmx5LWNoaWxkID4gaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcbiAgZmxleDogMSAxIGF1dG87XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQge1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogdG9wO1xuICBhbGlnbi1zZWxmOiB0b3A7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IC0wLjIxNDI1ZW0gMGVtIDBlbTtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4vKiBEZWZhdWx0IEhlYWRlciBTaXplICovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBDb250ZW50IEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSAuY29udGVudCBpbWcge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBtaWRkbGU7XG4gIGFsaWduLXNlbGY6IG1pZGRsZTtcbiAgd2lkdGg6ICcnO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSBpbWcuYXZhdGFyLFxuLnVpLml0ZW1zID4gLml0ZW0gLmF2YXRhciBpbWcge1xuICB3aWR0aDogJyc7XG4gIGhlaWdodDogJyc7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjZlbTtcbiAgbWF4LXdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBwIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEge1xuICBtYXJnaW46IDAuNWVtIDBlbSAwLjVlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhICoge1xuICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSAubWV0YSBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xuICBtYXJnaW4tbGVmdDogMC4zZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBHZW5lcmljICovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgYTpub3QoLnVpKSB7XG4gIGNvbG9yOiAnJztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6ICcnO1xufVxuXG4vKiBIZWFkZXIgKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCA+IGEuaGVhZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiBhLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKiBNZXRhICovXG5cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhID4gYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0tLVN0YXItLS0tLSAqL1xuXG4vKiBJY29uICovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmZhdm9yaXRlLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmZhdm9yaXRlLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI0ZGQjcwQTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAuYWN0aXZlLmZhdm9yaXRlLmljb24ge1xuICBjb2xvcjogI0ZGRTYyMztcbn1cblxuLyotLS0tLUxpa2UtLS0tLSAqL1xuXG4vKiBJY29uICovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmxpa2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNGRjI3MzM7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmFjdGl2ZS5saWtlLmljb24ge1xuICBjb2xvcjogI0ZGMjczMztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tXG4gIEV4dHJhIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gLmV4dHJhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwLjVyZW0gMGVtIDBlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtO1xuICB0b3A6IDBlbTtcbiAgbGVmdDogMGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYSA+ICoge1xuICBtYXJnaW46IDAuMjVyZW0gMC41cmVtIDAuMjVyZW0gMGVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSAuZXh0cmEgPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIG1hcmdpbjogMC4yNXJlbSAwZW0gMC4yNXJlbSAwLjVyZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYTphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFJlc3BvbnNpdmVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIERlZmF1bHQgSW1hZ2UgV2lkdGggKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2U6bm90KC51aSkge1xuICB3aWR0aDogMTc1cHg7XG59XG5cbi8qIFRhYmxldCBPbmx5ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWkuaXRlbXMgPiAuaXRlbSB7XG4gICAgbWFyZ2luOiAxZW0gMGVtO1xuICB9XG5cbiAgLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2U6bm90KC51aSkge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgfVxuXG4gIC51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDFlbTtcbiAgfVxufVxuXG4vKiBNb2JpbGUgT25seSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtIHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAyZW0gMGVtO1xuICB9XG5cbiAgLnVpLml0ZW1zOm5vdCgudW5zdGFja2FibGUpID4gLml0ZW0gPiAuaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC51aS5pdGVtczpub3QoLnVuc3RhY2thYmxlKSA+IC5pdGVtID4gLmltYWdlLFxuICAudWkuaXRlbXM6bm90KC51bnN0YWNrYWJsZSkgPiAuaXRlbSA+IC5pbWFnZSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiAyNTBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLml0ZW1zOm5vdCgudW5zdGFja2FibGUpID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS41ZW0gMGVtIDBlbTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmNvbnRlbnQge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydDtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29udGVudCB7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIFtjbGFzcyo9XCJib3R0b20gYWxpZ25lZFwiXS5jb250ZW50IHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSZWxheGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVsYXhlZC5pdGVtcyA+IC5pdGVtIHtcbiAgbWFyZ2luOiAxLjVlbSAwZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMmVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXZpZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVkLml0ZW1zID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDFlbSAwZW07XG59XG5cbi51aS5kaXZpZGVkLml0ZW1zID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW4tdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuZGl2aWRlZC5pdGVtcyA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDBlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBSZWxheGVkIERpdmlkZWQgKi9cblxuLnVpLnJlbGF4ZWQuZGl2aWRlZC5pdGVtcyA+IC5pdGVtIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDEuNWVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5kaXZpZGVkLml0ZW1zID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMmVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zIGEuaXRlbTpob3Zlcixcbi51aS5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5pdGVtcyBhLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlcixcbi51aS5saW5rLml0ZW1zID4gLml0ZW06aG92ZXIgLmNvbnRlbnQgLmhlYWRlciB7XG4gIGNvbG9yOiAjMWU3MGJmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgVW5zdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS51bnN0YWNrYWJsZS5pdGVtcyA+IC5pdGVtID4gLmltYWdlLFxuICAudWkudW5zdGFja2FibGUuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSA+IGltZyB7XG4gICAgd2lkdGg6IDEyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFN0YXRpc3RpY1xuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU3RhdGlzdGljXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBTdGFuZGFsb25lICovXG5cbi51aS5zdGF0aXN0aWMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICBtYXgtd2lkdGg6IGF1dG87XG59XG5cbi51aS5zdGF0aXN0aWMgKyAudWkuc3RhdGlzdGljIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxLjVlbTtcbn1cblxuLnVpLnN0YXRpc3RpYzpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLnN0YXRpc3RpYzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEdyb3VwZWQgKi9cblxuLnVpLnN0YXRpc3RpY3Mge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWkuc3RhdGlzdGljcyA+IC5zdGF0aXN0aWMge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDEgYXV0bztcbiAgZmxleDogMCAxIGF1dG87XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwZW0gMS41ZW0gMWVtO1xuICBtYXgtd2lkdGg6IGF1dG87XG59XG5cbi51aS5zdGF0aXN0aWNzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDFlbSAtMS41ZW0gLTFlbTtcbn1cblxuLyogQ2xlYXJpbmcgKi9cblxuLnVpLnN0YXRpc3RpY3M6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDBweDtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLnN0YXRpc3RpY3M6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDRyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGNvbG9yOiAjMUIxQzFEO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTGFiZWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwsXG4udWkuc3RhdGlzdGljID4gLmxhYmVsIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBUb3AgTGFiZWwgKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC5sYWJlbCB+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAubGFiZWwgfiAudmFsdWUge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xufVxuXG4vKiBCb3R0b20gTGFiZWwgKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSB+IC5sYWJlbCxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUgfiAubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBJY29uIFZhbHVlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uLFxuLnVpLnN0YXRpc3RpYyA+IC52YWx1ZSAuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgVGV4dCBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbWluLWhlaWdodDogMmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwsXG4udWkuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEltYWdlIFZhbHVlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIGltZyxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUgaW1nIHtcbiAgbWF4LWhlaWdodDogM3JlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50ZW4uc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMGVtIDBlbSAtMWVtO1xufVxuXG4udWkudGVuLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMTAlO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkubmluZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwZW0gMGVtIC0xZW07XG59XG5cbi51aS5uaW5lLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMTEuMTExMTExMTElO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkuZWlnaHQuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMGVtIDBlbSAtMWVtO1xufVxuXG4udWkuZWlnaHQuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxMi41JTtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLnNldmVuLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDBlbSAwZW0gLTFlbTtcbn1cblxuLnVpLnNldmVuLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMTQuMjg1NzE0MjklO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkuc2l4LnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDBlbSAwZW0gLTFlbTtcbn1cblxuLnVpLnNpeC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmZpdmUuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMGVtIDBlbSAtMWVtO1xufVxuXG4udWkuZml2ZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDIwJTtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmZvdXIuc3RhdGlzdGljcyB7XG4gIG1hcmdpbjogMGVtIDBlbSAtMWVtO1xufVxuXG4udWkuZm91ci5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDI1JTtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLnRocmVlLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDBlbSAwZW0gLTFlbTtcbn1cblxuLnVpLnRocmVlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIG1pbi13aWR0aDogMzMuMzMzMzMzMzMlO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkudHdvLnN0YXRpc3RpY3Mge1xuICBtYXJnaW46IDBlbSAwZW0gLTFlbTtcbn1cblxuLnVpLnR3by5zdGF0aXN0aWNzIC5zdGF0aXN0aWMge1xuICBtaW4td2lkdGg6IDUwJTtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLm9uZS5zdGF0aXN0aWNzIHtcbiAgbWFyZ2luOiAwZW0gMGVtIC0xZW07XG59XG5cbi51aS5vbmUuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyB7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwZW07XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWFyZ2luOiAxZW0gMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgPiAuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBtaW4taGVpZ2h0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uIHtcbiAgd2lkdGg6IDEuMThlbTtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC43NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJlZC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAucmVkLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5yZWQuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNEQjI4Mjg7XG59XG5cbi51aS5vcmFuZ2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLm9yYW5nZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkub3JhbmdlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRjI3MTFDO1xufVxuXG4udWkueWVsbG93LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC55ZWxsb3cuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0ZCQkQwODtcbn1cblxuLnVpLm9saXZlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5vbGl2ZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkub2xpdmUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNCNUNDMTg7XG59XG5cbi51aS5ncmVlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmdyZWVuLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuXG4udWkudGVhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzAwQjVBRDtcbn1cblxuLnVpLmJsdWUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMyMTg1RDA7XG59XG5cbi51aS52aW9sZXQuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnZpb2xldC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkudmlvbGV0LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjNjQzNUM5O1xufVxuXG4udWkucHVycGxlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5wdXJwbGUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0EzMzNDODtcbn1cblxuLnVpLnBpbmsuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNFMDM5OTc7XG59XG5cbi51aS5icm93bi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuYnJvd24uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmJyb3duLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjQTU2NzNGO1xufVxuXG4udWkuZ3JleS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnN0YXRpc3RpYyAudmFsdWUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmludmVydGVkLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC5sYWJlbCxcbi51aS5pbnZlcnRlZC5zdGF0aXN0aWMgLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLmludmVydGVkLnJlZC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQucmVkLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5pbnZlcnRlZC5yZWQuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNGRjY5NUU7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLm9yYW5nZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRkY4NTFCO1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC55ZWxsb3cuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0ZGRTIxRjtcbn1cblxuLnVpLmludmVydGVkLm9saXZlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5vbGl2ZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQub2xpdmUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNEOUU3Nzg7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLmdyZWVuLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjMkVDQzQwO1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQudGVhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogIzZERkZGRjtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICM1NEM4RkY7XG59XG5cbi51aS5pbnZlcnRlZC52aW9sZXQuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnZpb2xldC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQudmlvbGV0LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjQTI5MUZCO1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5wdXJwbGUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0RDNzNGRjtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNGRjhFREY7XG59XG5cbi51aS5pbnZlcnRlZC5icm93bi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQuYnJvd24uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLmJyb3duLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjRDY3QzFDO1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JleS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQuZ3JleS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI0RDRERERTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0uc3RhdGlzdGljIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMGVtIDJlbSAxZW0gMGVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5zdGF0aXN0aWMge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW0gMmVtO1xufVxuXG4udWkuZmxvYXRlZC5zdGF0aXN0aWM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWluaSAqL1xuXG4udWkubWluaS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkubWluaS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkubWluaS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5taW5pLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLm1pbmkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkubWluaS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBUaW55ICovXG5cbi51aS50aW55LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS50aW55LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkudGlueS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS50aW55Lmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS50aW55LnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLnRpbnkuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLyogU21hbGwgKi9cblxuLnVpLnNtYWxsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zbWFsbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbWFsbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5zbWFsbC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBNZWRpdW0gKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDRyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBMYXJnZSAqL1xuXG4udWkubGFyZ2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmxhcmdlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkubGFyZ2UuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkubGFyZ2UuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDRyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLmxhcmdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLyogSHVnZSAqL1xuXG4udWkuaHVnZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaHVnZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDZyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaHVnZS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuaHVnZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5odWdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIEFjY29yZGlvblxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIEFjY29yZGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmFjY29yZGlvbixcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgbWFyZ2luOiAxZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKiBUaXRsZSAqL1xuXG4udWkuYWNjb3JkaW9uIC50aXRsZSxcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIERlZmF1bHQgU3R5bGluZyAqL1xuXG4udWkuYWNjb3JkaW9uIC50aXRsZTpub3QoLnVpKSB7XG4gIHBhZGRpbmc6IDAuNWVtIDBlbTtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKiBDb250ZW50ICovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlIH4gLmNvbnRlbnQsXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIH4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBEZWZhdWx0IFN0eWxpbmcgKi9cblxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLnRpdGxlIH4gLmNvbnRlbnQ6bm90KC51aSksXG4udWkuYWNjb3JkaW9uOm5vdCguc3R5bGVkKSAuYWNjb3JkaW9uIC50aXRsZSB+IC5jb250ZW50Om5vdCgudWkpIHtcbiAgbWFyZ2luOiAnJztcbiAgcGFkZGluZzogMC41ZW0gMGVtIDFlbTtcbn1cblxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLnRpdGxlIH4gLmNvbnRlbnQ6bm90KC51aSk6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qIEFycm93ICovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxLjI1ZW07XG4gIGhlaWdodDogMWVtO1xuICBtYXJnaW46IDBlbSAwLjI1cmVtIDBlbSAwcmVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4xcyBlYXNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTWVudSAqL1xuXG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLnVpLmFjY29yZGlvbi5tZW51IC5pdGVtIC50aXRsZSA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAuMjE0MjVlbSAwZW0gMGVtIDFlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4vKiBIZWFkZXIgKi9cblxuLnVpLmFjY29yZGlvbiAudWkuaGVhZGVyIC5kcm9wZG93bi5pY29uIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMGVtIDAuMjVyZW0gMGVtIDByZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5hY2NvcmRpb24gLmFjdGl2ZS50aXRsZSAuZHJvcGRvd24uaWNvbixcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIC5kcm9wZG93bi5pY29uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cblxuLnVpLmFjY29yZGlvbi5tZW51IC5pdGVtIC5hY3RpdmUudGl0bGUgPiAuZHJvcGRvd24uaWNvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdHlsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdHlsZWQuYWNjb3JkaW9uIHtcbiAgd2lkdGg6IDYwMHB4O1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbixcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC50aXRsZSxcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlO1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbiA+IC50aXRsZTpmaXJzdC1jaGlsZCxcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogQ29udGVudCAqL1xuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuY29udGVudCxcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLmNvbnRlbnQge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMC41ZW0gMWVtIDEuNWVtO1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5jb250ZW50IHtcbiAgcGFkZGluZzogMGVtO1xuICBwYWRkaW5nOiAwLjVlbSAxZW0gMS41ZW07XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC50aXRsZTpob3Zlcixcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZTpob3Zlcixcbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY2NvcmRpb24gLmFjdGl2ZS50aXRsZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWNjb3JkaW9uIC5hY3RpdmUuY29udGVudCxcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAuYWN0aXZlLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLmFjY29yZGlvbixcbi51aS5mbHVpZC5hY2NvcmRpb24gLmFjY29yZGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuYWNjb3JkaW9uIC50aXRsZTpub3QoLnVpKSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FjY29yZGlvbic7XG4gIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nZ2pCNUFBQUFDOEFBQUFZR050WVhBUGZPSUtBQUFCSEFBQUFFeG5ZWE53QUFBQUVBQUFBV2dBQUFBSVoyeDVacnlqNkhnQUFBRndBQUFBeUdobFlXVC8wSWhIQUFBQ09BQUFBRFpvYUdWaEFwa0I1d0FBQW5BQUFBQWthRzEwZUFKdUFCSUFBQUtVQUFBQUdHeHZZMkVBakFCV0FBQUNyQUFBQUE1dFlYaHdBQWdBRmdBQUFyd0FBQUFnYm1GdFpmQzFuMDRBQUFMY0FBQUJQSEJ2YzNRQUF3QUFBQUFFR0FBQUFDQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUR3MmdIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBRGdBQUFBS0FBZ0FBZ0FDQUFFQUlQRGEvLzMvL3dBQUFBQUFJUERaLy8zLy93QUIvK01QS3dBREFBRUFBQUFBQUFBQUFBQUFBQUVBQWYvL0FBOEFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQVNBRWtBdHdGdUFCTUFBRGMwUHdFMkZ6WVhGaDBCRkFjR0p3WXZBU1kxRWdhQUJRZ0hCUVlHQlFjSUJZQUcyd2NHZndjQkFRY0VDZjhJQkFjQkFRZC9CZ1lBQUFBQUFRQUFBRWtBcFFGdUFCTUFBRGNSTkRjMk16SWZBUllWRkE4QkJpTWlKeVkxQUFVR0J3Z0ZnQVlHZ0FVSUJ3WUZXd0VBQ0FVR0JvQUZDQWNGZ0FZR0JRY0FBQUFCQUFBQUFRQUFxV1lsczE4UFBQVUFDd0lBQUFBQUFNLzlvKzRBQUFBQXovMmo3Z0FBQUFBQXR3RnVBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBSGcvK0FBQUFJQUFBQUFBQUMzQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFHQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUMzQUJJQXR3QUFBQUFBQUFBS0FCUUFIZ0JDQUdRQUFBQUJBQUFBQmdBVUFBRUFBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFEQUFBQUFFQUFBQUFBQUlBRGdCQUFBRUFBQUFBQUFNQURBQWlBQUVBQUFBQUFBUUFEQUJPQUFFQUFBQUFBQVVBRmdBTUFBRUFBQUFBQUFZQUJnQXVBQUVBQUFBQUFBb0FOQUJhQUFNQUFRUUpBQUVBREFBQUFBTUFBUVFKQUFJQURnQkFBQU1BQVFRSkFBTUFEQUFpQUFNQUFRUUpBQVFBREFCT0FBTUFBUVFKQUFVQUZnQU1BQU1BQVFRSkFBWUFEQUEwQUFNQUFRUUpBQW9BTkFCYUFISUFZUUIwQUdrQWJnQm5BRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCeUFHRUFkQUJwQUc0QVozSmhkR2x1WndCeUFHRUFkQUJwQUc0QVp3QlNBR1VBWndCMUFHd0FZUUJ5QUhJQVlRQjBBR2tBYmdCbkFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKGRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSazlVVkU4QUFBU3dBQW9BQUFBQUJHZ0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCRFJrWWdBQUFBOUFBQUFTMEFBQUV0RnBvdnVFOVRMeklBQUFJa0FBQUFZQUFBQUdBSUl3ZVFZMjFoY0FBQUFvUUFBQUJNQUFBQVRBOTg0Z3BuWVhOd0FBQUMwQUFBQUFnQUFBQUlBQUFBRUdobFlXUUFBQUxZQUFBQU5nQUFBRGIvMEloSGFHaGxZUUFBQXhBQUFBQWtBQUFBSkFLWkFlZG9iWFI0QUFBRE5BQUFBQmdBQUFBWUFtNEFFbTFoZUhBQUFBTk1BQUFBQmdBQUFBWUFCbEFBYm1GdFpRQUFBMVFBQUFFOEFBQUJQUEMxbjA1d2IzTjBBQUFFa0FBQUFDQUFBQUFnQUFNQUFBRUFCQVFBQVFFQkIzSmhkR2x1WndBQkFnQUJBRHI0SEFMNEd3UDRHQVFlQ2dBWlUvK0xpeDRLQUJsVC80dUxEQWVMYS9pVStIUUZIUUFBQUhrUEhRQUFBSDRSSFFBQUFBa2RBQUFCSkJJQUJ3RUJCdzBQRVJRWkhuSmhkR2x1WjNKaGRHbHVaM1V3ZFRGMU1qQjFSakJFT1hWR01FUkJBQUFDQVlrQUJBQUdBUUVFQndvTlZwMzhsQTc4bEE3OGxBNzdsQTc3M1ozM2J4V0xrSTJRajQ0STl4VDNGQVdPajVDTmtJdVFpNCtKam9lUGlJMkdpNFlJaS91VUJZdUdpWWVIaUlpSGg0bUdpNGFMaG8ySWp3ajdGUGNVQlllT2lZK0xrQWdPKzkyTDVoV0w5NVFGaTVDTmtJNk9qNCtQalpDTGtJdVFpWTZIQ1BjVSt4UUZqNGlOaG91R2k0YUpoNGVJQ1BzVSt4UUZpSWVHaVlhTGhvdUhqWWVQaUk2Smo0dVFDQTc0bEJUNGxCV0xEQW9BQUFBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHcyZ0hnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFEZ0FBQUFLQUFnQUFnQUNBQUVBSVBEYS8vMy8vd0FBQUFBQUlQRFovLzMvL3dBQi8rTVBLd0FEQUFFQUFBQUFBQUFBQUFBQUFBRUFBZi8vQUE4QUFRQUFBQUVBQURmWU9KWmZEenoxQUFzQ0FBQUFBQURQL2FQdUFBQUFBTS85bys0QUFBQUFBTGNCYmdBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFCNFAvZ0FBQUNBQUFBQUFBQXR3QUJBQUFBQUFBQUFBQUFBQUFBQUFBQUJnQUFBQUFBQUFBQUFBQUFBQUVBQUFBQXR3QVNBTGNBQUFBQVVBQUFCZ0FBQUFBQURnQ3VBQUVBQUFBQUFBRUFEQUFBQUFFQUFBQUFBQUlBRGdCQUFBRUFBQUFBQUFNQURBQWlBQUVBQUFBQUFBUUFEQUJPQUFFQUFBQUFBQVVBRmdBTUFBRUFBQUFBQUFZQUJnQXVBQUVBQUFBQUFBb0FOQUJhQUFNQUFRUUpBQUVBREFBQUFBTUFBUVFKQUFJQURnQkFBQU1BQVFRSkFBTUFEQUFpQUFNQUFRUUpBQVFBREFCT0FBTUFBUVFKQUFVQUZnQU1BQU1BQVFRSkFBWUFEQUEwQUFNQUFRUUpBQW9BTkFCYUFISUFZUUIwQUdrQWJnQm5BRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCeUFHRUFkQUJwQUc0QVozSmhkR2x1WndCeUFHRUFkQUJwQUc0QVp3QlNBR1VBWndCMUFHd0FZUUJ5QUhJQVlRQjBBR2tBYmdCbkFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qIERyb3Bkb3duIEljb24gKi9cblxuLnVpLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb24sXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uIHtcbiAgZm9udC1mYW1pbHk6IEFjY29yZGlvbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbjpiZWZvcmUsXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwZGEnIDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVXNlciBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBDaGVja2JveFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQ2hlY2tib3hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIG1pbi1oZWlnaHQ6IDE3cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIG1pbi13aWR0aDogMTdweDtcbn1cblxuLyogSFRNTCBDaGVja2JveCAqL1xuXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHotaW5kZXg6IDM7XG4gIHdpZHRoOiAxN3B4O1xuICBoZWlnaHQ6IDE3cHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJveFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IC5ib3gsXG4udWkuY2hlY2tib3ggbGFiZWwge1xuICBjdXJzb3I6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMS44NTcxNGVtO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjE0Mjg1NzFyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENoZWNrbWFya1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjFzIGVhc2UsIG9wYWNpdHkgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4xcyBlYXNlLCAtd2Via2l0LWJveC1zaGFkb3cgMC4xcyBlYXNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5zaWRlICovXG5cbi51aS5jaGVja2JveCBsYWJlbCxcbi51aS5jaGVja2JveCArIGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2U7XG59XG5cbi8qIE91dHNpZGUgKi9cblxuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG5cbi51aS5jaGVja2JveCBsYWJlbDpob3Zlcixcbi51aS5jaGVja2JveCArIGxhYmVsOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRG93blxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IC5ib3g6YWN0aXZlOjpiZWZvcmUsXG4udWkuY2hlY2tib3ggbGFiZWw6YWN0aXZlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG59XG5cbi51aS5jaGVja2JveCAuYm94OmFjdGl2ZTo6YWZ0ZXIsXG4udWkuY2hlY2tib3ggbGFiZWw6YWN0aXZlOjphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXQ6YWN0aXZlIH4gbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGb2N1c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG59XG5cbi51aS5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgSW5kZXRlcm1pbmF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGUgfiAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTppbmRldGVybWluYXRlIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM0LCAzNiwgMzgsIDAuMzUpO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZSB+IGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQWN0aXZlIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6aW5kZXRlcm1pbmF0ZTpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0Om5vdChbdHlwZT1yYWRpb10pOmluZGV0ZXJtaW5hdGU6Zm9jdXMgfiBsYWJlbDpiZWZvcmUsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG59XG5cbi51aS5jaGVja2JveCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTppbmRldGVybWluYXRlOmZvY3VzIH4gLmJveDphZnRlcixcbi51aS5jaGVja2JveCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTppbmRldGVybWluYXRlOmZvY3VzIH4gbGFiZWw6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IGxhYmVsOmFmdGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBSZWFkLU9ubHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZWFkLW9ubHkuY2hlY2tib3gsXG4udWkucmVhZC1vbmx5LmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGlzYWJsZWQuY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5kaXNhYmxlZC5jaGVja2JveCBsYWJlbCxcbi51aS5jaGVja2JveCBpbnB1dFtkaXNhYmxlZF0gfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0W2Rpc2FibGVkXSB+IGxhYmVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbml0aWFsaXplZCBjaGVja2JveCBtb3ZlcyBpbnB1dCBiZWxvdyBlbGVtZW50XG4gdG8gcHJldmVudCBtYW51YWxseSB0cmlnZ2VyaW5nICovXG5cbi51aS5jaGVja2JveCBpbnB1dC5oaWRkZW4ge1xuICB6LWluZGV4OiAtMTtcbn1cblxuLyogU2VsZWN0YWJsZSBMYWJlbCAqL1xuXG4udWkuY2hlY2tib3ggaW5wdXQuaGlkZGVuICsgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUmFkaW9cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yYWRpby5jaGVja2JveCB7XG4gIG1pbi1oZWlnaHQ6IDE1cHg7XG59XG5cbi51aS5yYWRpby5jaGVja2JveCAuYm94LFxuLnVpLnJhZGlvLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg1NzE0ZW07XG59XG5cbi8qIEJveCAqL1xuXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkucmFkaW8uY2hlY2tib3ggbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgdG9wOiAxcHg7XG4gIGxlZnQ6IDBweDtcbn1cblxuLyogQnVsbGV0ICovXG5cbi51aS5yYWRpby5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGxhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbn1cblxuLyogUmFkaW8gQ2hlY2tib3ggKi9cblxuLnVpLnJhZGlvLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICB0b3A6IDFweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjQ2NjY2NjY3KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjQ2NjY2NjY3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLyogRm9jdXMgKi9cblxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzIH4gbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4vKiBJbmRldGVybWluYXRlICovXG5cbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDppbmRldGVybWluYXRlIH4gLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDppbmRldGVybWluYXRlIH4gbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS5yYWRpby5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qIEFjdGl2ZSBGb2N1cyAqL1xuXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnJhZGlvLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkucmFkaW8uY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTbGlkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zbGlkZXIuY2hlY2tib3gge1xuICBtaW4taGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4vKiBJbnB1dCAqL1xuXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0IHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4vKiBMYWJlbCAqL1xuXG4udWkuc2xpZGVyLmNoZWNrYm94IC5ib3gsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiA0LjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4vKiBMaW5lICovXG5cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgbGVmdDogMGVtO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDAuNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAwLjIxNDI4NTcxcmVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuXG4vKiBIYW5kbGUgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSh0cmFuc3BhcmVudCksIHRvKHJnYmEoMCwgMCwgMCwgMC4wNSkpKTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAyO1xuICBib3JkZXI6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRvcDogLTAuMjVyZW07XG4gIGxlZnQ6IDBlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZTtcbn1cblxuLyogRm9jdXMgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1cyB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCAuYm94OmhvdmVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3gsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NCAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiAycmVtO1xufVxuXG4vKiBBY3RpdmUgRm9jdXMgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveCxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVG9nZ2xlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogMS41cmVtO1xufVxuXG4vKiBJbnB1dCAqL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0IHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG59XG5cbi8qIExhYmVsICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveCxcbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWwge1xuICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbCB7XG4gIHBhZGRpbmctdG9wOiAwLjE1ZW07XG59XG5cbi8qIFN3aXRjaCAqL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICB0b3A6IDByZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLyogSGFuZGxlICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20odHJhbnNwYXJlbnQpLCB0byhyZ2JhKDAsIDAsIDAsIDAuMDUpKSk7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICB0b3A6IDByZW07XG4gIGxlZnQ6IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLCBsZWZ0IDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UsIGxlZnQgMC4zcyBlYXNlO1xufVxuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0IH4gLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IC0wLjA1cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG59XG5cbi8qIEZvY3VzICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveCxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4NUQwICFpbXBvcnRhbnQ7XG59XG5cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IDIuMTVyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSBpbnNldDtcbn1cblxuLyogQWN0aXZlIEZvY3VzICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3gsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0OmZvY3VzOmNoZWNrZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXQ6Zm9jdXM6Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dDpmb2N1czpjaGVja2VkIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNzFiYiAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuY2hlY2tib3ggLmJveCxcbi51aS5maXR0ZWQuY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuZml0dGVkLnRvZ2dsZS5jaGVja2JveCxcbi51aS5maXR0ZWQudG9nZ2xlLmNoZWNrYm94IHtcbiAgd2lkdGg6IDMuNXJlbTtcbn1cblxuLnVpLmZpdHRlZC5zbGlkZXIuY2hlY2tib3gsXG4udWkuZml0dGVkLnNsaWRlci5jaGVja2JveCB7XG4gIHdpZHRoOiAzLjVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NoZWNrYm94JztcbiAgc3JjOiB1cmwoZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JEOEFBQUM4QUFBQVlHTnRZWEFZVnRDSkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpuNGh1d1VBQUFGNEFBQUJZR2hsWVdRR1BlMVpBQUFDMkFBQUFEWm9hR1ZoQjMwRHlBQUFBeEFBQUFBa2FHMTBlQkJLQUVVQUFBTTBBQUFBSEd4dlkyRUFtZ0VTQUFBRFVBQUFBQkJ0WVhod0FBa0FMd0FBQTJBQUFBQWdibUZ0WlNDOEl1Z0FBQU9BQUFBQmtuQnZjM1FBQXdBQUFBQUZGQUFBQUNBQUF3TVRBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRG9BZ1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNkFMLy9mLy9BQUFBQUFBZzZBRC8vZi8vQUFILzR4Z0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUVVQVVRTzdBdmdBR2dBQUFSUUhBUVlqSWljQkpqVTBQd0UyTXpJZkFRRTJNeklmQVJZVkE3c1EvaFFRRmhjUS91TVFFRTRRRnhjUXFBRjJFQmNYRUU0UUFuTVdFUDRVRUJBQkhSQVhGaEJPRUJDb0FYY1FFRTRRRndBQUFBQUJBQUFCYmdNbEFra0FGQUFBQVJVVUJ3WWpJU0luSmowQk5EYzJNeUV5RnhZVkF5VVFFQmY5U1JjUUVCQVFGd0szRnhBUUFoSnRGeEFRRUJBWGJSY1FFQkFRRndBQUFBQUJBQUFBU1FNbEEyNEFMQUFBQVJVVUJ3WXJBUlVVQndZckFTSW5KajBCSXlJbkpqMEJORGMyT3dFMU5EYzJPd0V5RnhZZEFUTXlGeFlWQXlVUUVCZnVFQkFYYmhZUUVPNFhFQkFRRUJmdUVCQVdiaGNRRU80WEVCQUNFbTBYRUJEdUZ4QVFFQkFYN2hBUUYyMFhFQkR1RnhBUUVCQVg3aEFRRndBQUFRQUFBQUlBQUhSU3pUOWZEenoxQUFzRUFBQUFBQURSc2RSM0FBQUFBTkd4MUhjQUFBQUFBN3NEYmdBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBQUFBRHV3QUJBQUFBQUFBQUFBQUFBQUFBQUFBQUJ3UUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQkZBeVVBQUFNbEFBQUFBQUFBQUFvQUZBQWVBRTRBY2dDd0FBRUFBQUFIQUMwQUFRQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT0FLNEFBUUFBQUFBQUFRQUlBQUFBQVFBQUFBQUFBZ0FIQUdrQUFRQUFBQUFBQXdBSUFEa0FBUUFBQUFBQUJBQUlBSDRBQVFBQUFBQUFCUUFMQUJnQUFRQUFBQUFBQmdBSUFGRUFBUUFBQUFBQUNnQWFBSllBQXdBQkJBa0FBUUFRQUFnQUF3QUJCQWtBQWdBT0FIQUFBd0FCQkFrQUF3QVFBRUVBQXdBQkJBa0FCQUFRQUlZQUF3QUJCQWtBQlFBV0FDTUFBd0FCQkFrQUJnQVFBRmtBQXdBQkJBa0FDZ0EwQUxCRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhXWlhKemFXOXVJREl1TUFCV0FHVUFjZ0J6QUdrQWJ3QnVBQ0FBTWdBdUFEQkRhR1ZqYTJKdmVBQkRBR2dBWlFCakFHc0FZZ0J2QUhoRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhTWldkMWJHRnlBRklBWlFCbkFIVUFiQUJoQUhKRGFHVmphMkp2ZUFCREFHZ0FaUUJqQUdzQVlnQnZBSGhHYjI1MElHZGxibVZ5WVhSbFpDQmllU0JKWTI5TmIyOXVMZ0JHQUc4QWJnQjBBQ0FBWndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFDNEFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQSkgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG4vKiBDaGVja21hcmsgKi9cblxuLnVpLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmNoZWNrYm94IC5ib3g6YWZ0ZXIge1xuICBmb250LWZhbWlseTogJ0NoZWNrYm94Jztcbn1cblxuLyogQ2hlY2tlZCAqL1xuXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogJ1xcZTgwMCc7XG59XG5cbi8qIEluZGV0ZXJtaW5hdGUgKi9cblxuLnVpLmNoZWNrYm94IGlucHV0OmluZGV0ZXJtaW5hdGUgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0OmluZGV0ZXJtaW5hdGUgfiBsYWJlbDphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29udGVudDogJ1xcZTgwMSc7XG59XG5cbi8qICBVVEYgUmVmZXJlbmNlXG4uY2hlY2s6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMCc7IH1cbi5kYXNoOmJlZm9yZSAgeyBjb250ZW50OiAnXFxlODAxJzsgfVxuLnBsdXM6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMic7IH1cbiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIERpbW1lclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpbW1lclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmRpbW1hYmxlOm5vdChib2R5KSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVpLmRpbW1lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZzogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBvcGFjaXR5OiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBsaW5lYXI7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgei1pbmRleDogMTAwMDtcbn1cblxuLyogRGltbWVyIENvbnRlbnQgKi9cblxuLnVpLmRpbW1lciA+IC5jb250ZW50IHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1vei11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1zLXVzZXItc2VsZWN0OiB0ZXh0O1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIExvb3NlIENvdXBsaW5nICovXG5cbi51aS5zZWdtZW50ID4gLnVpLmRpbW1lciB7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLyogU2Nyb2xsYmFycyAqL1xuXG4udWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLnVpLmRpbW1lcjpub3QoLmludmVydGVkKTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4udWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp3aW5kb3ctaW5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG4udWkuZGltbWVyOm5vdCguaW52ZXJ0ZWQpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEFuaW1hdGluZyAqL1xuXG4uYW5pbWF0aW5nLmRpbW1hYmxlOm5vdChib2R5KSxcbi5kaW1tZWQuZGltbWFibGU6bm90KGJvZHkpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogQW5pbWF0aW5nIC8gQWN0aXZlIC8gVmlzaWJsZSAqL1xuXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLmFuaW1hdGluZy5kaW1tZXIsXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLnZpc2libGUuZGltbWVyLFxuLnVpLmFjdGl2ZS5kaW1tZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIERpc2FibGVkICovXG5cbi51aS5kaXNhYmxlZC5kaW1tZXIge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExlZ2FjeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQW5pbWF0aW5nIC8gQWN0aXZlIC8gVmlzaWJsZSAqL1xuXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLmFuaW1hdGluZy5sZWdhY3kuZGltbWVyLFxuLmRpbW1lZC5kaW1tYWJsZSA+IC51aS52aXNpYmxlLmxlZ2FjeS5kaW1tZXIsXG4udWkuYWN0aXZlLmxlZ2FjeS5kaW1tZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEFsaWdubWVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmRpbW1lciB7XG4gIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0O1xuICAtbXMtZmxleC1wYWNrOiBzdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4udWlbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uZGltbWVyIHtcbiAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xuICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWdlLmRpbW1lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6ICcnO1xuICB0cmFuc2Zvcm0tc3R5bGU6ICcnO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAyMDAwcHg7XG4gIHBlcnNwZWN0aXZlOiAyMDAwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuYm9keS5hbmltYXRpbmcuaW4uZGltbWFibGUsXG5ib2R5LmRpbW1lZC5kaW1tYWJsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmJvZHkuZGltbWFibGUgPiAuZGltbWVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQmx1cnJpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5ibHVycmluZy5kaW1tYWJsZSA+IDpub3QoLmRpbW1lcikge1xuICAtd2Via2l0LWZpbHRlcjogYmx1cigwcHgpIGdyYXlzY2FsZSgwKTtcbiAgZmlsdGVyOiBibHVyKDBweCkgZ3JheXNjYWxlKDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDgwMG1zIC13ZWJraXQtZmlsdGVyIGVhc2U7XG4gIHRyYW5zaXRpb246IDgwMG1zIC13ZWJraXQtZmlsdGVyIGVhc2U7XG4gIHRyYW5zaXRpb246IDgwMG1zIGZpbHRlciBlYXNlO1xuICB0cmFuc2l0aW9uOiA4MDBtcyBmaWx0ZXIgZWFzZSwgODAwbXMgLXdlYmtpdC1maWx0ZXIgZWFzZTtcbn1cblxuLmJsdXJyaW5nLmRpbW1lZC5kaW1tYWJsZSA+IDpub3QoLmRpbW1lcikge1xuICAtd2Via2l0LWZpbHRlcjogYmx1cig1cHgpIGdyYXlzY2FsZSgwLjcpO1xuICBmaWx0ZXI6IGJsdXIoNXB4KSBncmF5c2NhbGUoMC43KTtcbn1cblxuLyogRGltbWVyIENvbG9yICovXG5cbi5ibHVycmluZy5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5ibHVycmluZy5kaW1tYWJsZSA+IC5pbnZlcnRlZC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGltbWVyID4gLnRvcC5hbGlnbmVkLmNvbnRlbnQgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmRpbW1lciA+IC5ib3R0b20uYWxpZ25lZC5jb250ZW50ID4gKiB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuY29udGVudCA+ICoge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaW1wbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIERpc3BsYXlzIHdpdGhvdXQgamF2YXNjcmlwdCAqL1xuXG4udWkuc2ltcGxlLmRpbW1lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMCU7XG4gIHotaW5kZXg6IC0xMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmRpbW1lciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4udWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG5cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDIuNC4yIC0gRHJvcGRvd25cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEcm9wZG93blxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3V0bGluZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHdpZHRoIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHdpZHRoIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRvcDogMTAwJTtcbiAgbWluLXdpZHRoOiAtd2Via2l0LW1heC1jb250ZW50O1xuICBtaW4td2lkdGg6IC1tb3otbWF4LWNvbnRlbnQ7XG4gIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAzcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgei1pbmRleDogMTE7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+ICoge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIEhpZGRlbiBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gaW5wdXQ6bm90KC5zZWFyY2gpOmZpcnN0LWNoaWxkLFxuLnVpLmRyb3Bkb3duID4gc2VsZWN0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gRHJvcGRvd24gSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIC5kcm9wZG93bi5pY29uICsgLnRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gLnRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE1lbnUgSXRlbVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3JkZXItdG9wOiBub25lO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgcGFkZGluZzogMC43ODU3MTQyOXJlbSAxLjE0Mjg1NzE0cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBGbG9hdGVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSxcbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IC5pY29uLmZsb2F0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiAuZmxhZy5mbG9hdGVkLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gLmltYWdlLmZsb2F0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiBpbWcuZmxvYXRlZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBNZW51IERpdmlkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSA+IC5oZWFkZXIge1xuICBtYXJnaW46IDFyZW0gMHJlbSAwLjc1cmVtO1xuICBwYWRkaW5nOiAwZW0gMS4xNDI4NTcxNHJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICBoZWlnaHQ6IDBlbTtcbiAgbWFyZ2luOiAwLjVlbSAwZW07XG59XG5cbi51aS5kcm9wZG93bi5kcm9wZG93biAubWVudSA+IC5pbnB1dCB7XG4gIHdpZHRoOiBhdXRvO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMS4xNDI4NTcxNHJlbSAwLjc4NTcxNDI5cmVtO1xuICBtaW4td2lkdGg6IDEwcmVtO1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaGVhZGVyICsgLmlucHV0IHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgaW5wdXQge1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pbnB1dDpub3QoLnRyYW5zcGFyZW50KSAuYnV0dG9uLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5pY29uLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gIEl0ZW0gRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5kZXNjcmlwdGlvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmRlc2NyaXB0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAubWVzc2FnZSB7XG4gIHBhZGRpbmc6IDAuNzg1NzE0MjlyZW0gMS4xNDI4NTcxNHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLm1lc3NhZ2U6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU3ViIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSAubWVudSB7XG4gIHRvcDogMCUgIWltcG9ydGFudDtcbiAgbGVmdDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuNWVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogMjEgIWltcG9ydGFudDtcbn1cblxuLyogSGlkZSBBcnJvdyAqL1xuXG4udWkuZHJvcGRvd24gLm1lbnUgLm1lbnU6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEljb25zIC8gRmxhZ3MgLyBMYWJlbHMgLyBJbWFnZSAqL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pY29uLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAubGFiZWwsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5mbGFnLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBpbWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaWNvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZmxhZyxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmljb24sXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5sYWJlbCxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmZsYWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IGltZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaWNvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZmxhZyxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc4NTcxNDI5cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IGltZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaW1hZ2UsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0wLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNWVtO1xuICBtYXgtaGVpZ2h0OiAyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb3VwbGluZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVtb3ZlIE1lbnUgSXRlbSBEaXZpZGVyICovXG5cbi51aS5kcm9wZG93biAudWkubWVudSA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5kcm9wZG93biAubWVudSA+IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFByZXZlbnQgTWVudSBJdGVtIEJvcmRlciAqL1xuXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi8qIEF1dG9tYXRpY2FsbHkgZmxvYXQgZHJvcGRvd24gbWVudSByaWdodCBvbiBsYXN0IG1lbnUgaXRlbSAqL1xuXG4udWkubWVudSAucmlnaHQubWVudSAuZHJvcGRvd246bGFzdC1jaGlsZCAubWVudSxcbi51aS5tZW51IC5yaWdodC5kcm9wZG93bi5pdGVtIC5tZW51LFxuLnVpLmJ1dHRvbnMgPiAudWkuZHJvcGRvd246bGFzdC1jaGlsZCAubWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBEcm9wZG93biBNZW51ICovXG5cbi51aS5sYWJlbC5kcm9wZG93biAubWVudSB7XG4gIG1pbi13aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE5vIE1hcmdpbiBPbiBJY29uIEJ1dHRvbiAqL1xuXG4udWkuZHJvcGRvd24uaWNvbi5idXR0b24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkuYnV0dG9uLmRyb3Bkb3duIC5tZW51IHtcbiAgbWluLXdpZHRoOiAxMDAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzcGxheXMgbGlrZSBhIHNlbGVjdCBib3ggKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBvdXRsaW5lOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWigwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDBkZWcpO1xuICBtaW4td2lkdGg6IDE0ZW07XG4gIG1pbi1oZWlnaHQ6IDIuNzE0Mjg1NzFlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjc4NTcxNDI5ZW0gMi4xZW0gMC43ODU3MTQyOWVtIDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHdpZHRoIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UsIHdpZHRoIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi52aXNpYmxlLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5hY3RpdmUge1xuICB6LWluZGV4OiAxMDtcbn1cblxuc2VsZWN0LnVpLmRyb3Bkb3duIHtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC5zZWFyY2guaWNvbixcbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZGVsZXRlLmljb24sXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbiAgdG9wOiAwLjc4NTcxNDI5ZW07XG4gIHJpZ2h0OiAxZW07XG4gIHotaW5kZXg6IDM7XG4gIG1hcmdpbjogLTAuNzg1NzE0MjllbTtcbiAgcGFkZGluZzogMC45MTY2NjY2N2VtO1xuICBvcGFjaXR5OiAwLjg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuXG4vKiBDb21wYWN0ICovXG5cbi51aS5jb21wYWN0LnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIG1pbi13aWR0aDogMHB4O1xufVxuXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBib3JkZXItdG9wLXdpZHRoOiAwcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIG91dGxpbmU6IG5vbmU7XG4gIG1hcmdpbjogMHB4IC0xcHg7XG4gIG1pbi13aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICB3aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDNweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm94LXNoYWRvdzogMHB4IDJweCAzcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xufVxuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51OmFmdGVyLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogMC43ODU3MTQyOXJlbSAxLjE0Mjg1NzE0cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDguMDE0Mjg1NzFyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAxMC42ODU3MTQyOXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDE2LjAyODU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIxLjM3MTQyODU3cmVtO1xuICB9XG59XG5cbi8qIE1lbnUgSXRlbSAqL1xuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0ZBRkFGQTtcbiAgcGFkZGluZzogMC43ODU3MTQyOXJlbSAxLjE0Mjg1NzE0cmVtICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG4vKiBVc2VyIEl0ZW0gKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSA+IC5oaWRkZW4uYWRkaXRpb24uaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzQsIDM2LCAzOCwgMC4zNSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5zZWxlY3Rpb24uYWN0aXZlLmRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDNweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd24gLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAzcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKiBGb2N1cyAqL1xuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5zZWxlY3Rpb24uZHJvcGRvd246Zm9jdXMgLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAzcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKiBWaXNpYmxlICovXG5cbi51aS5zZWxlY3Rpb24udmlzaWJsZS5kcm9wZG93biA+IC50ZXh0Om5vdCguZGVmYXVsdCkge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBWaXNpYmxlIEhvdmVyICovXG5cbi51aS5zZWxlY3Rpb24uYWN0aXZlLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZDOERBO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDNweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNlbGVjdGlvbi5hY3RpdmUuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBib3JkZXItY29sb3I6ICM5NkM4REE7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAzcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKiBEcm9wZG93biBJY29uICovXG5cbi51aS5hY3RpdmUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24sXG4udWkudmlzaWJsZS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbiB7XG4gIG9wYWNpdHk6ICcnO1xuICB6LWluZGV4OiAzO1xufVxuXG4vKiBDb25uZWN0aW5nIEJvcmRlciAqL1xuXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIEVtcHR5IENvbm5lY3RpbmcgQm9yZGVyICovXG5cbi51aS5hY3RpdmUuZW1wdHkuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkuYWN0aXZlLmVtcHR5LnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTZWFyY2hhYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG5cbi51aS5zZWFyY2guZHJvcGRvd24ge1xuICBtaW4td2lkdGg6ICcnO1xufVxuXG4vKiBTZWFyY2ggRHJvcGRvd24gKi9cblxuLnVpLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogdGV4dDtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDFweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgcGFkZGluZzogaW5oZXJpdDtcbn1cblxuLyogVGV4dCBMYXllcmluZyAqL1xuXG4udWkuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xufVxuXG4udWkuc2VhcmNoLmRyb3Bkb3duID4gLnRleHQge1xuICBjdXJzb3I6IHRleHQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMXB4O1xuICB6LWluZGV4OiAzO1xufVxuXG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG5cbi51aS5zZWFyY2guc2VsZWN0aW9uLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbiAgcGFkZGluZzogMC42Nzg1NzE0M2VtIDIuMWVtIDAuNjc4NTcxNDNlbSAxZW07XG59XG5cbi8qIFVzZWQgdG8gc2l6ZSBtdWx0aSBzZWxlY3QgaW5wdXQgdG8gY2hhcmFjdGVyIHdpZHRoICovXG5cbi51aS5zZWFyY2guc2VsZWN0aW9uLmRyb3Bkb3duID4gc3Bhbi5zaXplciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjIxNDI4NTcxZW07XG4gIHBhZGRpbmc6IDAuNjc4NTcxNDNlbSAyLjFlbSAwLjY3ODU3MTQzZW0gMWVtO1xuICBkaXNwbGF5OiBub25lO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xufVxuXG4vKiBBY3RpdmUvVmlzaWJsZSBTZWFyY2ggKi9cblxuLnVpLnNlYXJjaC5kcm9wZG93bi5hY3RpdmUgPiBpbnB1dC5zZWFyY2gsXG4udWkuc2VhcmNoLmRyb3Bkb3duLnZpc2libGUgPiBpbnB1dC5zZWFyY2gge1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi51aS5zZWFyY2guZHJvcGRvd24uYWN0aXZlID4gLnRleHQsXG4udWkuc2VhcmNoLmRyb3Bkb3duLnZpc2libGUgPiAudGV4dCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBGaWx0ZXJlZCBUZXh0ICovXG5cbi51aS5hY3RpdmUuc2VhcmNoLmRyb3Bkb3duIGlucHV0LnNlYXJjaDpmb2N1cyArIC50ZXh0IC5pY29uLFxuLnVpLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gaW5wdXQuc2VhcmNoOmZvY3VzICsgLnRleHQgLmZsYWcge1xuICBvcGFjaXR5OiAwLjQ1O1xufVxuXG4udWkuYWN0aXZlLnNlYXJjaC5kcm9wZG93biBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDExNSwgMTE1LCAxMTUsIDAuODcpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNlYXJjaCBNZW51ICovXG5cbi51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc2VhcmNoLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiA4LjAxNDI4NTcxcmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTAuNjg1NzE0MjlyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkuc2VhcmNoLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAxNi4wMjg1NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkuc2VhcmNoLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAyMS4zNzE0Mjg1N3JlbTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTXVsdGlwbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE11bHRpcGxlIFNlbGVjdGlvbiAqL1xuXG4udWkubXVsdGlwbGUuZHJvcGRvd24ge1xuICBwYWRkaW5nOiAwLjIyNjE5MDQ4ZW0gMi4xZW0gMC4yMjYxOTA0OGVtIDAuMzU3MTQyODZlbTtcbn1cblxuLnVpLm11bHRpcGxlLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4vKiBNdWx0aXBsZSBTZWFyY2ggU2VsZWN0aW9uICovXG5cbi51aS5tdWx0aXBsZS5zZWFyY2guZHJvcGRvd24sXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgY3Vyc29yOiB0ZXh0O1xufVxuXG4vKiBTZWxlY3Rpb24gTGFiZWwgKi9cblxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMC4zNTcxNDI4NmVtIDAuNzg1NzE0MjllbTtcbiAgbWFyZ2luOiAwLjE0Mjg1NzE0cmVtIDAuMjg1NzE0MjlyZW0gMC4xNDI4NTcxNHJlbSAwZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgaW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpIGluc2V0O1xufVxuXG4vKiBEcm9wZG93biBJY29uICovXG5cbi51aS5tdWx0aXBsZS5kcm9wZG93biAuZHJvcGRvd24uaWNvbiB7XG4gIG1hcmdpbjogJyc7XG4gIHBhZGRpbmc6ICcnO1xufVxuXG4vKiBUZXh0ICovXG5cbi51aS5tdWx0aXBsZS5kcm9wZG93biA+IC50ZXh0IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAuNDUyMzgwOTVlbSAwZW0gMC40NTIzODA5NWVtIDAuNjQyODU3MTRlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbn1cblxuLnVpLm11bHRpcGxlLmRyb3Bkb3duID4gLmxhYmVsIH4gaW5wdXQuc2VhcmNoIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMTQyODU3MTRlbSAhaW1wb3J0YW50O1xufVxuXG4udWkubXVsdGlwbGUuZHJvcGRvd24gPiAubGFiZWwgfiAudGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS1cbiAgTXVsdGlwbGUgU2VhcmNoXG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFByb21wdCBUZXh0ICovXG5cbi51aS5tdWx0aXBsZS5zZWFyY2guZHJvcGRvd24gPiAudGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IGluaGVyaXQ7XG4gIG1hcmdpbjogMC40NTIzODA5NWVtIDBlbSAwLjQ1MjM4MDk1ZW0gMC42NDI4NTcxNGVtO1xuICBsaW5lLWhlaWdodDogMS4yMTQyODU3MWVtO1xufVxuXG4udWkubXVsdGlwbGUuc2VhcmNoLmRyb3Bkb3duID4gLmxhYmVsIH4gLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTZWFyY2ggKi9cblxuLnVpLm11bHRpcGxlLnNlYXJjaC5kcm9wZG93biA+IGlucHV0LnNlYXJjaCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwLjQ1MjM4MDk1ZW0gMGVtIDAuNDUyMzgwOTVlbSAwLjY0Mjg1NzE0ZW07XG4gIHdpZHRoOiAyLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbmxpbmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbmxpbmUuZHJvcGRvd24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi51aS5pbmxpbmUuZHJvcGRvd24gLmRyb3Bkb3duLmljb24ge1xuICBtYXJnaW46IDBlbSAwLjIxNDI4NTcxZW0gMGVtIDAuMjE0Mjg1NzFlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4udWkuaW5saW5lLmRyb3Bkb3duID4gLnRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnVpLmlubGluZS5kcm9wZG93biAubWVudSB7XG4gIGN1cnNvcjogYXV0bztcbiAgbWFyZ2luLXRvcDogMC4yMTQyODU3MWVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE1lbnUgSXRlbSBBY3RpdmUgKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgei1pbmRleDogMTI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNZW51IEl0ZW0gSG92ZXIgKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbiAgei1pbmRleDogMTM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5kcm9wZG93biA+IGkuaWNvbiB7XG4gIGhlaWdodDogMWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sb2FkaW5nLnNlbGVjdGlvbi5kcm9wZG93biA+IGkuaWNvbiB7XG4gIHBhZGRpbmc6IDEuNWVtIDEuMjg1NzE0MjllbSAhaW1wb3J0YW50O1xufVxuXG4udWkubG9hZGluZy5kcm9wZG93biA+IGkuaWNvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0wLjY0Mjg1NzE0ZW0gMGVtIDBlbSAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmxvYWRpbmcuZHJvcGRvd24gPiBpLmljb246YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IC0wLjY0Mjg1NzE0ZW0gMGVtIDBlbSAtMC42NDI4NTcxNGVtO1xuICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICBoZWlnaHQ6IDEuMjg1NzE0MjllbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGRyb3Bkb3duLXNwaW4gMC42cyBsaW5lYXI7XG4gIGFuaW1hdGlvbjogZHJvcGRvd24tc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjNzY3Njc2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xufVxuXG4vKiBDb3VwbGluZyAqL1xuXG4udWkubG9hZGluZy5kcm9wZG93bi5idXR0b24gPiBpLmljb246YmVmb3JlLFxuLnVpLmxvYWRpbmcuZHJvcGRvd24uYnV0dG9uID4gaS5pY29uOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3Bkb3duLXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZHJvcGRvd24tc3BpbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBEZWZhdWx0IFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd246bm90KC5idXR0b24pID4gLmRlZmF1bHQudGV4dCxcbi51aS5kZWZhdWx0LmRyb3Bkb3duOm5vdCguYnV0dG9uKSA+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMTkxLCAxOTEsIDE5MSwgMC44Nyk7XG59XG5cbi51aS5kcm9wZG93bjpub3QoLmJ1dHRvbikgPiBpbnB1dDpmb2N1cyB+IC5kZWZhdWx0LnRleHQsXG4udWkuZGVmYXVsdC5kcm9wZG93bjpub3QoLmJ1dHRvbikgPiBpbnB1dDpmb2N1cyB+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC44Nyk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLmRyb3Bkb3duID4gLnRleHQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi8qIFVzZWQgVG8gQ2hlY2sgUG9zaXRpb24gKi9cblxuLnVpLmRyb3Bkb3duIC5sb2FkaW5nLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLnVpLmRyb3Bkb3duID4gLmxvYWRpbmcubWVudSB7XG4gIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udWkuZHJvcGRvd24gPiAubWVudSAubG9hZGluZy5tZW51IHtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgS2V5Ym9hcmQgU2VsZWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2VsZWN0ZWQgSXRlbSAqL1xuXG4udWkuZHJvcGRvd24uc2VsZWN0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLnNlbGVjdGVkLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjk1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNlYXJjaCBGaWx0ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEZpbHRlcmVkIEl0ZW0gKi9cblxuLnVpLmRyb3Bkb3duID4gLmZpbHRlcmVkLnRleHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5kcm9wZG93biAuZmlsdGVyZWQuaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93bi5lcnJvcixcbi51aS5kcm9wZG93bi5lcnJvciA+IC50ZXh0LFxuLnVpLmRyb3Bkb3duLmVycm9yID4gLmRlZmF1bHQudGV4dCB7XG4gIGNvbG9yOiAjOUYzQTM4O1xufVxuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duLmVycm9yIHtcbiAgYmFja2dyb3VuZDogI0ZGRjZGNjtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duLmVycm9yOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuXG4udWkuZHJvcGRvd24uZXJyb3IgPiAubWVudSxcbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51IC5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiAjRTBCNEI0O1xufVxuXG4udWkuZHJvcGRvd24uZXJyb3IgPiAubWVudSA+IC5pdGVtIHtcbiAgY29sb3I6ICM5RjNBMzg7XG59XG5cbi51aS5tdWx0aXBsZS5zZWxlY3Rpb24uZXJyb3IuZHJvcGRvd24gPiAubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNFMEI0QjQ7XG59XG5cbi8qIEl0ZW0gSG92ZXIgKi9cblxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkYyRjI7XG59XG5cbi8qIEl0ZW0gQWN0aXZlICovXG5cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRENGQ0Y7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQ2xlYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAuY2xlYXIuZHJvcGRvd24uaWNvbiB7XG4gIG9wYWNpdHk6IDAuODtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG5cbi51aS5kcm9wZG93biA+IC5jbGVhci5kcm9wZG93bi5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIERpc2FibGVkICovXG5cbi51aS5kaXNhYmxlZC5kcm9wZG93bixcbi51aS5kcm9wZG93biAubWVudSA+IC5kaXNhYmxlZC5pdGVtIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC40NTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERpcmVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRmx5b3V0IERpcmVjdGlvbiAqL1xuXG4udWkuZHJvcGRvd24gLm1lbnUge1xuICBsZWZ0OiAwcHg7XG59XG5cbi8qIERlZmF1bHQgU2lkZSAoUmlnaHQpICovXG5cbi51aS5kcm9wZG93biAucmlnaHQubWVudSA+IC5tZW51LFxuLnVpLmRyb3Bkb3duIC5tZW51IC5yaWdodC5tZW51IHtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIExlZnR3YXJkIE9wZW5pbmcgTWVudSAqL1xuXG4udWkuZHJvcGRvd24gPiAubGVmdC5tZW51IHtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biA+IC5sZWZ0Lm1lbnUgLm1lbnUsXG4udWkuZHJvcGRvd24gLm1lbnUgLmxlZnQubWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDBlbSAtMC41ZW0gMGVtIDBlbSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uLFxuLnVpLmRyb3Bkb3duIC5sZWZ0Lm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xufVxuXG4udWkuZHJvcGRvd24gLml0ZW0gLmxlZnQuZHJvcGRvd24uaWNvbixcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbn1cblxuLnVpLmRyb3Bkb3duIC5pdGVtIC5sZWZ0LmRyb3Bkb3duLmljb24gKyAudGV4dCxcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uICsgLnRleHQge1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBVcHdhcmRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFVwd2FyZCBNYWluIE1lbnUgKi9cblxuLnVpLnVwd2FyZC5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLyogVXB3YXJkIFN1YiBNZW51ICovXG5cbi51aS5kcm9wZG93biAudXB3YXJkLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIEFjdGl2ZSBVcHdhcmQgKi9cblxuLnVpLnNpbXBsZS51cHdhcmQuYWN0aXZlLmRyb3Bkb3duLFxuLnVpLnNpbXBsZS51cHdhcmQuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkudXB3YXJkLmRyb3Bkb3duLmJ1dHRvbjpub3QoLnBvaW50aW5nKTpub3QoLmZsb2F0aW5nKS5hY3RpdmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLyogU2VsZWN0aW9uICovXG5cbi51aS51cHdhcmQuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51IHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDBweCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAtMnB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm94LXNoYWRvdzogMHB4IC0ycHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4udWkudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4vKiBBY3RpdmUgVXB3YXJkICovXG5cbi51aS5hY3RpdmUudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZpc2libGUgVXB3YXJkICovXG5cbi51aS51cHdhcmQuc2VsZWN0aW9uLmRyb3Bkb3duLnZpc2libGUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gIWltcG9ydGFudDtcbn1cblxuLyogVmlzaWJsZSBIb3ZlciBVcHdhcmQgKi9cblxuLnVpLnVwd2FyZC5hY3RpdmUuc2VsZWN0aW9uLmRyb3Bkb3duOmhvdmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51aS51cHdhcmQuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IC0ycHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3gtc2hhZG93OiAwcHggLTJweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2ltcGxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cblxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSxcbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSAuaXRlbS5pdGVtLml0ZW0sXG4udWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51ID4gLml0ZW0uaXRlbS5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUgLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4udWkuZHJvcGRvd24gPiAuYW5pbWF0aW5nLm1lbnUgLnNjcm9sbGluZy5tZW51LFxuLnVpLmRyb3Bkb3duID4gLnZpc2libGUubWVudSAuc2Nyb2xsaW5nLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU2Nyb2xsYmFyIGluIElFICovXG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtaW4td2lkdGg6IGNhbGMoMTAwJSAtIDE3cHgpO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLnNjcm9sbGluZy5kcm9wZG93biAubWVudSxcbiAgLnVpLmRyb3Bkb3duIC5zY3JvbGxpbmcubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTAuMjg1NzE0MjlyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkuc2Nyb2xsaW5nLmRyb3Bkb3duIC5tZW51LFxuICAudWkuZHJvcGRvd24gLnNjcm9sbGluZy5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAxNS40Mjg1NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIwLjU3MTQyODU3cmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zY3JvbGxpbmcuZHJvcGRvd24gLm1lbnUsXG4gIC51aS5kcm9wZG93biAuc2Nyb2xsaW5nLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDIwLjU3MTQyODU3cmVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2ltcGxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBEaXNwbGF5cyB3aXRob3V0IGphdmFzY3JpcHQgKi9cblxuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudTpiZWZvcmUsXG4udWkuc2ltcGxlLmRyb3Bkb3duIC5tZW51OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogLTk5OTlweCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cblxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24sXG4udWkuc2ltcGxlLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24gPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDEwMCUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnVpLnNpbXBsZS5kcm9wZG93biA+IC5tZW51ID4gLml0ZW06YWN0aXZlID4gLm1lbnUsXG4udWkuc2ltcGxlLmRyb3Bkb3duOmhvdmVyID4gLm1lbnUgPiAuaXRlbTpob3ZlciA+IC5tZW51IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMCUgIWltcG9ydGFudDtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4udWkuc2ltcGxlLmRpc2FibGVkLmRyb3Bkb3duOmhvdmVyIC5tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwcHg7XG4gIHdpZHRoOiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIFZpc2libGUgKi9cblxuLnVpLnNpbXBsZS52aXNpYmxlLmRyb3Bkb3duID4gLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwZW07XG59XG5cbi51aS5mbHVpZC5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGluZy5kcm9wZG93biAubWVudSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xMiksIDBweCAycHggMTBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mbG9hdGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgbWFyZ2luLXRvcDogMC41ZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC43ODU3MTQyOXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogJyc7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHdpZHRoOiAwLjVlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB6LWluZGV4OiAyO1xufVxuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogLTAuMjVlbTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIC0wLjI1ZW07XG59XG5cbi8qIFRvcCBMZWZ0IFBvaW50aW5nICovXG5cbi51aS50b3AubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAxZW0gMGVtIDBlbTtcbn1cblxuLnVpLnRvcC5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDFlbSAwZW0gMGVtO1xufVxuXG4udWkudG9wLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogLTAuMjVlbTtcbiAgbGVmdDogMWVtO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi8qIFRvcCBSaWdodCBQb2ludGluZyAqL1xuXG4udWkudG9wLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IDAlO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW46IDFlbSAwZW0gMGVtO1xufVxuXG4udWkudG9wLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudTphZnRlcixcbi51aS50b3AucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogLTAuMjVlbTtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMWVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4vKiBMZWZ0IFBvaW50aW5nICovXG5cbi51aS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDAlO1xuICBsZWZ0OiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IDFlbTtcbiAgbGVmdDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLnVpLmxlZnQ6bm90KC50b3ApOm5vdCguYm90dG9tKS5wb2ludGluZy5kcm9wZG93biA+IC5sZWZ0Lm1lbnUge1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIDFlbSAwZW0gMGVtO1xufVxuXG4udWkubGVmdDpub3QoLnRvcCk6bm90KC5ib3R0b20pLnBvaW50aW5nLmRyb3Bkb3duID4gLmxlZnQubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbn1cblxuLyogUmlnaHQgUG9pbnRpbmcgKi9cblxuLnVpLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDAlO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwZW0gMWVtIDBlbSAwZW07XG59XG5cbi51aS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgdG9wOiAxZW07XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMC4yNWVtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xufVxuXG4vKiBCb3R0b20gUG9pbnRpbmcgKi9cblxuLnVpLmJvdHRvbS5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmJvdHRvbS5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC0wLjI1ZW07XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDBlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG59XG5cbi8qIFJldmVyc2UgU3ViLU1lbnUgRGlyZWN0aW9uICovXG5cbi51aS5ib3R0b20ucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSAubWVudSB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBCb3R0b20gTGVmdCAqL1xuXG4udWkuYm90dG9tLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbn1cblxuLnVpLmJvdHRvbS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBsZWZ0OiAxZW07XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBCb3R0b20gUmlnaHQgKi9cblxuLnVpLmJvdHRvbS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgcmlnaHQ6IDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4udWkuYm90dG9tLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMWVtO1xufVxuXG4vKiBVcHdhcmQgcG9pbnRpbmcgKi9cblxuLnVpLnBvaW50aW5nLnVwd2FyZC5kcm9wZG93biAubWVudSxcbi51aS50b3AucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duIC5tZW51IHtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBlbSAwZW0gMC43ODU3MTQyOXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLnBvaW50aW5nLnVwd2FyZC5kcm9wZG93biAubWVudTphZnRlcixcbi51aS50b3AucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duIC5tZW51OmFmdGVyIHtcbiAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAxcHggMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAxcHggMXB4IDBweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgbWFyZ2luOiAtMC4yNWVtIDBlbSAwZW07XG59XG5cbi8qIFJpZ2h0IFBvaW50aW5nIFVwd2FyZCAqL1xuXG4udWkucmlnaHQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIDFlbSAwZW0gMGVtO1xufVxuXG4udWkucmlnaHQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW0gMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qIExlZnQgUG9pbnRpbmcgVXB3YXJkICovXG5cbi51aS5sZWZ0LnBvaW50aW5nLnVwd2FyZC5kcm9wZG93bjpub3QoLnRvcCk6bm90KC5ib3R0b20pIC5tZW51IHtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmxlZnQucG9pbnRpbmcudXB3YXJkLmRyb3Bkb3duOm5vdCgudG9wKTpub3QoLmJvdHRvbSkgLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW0gMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIERyb3Bkb3duIENhcmV0cyAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9wZG93bic7XG4gIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSZ0FCQUFBQUFBVmdBQThBQUFBQUNGQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFCV0FBQUFCd0FBQUFjaEdnYXEwZEVSVVlBQUFGMEFBQUFIQUFBQUI0QUp3QVBUMU12TWdBQUFaQUFBQUJEQUFBQVZuVzRUSmRqYldGd0FBQUIxQUFBQUVzQUFBRlM4Q2NhcW1OMmRDQUFBQUlnQUFBQUJBQUFBQVFBRVFGRVoyRnpjQUFBQWlRQUFBQUlBQUFBQ1AvL0FBTm5iSGxtQUFBQ0xBQUFBUW9BQUFHa3JSSFA5V2hsWVdRQUFBTTRBQUFBTUFBQUFEWVBLOFl5YUdobFlRQUFBMmdBQUFBZEFBQUFKQU5DQWIxb2JYUjRBQUFEaUFBQUFDSUFBQUFpQ0JrQU9HeHZZMkVBQUFPc0FBQUFGQUFBQUJRQm5BSXliV0Y0Y0FBQUE4QUFBQUFmQUFBQUlBRVZBRjV1WVcxbEFBQUQ0QUFBQVRBQUFBS01GR2xqNUhCdmMzUUFBQVVRQUFBQVJnQUFBSEpvZWRqcWQyVmlaZ0FBQlZnQUFBQUdBQUFBQnJPN1c1VUFBQUFCQUFBQUFOWHVsUFVBQUFBQTFyNGhnQUFBQUFEWHUyUTFlTnBqWUdSZ1lPQUJZakVnWm1KZ0JFSU9JR1lCOHhnQUEvWUFOM2phWTJCa3RHT2N3TURLd01JNGpUR05nWUhCSFVwL1paQmthR0ZnWUdKZ1pXYkFDZ0xTWEZNWUhGVC9mTGpGZU9EL0FRWTl4ak1NYmtCaFJwQWNBTjQ4RFFZQWVOcGpZR0JnWm9CZ0dRWkdCaER3QWZJWXdYd1dCZ01nelFHRVRBd01xbjgrOEg2NDlmOC9sSFg5Ly85YjdQemYrZldndXNDQWtZMEJ6bVVFNmdIcFF3R01ETU1lQUFDYnhnN1NBQUFSQVVRQUFBQUIvLzhBQW5qYWRaQlBTc05BR01YZlMreU1xWWdPaHBTdVNsS2FkbVVoaVZFaEVNUXpGRjIybTE3QmJidnpDaDVCWENVbjZFRzhnamVRNERlcHdZbzRpKy9mZkw5NWo0RURBK0NGQzdqUXVLeUllVkhySTN3a2xlcTlGN1hyU0luS3RlT2VIZGRhOGJPb2FlZXBTYzAwTldQei9MUmVjOUc4R2FieUd0RWRGN2gxOXowMzNHQU1USzd6Yk00MnhORVpwellvZjBSdFE1Q1VIQVFKNzNPdFZ5dXRjKzNiN091Ly9iOFhObHNQeDNqZ2pVaWZBQmRoRW9oS0pKTDVpTTVwMzl1cWM3WDErc1JRU3FtR3JVVmhsc0o0bHBtRVVWd3lUOFNVWXRnMFA5RHlOelBBRERzK3RqckdWNktSQ1Jmc3VpM2VIY0w0L3A4Wlh2Zk1sY25FVStDTHY3aER5a09QK0FLVFBUeGJBQUI0Mm1OZ1pHQmdBR0t1ZjVLUDR2bHR2akxJTXpHQXdMVjlpZzBnK3ZydUZGTVF6ZGpBQ09Kek1JQ2xBUmgwQ1RKNDJtTmdaR0JnUFBEL0FKRDh3Z0FFakEwTWpBeW9nQU1BYk9RRUFRQUFBQUM3QUJFQUFBQUFBS29BQUFIMEFBQUJnQUFBQVVBQUNBRkFBQWdBd0FBWEFBQUFBQUFBQUNvQUtnQXFBRElBYkFDR0FLQUF1Z0RTZU5wallHUmdZT0JrVUdGZ1lnQUJFTWtGaEF3TS94bjBRQUlBRGRVQmRBQjQycVdRdlVvRFFSU0Z2M0dqYUlTVVFheW1TbUd4Sm9HQXNSQzBpUFlMc1U1MFk2SXhydmxSdFBDSkpLVVBJQmIrUElIdjRFTjRkakt1S0FxQ0RIZm11K2ZlT2R3Wm9NQ1VBSk5iQWxZVU16YVVsTTE0amp4Ym5nT3E3SG5PaWE4OXoxUGsxdk1DYTl4N3p0UGt6Zk15SmJQaitaR2k2WHArb214dVBEK3phRDdtZWFGZzdtYjhHckJxSG1od3hvQXhsbTB1aVJrcFA5WDVtMjZwS1JvTXhUR1IxRDQ5RHYvWWIvOTFvNmw4cUw2ZXU1bjJoWlF6bjY4dXRSOW0zRlUyY0I0dDljZFNMRzJ1dEkrNDRFaC9QOWJxS08rb0ovV3htWHNzajc3WWtyamFzWlFENlNGZGR5dGhrM1d0enJmK1VGMnAwNzZVZGxhMVZOenNFUlAza2tqVlJLZWw3bXAxdWRYWWNIdFpTbFY3UmZtSmUxR2lGV3ZlbHVhZUtENS9NdUpjU2s4VHBtL3Z2d1BJYm1KbGVOcGpZR0tBQUZZRzdJQ1RnWUdSaVpHWmtZV1JsWkdOa1oyUmc1R1RMVDJuc2lEREVFSVpzWmZtWlJxWnVqbURhRGNEQXhjSTdXSU9wUzJndENXVWRnUUFaa2NTbVFBQUFBRmJsYk82QUFBPSkgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnVpLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBmb250LWZhbWlseTogJ0Ryb3Bkb3duJztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGhlaWdodDogMWVtO1xuICB3aWR0aDogMS4yM2VtO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnVpLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBkNyc7XG59XG5cbi8qIFN1YiBNZW51ICovXG5cbi51aS5kcm9wZG93biAubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMGRhJyA7XG59XG5cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uOmJlZm9yZSxcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCIgO1xufVxuXG4vKiBWZXJ0aWNhbCBNZW51IERyb3Bkb3duICovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIiA7XG59XG5cbi51aS5kcm9wZG93biA+IC5jbGVhci5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG5cbi8qIEljb25zIGZvciBSZWZlcmVuY2UgKFN1YnNldHRlZCBpbiAyLjQuMClcbiAgLmRyb3Bkb3duLmRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDdcIjsgfVxuICAuZHJvcGRvd24udXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDhcIjsgfVxuICAuZHJvcGRvd24ubGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkOVwiOyB9XG4gIC5kcm9wZG93bi5yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkYVwiOyB9XG4gIC5kcm9wZG93bi5jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwZFwiOyB9XG4qL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFZpZGVvXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5lbWJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI0RDRERERTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLVxuICBFbWJlZGRlZCBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZW1iZWQgaWZyYW1lLFxuLnVpLmVtYmVkIGVtYmVkLFxuLnVpLmVtYmVkIG9iamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBFbWJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmVtYmVkID4gLmVtYmVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5lbWJlZCA+IC5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmFkaWFsLWdyYWRpZW50KHRyYW5zcGFyZW50IDQ1JSwgcmdiYSgwLCAwLCAwLCAwLjMpKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmVtYmVkID4gLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cblxuLnVpLmVtYmVkID4gLmljb246YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMCU7XG4gIGxlZnQ6IDAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAzO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBvcGFjaXR5OiAwLjU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xufVxuXG4udWkuZW1iZWQgPiAuaWNvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiA2cmVtO1xuICB0ZXh0LXNoYWRvdzogMHB4IDJweCAxMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4yKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgY29sb3IgMC41cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgY29sb3IgMC41cyBlYXNlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmVtYmVkIC5pY29uOmhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQodHJhbnNwYXJlbnQgNDUlLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4udWkuZW1iZWQgLmljb246aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLmVtYmVkID4gLmljb24sXG4udWkuYWN0aXZlLmVtYmVkID4gLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLmFjdGl2ZS5lbWJlZCA+IC5lbWJlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBWaWRlbyBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc3F1YXJlLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi51aVtjbGFzcyo9XCI0OjNcIl0uZW1iZWQge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuXG4udWlbY2xhc3MqPVwiMTY6OVwiXS5lbWJlZCB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi51aVtjbGFzcyo9XCIyMTo5XCJdLmVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDQyLjg1NzE0Mjg2JTtcbn1cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIE1vZGFsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1vZGFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubW9kYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDEwMDE7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggM3B4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAxcHggM3B4IDE1cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMXB4IDNweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMXB4IDNweCAxNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDI1JTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDI1JTtcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1vei11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1zLXVzZXItc2VsZWN0OiB0ZXh0O1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgd2lsbC1jaGFuZ2U6IHRvcCwgbGVmdCwgbWFyZ2luLCB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG5cbi51aS5tb2RhbCA+IDpmaXJzdC1jaGlsZDpub3QoLmljb24pLFxuLnVpLm1vZGFsID4gLmljb246Zmlyc3QtY2hpbGQgKyAqIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5tb2RhbCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENsb3NlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwgPiAuY2xvc2Uge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMi41cmVtO1xuICByaWdodDogLTIuNXJlbTtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMC44O1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHdpZHRoOiAyLjI1cmVtO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDByZW0gMHJlbSAwcmVtO1xufVxuXG4udWkubW9kYWwgPiAuY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1vZGFsID4gLmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkubW9kYWwgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xuICBsaW5lLWhlaWdodDogMS4yODU3MTQyOWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cblxuLnVpLm1vZGFsID4gLmltYWdlLmNvbnRlbnQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtbXMtZmxleDogMCAxIGF1dG87XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogJyc7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHRvcDtcbiAgYWxpZ24tc2VsZjogdG9wO1xufVxuXG4udWkubW9kYWwgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiB0b3A7XG4gIGFsaWduLXNlbGY6IHRvcDtcbn1cblxuLnVpLm1vZGFsID4gW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdIHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogbWlkZGxlO1xuICBhbGlnbi1zZWxmOiBtaWRkbGU7XG59XG5cbi51aS5tb2RhbCA+IFtjbGFzcyo9XCJzdHJldGNoZWRcIl0ge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4vKiBEZXNjcmlwdGlvbiAqL1xuXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleDogMSAwIGF1dG87XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBtaW4td2lkdGg6IDBweDtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogdG9wO1xuICBhbGlnbi1zZWxmOiB0b3A7XG59XG5cbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmljb24gKyAuZGVzY3JpcHRpb24sXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZSArIC5kZXNjcmlwdGlvbiB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tcy1mbGV4OiAwIDEgYXV0bztcbiAgZmxleDogMCAxIGF1dG87XG4gIG1pbi13aWR0aDogJyc7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDJlbTtcbn1cblxuLypydGw6aWdub3JlKi9cblxuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2UgPiBpLmljb24ge1xuICBtYXJnaW46IDBlbTtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDhyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1vZGFsID4gLmFjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJlc3BvbnNpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9kYWwgV2lkdGggKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA4OCU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA4NTBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA5MDBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA5NTBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG4vKiBUYWJsZXQgYW5kIE1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5tb2RhbCA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMjVyZW07XG4gIH1cblxuICAudWkubW9kYWwgPiAuY2xvc2Uge1xuICAgIHRvcDogMS4wNTM1cmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICB9XG59XG5cbi8qIE1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5tb2RhbCA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5tb2RhbCA+IC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkubW9kYWwgPiAuY2xvc2Uge1xuICAgIHRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLypydGw6aWdub3JlKi9cblxuICAudWkubW9kYWwgLmltYWdlLmNvbnRlbnQge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC51aS5tb2RhbCAuY29udGVudCA+IC5pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMGVtIGF1dG8gIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMHJlbSAwcmVtIDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5tb2RhbCA+IC5jb250ZW50ID4gLmltYWdlID4gaS5pY29uIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLypydGw6aWdub3JlKi9cblxuICAudWkubW9kYWwgLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxcmVtIDByZW0gIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qIExldCBCdXR0b25zIFN0YWNrICovXG5cbiAgLnVpLm1vZGFsID4gLmFjdGlvbnMge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkubW9kYWwgLmFjdGlvbnMgPiAuYnV0dG9ucyxcbiAgLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAudWkubW9kYWwge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAzcHggMTBweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3gtc2hhZG93OiAxcHggM3B4IDEwcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmJhc2ljLm1vZGFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnVpLmJhc2ljLm1vZGFsID4gLmhlYWRlcixcbi51aS5iYXNpYy5tb2RhbCA+IC5jb250ZW50LFxuLnVpLmJhc2ljLm1vZGFsID4gLmFjdGlvbnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnVpLmJhc2ljLm1vZGFsID4gLmhlYWRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuYmFzaWMubW9kYWwgPiAuY2xvc2Uge1xuICB0b3A6IDFyZW07XG4gIHJpZ2h0OiAxLjVyZW07XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuYmFzaWMubW9kYWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLmludmVydGVkLmRpbW1lciA+IC51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLyogUmVzb3J0IHRvIG1hcmdpbiBwb3NpdGlvbmluZyBpZiBsZWdhY3kgKi9cblxuLnVpLmxlZ2FjeS5tb2RhbCxcbi51aS5sZWdhY3kucGFnZS5kaW1tZXIgPiAudWkubW9kYWwge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xufVxuXG4udWkubGVnYWN5LnBhZ2UuZGltbWVyID4gLnVpLnNjcm9sbGluZy5tb2RhbCxcbi51aS5wYWdlLmRpbW1lciA+IC51aS5zY3JvbGxpbmcubGVnYWN5Lm1vZGFsLFxuLnVpLnRvcC5hbGlnbmVkLmxlZ2FjeS5wYWdlLmRpbW1lciA+IC51aS5tb2RhbCxcbi51aS50b3AuYWxpZ25lZC5kaW1tZXIgPiAudWkubGVnYWN5Lm1vZGFsIHtcbiAgdG9wOiBhdXRvO1xufVxuXG4vKiBUYWJsZXQgYW5kIE1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5iYXNpYy5tb2RhbCA+IC5jbG9zZSB7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5sb2FkaW5nLm1vZGFsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG59XG5cbi51aS5hY3RpdmUubW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgVG9wIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvcCBBbGlnbmVkIE1vZGFsICovXG5cbi5tb2RhbHMuZGltbWVyW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIC5tb2RhbCB7XG4gIG1hcmdpbjogNXZoIGF1dG87XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1vZGFscy5kaW1tZXJbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0gLm1vZGFsIHtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgfVxufVxuXG4vKiBMZWdhY3kgVG9wIEFsaWduZWQgKi9cblxuLmxlZ2FjeS5tb2RhbHMuZGltbWVyW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdIHtcbiAgcGFkZGluZy10b3A6IDV2aDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubGVnYWN5Lm1vZGFscy5kaW1tZXJbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTY3JvbGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNjcm9sbGluZyBEaW1tZXIgKi9cblxuLnNjcm9sbGluZy5kaW1tYWJsZS5kaW1tZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2Nyb2xsaW5nLmRpbW1hYmxlID4gLmRpbW1lciB7XG4gIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0O1xuICAtbXMtZmxleC1wYWNrOiBzdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uc2Nyb2xsaW5nLmRpbW1hYmxlLmRpbW1lZCA+IC5kaW1tZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uc2Nyb2xsaW5nLmRpbW1hYmxlID4gLmRpbW1lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm1vZGFscy5kaW1tZXIgLnVpLnNjcm9sbGluZy5tb2RhbCB7XG4gIG1hcmdpbjogMXJlbSBhdXRvO1xufVxuXG4vKiBVbmRldGFjaGVkIFNjcm9sbGluZyAqL1xuXG4uc2Nyb2xsaW5nLnVuZGV0YWNoZWQuZGltbWFibGUuZGltbWVkIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnNjcm9sbGluZy51bmRldGFjaGVkLmRpbW1hYmxlLmRpbW1lZCA+IC5kaW1tZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2Nyb2xsaW5nLnVuZGV0YWNoZWQuZGltbWFibGUgLnVpLnNjcm9sbGluZy5tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNjcm9sbGluZyBDb250ZW50ICovXG5cbi51aS5tb2RhbCAuc2Nyb2xsaW5nLmNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDgwdmggLSAxMGVtKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZ1bGwgU2NyZWVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZnVsbHNjcmVlbi5tb2RhbCB7XG4gIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAxZW0gYXV0bztcbn1cblxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuaGVhZGVyIHtcbiAgcGFkZGluZy1yaWdodDogMi4yNXJlbTtcbn1cblxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuY2xvc2Uge1xuICB0b3A6IDEuMDUzNXJlbTtcbiAgcmlnaHQ6IDFyZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi8qIE1pbmkgKi9cblxuLnVpLm1pbmkubW9kYWwgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbn1cblxuLyogTWluaSBNb2RhbCBXaWR0aCAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5taW5pLm1vZGFsIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLm1pbmkubW9kYWwge1xuICAgIHdpZHRoOiAzNS4yJTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5taW5pLm1vZGFsIHtcbiAgICB3aWR0aDogMzQwcHg7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVpLm1pbmkubW9kYWwge1xuICAgIHdpZHRoOiAzNjBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkubWluaS5tb2RhbCB7XG4gICAgd2lkdGg6IDM4MHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbi8qIG1pbmkgKi9cblxuLnVpLnNtYWxsLm1vZGFsID4gLmhlYWRlcjpub3QoLnVpKSB7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG59XG5cbi8qIFRpbnkgTW9kYWwgV2lkdGggKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IDk1JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogNTIuOCU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkudGlueS5tb2RhbCB7XG4gICAgd2lkdGg6IDUxMHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS50aW55Lm1vZGFsIHtcbiAgICB3aWR0aDogNTQwcHg7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpLnRpbnkubW9kYWwge1xuICAgIHdpZHRoOiA1NzBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG4vKiBTbWFsbCAqL1xuXG4udWkuc21hbGwubW9kYWwgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbn1cblxuLyogU21hbGwgTW9kYWwgV2lkdGggKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA3MC40JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDY4MHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDcyMHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDc2MHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbi8qIExhcmdlIE1vZGFsIFdpZHRoICovXG5cbi51aS5sYXJnZS5tb2RhbCA+IC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDk1JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDg4JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDEwMjBweDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiAxMDgwcHg7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpLmxhcmdlLm1vZGFsIHtcbiAgICB3aWR0aDogMTE0MHB4O1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMGVtO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIE5hZ1xuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBOYWdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5uYWcge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwLjk1O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMGVtO1xuICBsZWZ0OiAwcHg7XG4gIHotaW5kZXg6IDk5OTtcbiAgbWluLWhlaWdodDogMGVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDAuNzVlbSAxZW07XG4gIGJhY2tncm91bmQ6ICM1NTU1NTU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGJhY2tncm91bmQgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4ycyBiYWNrZ3JvdW5kIGVhc2U7XG59XG5cbmEudWkubmFnIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWkubmFnID4gLnRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbSAwLjVlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5uYWcgPiAuY2xvc2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC40O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAtMC41ZW0gMGVtIDBlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSG92ZXIgKi9cblxuLnVpLm5hZzpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1NTU1NTU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5uYWcgLmNsb3NlOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTdGF0aWNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vdmVybGF5Lm5hZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml4ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXhlZC5uYWcge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQm90dG9tXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYm90dG9tLm5hZ3MsXG4udWkuYm90dG9tLm5hZyB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFdoaXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQubmFncyAubmFnLFxuLnVpLmludmVydGVkLm5hZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGM0Y0RjU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4udWkuaW52ZXJ0ZWQubmFncyAubmFnIC5jbG9zZSxcbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcgLnRpdGxlLFxuLnVpLmludmVydGVkLm5hZyAuY2xvc2UsXG4udWkuaW52ZXJ0ZWQubmFnIC50aXRsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIEdyb3Vwc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm5hZ3MgLm5hZyB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkubmFncyAubmFnOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmJvdHRvbS5uYWdzIC5uYWc6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFBvcHVwXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUG9wdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIC8qIEZpeGVzIGNvbnRlbnQgYmVpbmcgc3F1aXNoZWQgd2hlbiBpbmxpbmUgKG1veiBvbmx5KSAqL1xuICBtaW4td2lkdGg6IC13ZWJraXQtbWluLWNvbnRlbnQ7XG4gIG1pbi13aWR0aDogLW1vei1taW4tY29udGVudDtcbiAgbWluLXdpZHRoOiBtaW4tY29udGVudDtcbiAgei1pbmRleDogMTkwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xuICBtYXgtd2lkdGg6IDI1MHB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjgzM2VtIDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMHB4IDJweCAxMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjEyKSwgMHB4IDJweCAxMHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4udWkucG9wdXAgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi51aS5wb3B1cCA+IC5oZWFkZXIgKyAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbn1cblxuLnVpLnBvcHVwOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAwLjcxNDI4NTcxZW07XG4gIGhlaWdodDogMC43MTQyODU3MWVtO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB6LWluZGV4OiAyO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAxcHggMHB4IDBweCAjYmFiYWJjO1xuICBib3gtc2hhZG93OiAxcHggMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVG9vbHRpcFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQ29udGVudCAqL1xuXG5bZGF0YS10b29sdGlwXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogQXJyb3cgKi9cblxuW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgd2lkdGg6IDAuNzE0Mjg1NzFlbTtcbiAgaGVpZ2h0OiAwLjcxNDI4NTcxZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHotaW5kZXg6IDI7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IDFweCAwcHggMHB4ICNiYWJhYmM7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMHB4IDBweCAjYmFiYWJjO1xufVxuXG4vKiBQb3B1cCAqL1xuXG5bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBhdHRyKGRhdGEtdG9vbHRpcCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q0RDRENTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NWVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDAuODMzZW0gMWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qIERlZmF1bHQgUG9zaXRpb24gKFRvcCBDZW50ZXIpICovXG5cbltkYXRhLXRvb2x0aXBdOm5vdChbZGF0YS1wb3NpdGlvbl0pOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW4tbGVmdDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMTQyODU3MTRyZW07XG59XG5cbltkYXRhLXRvb2x0aXBdOm5vdChbZGF0YS1wb3NpdGlvbl0pOmFmdGVyIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBib3R0b206IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgwKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoMCkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG59XG5cbltkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG59XG5cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgxKSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBBbmltYXRpb24gUG9zaXRpb24gKi9cblxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwidG9wIGNlbnRlclwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gY2VudGVyXCJdOmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMCkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDApICFpbXBvcnRhbnQ7XG59XG5cbltkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSgxKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cblxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXTphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDApICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwKSAhaW1wb3J0YW50O1xufVxuXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwibGVmdCBjZW50ZXJcIl06aG92ZXI6YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdOmhvdmVyOmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG5cbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgbGVmdFwiXTphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIGxlZnRcIl06YWZ0ZXIsXG5bZGF0YS10b29sdGlwXVtkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdOmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCkgIWltcG9ydGFudDtcbn1cblxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCBsZWZ0XCJdOmhvdmVyOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF1bZGF0YS1wb3NpdGlvbj1cInRvcCByaWdodFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdW2RhdGEtcG9zaXRpb249XCJib3R0b20gcmlnaHRcIl06aG92ZXI6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEFycm93ICovXG5cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmJlZm9yZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIEFycm93IFBvc2l0aW9uICovXG5cbltkYXRhLXRvb2x0aXBdW2RhdGEtaW52ZXJ0ZWRdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG59XG5cbi8qIFBvcHVwICAqL1xuXG5bZGF0YS10b29sdGlwXVtkYXRhLWludmVydGVkXTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMxQjFDMUQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuW2RhdGEtdG9vbHRpcF1bZGF0YS1pbnZlcnRlZF06YWZ0ZXIgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUG9zaXRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvcCBDZW50ZXIgKi9cblxuW2RhdGEtcG9zaXRpb249XCJ0b3AgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbltkYXRhLXBvc2l0aW9uPVwidG9wIGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW4tbGVmdDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMTQyODU3MTRyZW07XG59XG5cbi8qIFRvcCBMZWZ0ICovXG5cbltkYXRhLXBvc2l0aW9uPVwidG9wIGxlZnRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbltkYXRhLXBvc2l0aW9uPVwidG9wIGxlZnRcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIGxlZnQ6IDFlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjA3MTQyODU3cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjE0Mjg1NzE0cmVtO1xufVxuXG4vKiBUb3AgUmlnaHQgKi9cblxuW2RhdGEtcG9zaXRpb249XCJ0b3AgcmlnaHRcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbltkYXRhLXBvc2l0aW9uPVwidG9wIHJpZ2h0XCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIHJpZ2h0OiAxZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xNDI4NTcxNHJlbTtcbn1cblxuLyogQm90dG9tIENlbnRlciAqL1xuXG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTphZnRlciB7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLXRvcDogMC4xNDI4NTcxNHJlbTtcbn1cblxuLyogQm90dG9tIExlZnQgKi9cblxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuW2RhdGEtcG9zaXRpb249XCJib3R0b20gbGVmdFwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMWVtO1xuICBtYXJnaW4tbGVmdDogLTAuMDcxNDI4NTdyZW07XG4gIG1hcmdpbi10b3A6IDAuMTQyODU3MTRyZW07XG59XG5cbi8qIEJvdHRvbSBSaWdodCAqL1xuXG5bZGF0YS1wb3NpdGlvbj1cImJvdHRvbSByaWdodFwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbltkYXRhLXBvc2l0aW9uPVwiYm90dG9tIHJpZ2h0XCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAxZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4xNDI4NTcxNHJlbTtcbiAgbWFyZ2luLXRvcDogMC4wNzE0Mjg1N3JlbTtcbn1cblxuLyogTGVmdCBDZW50ZXIgKi9cblxuW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMC4xNDI4NTcxNHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4wNzE0Mjg1N3JlbTtcbn1cblxuLyogUmlnaHQgQ2VudGVyICovXG5cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMC4wNzE0Mjg1N3JlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMTQyODU3MTRyZW07XG59XG5cbi8qIEFycm93ICovXG5cbltkYXRhLXBvc2l0aW9ufj1cImJvdHRvbVwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAwcHggI2JhYmFiYztcbiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuW2RhdGEtcG9zaXRpb249XCJsZWZ0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xuICBib3gtc2hhZG93OiAxcHggLTFweCAwcHggMHB4ICNiYWJhYmM7XG59XG5cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDFweCAwcHggMHB4ICNiYWJhYmM7XG4gIGJveC1zaGFkb3c6IC0xcHggMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuW2RhdGEtcG9zaXRpb25+PVwidG9wXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cblxuLyogSW52ZXJ0ZWQgQXJyb3cgQ29sb3IgKi9cblxuW2RhdGEtaW52ZXJ0ZWRdW2RhdGEtcG9zaXRpb25+PVwiYm90dG9tXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xufVxuXG5bZGF0YS1pbnZlcnRlZF1bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggLTFweCAwcHggMHB4ICNiYWJhYmM7XG4gIGJveC1zaGFkb3c6IDFweCAtMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuW2RhdGEtaW52ZXJ0ZWRdW2RhdGEtcG9zaXRpb249XCJyaWdodCBjZW50ZXJcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggMXB4IDBweCAwcHggI2JhYmFiYztcbiAgYm94LXNoYWRvdzogLTFweCAxcHggMHB4IDBweCAjYmFiYWJjO1xufVxuXG5bZGF0YS1pbnZlcnRlZF1bZGF0YS1wb3NpdGlvbn49XCJ0b3BcIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuXG5bZGF0YS1wb3NpdGlvbn49XCJib3R0b21cIl1bZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG59XG5cbltkYXRhLXBvc2l0aW9ufj1cImJvdHRvbVwiXVtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xufVxuXG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xufVxuXG5bZGF0YS1wb3NpdGlvbj1cImxlZnQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xufVxuXG5bZGF0YS1wb3NpdGlvbj1cInJpZ2h0IGNlbnRlclwiXVtkYXRhLXRvb2x0aXBdOmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG59XG5cbltkYXRhLXBvc2l0aW9uPVwicmlnaHQgY2VudGVyXCJdW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTcGFjaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9wdXAge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyogRXh0ZW5kaW5nIGZyb20gVG9wICovXG5cbi51aS50b3AucG9wdXAge1xuICBtYXJnaW46IDBlbSAwZW0gMC43MTQyODU3MWVtO1xufVxuXG4udWkudG9wLmxlZnQucG9wdXAge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbn1cblxuLnVpLnRvcC5jZW50ZXIucG9wdXAge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG59XG5cbi51aS50b3AucmlnaHQucG9wdXAge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xufVxuXG4vKiBFeHRlbmRpbmcgZnJvbSBWZXJ0aWNhbCBDZW50ZXIgKi9cblxuLnVpLmxlZnQuY2VudGVyLnBvcHVwIHtcbiAgbWFyZ2luOiAwZW0gMC43MTQyODU3MWVtIDBlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCA1MCU7XG59XG5cbi51aS5yaWdodC5jZW50ZXIucG9wdXAge1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuNzE0Mjg1NzFlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCA1MCU7XG59XG5cbi8qIEV4dGVuZGluZyBmcm9tIEJvdHRvbSAqL1xuXG4udWkuYm90dG9tLnBvcHVwIHtcbiAgbWFyZ2luOiAwLjcxNDI4NTcxZW0gMGVtIDBlbTtcbn1cblxuLnVpLmJvdHRvbS5sZWZ0LnBvcHVwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG5cbi51aS5ib3R0b20uY2VudGVyLnBvcHVwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xufVxuXG4udWkuYm90dG9tLnJpZ2h0LnBvcHVwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQb2ludGVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLSBCZWxvdyAtLS0qL1xuXG4udWkuYm90dG9tLmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogLTAuMzA3MTQyODZlbTtcbiAgdG9wOiAtMC4zMDcxNDI4NmVtO1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAwcHggI2JhYmFiYztcbiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuLnVpLmJvdHRvbS5sZWZ0LnBvcHVwIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLypydGw6cmVuYW1lKi9cblxuLnVpLmJvdHRvbS5sZWZ0LnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogLTAuMzA3MTQyODZlbTtcbiAgbGVmdDogMWVtO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4ICNiYWJhYmM7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMHB4ICNiYWJhYmM7XG59XG5cbi51aS5ib3R0b20ucmlnaHQucG9wdXAge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLypydGw6cmVuYW1lKi9cblxuLnVpLmJvdHRvbS5yaWdodC5wb3B1cDpiZWZvcmUge1xuICB0b3A6IC0wLjMwNzE0Mjg2ZW07XG4gIHJpZ2h0OiAxZW07XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xufVxuXG4vKi0tLSBBYm92ZSAtLS0qL1xuXG4udWkudG9wLmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IC0wLjMwNzE0Mjg2ZW07XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjMwNzE0Mjg2ZW07XG59XG5cbi51aS50b3AubGVmdC5wb3B1cCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi8qcnRsOnJlbmFtZSovXG5cbi51aS50b3AubGVmdC5wb3B1cDpiZWZvcmUge1xuICBib3R0b206IC0wLjMwNzE0Mjg2ZW07XG4gIGxlZnQ6IDFlbTtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLnRvcC5yaWdodC5wb3B1cCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4vKnJ0bDpyZW5hbWUqL1xuXG4udWkudG9wLnJpZ2h0LnBvcHVwOmJlZm9yZSB7XG4gIGJvdHRvbTogLTAuMzA3MTQyODZlbTtcbiAgcmlnaHQ6IDFlbTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4vKi0tLSBMZWZ0IENlbnRlciAtLS0qL1xuXG4vKnJ0bDpyZW5hbWUqL1xuXG4udWkubGVmdC5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAtMC4zMDcxNDI4NmVtO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0wLjMwNzE0Mjg2ZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IC0xcHggMHB4IDBweCAjYmFiYWJjO1xuICBib3gtc2hhZG93OiAxcHggLTFweCAwcHggMHB4ICNiYWJhYmM7XG59XG5cbi8qLS0tIFJpZ2h0IENlbnRlciAgLS0tKi9cblxuLypydGw6cmVuYW1lKi9cblxuLnVpLnJpZ2h0LmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogLTAuMzA3MTQyODZlbTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuMzA3MTQyODZlbTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDFweCAwcHggMHB4ICNiYWJhYmM7XG4gIGJveC1zaGFkb3c6IC0xcHggMXB4IDBweCAwcHggI2JhYmFiYztcbn1cblxuLyogQXJyb3cgQ29sb3IgQnkgTG9jYXRpb24gKi9cblxuLnVpLmJvdHRvbS5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4udWkucmlnaHQuY2VudGVyLnBvcHVwOmJlZm9yZSxcbi51aS5sZWZ0LmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4udWkudG9wLnBvcHVwOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5cbi8qIEludmVydGVkIEFycm93IENvbG9yICovXG5cbi51aS5pbnZlcnRlZC5ib3R0b20ucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbn1cblxuLnVpLmludmVydGVkLnJpZ2h0LmNlbnRlci5wb3B1cDpiZWZvcmUsXG4udWkuaW52ZXJ0ZWQubGVmdC5jZW50ZXIucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFCMUMxRDtcbn1cblxuLnVpLmludmVydGVkLnRvcC5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEltbWVkaWF0ZSBOZXN0ZWQgR3JpZCAqL1xuXG4udWkucG9wdXAgPiAudWkuZ3JpZDpub3QoLnBhZGRlZCkge1xuICB3aWR0aDogY2FsYygxMDAlICsgMS43NXJlbSk7XG4gIG1hcmdpbjogLTAuN3JlbSAtMC44NzVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5sb2FkaW5nLnBvcHVwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG59XG5cbi51aS5hbmltYXRpbmcucG9wdXAsXG4udWkudmlzaWJsZS5wb3B1cCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkudmlzaWJsZS5wb3B1cCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwcHgpO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLnBvcHVwOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2lkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLndpZGUucG9wdXAge1xuICBtYXgtd2lkdGg6IDM1MHB4O1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiA1NTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkud2lkZS5wb3B1cCxcbiAgLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5wb3B1cCB7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQucG9wdXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW52ZXJ0ZWQgY29sb3JzICAqL1xuXG4udWkuaW52ZXJ0ZWQucG9wdXAge1xuICBiYWNrZ3JvdW5kOiAjMUIxQzFEO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5pbnZlcnRlZC5wb3B1cCAuaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi51aS5pbnZlcnRlZC5wb3B1cDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb3dpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG93aW5nLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMC43ODU3MTQyOXJlbTtcbn1cblxuLnVpLnRpbnkucG9wdXAge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG5cbi51aS5zbWFsbC5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLnBvcHVwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UucG9wdXAge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRyZW07XG59XG5cbi51aS5odWdlLnBvcHVwIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFByb2dyZXNzIEJhclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFByb2dyZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAxZW0gMGVtIDIuNWVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcGFkZGluZzogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xufVxuXG4udWkucHJvZ3Jlc3M6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDBlbSAwZW0gMi41ZW07XG59XG5cbi51aS5wcm9ncmVzczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuNWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQWN0aXZpdHkgQmFyICovXG5cbi51aS5wcm9ncmVzcyAuYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAwJTtcbiAgbWluLXdpZHRoOiAyZW07XG4gIGJhY2tncm91bmQ6ICM4ODg4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzE0MjlyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4xcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4xcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLyogUGVyY2VudCBDb21wbGV0ZSAqL1xuXG4udWkucHJvZ3Jlc3MgLmJhciA+IC5wcm9ncmVzcyB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M2VtO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDAuNWVtO1xuICBsZWZ0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKiBMYWJlbCAqL1xuXG4udWkucHJvZ3Jlc3MgPiAubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDFlbTtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luLXRvcDogMC4yZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjRzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuNHMgZWFzZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBJbmRpY2F0aW5nICovXG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxXCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMlwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5NUM1Qztcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjNcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRkJDNzI7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI0XCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNVwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U2QkI0ODtcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjZcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEREM5Mjg7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI3XCJdIC5iYXIsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiOFwiXSAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I0RDk1Qztcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjlcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxMDBcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkRBODE7XG59XG5cbi8qIEluZGljYXRpbmcgTGFiZWwgKi9cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjFcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjJcIl0gLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIzXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNVwiXSAubGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjZcIl0gLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI3XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI4XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiOVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMTAwXCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKiBTaW5nbGUgRGlnaXRzICovXG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjFcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjJcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjNcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjRcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjVcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjZcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjdcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjhcIl0gLmJhcixcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjlcIl0gLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEOTVDNUM7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjFcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMlwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIzXCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjRcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI2XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjdcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiOFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI5XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4vKiBJbmRpY2F0aW5nIFN1Y2Nlc3MgKi9cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3Muc3VjY2VzcyAubGFiZWwge1xuICBjb2xvcjogIzFBNTMxQjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3VjY2Vzc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnByb2dyZXNzLnN1Y2Nlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMUJBNDUgIWltcG9ydGFudDtcbn1cblxuLnVpLnByb2dyZXNzLnN1Y2Nlc3MgLmJhcixcbi51aS5wcm9ncmVzcy5zdWNjZXNzIC5iYXI6OmFmdGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wcm9ncmVzcy5zdWNjZXNzID4gLmxhYmVsIHtcbiAgY29sb3I6ICMxQTUzMUI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2FybmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkMwMzcgIWltcG9ydGFudDtcbn1cblxuLnVpLnByb2dyZXNzLndhcm5pbmcgLmJhcixcbi51aS5wcm9ncmVzcy53YXJuaW5nIC5iYXI6OmFmdGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wcm9ncmVzcy53YXJuaW5nID4gLmxhYmVsIHtcbiAgY29sb3I6ICM3OTRCMDI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wcm9ncmVzcy5lcnJvciAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCMjgyOCAhaW1wb3J0YW50O1xufVxuXG4udWkucHJvZ3Jlc3MuZXJyb3IgLmJhcixcbi51aS5wcm9ncmVzcy5lcnJvciAuYmFyOjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkucHJvZ3Jlc3MuZXJyb3IgPiAubGFiZWwge1xuICBjb2xvcjogIzkxMkQyQjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hY3RpdmUucHJvZ3Jlc3MgLmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAyZW07XG59XG5cbi51aS5hY3RpdmUucHJvZ3Jlc3MgLmJhcjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICByaWdodDogMHB4O1xuICBib3R0b206IDBweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHByb2dyZXNzLWFjdGl2ZSAycyBlYXNlIGluZmluaXRlO1xuICBhbmltYXRpb246IHByb2dyZXNzLWFjdGl2ZSAycyBlYXNlIGluZmluaXRlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYWN0aXZlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1hY3RpdmUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5wcm9ncmVzcyB7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG5cbi51aS5kaXNhYmxlZC5wcm9ncmVzcyAuYmFyLFxuLnVpLmRpc2FibGVkLnByb2dyZXNzIC5iYXI6OmFmdGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLnByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQ6ICM4ODg4ODg7XG59XG5cbi51aS5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyID4gLnByb2dyZXNzIHtcbiAgY29sb3I6ICNGOUZBRkI7XG59XG5cbi51aS5pbnZlcnRlZC5wcm9ncmVzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3Muc3VjY2VzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjMjFCQTQ1O1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3Mud2FybmluZyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjRjJDMDM3O1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MuZXJyb3IgPiAubGFiZWwge1xuICBjb2xvcjogI0RCMjgyODtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBib3R0b20gYXR0YWNoZWQgKi9cblxuLnVpLnByb2dyZXNzLmF0dGFjaGVkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDBlbTtcbn1cblxuLnVpLnByb2dyZXNzLmF0dGFjaGVkLFxuLnVpLnByb2dyZXNzLmF0dGFjaGVkIC5iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwLjJyZW07XG4gIHBhZGRpbmc6IDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi51aS5wcm9ncmVzcy5hdHRhY2hlZCAuYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4vKiB0b3AgYXR0YWNoZWQgKi9cblxuLnVpLnByb2dyZXNzLnRvcC5hdHRhY2hlZCxcbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQgLmJhciB7XG4gIHRvcDogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW0gMGVtIDBlbTtcbn1cblxuLnVpLnByb2dyZXNzLnRvcC5hdHRhY2hlZCAuYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4vKiBDb3VwbGluZyAqL1xuXG4udWkuc2VnbWVudCA+IC51aS5hdHRhY2hlZC5wcm9ncmVzcyxcbi51aS5jYXJkID4gLnVpLmF0dGFjaGVkLnByb2dyZXNzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5zZWdtZW50ID4gLnVpLmJvdHRvbS5hdHRhY2hlZC5wcm9ncmVzcyxcbi51aS5jYXJkID4gLnVpLmJvdHRvbS5hdHRhY2hlZC5wcm9ncmVzcyB7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVkICovXG5cbi51aS5yZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQjI4Mjg7XG59XG5cbi51aS5yZWQuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjY5NUU7XG59XG5cbi8qIE9yYW5nZSAqL1xuXG4udWkub3JhbmdlLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI3MTFDO1xufVxuXG4udWkub3JhbmdlLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4NTFCO1xufVxuXG4vKiBZZWxsb3cgKi9cblxuLnVpLnllbGxvdy5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCQkQwODtcbn1cblxuLnVpLnllbGxvdy5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRTIxRjtcbn1cblxuLyogT2xpdmUgKi9cblxuLnVpLm9saXZlLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVDQzE4O1xufVxuXG4udWkub2xpdmUuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEOUU3Nzg7XG59XG5cbi8qIEdyZWVuICovXG5cbi51aS5ncmVlbi5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxQkE0NTtcbn1cblxuLnVpLmdyZWVuLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkVDQzQwO1xufVxuXG4vKiBUZWFsICovXG5cbi51aS50ZWFsLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUFEO1xufVxuXG4udWkudGVhbC5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZERkZGRjtcbn1cblxuLyogQmx1ZSAqL1xuXG4udWkuYmx1ZS5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODVEMDtcbn1cblxuLnVpLmJsdWUuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NEM4RkY7XG59XG5cbi8qIFZpb2xldCAqL1xuXG4udWkudmlvbGV0LnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQzNUM5O1xufVxuXG4udWkudmlvbGV0LmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQTI5MUZCO1xufVxuXG4vKiBQdXJwbGUgKi9cblxuLnVpLnB1cnBsZS5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0EzMzNDODtcbn1cblxuLnVpLnB1cnBsZS5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDNzNGRjtcbn1cblxuLyogUGluayAqL1xuXG4udWkucGluay5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwMzk5Nztcbn1cblxuLnVpLnBpbmsuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjhFREY7XG59XG5cbi8qIEJyb3duICovXG5cbi51aS5icm93bi5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0E1NjczRjtcbn1cblxuLnVpLmJyb3duLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDY3QzFDO1xufVxuXG4vKiBHcmV5ICovXG5cbi51aS5ncmV5LnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xufVxuXG4udWkuZ3JleS5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDRERERTtcbn1cblxuLyogQmxhY2sgKi9cblxuLnVpLmJsYWNrLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUIxQzFEO1xufVxuXG4udWkuYmxhY2suaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDU0NTQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50aW55LnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkudGlueS5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiAwLjVlbTtcbn1cblxuLnVpLnNtYWxsLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkuc21hbGwucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogMWVtO1xufVxuXG4udWkucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiAxLjc1ZW07XG59XG5cbi51aS5sYXJnZS5wcm9ncmVzcyB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmxhcmdlLnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDIuNWVtO1xufVxuXG4udWkuYmlnLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xufVxuXG4udWkuYmlnLnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDMuNWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUHJvZ3Jlc3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFJhdGluZ1xuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgUmF0aW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucmF0aW5nIHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi51aS5yYXRpbmc6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4vKiBJY29uICovXG5cbi51aS5yYXRpbmcgLmljb24ge1xuICBwYWRkaW5nOiAwZW07XG4gIG1hcmdpbjogMGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMS4yNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCB0ZXh0LXNoYWRvdyAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGJhY2tncm91bmQgMC4xcyBlYXNlLCB0ZXh0LXNoYWRvdyAwLjFzIGVhc2UsIGNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFuZGFyZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbmFjdGl2ZSBJY29uICovXG5cbi51aS5yYXRpbmcgLmljb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi8qIEFjdGl2ZSBJY29uICovXG5cbi51aS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4vKiBTZWxlY3RlZCBJY29uICovXG5cbi51aS5yYXRpbmcgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5hY3RpdmUgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5pY29uIHtcbiAgd2lkdGg6IDEuMjVlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBBY3RpdmUgU3RhciAqL1xuXG4udWkuc3Rhci5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkU2MjMgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjRERDNTA3LCAtMXB4IDBweCAwcHggI0REQzUwNywgMHB4IDFweCAwcHggI0REQzUwNywgMXB4IDBweCAwcHggI0REQzUwNyAhaW1wb3J0YW50O1xufVxuXG4vKiBTZWxlY3RlZCBTdGFyICovXG5cbi51aS5zdGFyLnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5zdGFyLnJhdGluZyAuaWNvbi5zZWxlY3RlZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGQ0MwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNFNkEyMDAsIC0xcHggMHB4IDBweCAjRTZBMjAwLCAwcHggMXB4IDBweCAjRTZBMjAwLCAxcHggMHB4IDBweCAjRTZBMjAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIZWFydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhcnQucmF0aW5nIC5pY29uIHtcbiAgd2lkdGg6IDEuNGVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogQWN0aXZlIEhlYXJ0ICovXG5cbi51aS5oZWFydC5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRjZENzUgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCAjQ0QwNzA3LCAtMXB4IDBweCAwcHggI0NEMDcwNywgMHB4IDFweCAwcHggI0NEMDcwNywgMXB4IDBweCAwcHggI0NEMDcwNyAhaW1wb3J0YW50O1xufVxuXG4vKiBTZWxlY3RlZCBIZWFydCAqL1xuXG4udWkuaGVhcnQucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLmhlYXJ0LnJhdGluZyAuaWNvbi5zZWxlY3RlZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGMzAwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICNBQTAxMDEsIC0xcHggMHB4IDBweCAjQUEwMTAxLCAwcHggMXB4IDBweCAjQUEwMTAxLCAxcHggMHB4IDBweCAjQUEwMTAxICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBkaXNhYmxlZCByYXRpbmcgKi9cblxuLnVpLmRpc2FibGVkLnJhdGluZyAuaWNvbiB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBVc2VyIEludGVyYWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNlbGVjdGVkIFJhdGluZyAqL1xuXG4udWkucmF0aW5nLnNlbGVjdGVkIC5hY3RpdmUuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5yYXRpbmcuc2VsZWN0ZWQgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWluaS5yYXRpbmcge1xuICBmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG59XG5cbi51aS50aW55LnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cblxuLnVpLnNtYWxsLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLnJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmh1Z2UucmF0aW5nIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuXG4udWkubWFzc2l2ZS5yYXRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JhdGluZyc7XG4gIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nZ2pDQnNBQUFDOEFBQUFZR050WVhDajJwbThBQUFCSEFBQUFLUm5ZWE53QUFBQUVBQUFBY0FBQUFBSVoyeDVabEpiWE1ZQUFBSElBQUFSbkdobFlXUUJHQWU1QUFBVFpBQUFBRFpvYUdWaEErSUIvUUFBRTV3QUFBQWthRzEwZUN6Z0FFTUFBQlBBQUFBQWNHeHZZMkV3WEN4T0FBQVVNQUFBQURwdFlYaHdBQ0lBbkFBQUZHd0FBQUFnYm1GdFpmQzFuMDRBQUJTTUFBQUJQSEJ2YzNRQUF3QUFBQUFWeUFBQUFDQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUR4WlFIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBSkFBQUFBZ0FDQUFCQUFBQUFFQUlPWUY4QWJ3RGZBajhDN3didkJ3OElyd2wvQ2M4U1B4WmYvOS8vOEFBQUFBQUNEbUFQQUU4QXp3SS9BdThHN3djUENIOEpmd25QRWo4V1QvL2YvL0FBSC80eG9FRUFZUUFRL3NEK0lQb3craUQ0d1BnQTk4RHZZT3RnQURBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUgvL3dBUEFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFJQUFQL3RBZ0FCMHdBS0FCVUFBQUV2QVE4QkZ3YzNGeWMzQlFjM0p6OEJId0VIRnljQ0FMRlBUN0dBSHA2ZUhvRC9BSEFXVzMwNE9IMWJGbkFCR1JxZ29CcDhzRk5Uc0h5eU9ueFlFbkZ4RWxoOE9nQUFBQUFDQUFELzdRSUFBZE1BQ2dBU0FBQUJMd0VQQVJjSE54Y25Od1V4RVI4QkJ4Y25BZ0N4VDAreGdCNmVuaDZBL3dBNGZWc1djQUVaR3FDZ0dueXdVMU93ZkxJQkhYRVNXSHc2QUFBQUFRQUEvKzBDQUFIVEFBb0FBQUV2QVE4QkZ3YzNGeWMzQWdDeFQwK3hnQjZlbmg2QUFSa2FvS0FhZkxCVFU3QjhBQUFBQUFFQUFBQUFBZ0FCd0FBckFBQUJGQTRDQnpFSERnTWpJaTRDTHdFdUF6VTBQZ0l6TWg0Q0Z6NERNekllQWhVQ0FBY01FZ3VnQmd3TURBWUdEQXdNQnFBTEVnd0hGeWcySGhBZkd4a0tDaGtiSHhBZU5pZ1hBUzBRSHhzWkNxQUdDd2tHQlFrTEJxQUtHUnNmRUI0MktCY0hEQklMQ3hJTUJ4Y29OaDRBQUFBQUFnQUFBQUFDQUFIQUFDc0FXQUFBQVRRdUFpTWlEZ0lITGdNaklnNENGUlFlQWhjeEZ4NERNekkrQWo4QlBnTTFEd0VpRkNJR01UQW1JalFqSnk0RE5UUStBak15SGdJZkFUYytBek15SGdJVkZBNENCd0lBRnlnMkhoQWZHeGtLQ2hrYkh4QWVOaWdYQnd3U0M2QUdEQXdNQmdZTURBd0dvQXNTREFkYm9nRUJBUUVCQWFJR0NnY0VEUmNlRVFrUkVBNEdMeThHRGhBUkNSRWVGdzBFQndvR0FTMGVOaWdYQnd3U0N3c1NEQWNYS0RZZUVCOGJHUXFnQmdzSkJnVUpDd2FnQ2hrYkh4QStvZ0VCQVFHaUJnNFFFUWtSSGhjTkJBY0tCalEwQmdvSEJBMFhIaEVKRVJBT0JnQUJBQUFBQUFJQUFjQUFNUUFBQVJRT0FnY3hCdzRESXlJdUFpOEJMZ00xTkQ0Q016SWVBaGNIRndjM0p6YytBek15SGdJVkFnQUhEQklMb0FZTURBd0dCZ3dNREFhZ0N4SU1CeGNvTmg0S0ZSTVNDQzl3UUxCd0p3VUpDZ2tGSGpZb0Z3RXRFQjhiR1FxZ0Jnc0pCZ1VKQ3dhZ0Noa2JIeEFlTmlnWEF3VUlCVXRBb01CQU93RUNBUUVYS0RZZUFBQUJBQUFBQUFJQUFiY0FLZ0FBRXpRM05qTXlGeFlYRmhjV0Z6WTNOamMyTnpZek1oY1dGUlFQQVFZaklpOEJKaWNtSnlZbkppY21OUUFrSlVBUkV4SVFFQXNNQ2dvTUN4QVFFaE1SUUNVa1FiSUdCd2NHc2dNRkJRc0tDUWtHQndFeFB5TWtCZ1lMQ2drS0Nnb0tDUW9MQmdZa0l6OC9RYXdGQmF3Q0JnVU5EZzRPRlJRVEFBQUFBUUFBQUEwQjJ3SFNBQ1lBQUJNMFB3STJGellmQWhZVkZBOEJGeFFWRkFjR0J5WXZBUWNHQnlZbkpqVTBQd0VuSmpVQUVJOUJCUWtJQmtDUEVBZG9HUU1EQmdVR2dJRUdCUVlEQXdFWWFBY0JJd3NDRm9FTUFRRU1nUllDQ3dZSVpKQUJCUVVGQXdFQkFrVkZBZ0VCQXdVRkF3T1FaQWtGQUFBQUFBSUFBQUFOQWRzQjBnQWtBQzRBQUJNMFB3STJGellmQWhZVkZBOEJGeFFWRkFjbUx3RUhCZ2NtSnlZMU5EOEJKeVkxSHdFSE54Y25OeThCQndBUWowRUZDUWdHUUk4UUIyZ1pEQVVHZ0lFR0JRWURBd0VZYUFjL1dCVnNheFJYZURZMkFTTUxBaGFCREFFQkRJRVdBZ3NHQ0dTUUFRVU5BUUVDUlVVQ0FRRURCUVVEQTVCa0NRVVJWWGc0T0hoVkVXNXVBQUFCQUNNQUtRSGRBWHdBR2dBQU56US9BVFlYTmg4Qk56WVhOaDhCRmhVVUR3RUdCeVl2QVNZMUl3Z21DQXdMQ0ZTOENBc01DQ1lJQ1BVSURBc0lqZ2pTQ3drbUNRRUJDVlM3Q1FFQkNTWUpDZzBIOWdjQkFRZVBCd3dBQUFFQUh3QWZBWE1CY3dBc0FBQTNORDhCSnlZMU5EOEJOak15SHdFM05qTXlId0VXRlJRUEFSY1dGUlFQQVFZaklpOEJCd1lqSWk4QkpqVWZDRlJVQ0FnbkNBd0xDRlJVQ0F3TENDY0lDRlJVQ0FnbkNBc01DRlJVQ0FzTUNDY0lZZ3NJVkZRSURBc0lKd2dJVkZRSUNDY0lDd3dJVkZRSUN3d0lKd2dJVkZRSUNDY0lEQUFBQUFBQ0FBQUFKUUZKQWJjQUh3QXJBQUEzTlRRM05qc0JOVFEzTmpNeUZ4WWRBVE15RnhZZEFSUUhCaU1oSWljbU5UY3pOVFFuSmlNaUJ3WWRBUUFJQ0FzS0pTWTFOQ1ltQ1FzSUNBZ0lDLzd0Q3dnSVc1TVdGUjRmRlJaQXBRc0lDRGMwSmlZbUpqUTNDQWdMcFFzSUNBZ0lDOEEzSGhZVkZSWWVOd0FBQVFBQUFBY0JiZ0czQUNFQUFEY1JORGMyTnpZeklUSVhGaGNXRlJFVUJ3WUhCaU1pTHdFSEJpTWlKeVluSmpVQUJnVUtCZ1lCTEFZR0NnVUdCZ1VLQlFjT0NuNStDZzRHQmdvRkJpY0JjQW9JQ0FNREF3TUlDQXIra0FvSUNBUUNDWGw1Q1FJRUNBZ0tBQUFBQXdBQUFDVUNBQUZ1QUJnQU1RQktBQUEzTkRjMk56WXpNaGNXRnhZVkZBY0dCd1lqSWljbUp5WTFNeFlYRmpNeU56WTNKaWNXRlJRSEJpTWlKeVkxTkRjR0J6Y1VGeFl6TWpjMk5UUTNOak15TnpZMU5DY21JeUlIQmhVQUJpaERSRXRMUkVNb0JnWW9RMFJMUzBSREtBWWxKams1UTBNNU9TWXJRUkVtSlRVMUpTWVJRU3VFQkFRR0JnUUVFUkVaQmdRRUJBUUdKQmtheVFvS1FTZ29LQ2hCQ2dvS0NrRW9KeWNvUVFvS09pTWpJeU02UkNFZUlqVW1KU1VtTlNJZUlVUWxCZ1FFQkFRR0dCSVJCQVFHQmdRRUdob2pBQUFBQlFBQUFBa0NBQUdKQUN3QU9BQlJBR2dBY0FBQU56UTNOamMyTXpJWE56WXpNaGNXRnhZWEZoY1dGeFlWRkRFR0J3WVBBUVlqSWljbU5UUTNKaWNtSnlZMU14WVhOeVluSmpVME53WUhOeFFYRmpNeU56WTFORGMyTXpJM05qVTBKeVlqSWdjR0ZSYzNOamMyTnlZbk54WVhGaGNXRlJRSEJnY0dCd1lqUHdFV0ZSUUhCZ2NBQml0QlFVMFpHaEFEQlFFRUJBVUZCQVVFQlFFRUhqdzhIZzREQlFRaUJRMHBJeUlaQmlVdlN4WVpEZzRSUVN1RUJBUUdCZ1FFRVJFWkJnUUVCQVFHSkJrYVZ4VTlNelFpSURBU0d4a1pFQVlHQ3hRck9Eay9MbEFDRnhZbHlRc0pReWNuQlJ3RUFnRURBd0lEQXdJQkF3VUNObXhzTmhrRkZBTUZCQlVUSGg4bkNRdEtJU2dTSEJzZkloNGhSQ1VHQkFRRUJBWVlFaEVFQkFZR0JBUWFHaVBKSlFVaUlqWXpJU0FTR2hrYkNnb0tDaElYTVJzYlVaQU5DeWdoSUE4QUFBTUFBQUFBQWJjQjJ3QTVBRW9BbEFBQU56VTBOelk3QVRZM05qYzJOelkzTmpjMk16SVhGaGNXRlJRSE16SVhGaFVVQnhZVkZBY1VGUlFIRmdjR0t3RWlKeVluSmlzQklpY21OVGNVRnhZek1qYzJOVFFuSmlNaUJ3WVZGek15RnhZWEZoY1dGeFlYRmhjV093RXlOVFFuTmpjMk5UUW5OalUwSnlZbk5qYzJOVFFuSmlzQk5EYzJOVFFuSmlNR0J3WUhCZ2NHQndZSEJnY0dCd1lIQmdjR0J3WXJBUlVBQ3dvUVRnb2RFUTRHQkFNRkJnd0xEeGdURXdvS0RqTWRGaFlPQWdvUkFSa1pLQ1ViR3hzaklRWlNFQW9MSlFVRkNBY0dCUVVHQndnRkJVa0pCQVVGQkFRSEJ3TURCd2NDUENVak53SUpCUVVGRHdNREJBa0dCZ3NMRG1VT0Rnb0pHd2dEQXdZRkRBWVFBUVVHQXdRR0JnWUZCZ1VHQmdRSlNiY1BDd3NHSmhVUENCRVJFeE1NQ2drSkZCUWhHeHdXRlI0WkZRb0tGaE1HQmgwV0tCY1hCZ2NNREFvTER4SUhCUVlHQlFjSUJRWUdCUWdTQVFFQkFRSUNBUUVEQWdFVUx3Z0lCUW9MQ2dzSkRoUUhDUWtFQVEwTkNnOExDeEFkSFJFY0RRNElFQkVURXcwR0ZBRUhCd1VFQ0FnRkJRVUZBZ08zQUFBREFBRC8yd0czQWJjQVBBQk5BSmtBQURjMU5EYzJPd0V5TnpZM05qc0JNaGNXQnhVV0ZSUVZGaFVVQnhZVkZBY0dLd0VXRlJRSEJnY0dJeUluSmljbUp5WW5KaWNtSnlZbkl5SW5KalUzRkJjV016STNOalUwSnlZaklnY0dGUmN6TWhjV0Z4WVhGaGNXRnhZWEZoY1dGeFlYRmhjV0Z6STNOalUwSnlZMU16STNOalUwSnlZak5qYzJOVFFuTmpVMEp5WW5OalUwSnlZckFTSUhJZ2NHQndZSEJnY0dJd1lyQVJVQUN3b1FVZ1loSlJzYkhpQW9HUmtCRVFvQ0RoWVdIVE1PQ2dvVEV4Z1BDd29GQmdJQkJBTUZEaEVkQ2s0UUNnc2xCUVVJQndZRkJRWUhDQVVGU1FrRUJnWUZCZ1VHQmdZRUF3WUZBUkFHREFVR0F3TUlHd2tLRGc1bERnc0xCZ1lKQkFNRER3VUZCUWtDRGc0WkpTVThBZ2NIQXdNSEJ3UUVCUVVFQ2JlM0R3c0tEQXdIQmhjV0p3SVdIUVlHRXhZS0NoVVpIaFlWSFJvaUV4UUpDZ3NKRGc0TURBd05CZzRXSlFjTEN3K2tCd1VHQmdVSENBVUdCZ1VJcEFNQ0JRWUZCUWNJQkFVSEJ3SVRCd3dURXhFUkJ3ME9IQkVkSFJBTEN3OEtEUTBGQ1FrSEZBNEpDd29MQ2dVSUNCZ01DeFVEQWdFQkFnTUJBUUczQUFBQUFRQUFBQTBBN2dIU0FCUUFBQk0wUHdJMkZ4RUhCZ2NtSnlZMU5EOEJKeVkxQUJDUFFRVUpnUVlGQmdNREFSaG9Cd0VqQ3dJV2dRd0Ivb05GQWdFQkF3VUZBd09RWkFrRkFBQUFBQUlBQUFBQUFnQUJ0d0FxQUZrQUFCTTBOell6TWhjV0Z4WVhGaGMyTnpZM05qYzJNeklYRmhVVUR3RUdJeUl2QVNZbkppY21KeVluSmpVekZCOEJOelkxTkNjbUp5WW5KaWNtSXlJSEJnY0dCd1lIQmlNaUp5WW5KaWNtSnlZaklnY0dCd1lIQmdjR0ZRQWtKVUFSRXhJUUVBc01DZ29NQ3hBUUVoTVJRQ1VrUWJJR0J3Y0dzZ01GQlFzS0NRa0dCeVUxcHFZMUJnWUpDZzRORGcwUERoSVJEZzhLQ2djRkNRa0ZCd29LRHc0UkVnNFBEUTRORGdvSkJnWUJNVDhqSkFZR0N3b0pDZ29LQ2drS0N3WUdKQ00vUDBHc0JRV3NBZ1lGRFE0T0RoVVVFekExb0o4Mk1CY1NFZ29MQmdjQ0FnY0hDd3NLQ1FnSEJ3Z0pDZ3NMQndjQ0FnY0dDd29TRWhjQUFBQUNBQUFBQndGdUFiY0FJUUFvQUFBM0VUUTNOamMyTXlFeUZ4WVhGaFVSRkFjR0J3WWpJaThCQndZaklpY21KeVkxUHdFZkFSRWhFUUFHQlFvR0JnRXNCZ1lLQlFZR0JRb0ZCdzRLZm40S0RnWUdDZ1VHSlpJWmVmN2NKd0Z3Q2dnSUF3TURBd2dJQ3Y2UUNnZ0lCQUlKZVhrSkFnUUlDQW9JalJsMEFXUCtuUUFBQUFBQkFBQUFKUUhiQWJjQU1nQUFOelUwTnpZN0FUVTBOell6TWhjV0hRRVVCd1lyQVNJbkpqMEJOQ2NtSXlJSEJoMEJNeklYRmgwQkZBY0dJeUVpSnlZMUFBZ0lDOEFtSmpRMUppVUZCUWdTQ0FVRkZoVWZIaFVXSEFzSUNBZ0lDLzd0Q3dnSVFLVUxDQWczTlNVbUppVTFTUWdGQmdZRkNFa2VGaFVWRmg0M0NBZ0xwUXNJQ0FnSUN3QUFBQUlBQVFBTkFkc0IwZ0FpQUMwQUFCTTJQd0kyTXpJZkFoWVhGZzhCRnhZSEJpTWlMd0VIQmlNaUp5WS9BU2NtTng4Q0x3RS9BUzhDRXdFRERKQkFCZ2dKQlVHT0RnSURDbWNZQWdRQ0NBTUlmNElGQmdZRUFnRVphUWdDN2hCYkVnSU5TbmtJTGdFQkpnZ0NGWUlMQzRJVkFnZ0lDV1dQQ2dVRkEwUkVBd1VGQ285bENRaXBDVEJtRXcxSEVoRmMvdTBBQUFBREFBQUFBQUhKQWJjQUZBQWxBSGtBQURjMU5EYzJPd0V5RnhZZEFSUUhCaXNCSWljbU5UY1VGeFl6TWpjMk5UUW5KaU1pQndZVkZ6VTBOell6TmpjMk56WTNOamMyTnpZM05qYzJOelkzTmpNeUZ4WVhGaGNXRnhZWEZoVVVGUlFIQmdjR0J4UUhCZ2NHQnpNeUZ4WVZGQWNXRlJZSEZnY0dCeFlIQmdjaklpY21KeVluSmljaUp5WTFBQVVHQjFNSEJRWUdCUWRUQndZRkpRVUZDQWNHQlFVR0J3Z0ZCV1FGQlFnR0R3OE9GQWtGQkFRQkFRTUNBUUlFQkFZRkJ3NEtDZ2NIQlFRQ0F3RUJBZ01EQWdZQ0FnSUJBVThYRUJBUUJRRU9CUVVFQ3dNUkVpWWxFeFlYREF3V0pBb0hCUVkzdHdjR0JRVUdCN2NJQlFVRkJRZ2tCd1lGQlFZSENBVUdCZ1VJSkxjSEJRWUJFQkFUR1FrRkNRZ0dCUXdMQmdjSUNRVUdBd01GQkFjSEJnWUlDUVFFQndzTEN3WUdDZ0lEQkFNQ0JCRVFGaGtTREFvVkVoQVJFQXNnRkJVQkJBVUVCQWNNQVFVRkNBQUFBQUFEQUFELzJ3SEpBWklBRkFBbEFIa0FBRGNVRnhZWE54WTNOajBCTkNjbUJ5Y0dCd1lkQVRjME56WTNGaGNXRlJRSEJpY0dKeVkxRnpVME56WTNGamMyTnpZM05qY1hOaGNXQnhZWEZnY1dCeFFIRmhVVUJ3WUhKeFlYRmhjV0ZSWVhGaGNXRlJRVkZBY0dCd1lIQmdjR0J3WW5CaWNtSnlZbkppY21KeVluSmljbUp5WW5KaWNpSnlZMUFBVUdCMU1IQlFZR0JRZFRCd1lGSlFVRkNBY0dCUVVHQndnRkJXUUdCUWNLSkJZTURCY1dFeVVtRWhFREN3UUZCUTRCQlJBUUVCZFBBUUVDQWdJR0FnTURBZ0VCQXdJRUJRY0hDZ29PQndVR0JBUUNBUUlEQVFFRUJBVUpGQTRQRHdZSUJRV2xCd1lGQVFFQkJ3UUp0UWtFQndFQkFRVUdCN2VUQndZRUFRRUVCZ2NKQkFZQkFRWUVDWlM0QndZRUFnRU5Cd1VDQmdNQkFRRVhFeUVKRWhBUkVCY0lEaEFhRmhFUEFRRUZBZ1FDQlFFTEJRY0tEQWtJQkFVSENnVUdCd2dEQmdJRUFRRUhCUWtJQndVTUN3Y0VDZ2NHQ1JvUkVROENCZ1FJQUFBQUFRQUFBQUVBQUp0aDU3ZGZEenoxQUFzQ0FBQUFBQURQL0dPREFBQUFBTS84WTRNQUFQL2JBZ0FCMndBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFCNFAvZ0FBQUNBQUFBQUFBQ0FBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUhBQUFBQUFBQUFBQUFBQUFBQUVBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQUFBSUFBQUFDQUFBQUFkd0FBQUhjQUFBQ0FBQWpBWk1BSHdGSkFBQUJiZ0FBQWdBQUFBSUFBQUFDQUFBQUFnQUFBQUVBQUFBQ0FBQUFBVzRBQUFIY0FBQUIzQUFCQWR3QUFBSGNBQUFBQUFBQUFBb0FGQUFlQUVvQWNBQ0tBTW9CUUFHSUFjd0NDZ0pVQW9JQ3hnTUVBem9EcGdSS0JSZ0Y3QVlTQnBnRzJnY2dCMm9JR0FqT0FBQUFBUUFBQUJ3QW1nQUZBQUFBQUFBQ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBNEFyZ0FCQUFBQUFBQUJBQXdBQUFBQkFBQUFBQUFDQUE0QVFBQUJBQUFBQUFBREFBd0FJZ0FCQUFBQUFBQUVBQXdBVGdBQkFBQUFBQUFGQUJZQURBQUJBQUFBQUFBR0FBWUFMZ0FCQUFBQUFBQUtBRFFBV2dBREFBRUVDUUFCQUF3QUFBQURBQUVFQ1FBQ0FBNEFRQUFEQUFFRUNRQURBQXdBSWdBREFBRUVDUUFFQUF3QVRnQURBQUVFQ1FBRkFCWUFEQUFEQUFFRUNRQUdBQXdBTkFBREFBRUVDUUFLQURRQVdnQnlBR0VBZEFCcEFHNEFad0JXQUdVQWNnQnpBR2tBYndCdUFDQUFNUUF1QURBQWNnQmhBSFFBYVFCdUFHZHlZWFJwYm1jQWNnQmhBSFFBYVFCdUFHY0FVZ0JsQUdjQWRRQnNBR0VBY2dCeUFHRUFkQUJwQUc0QVp3QkdBRzhBYmdCMEFDQUFad0JsQUc0QVpRQnlBR0VBZEFCbEFHUUFJQUJpQUhrQUlBQkpBR01BYndCTkFHOEFid0J1QUM0QUF3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT09KSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybChkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUms5VVZFOEFBQmNVQUFvQUFBQUFGc3dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRSa1lnQUFBQTlBQUFFdUVBQUJMaG82VHZJRTlUTHpJQUFCUFlBQUFBWUFBQUFHQUlJd2diWTIxaGNBQUFGRGdBQUFDa0FBQUFwS1BhbWJ4bllYTndBQUFVM0FBQUFBZ0FBQUFJQUFBQUVHaGxZV1FBQUJUa0FBQUFOZ0FBQURZQkdBZTVhR2hsWVFBQUZSd0FBQUFrQUFBQUpBUGlBZjFvYlhSNEFBQVZRQUFBQUhBQUFBQndMT0FBUTIxaGVIQUFBQld3QUFBQUJnQUFBQVlBSEZBQWJtRnRaUUFBRmJnQUFBRThBQUFCUFBDMW4wNXdiM04wQUFBVzlBQUFBQ0FBQUFBZ0FBTUFBQUVBQkFRQUFRRUJCM0poZEdsdVp3QUJBZ0FCQURyNEhBTDRHd1A0R0FRZUNnQVpVLytMaXg0S0FCbFQvNHVMREFlTFp2aVUrSFFGSFFBQUFQMFBIUUFBQVFJUkhRQUFBQWtkQUFBUzJCSUFIUUVCQncwUEVSUVpIaU1vTFRJM1BFRkdTMUJWV2w5a2FXNXplSDJDaDR4eVlYUnBibWR5WVhScGJtZDFNSFV4ZFRJd2RVVTJNREIxUlRZd01YVkZOakF5ZFVVMk1ETjFSVFl3TkhWRk5qQTFkVVl3TURSMVJqQXdOWFZHTURBMmRVWXdNRU4xUmpBd1JIVkdNREl6ZFVZd01rVjFSakEyUlhWR01EY3dkVVl3T0RkMVJqQTRPSFZHTURnNWRVWXdPRUYxUmpBNU4zVkdNRGxEZFVZeE1qTjFSakUyTkhWR01UWTFBQUFDQVlrQUdnQWNBZ0FCQUFRQUJ3QUtBQTBBVmdDV0FMMEJBZ0dNQWVRQ2J3THdBNGNENVFSMEJRTUZkZ1pnQjhNSmtRdHhDN29NMlExakRnZ09tUkFZRVpyOGxBNzhsQTc4bEE3N2xBNzRsUGV0RmZ0RnBUejNORHo3TlB0RmNmY1UreEJ0KzBUM010NzNNamh0OTBUM0ZQY1FCZnVVKzBZVit3UlJvZmNRTU9QM0VaM0Q5d1hEK3dYM0VYa3dNNkg3RVBzRXhRVU8rSlQzclJYN1JhVTg5elE4K3pUN1JYSDNGUHNRYmZ0RTl6TGU5ekk0YmZkRTl4VDNFQVg3bFB0R0ZZdUxpL2V4dy9zRjl4RjVNRE9oK3hEN0JNVUZEdmlVOTYwViswV2xQUGMwUFBzMCswVng5eFQ3RUczN1JQY3kzdmN5T0czM1JQY1U5eEFGRHZpVTk4RVZpMkI0Wkc1d0NJdUwrelQ3TkFWN2UzdDdlNHQ3aTN1YmU1c0krelQzTkFWdXBuaXlpN2FMM00zTjNJdTJpN0o0cG02bXFMS2V0b3ZjaTgxSml6b0lEdmlVOThFVmk5eEp6VHFMWUl0a2VIQnVjS2hrbm1DTE9vdEpTWXM2aTJDZVpLaHdDSXVMOXpUN05BV2JlNXQ3bTR1Ymk1dWJtNXNJOXpUM05BV29wcDZ5aTdZSU1FMFYremI3TmdXS2lvcUtpb3VLaTRxTWlvd0kremIzTmdWNm00R2hpNk9MdWJDd3VZdWppNkdCbTNvSXVsZTZ2d1dibktHVm80dTVpN0JtaTEyTGM0RjFlbnNJRHZpVTk4RVZpMkI0Wkc1d0NJdUwrelQ3TkFWN2UzdDdlNHQ3aTN1YmU1c0krelQzTkFWdXBuaXlpN2FMM00zTjNJdW5pNldEb1g0SVhFRDNCRXRMK3pUM1JQZFUrd1RMc3NZRmw0NllqWmlMM0l2TlNZczZDQTZMOThVVmk3V1hyS09pbzZPdGw3YUxsb3VYaVppSGw0ZVdoWmFFbG9TVWhaS0ZrNFNTaFpLRWtwS1NrWk9Ta3BHVWtaYVNDSmFTbHBHWGo1aVBsNDJXaTdhTHJYK2pjNk4wbDJxTFlZdGhkV0JnWUFqN1J2dEFCWWVJaDRtR2k0YUxoNDJIamdqN1J2ZEFCWW1OaVkySGo0aU9ocEdEbElTVWhaV0ZsSVdWaHBhSG1ZYVlpWmlMbUFnT1o0djN0eFdMa3BDUGxvMEk5eU9nelBjV0JZNlNrSStSaTVDTGtJZVBoQWpMK3hiM0kzWUZsb21RaDR1RWk0YUpoNGFHQ0NNbXBQc2pCWXVLaTRtTGlJdUhpb2lKaUltSWlJcUhpNGlMaDR5SGpRajdGTS83RlVjRmg0bUhpb2lMaDR1SWpJbU9pWTZLam91UGk0eUxqWXlPQ0tQM0l5UHdCWWFRaVpDTGp3Z09aNHYzdHhXTGtwQ1BsbzBJOXlPZ3pQY1dCWTZTa0krUmk1Q0xrSWVQaEFqTCt4YjNJM1lGbG9tUWg0dUVpNGFKaDRhR0NDTW1wUHNqQll1S2k0bUxpSXVDaDRhRGk0aUxoNHlIalFqN0ZNLzdGVWNGaDRtSGlvaUxoNHVJakltT2lZNktqb3VQaTR5TGpZeU9DS1AzSXlQd0JZYVFpWkNMandqS2VSWGpOM2I3RGZjQXhQWlNkL2NONHQvN0RKMVY5d0ZWK3dFRkRxNzNaaFdMazQyUmtaRUlzYklGa1pDUmpwT0xrb3VTaUpDR0NOODI5MUQzVUFXUWtKS09rb3VUaTVHSWtZWUlzV1FGa1lhTmhJdUVpNE9KaFlXRkNQdUorNGtGaFlXRmlZT0xoSXVFallhUkNQc2k5eUlGaFpDSmtvdVNDQTc3QWFydEZZdVNqcEtRa0FqZjN6ZmZCWWFRaUpLTGs0dVNqcEtRa0FpeXNnV1JrSkdPazR1U2k1S0lrSVlJM3pmZjN3V1FrSktPazR1U2k1S0lrSVlJc21RRmtJYU9oSXVFaTRPSWhJYUdDRGMzM3pjRmtJYU9oSXVFaTRPSWhZYUZDR1JrQllhR2hJaUVpNE9MaEk2R2tBZzMzemMzQllhR2hJaUVpNE9MaFk2RmtBaGtzZ1dHa1lpUmk1TUlEdnRMaThzVmkvYzVCWXVTanBLUWtKQ1FrbzZTaXdpVmk0dkNCWXV1bDZta3BLU2txcGl1aTY2THFYNmtjcVJ5bUcyTGFBaUxWSlNMQlpLTGtvaVFocENHam9TTGhBaUwremtGaTRPSWhZYUdob1dFaVlTTENQdW5pd1dFaTRTTmhwR0drSWlSaTVNSTV2ZFVGZmNuaTR2Q0JZdWZoSng4bW4yWmVwSjNpM2FMZW9SOWZYMThnM3FMZHdpTFZBVU8reWFMc2hXTCtBUUZpNUdOa1krUmpwQ1FqNUtOajQyUGpJK0xDUGZBaXdXUGk0K0tqNG1SaVpDSGo0YVBoWTJGaTRVSWkvd0VCWXVFaVlXSGhvZUdob2VGaUlpS2hvcUhpNEdMaEk2RWtRajdFdmNOK3hMN0RRV0VoWU9JZ291SGk0ZUxoNDJFam9hUGlKQ0hrSW1SaTVJSURvdjNYUldMa28yUmo1S2x0cSt2dUtXNHBidVp2WXU5aTd0OXVIRzRjYTlucFdDUGhJMkZpNFNMaFltRWg0UnhZR2RvWG5BSVhuRmJmbG1MV1l0Ym1GNmxYcVpucm5HMmg1S0prb3VSQ0xDTEZhUmtxMnl4ZExGMHRIKzRpN2lMdEpleG9yR2lxNnFrc202NFo2MWdvWloza1hhTGRJdG5mbTF5Y25KeWJYOW9pd2hvaTIyWGNxUnlwSDZwaTYrTG9wR2dscDlnZFdkcGJsNEk5eGl3Rll1SGpJaU9pSTZJam9xUGk0K0xqb3lPam8yT2pZNkxqNHVia0ptWGw1ZVdtWkdiaTQrTGpveU9qbzJPalk2TGp3aUxqNG1PaVk2SWpZaU5oNHR6aTNlQ2VucDZlb0ozaTNNSURvdjNYUldMa28yU2o1R291Syt1dHFXM3BicVl2b3VjaTV5Sm5JZ0ltNmNGalk2TmpJK0xqSXVOaTQySmpZcU9pbytKam9tT2lZNktqb21PaVk2SmpvcU5pb3lLam9tTWlZdUhpNHFMaW91TENIZG5iVlZqUTJORGJWVjNad2g5Y2dXSmlJaUppSXVKaTM2U2RKaUlqWW1PaTQ2TGpZK1VsSmx2bDNLY2RKOTBvSGVpZTZXSGtZbVNpNUlJc0lzVnFscTBaNzExQ0tHekJYcVhmcHFDbm9LZGhwNkxvSXVpa2FDV24yQjFaMmx1WGdqM0dMQVZpNGVNaUk2SWpvaU9pbytMajR1T2pJNk9qWTZOam91UGk1dVFtWmVYbDVhWmtadUxqNHVPakk2T2pZNk5qb3VQQ0l1UGlZNkpqb2lOaUkySGkzT0xkNEo2ZW5wNmduZUxjd2ppKzEwVm9MQUZ0SSt3bUsyaHJxS25xS0t2ZHExd3AydWhDSjJyQloxL25IeWNlcHg2bUhxV2VZK0VqWVdMaEl1RWlZV0hoSVIvZ0gxK2ZHOXFhWEptZVdWNVk0Smhpd2k1M0JYYjl5UUZqSUtNZzR1RWkzQ0RjM3gxZkhWM2ZIT0JDQTZMMUJXTDkwc0ZpNVdQbEpLU2twS1RqNWFMQ05tTEJaS1BtSnFlcEphWmxaZVZsWStRajVPTmw0MldqcGVPbUkrWWtaV1RrNU9TazQ2Vmk1dUxtWWlZaFppRmxJR1NmZ2lTZm81NWkzV0xlWWQ1Z1hnSXZvc0ZuNHVjaEpsOG1uMlNlb3QzaTNxR2ZJSjlqWVNMaFl1RWkzeUlmb1IraTRlTGg0dUhpM2VHZW45OWkzQ0RkbnQ4Q0h0OGRZTndpd2htaXdWNWkzbU5lWTk1a0hlUmM1TjFrMzZQaDRzSU9Zc0ZnSXVEam9TU2hKS0hsSXVWQ0xDZEZZdUdqSWVQaUkrSGo0bVFpNUNMajQyUGo0Nk9qWStMa0l1UWlaQ0lqb2VQaDQyR2k0YUxoNG1IaDRlSWlvYUxoZ2pVZVJXVWl3V05pNDZMajRxT2k0K0tqWXFPaTQrS2o0bVFpbzZLallxTmlvK0tqNG1RaW82S2pJcXpmcXVFcElzSXJvc0ZyNHVlbW91cmk1Q0trWXFRa1k2UWtJNlNqcEtOa291U2k1S0prb2lSbFpXUWxvdVlpNUNLa0ltUmlaR0pqNGlPQ0pHTWtJK1BsSStValpLTGtvdVZpSk9EazRTU2dvK0Npd2dtaXdXTGxwQ2FsSjZVbnBDYmk1YUxub2lZaEpTRmxIK1FlWXVHaG9lRGlZQ0pmNGgvaDMrSWZvV0JnNEtIaDRTQ2dINElpNHFJaVlpR2g0YUloNG1JaUlpSWg0ZUdoNGFIaDRlSGlJaUhpSWVIaUlpSGlJZUtoNG1JaW9pTENJS0xpL3RMQlE2TDkwc1ZpL2RMQll1Vmo1T1NrNUtTazQ2V2l3amRpd1dQaTVpUG9aT2trNkNSblpDZGo1Nk5uNHNJcTRzRnBvdWdnNXg4bTN5VGQ0dHhDSXVKQlpkOGtIdUxkNHVIaTRlTGg1SitqbjZMZkl1RWk0U0poWlI5a0h5TGVvdDNoSHA4ZkgxOWVvUjNpd2hZaXdXVmVJOTVpM21MZEloNmhINkVmb0tCZm9WK2hYMkhlNHVCaTRPUGc1S0ZrWWFUaDVTSGxZaVRpcE9LazRxVGlKTUlpWlNJa1lpUGdaU0JsNENhZUtSK21vU1BDRDJMQllDTGc0K0Vrb1NTaDVTTGxRaXc5emdWaTRhTWg0K0lqNGVQaVpDTGtJdVBqWStQam82Tmo0dVFpNUNKa0lpT2g0K0hqWWFMaG91SGlZZUhoNGlLaG91R0NOVDdPQldVaXdXT2k0NktqNG1QaW8rSWpvaVBoNCtJam9lUGlJK0hqNGFQaG82SGpvaU5pSTZIajRhT2hvNklpNHFXZnBLRGo0WUlrNE9SZ1k1K2ozNk9nSTEvallDUGc1Q0duWXVYajVHVWtwU09tWXVlaTVhR21vS2ZncDZHbW91V0NQQ0xCWlNMbEkrU2twT1RqcE9MbFl1U2laS0hsSWVVaG8rRmk0NlBqWStOa1kyUmpKQ0xrSXVZaHBhQmxZNlJqWktMa2dpTGtvbVNpSktJa29hUWhZNk1rSXlSaTVDTG00YVhncE9Ca242UGU0c0lab3NGY290cmhHTjlpb3VJaW9hSmg0cUhpb21LaVlxSWlvYUtoNG1IaW9pS2lZdUhpb2lMaDRxSWk0bUxDSUtMaS90TEJRNzdsSXYzdHhXTGtwQ1BsbzBJOXlPZ3pQY1dCWTZTa0krUml3aUwvQkw3RlVjRmg0bUhpb2lMaDR1SWpJbU9pWTZLam91UGk0eUxqWXlPQ0tQM0l5UHdCWWFRaVpDTGp3Z09pL2ZGRll1MWw2eWpvcU9qclplMmk1YUxsNG1ZaDVlSGxvV1doSmFFbElXU2haT0Vrb1dTaEpLU2twR1RrcEtSbEpHV2tnaVdrcGFSbDQrWWo1ZU5sb3UyaTYxL28zT2pkSmRxaTJHTFlYVmdZR0FJKzBiN1FBV0hpSWVKaG91R2k0ZU5oNDRJKzBiM1FBV0pqWW1OaDQrSWpvYVJnNVNFbElXVmhaU0ZsWWFXaDVtR21JbVlpNWdJc0lzVmkydWNhYTlvQ1BjNit6VDNPdmN6QmErdm5LMkxxNHViaVppSGw0ZVhocFNGa29TU2c1R0NqNEtRZ28yQ2pZT05nWXVCaTRLTGdJbC9ob0NHZ0lXQ2hBaUJnNE9GaElTRWhZYUZob2FJaG9hSmhZdUZpNGFOaUpDR2tJYVJoSkdFa29PUmdaT0Nrb0NSZ0pCL2tJQ05nb3NJZ1l1Qmk0T0pnb21DaVlLR2dvZURoWVNFaFlTR2dvZC9oMytKZm90N0NBNzdKb3V5Rll2NEJBV0xrWTJSajVHT2tKQ1BrbzJQalkrTWo0c0k5OENMQlkrTGo0cVBpWkdKa0llUGhvK0ZqWVdMaFFpTC9BUUZpNFNKaFllR2g0YUdoNFdJaUlxR2lvZUxnWXVFam9TUkNQc1M5dzM3RXZzTkJZU0ZnNGlDaTRlTGg0dUhqWVNPaG8rSWtJZVFpWkdMa2dpd2t4WDNKdmNocEhMM0Rmc0lpL2YzKzdpTGkvdjNCUTVuaThzVmkvYzVCWXVTanBLUWtKQ1FrbzZTaXdqM1ZJdUx3Z1dMcnBpcHBLU2twS21Zcm91dmk2bCtwSEtrY3BkdGkyZ0lpMElGaTRhS2hvZUloNGVIaVlhTENIbUxCWWFMaDQySGo0ZU9pcENMa0FpTDFBV0xuNE9jZlpwOW1YcVNkb3QzaTNxRWZYMThmSVI2aTNjSWkxU25pd1dTaTVLSWtJYVFobzZFaTRRSWkvczVCWXVEaUlXR2hvYUZoSW1FaXdqN3A0c0ZoSXVFallhUmhwQ0lrWXVUQ0E1bmpQZTZGWXlRa0k2VWpRajNJNkRNOXhZRmo1S1BqNUdMa0l1UWg0K0VDTXY3RnZjamRnV1VpWkNJallhTmhvaUZoWVVJSXlhayt5TUZqSVdLaG9tSGlZaUlpWWFMaUl1SGpJZU5DUHNVei9zVlJ3V0hpWWVLaUl1SGk0ZU5pWTZKajR1UWpKRUlvL2NqSS9BRmhaR0prWTJRQ1BlQit6MFZuSUxsVzNyeGlKNlptTlRTK3d5ZGdweGU1NHY3cHdVT1o0dkNGWXYzU3dXTGtJMlBqbytQam8rTmtJc0kzb3NGa0l1UGlZNklqNGVOaDR1R0NJdjdTd1dMaG9tSGg0ZUloNGVLaG9zSU9Jc0Zob3VIakllUGlJK0pqNHVRQ0xDdkZZdUdqSWVQaDQ2SWtJbVFpNUNMajQyUGpvNlBqWStMa0l1UWlaQ0lqb2VQaDQyR2k0YUxob21JaDRlSWlvYUxoZ2p2WnhXTDkwc0ZpNUNOajQ2T2o0K1BqWkNMajR5U2tKV1dsWmFWbDVTWG1KdVZsNUdSam82T2tJNlJqWkNOa0l5UGpJNk1rWTJUQ0l5U2pKR01qNHlQalpDT2tZNlJqcENQam82UGo0MlFpNVNMazRxU2laS0prWWlQaUpDSWpvaVBobzZHalllTWh3aU5oNHlHaklhTWhZdUhpNGlMaUl1SGk0ZUxnNHVFaVlTSmhJbUZpWWVKaDRtRmg0V0xpb3FKaW9tSmlJcUppb2tJaTRxS2lJcUpDTnFMQlpxTG1JV1dnSmFBa0grTGZJdDZobjJBZjQ2RGpZU0xoSXQ5aDM2Q2Y0K0JpMytIZ0ltQWhZS0VoSTEyaG5tQWZnaC9mWGlEY29zSVpvc0Zmb3Qrakh5T2ZJNS9qb09PZzQxL2ozMlFjNU44ajRTTWhvdUhqWWlPaDQrSmo0dVFDQTVuaS9jNUZZdUdqWWFPaUkrSGo0bVFpd2plaXdXUWk0K05qbytQam8yUWk1QUlpL2RLQll1UWlaQ0hqb2lQaDQyR2l3ZzRpd1dHaTRlSmg0ZUlpSW1HaTRZSWkvdEtCYkQzSmhXTGtJeVBqNCtPanBDTmtJdVFpNCtKajRpT2g0MkhpNGFMaG9tSGlJZUhoNGVLaG91R2k0YU1pSStIajRxUGk1QUk3L3NuRll2M1N3V0xrSTJRajQ2T2o0K05rSXVTaTVxUG81T1prSmVQazQ2VGpaZU9tbzZhanBpTW1Jc0lzSXNGcEl1ZWc1ZDlsbjZRZW9sMWtvU1JnbzJBajRDTGdJZUFsSCtQZm90OWk0V0poSWlDbG9DUWZJdDdpM3lGZm9HQUNJQ0Fmb1o4aXdnOGl3V01pSXlKaTRtTWlZeUpqWW1NaUl5S2k0bVBoSTJHalllTmg0MkdqWU9NaEl5RWk0U0xob3VIaTRpTGlZdUdpb1lJaW9XS2hvbUhpb2VKaDRpR2g0ZUloNGFJaDRpRmlJU0poSW1EaW9LTGhvdUhqWWlQaDQrSWo0aVJpSkdKa0lxUENJcVBpcEdLa29tVGlwR0tqNHFPaVpDSmtZaVFpSkNJam9XU2daWituSUtYZ1phQmxvR1doSkdIaTRhTGg0Mkhqd2lJam9tUWk0OElEdmlVRlBpVUZZc01DZ0FBQUFBREFnQUJrQUFGQUFBQlRBRm1BQUFBUndGTUFXWUFBQUQxQUJrQWhBQUFBQUFBQUFBQUFBQUFBQUFBQUFFUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFQRmxBZUQvNFAvZ0FlQUFJQUFBQUFFQUFBQUFBQUFBQUFBQUFDQUFBQUFBQUFJQUFBQURBQUFBRkFBREFBRUFBQUFVQUFRQWtBQUFBQ0FBSUFBRUFBQUFBUUFnNWdYd0J2QU44Q1B3THZCdThIRHdpdkNYOEp6eEkvRmwvLzMvL3dBQUFBQUFJT1lBOEFUd0RQQWo4Qzd3YnZCdzhJZndsL0NjOFNQeFpQLzkvLzhBQWYvakdnUVFCaEFCRCt3UDRnK2pENklQakErQUQzd085ZzYyQUFNQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFmLy9BQThBQVFBQUFBRUFBSnJWbExKZkR6ejFBQXNDQUFBQUFBRFAvR09EQUFBQUFNLzhZNE1BQVAvYkFnQUIyd0FBQUFnQUFnQUFBQUFBQUFBQkFBQUI0UC9nQUFBQ0FBQUFBQUFDQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBSEFBQUFBQUFBQUFBQUFBQUFBRUFBQUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWR3QUFBSGNBQUFDQUFBakFaTUFId0ZKQUFBQmJnQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQUFBRUFBQUFDQUFBQUFXNEFBQUhjQUFBQjNBQUJBZHdBQUFIY0FBQUFBRkFBQUJ3QUFBQUFBQTRBcmdBQkFBQUFBQUFCQUF3QUFBQUJBQUFBQUFBQ0FBNEFRQUFCQUFBQUFBQURBQXdBSWdBQkFBQUFBQUFFQUF3QVRnQUJBQUFBQUFBRkFCWUFEQUFCQUFBQUFBQUdBQVlBTGdBQkFBQUFBQUFLQURRQVdnQURBQUVFQ1FBQkFBd0FBQUFEQUFFRUNRQUNBQTRBUUFBREFBRUVDUUFEQUF3QUlnQURBQUVFQ1FBRUFBd0FUZ0FEQUFFRUNRQUZBQllBREFBREFBRUVDUUFHQUF3QU5BQURBQUVFQ1FBS0FEUUFXZ0J5QUdFQWRBQnBBRzRBWndCV0FHVUFjZ0J6QUdrQWJ3QnVBQ0FBTVFBdUFEQUFjZ0JoQUhRQWFRQnVBR2R5WVhScGJtY0FjZ0JoQUhRQWFRQnVBR2NBVWdCbEFHY0FkUUJzQUdFQWNnQnlBR0VBZEFCcEFHNEFad0JHQUc4QWJnQjBBQ0FBWndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFDNEFBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9PSkgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnVpLnJhdGluZyAuaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiAnUmF0aW5nJztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBFbXB0eSBTdGFyICovXG5cbi51aS5yYXRpbmcgLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjAwNSc7XG59XG5cbi8qIEFjdGl2ZSBTdGFyICovXG5cbi51aS5yYXRpbmcgLmFjdGl2ZS5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDUnO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3RhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBVbmZpbGxlZCBTdGFyICovXG5cbi51aS5zdGFyLnJhdGluZyAuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA1Jztcbn1cblxuLyogQWN0aXZlIFN0YXIgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5hY3RpdmUuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA1Jztcbn1cblxuLyogUGFydGlhbCAqL1xuXG4udWkuc3Rhci5yYXRpbmcgLnBhcnRpYWwuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA2Jztcbn1cblxuLnVpLnN0YXIucmF0aW5nIC5wYXJ0aWFsLmljb24ge1xuICBjb250ZW50OiAnXFxmMDA1Jztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhlYXJ0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEVtcHR5IEhlYXJ0XG4udWkuaGVhcnQucmF0aW5nIC5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwOGEnO1xufVxuKi9cblxuLnVpLmhlYXJ0LnJhdGluZyAuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA0Jztcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5oZWFydC5yYXRpbmcgLmFjdGl2ZS5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDQnO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBTZWFyY2hcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU2VhcmNoXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWkuc2VhcmNoID4gLnByb21wdCB7XG4gIG1hcmdpbjogMGVtO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0Mjg1NzFlbTtcbiAgcGFkZGluZzogMC42Nzg1NzE0M2VtIDFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2UsIC13ZWJraXQtYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZSwgY29sb3IgMC4xcyBlYXNlLCBib3gtc2hhZG93IDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZSwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMXMgZWFzZTtcbn1cblxuLnVpLnNlYXJjaCAucHJvbXB0IHtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggLnByb21wdCB+IC5zZWFyY2guaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlc3VsdHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIHdpZHRoOiAxOGVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxNDI5cmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTIpLCAwcHggMnB4IDEwcHggMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENEQ0RDU7XG4gIHotaW5kZXg6IDk5ODtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbSAwLjI4NTcxNDI5cmVtIDBlbSAwZW07XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDAuMjg1NzE0MjlyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBSZXN1bHRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmc6IDAuODU3MTQyODZlbSAxLjE0Mjg1NzE0ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBsaW5lLWhlaWdodDogMS4zMztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogSW1hZ2UgKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLmltYWdlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogNWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEluZm9cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC5pbWFnZSArIC5jb250ZW50IHtcbiAgbWFyZ2luOiAwZW0gNmVtIDBlbSAwZW07XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC50aXRsZSB7XG4gIG1hcmdpbjogLTAuMTQyODU3MTRlbSAwZW0gMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLnByaWNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogIzIxQkE0NTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIHtcbiAgcGFkZGluZzogMWVtIDFlbTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzID4gLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiAubWVzc2FnZSAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi8qIFZpZXcgQWxsIFJlc3VsdHMgKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzID4gLmFjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItdG9wOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICBwYWRkaW5nOiAwLjkyODU3MTQzZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VhcmNoID4gLnByb21wdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjM1KTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45NSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5zZWFyY2ggLmlucHV0ID4gaS5pY29uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODU3MTRlbSAwZW0gMGVtIC0wLjY0Mjg1NzE0ZW07XG4gIHdpZHRoOiAxLjI4NTcxNDI5ZW07XG4gIGhlaWdodDogMS4yODU3MTQyOWVtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlcjogMC4yZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkubG9hZGluZy5zZWFyY2ggLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NTcxNGVtIDBlbSAwZW0gLTAuNjQyODU3MTRlbTtcbiAgd2lkdGg6IDEuMjg1NzE0MjllbTtcbiAgaGVpZ2h0OiAxLjI4NTcxNDI5ZW07XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBidXR0b24tc3BpbiAwLjZzIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBidXR0b24tc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjNzY3Njc2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQ6aG92ZXIsXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5IC5yZXN1bHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRjlGQUZCO1xufVxuXG4udWkuc2VhcmNoIC5hY3Rpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbn1cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeS5hY3RpdmUgPiAubmFtZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdC5hY3RpdmUsXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5IC5yZXN1bHQuYWN0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY1O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0LmFjdGl2ZSAudGl0bGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQuYWN0aXZlIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzYWJsZWQgKi9cblxuLnVpLmRpc2FibGVkLnNlYXJjaCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNDU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU2VsZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VhcmNoLnNlbGVjdGlvbiAucHJvbXB0IHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3MTQyOXJlbTtcbn1cblxuLyogUmVtb3ZlIGlucHV0ICovXG5cbi51aS5zZWFyY2guc2VsZWN0aW9uID4gLmljb24uaW5wdXQgPiAucmVtb3ZlLmljb24ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogJyc7XG4gIHRvcDogMGVtO1xuICByaWdodDogMGVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2U7XG59XG5cbi51aS5zZWFyY2guc2VsZWN0aW9uID4gLmljb24uaW5wdXQgPiAuYWN0aXZlLnJlbW92ZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjg7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4udWkuc2VhcmNoLnNlbGVjdGlvbiA+IC5pY29uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBpY29uXCJdKSA+IC5pY29uIH4gLnJlbW92ZS5pY29uIHtcbiAgcmlnaHQ6IDEuODU3MTRlbTtcbn1cblxuLnVpLnNlYXJjaC5zZWxlY3Rpb24gPiAuaWNvbi5pbnB1dCA+IC5yZW1vdmUuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjREIyODI4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2F0ZWdvcnlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXRlZ29yeS5zZWFyY2ggLnJlc3VsdHMge1xuICB3aWR0aDogMjhlbTtcbn1cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCAucmVzdWx0cy5hbmltYXRpbmcsXG4udWkuY2F0ZWdvcnkuc2VhcmNoIC5yZXN1bHRzLnZpc2libGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyogQ2F0ZWdvcnkgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgYmFja2dyb3VuZDogI0YzRjRGNTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcyBlYXNlLCBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLyogTGFzdCBDYXRlZ29yeSAqL1xuXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBGaXJzdCAvIExhc3QgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpmaXJzdC1jaGlsZCAubmFtZSArIC5yZXN1bHQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3MTQyOXJlbSAwZW0gMGVtO1xufVxuXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5Omxhc3QtY2hpbGQgLnJlc3VsdDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTcxNDI5cmVtIDBlbTtcbn1cblxuLyogQ2F0ZWdvcnkgUmVzdWx0IE5hbWUgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSA+IC5uYW1lIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdpZHRoOiAxMDBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nOiAwLjRlbSAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjEpO1xufVxuXG4vKiBDYXRlZ29yeSBSZXN1bHQgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0cyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbn1cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSAucmVzdWx0IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzQsIDM2LCAzOCwgMC4xKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2UsIGJvcmRlci1jb2xvciAwLjFzIGVhc2U7XG4gIHBhZGRpbmc6IDAuODU3MTQyODZlbSAxLjE0Mjg1NzE0ZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBMZWZ0IC8gUmlnaHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwJTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uc2VhcmNoID4gLnJlc3VsdHMge1xuICByaWdodDogMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLnNlYXJjaCAucmVzdWx0cyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAwLjc4NTcxNDI5ZW07XG59XG5cbi51aS5zbWFsbC5zZWFyY2gge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cblxuLnVpLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkubGFyZ2Uuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0ZW07XG59XG5cbi51aS5iaWcuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG5cbi51aS5odWdlLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuXG4udWkubWFzc2l2ZS5zZWFyY2gge1xuICBmb250LXNpemU6IDEuNzE0Mjg1NzFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTW9iaWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zZWFyY2ggLnJlc3VsdHMge1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDJyZW0pO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFNoYXBlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBTaGFwZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnNoYXBlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDIwMDBweDtcbiAgcGVyc3BlY3RpdmU6IDIwMDBweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuNnMgZWFzZS1pbi1vdXQsIHdpZHRoIDAuNnMgZWFzZS1pbi1vdXQsIGhlaWdodCAwLjZzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuNnMgZWFzZS1pbi1vdXQsIHdpZHRoIDAuNnMgZWFzZS1pbi1vdXQsIGhlaWdodCAwLjZzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dCwgbGVmdCAwLjZzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjZzIGVhc2UtaW4tb3V0LCBoZWlnaHQgMC42cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQsIGxlZnQgMC42cyBlYXNlLWluLW91dCwgd2lkdGggMC42cyBlYXNlLWluLW91dCwgaGVpZ2h0IDAuNnMgZWFzZS1pbi1vdXQsIC13ZWJraXQtdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XG59XG5cbi51aS5zaGFwZSAuc2lkZXMge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi51aS5zaGFwZSAuc2lkZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBlbSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuc2hhcGUgLnNpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkuc2hhcGUgLnNpZGUgKiB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jdWJlLnNoYXBlIC5zaWRlIHtcbiAgbWluLXdpZHRoOiAxNWVtO1xuICBoZWlnaHQ6IDE1ZW07XG4gIHBhZGRpbmc6IDJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U2RTZFNjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi51aS5jdWJlLnNoYXBlIC5zaWRlID4gLmNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbXMtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xufVxuXG4udWkuY3ViZS5zaGFwZSAuc2lkZSA+IC5jb250ZW50ID4gZGl2IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnRleHQuc2hhcGUuYW5pbWF0aW5nIC5zaWRlcyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi51aS50ZXh0LnNoYXBlIC5zaWRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnVpLnRleHQuc2hhcGUgLnNpZGUgPiAqIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5zaGFwZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQW5pbWF0aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2hhcGUgLmFuaW1hdGluZy5zaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMTAwO1xufVxuXG4udWkuc2hhcGUgLmhpZGRlbi5zaWRlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBDU1Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaGFwZS5hbmltYXRpbmcgLnNpZGVzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4udWkuc2hhcGUuYW5pbWF0aW5nIC5zaWRlcyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAwLjZzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjZzIGVhc2UtaW4tb3V0LCBoZWlnaHQgMC42cyBlYXNlLWluLW91dCwgLXdlYmtpdC10cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjZzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjZzIGVhc2UtaW4tb3V0LCBoZWlnaHQgMC42cyBlYXNlLWluLW91dCwgLXdlYmtpdC10cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQsIGxlZnQgMC42cyBlYXNlLWluLW91dCwgd2lkdGggMC42cyBlYXNlLWluLW91dCwgaGVpZ2h0IDAuNnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0LCBsZWZ0IDAuNnMgZWFzZS1pbi1vdXQsIHdpZHRoIDAuNnMgZWFzZS1pbi1vdXQsIGhlaWdodCAwLjZzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xufVxuXG4udWkuc2hhcGUuYW5pbWF0aW5nIC5zaWRlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlLWluLW91dDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaGFwZSAuYWN0aXZlLnNpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVXNlciBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBTaWRlYmFyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2lkZWJhclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU2lkZWJhciBNZW51ICovXG5cbi51aS5zaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBlbSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogR1BVIExheWVycyBmb3IgQ2hpbGQgRWxlbWVudHMgKi9cblxuLnVpLnNpZGViYXIgPiAqIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5zaWRlYmFyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi51aS5yaWdodC5zaWRlYmFyIHtcbiAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCUsIDApO1xufVxuXG4udWkudG9wLnNpZGViYXIsXG4udWkuYm90dG9tLnNpZGViYXIge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnVpLnRvcC5zaWRlYmFyIHtcbiAgdG9wOiAwcHggIWltcG9ydGFudDtcbiAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xufVxuXG4udWkuYm90dG9tLnNpZGViYXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwcHggIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFB1c2hhYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZzogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFdob2xlIFBhZ2UgKi9cblxuYm9keS5wdXNoYWJsZSB7XG4gIGJhY2tncm91bmQ6ICM1NDU0NTQgIWltcG9ydGFudDtcbn1cblxuLyogUGFnZSBDb250ZXh0ICovXG5cbi5wdXNoYWJsZTpub3QoYm9keSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5wdXNoYWJsZTpub3QoYm9keSkgPiAudWkuc2lkZWJhcixcbi5wdXNoYWJsZTpub3QoYm9keSkgPiAuZml4ZWQsXG4ucHVzaGFibGU6bm90KGJvZHkpID4gLnB1c2hlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnB1c2hhYmxlID4gLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgei1pbmRleDogMTAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSA+IC5wdXNoZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB6LWluZGV4OiAyO1xufVxuXG5ib2R5LnB1c2hhYmxlID4gLnB1c2hlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5cbi8qIFB1c2hlciBzaG91bGQgaW5oZXJpdCBiYWNrZ3JvdW5kIGZyb20gY29udGV4dCAqL1xuXG4ucHVzaGFibGUgPiAucHVzaGVyIHtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaW1tZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSA+IC5wdXNoZXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMHB4O1xuICByaWdodDogMHB4O1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXM7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICB6LWluZGV4OiAxMDAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaWRlYmFyLm1lbnUgLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaW1tZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSA+IC5wdXNoZXIuZGltbWVkOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEFuaW1hdGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFuaW1hdGluZy5zaWRlYmFyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBWaXNpYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudmlzaWJsZS5zaWRlYmFyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4vKiBTaGFkb3cgRGlyZWN0aW9uICovXG5cbi51aS5sZWZ0LnZpc2libGUuc2lkZWJhcixcbi51aS5yaWdodC52aXNpYmxlLnNpZGViYXIge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggcmdiYSgzNCwgMzYsIDM4LCAwLjE1KTtcbn1cblxuLnVpLnRvcC52aXNpYmxlLnNpZGViYXIsXG4udWkuYm90dG9tLnZpc2libGUuc2lkZWJhciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IHJnYmEoMzQsIDM2LCAzOCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKDM0LCAzNiwgMzgsIDAuMTUpO1xufVxuXG4vKiBWaXNpYmxlIE9uIExvYWQgKi9cblxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNjBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjYwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI2MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjYwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS50b3Auc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRvcC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzNnB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzNnB4LCAwKTtcbn1cblxuLnVpLnZpc2libGUuYm90dG9tLnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5ib3R0b20uc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTM2cHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zNnB4LCAwKTtcbn1cblxuLyogb3Bwb3NpdGUgc2lkZXMgdmlzaWJsZSBmb3JjZXMgY29udGVudCBvdmVybGF5ICovXG5cbi51aS52aXNpYmxlLmxlZnQuc2lkZWJhciB+IC51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAudWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlcixcbi51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAudWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgIGlPU1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFdpZHRoXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWZ0IC8gUmlnaHQgKi9cblxuLnVpLnRoaW4ubGVmdC5zaWRlYmFyLFxuLnVpLnRoaW4ucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiAxNTBweDtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgdGhpblwiXS5sZWZ0LnNpZGViYXIsXG4udWlbY2xhc3MqPVwidmVyeSB0aGluXCJdLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogNjBweDtcbn1cblxuLnVpLmxlZnQuc2lkZWJhcixcbi51aS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IDI2MHB4O1xufVxuXG4udWkud2lkZS5sZWZ0LnNpZGViYXIsXG4udWkud2lkZS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IDM1MHB4O1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSB3aWRlXCJdLmxlZnQuc2lkZWJhcixcbi51aVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiA0NzVweDtcbn1cblxuLyogTGVmdCBWaXNpYmxlICovXG5cbi51aS52aXNpYmxlLnRoaW4ubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUudGhpbi5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg2MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg2MHB4LCAwLCAwKTtcbn1cblxuLnVpLnZpc2libGUud2lkZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS53aWRlLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzUwcHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDM1MHB4LCAwLCAwKTtcbn1cblxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLmxlZnQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDQ3NXB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg0NzVweCwgMCwgMCk7XG59XG5cbi8qIFJpZ2h0IFZpc2libGUgKi9cblxuLnVpLnZpc2libGUudGhpbi5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUudGhpbi5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwcHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB0aGluXCJdLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC02MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNjBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlLndpZGUucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLndpZGUucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTM1MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzUwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDc1cHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC00NzVweCwgMCwgMCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQW5pbWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIE92ZXJsYXlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNldC11cCAqL1xuXG4udWkub3ZlcmxheS5zaWRlYmFyIHtcbiAgei1pbmRleDogMTAyO1xufVxuXG4vKiBJbml0aWFsICovXG5cbi51aS5sZWZ0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwJSwgMCk7XG59XG5cbi51aS5yaWdodC5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAlLCAwKTtcbn1cblxuLnVpLnRvcC5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC0xMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xufVxuXG4udWkuYm90dG9tLm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDEwMCUsIDApO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuLmFuaW1hdGluZy51aS5vdmVybGF5LnNpZGViYXIsXG4udWkudmlzaWJsZS5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyogRW5kIC0gU2lkZWJhciAqL1xuXG4udWkudmlzaWJsZS5sZWZ0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG59XG5cbi51aS52aXNpYmxlLnJpZ2h0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG59XG5cbi51aS52aXNpYmxlLnRvcC5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xufVxuXG4udWkudmlzaWJsZS5ib3R0b20ub3ZlcmxheS5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbn1cblxuLyogRW5kIC0gUHVzaGVyICovXG5cbi51aS52aXNpYmxlLm92ZXJsYXkuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLm92ZXJsYXkuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgUHVzaFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuXG4udWkucHVzaC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogU2lkZWJhciAtIEluaXRpYWwgKi9cblxuLnVpLmxlZnQucHVzaC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi51aS5yaWdodC5wdXNoLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cbi51aS50b3AucHVzaC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC0xMDAlLCAwKTtcbn1cblxuLnVpLmJvdHRvbS5wdXNoLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbn1cblxuLyogRW5kICovXG5cbi51aS52aXNpYmxlLnB1c2guc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVW5jb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuXG4udWkudW5jb3Zlci5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiBFbmQgKi9cblxuLnVpLnZpc2libGUudW5jb3Zlci5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2xpZGUgQWxvbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEluaXRpYWwgKi9cblxuLnVpLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAqL1xuXG4udWkubGVmdC5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xufVxuXG4udWkucmlnaHQuc2xpZGUuYWxvbmcuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG59XG5cbi51aS50b3Auc2xpZGUuYWxvbmcuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbn1cblxuLnVpLmJvdHRvbS5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuLnVpLmFuaW1hdGluZy5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG59XG5cbi8qIEVuZCAqL1xuXG4udWkudmlzaWJsZS5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNsaWRlIE91dFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuXG4udWkuc2xpZGUub3V0LnNpZGViYXIge1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAqL1xuXG4udWkubGVmdC5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG59XG5cbi51aS5yaWdodC5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcbn1cblxuLnVpLnRvcC5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgNTAlLCAwKTtcbn1cblxuLnVpLmJvdHRvbS5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC01MCUsIDApO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuLnVpLmFuaW1hdGluZy5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuXG4vKiBFbmQgKi9cblxuLnVpLnZpc2libGUuc2xpZGUub3V0LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2NhbGUgRG93blxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5pdGlhbCAqL1xuXG4udWkuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogU2lkZWJhciAtIEluaXRpYWwgICovXG5cbi51aS5sZWZ0LnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4udWkucmlnaHQuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4udWkudG9wLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG59XG5cbi51aS5ib3R0b20uc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG59XG5cbi8qIFB1c2hlciAtIEluaXRpYWwgKi9cblxuLnVpLnNjYWxlLmRvd24ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNzUlIDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNzUlIDUwJTtcbn1cblxuLnVpLnNjYWxlLmRvd24ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDI1JSA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDI1JSA1MCU7XG59XG5cbi51aS5zY2FsZS5kb3duLnRvcC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbn1cblxuLnVpLnNjYWxlLmRvd24uYm90dG9tLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMjUlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMjUlO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuLnVpLmFuaW1hdGluZy5zY2FsZS5kb3duID4gLnZpc2libGUudWkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuXG4udWkudmlzaWJsZS5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyLFxuLnVpLmFuaW1hdGluZy5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4vKiBFbmQgKi9cblxuLnVpLnZpc2libGUuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMi40LjIgLSBTdGlja3lcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGlja3lcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zdGlja3kge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDgwMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQm91bmQgKi9cblxuLnVpLnN0aWNreS5ib3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEZpeGVkICovXG5cbi51aS5zdGlja3kuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBCb3VuZC9GaXhlZCBQb3NpdGlvbiAqL1xuXG4udWkuc3RpY2t5LmJvdW5kLnRvcCxcbi51aS5zdGlja3kuZml4ZWQudG9wIHtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLnVpLnN0aWNreS5ib3VuZC5ib3R0b20sXG4udWkuc3RpY2t5LmZpeGVkLmJvdHRvbSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm5hdGl2ZS5zdGlja3kge1xuICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gIHBvc2l0aW9uOiAtbW96LXN0aWNreTtcbiAgcG9zaXRpb246IC1tcy1zdGlja3k7XG4gIHBvc2l0aW9uOiAtby1zdGlja3k7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFRhYlxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVUkgVGFic1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnRhYiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFiLmFjdGl2ZSxcbi51aS50YWIub3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYi5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMjUwcHg7XG59XG5cbi51aS50YWIubG9hZGluZyAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IC0xMDAwMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS50YWIubG9hZGluZzpiZWZvcmUsXG4udWkudGFiLmxvYWRpbmcuc2VnbWVudDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuMjVlbSAwZW0gMGVtIC0xLjI1ZW07XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLnRhYi5sb2FkaW5nOmFmdGVyLFxuLnVpLnRhYi5sb2FkaW5nLnNlZ21lbnQ6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuMjVlbSAwZW0gMGVtIC0xLjI1ZW07XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXItY29sb3I6ICM3Njc2NzYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUYWIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAyLjQuMiAtIFRyYW5zaXRpb25cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVHJhbnNpdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBBbmltYXRpbmcgKi9cblxuLmFuaW1hdGluZy50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBMb2FkaW5nICovXG5cbi5sb2FkaW5nLnRyYW5zaXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTk5cHg7XG4gIGxlZnQ6IC05OTk5OXB4O1xufVxuXG4vKiBIaWRkZW4gKi9cblxuLmhpZGRlbi50cmFuc2l0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBWaXNpYmxlICovXG5cbi52aXNpYmxlLnRyYW5zaXRpb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC8qICBiYWNrZmFjZS12aXNpYmlsaXR5OiBAYmFja2ZhY2VWaXNpYmlsaXR5O1xuICB0cmFuc2Zvcm06IEB1c2UzREFjY2VsZXJhdGlvbjsqL1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuXG4uZGlzYWJsZWQudHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubG9vcGluZy50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVHJhbnNpdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qXG4gIFNvbWUgdHJhbnNpdGlvbnMgYWRhcHRlZCBmcm9tIEFuaW1hdGUgQ1NTXG4gIGh0dHBzOi8vZ2l0aHViLmNvbS9kYW5lZGVuL2FuaW1hdGUuY3NzXG5cbiAgQWRkaXRpb25hbCB0cmFuc2l0aW9ucyBhZGFwdGVkIGZyb20gR2xpZGVcbiAgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZVxuKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCcm93c2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLmJyb3dzZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbn1cblxuLnRyYW5zaXRpb24uYnJvd3NlLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYnJvd3NlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBicm93c2VJbjtcbn1cblxuLnRyYW5zaXRpb24uYnJvd3NlLm91dCxcbi50cmFuc2l0aW9uLmJyb3dzZS5sZWZ0Lm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJyb3dzZU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBicm93c2VPdXRMZWZ0O1xufVxuXG4udHJhbnNpdGlvbi5icm93c2UucmlnaHQub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYnJvd3NlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBicm93c2VPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJyb3dzZUluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJyb3dzZUluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJyb3dzZU91dExlZnQge1xuICAwJSB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICA1MCUge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDUlKSByb3RhdGVZKDM1ZGVnKSByb3RhdGVYKDEwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgei1pbmRleDogLTE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYnJvd3NlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgei1pbmRleDogLTE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJyb3dzZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDUlKSByb3RhdGVZKDM1ZGVnKSByb3RhdGVYKDEwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYnJvd3NlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICA1MCUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgei1pbmRleDogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEcm9wXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZHJvcC50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNDAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNDAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzQsIDEuNjEsIDAuNywgMSk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM0LCAxLjYxLCAwLjcsIDEpO1xufVxuXG4uZHJvcC50cmFuc2l0aW9uLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZHJvcEluO1xuICBhbmltYXRpb24tbmFtZTogZHJvcEluO1xufVxuXG4uZHJvcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGRyb3BPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBkcm9wT3V0O1xufVxuXG4vKiBEcm9wICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3BPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkcm9wT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZhZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLmZhZGUuaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGRvd25cIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBsZWZ0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgcmlnaHRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xufVxuXG4udHJhbnNpdGlvbi5mYWRlLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHVwXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgbGVmdFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHJpZ2h0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5cbi8qIE91dCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1JSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1JSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUlKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1JSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNSUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNSUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbGlwc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZsaXAudHJhbnNpdGlvbi5pbixcbi5mbGlwLnRyYW5zaXRpb24ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDYwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDYwMG1zO1xufVxuXG4uaG9yaXpvbnRhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBob3Jpem9udGFsRmxpcEluO1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBJbjtcbn1cblxuLmhvcml6b250YWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhvcml6b250YWxGbGlwT3V0O1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBPdXQ7XG59XG5cbi52ZXJ0aWNhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2ZXJ0aWNhbEZsaXBJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcEluO1xufVxuXG4udmVydGljYWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcE91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcE91dDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhvcml6b250YWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdmVydGljYWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHZlcnRpY2FsRmxpcEluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyogT3V0ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBob3Jpem9udGFsRmxpcE91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2ZXJ0aWNhbEZsaXBPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHZlcnRpY2FsRmxpcE91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNjYWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc2NhbGUudHJhbnNpdGlvbi5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNjYWxlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBzY2FsZUluO1xufVxuXG4uc2NhbGUudHJhbnNpdGlvbi5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzY2FsZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNjYWxlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNjYWxlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGbHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIElud2FyZCAqL1xuXG4udHJhbnNpdGlvbi5mbHkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC42cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4udHJhbnNpdGlvbi5mbHkuaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseUluO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJblVwO1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5VcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGRvd25cIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJbkRvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBsZWZ0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5SW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5MZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5SaWdodDtcbn1cblxuLyogT3V0d2FyZCAqL1xuXG4udHJhbnNpdGlvbi5mbHkub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0O1xuICBhbmltYXRpb24tbmFtZTogZmx5T3V0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgdXBcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRVcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGRvd25cIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dERvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBsZWZ0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZseU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRMZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cblxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTUwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbHlJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxNTAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1MDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTUwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNTAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1MDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5SW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1MDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZseUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTUwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1MDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLyogT3V0ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXQge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDUwJSwgNTUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cblxuICA1MCUsIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5T3V0VXAge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0VXAge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXREb3duIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0RG93biB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5T3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZseU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2xpZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnNsaWRlLmluLFxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgZG93blwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5ZO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5ZO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIGxlZnRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5YO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSByaWdodFwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5YO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4udHJhbnNpdGlvbi5zbGlkZS5vdXQsXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSBkb3duXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzbGlkZSB1cFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgbGVmdFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHJpZ2h0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG59XG5cbi8qIEluICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluWSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluWSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5YIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5YIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0WSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFkge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFgge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRYIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN3aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udHJhbnNpdGlvbi5zd2luZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA4MDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA4MDBtcztcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgZG93blwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5YO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdJblg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWDtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5YO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIGxlZnRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWTtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5ZO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyByaWdodFwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5ZO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdJblk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4udHJhbnNpdGlvbi5zd2luZy5vdXQsXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBkb3duXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyB1cFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFg7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgbGVmdFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ091dFk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInN3aW5nIHJpZ2h0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WTtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG59XG5cbi8qIEluICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZ0luWCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3aW5nSW5YIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZ0luWSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtMTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTE3LjVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2luZ0luWSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtMTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTE3LjVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbn1cblxuLyogT3V0ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZ091dFgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNy41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNy41ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dpbmdPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTcuNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmdPdXRZIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSg3LjVkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dpbmdPdXRZIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSg3LjVkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFpvb21cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnpvb20uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG59XG5cbi50cmFuc2l0aW9uLnpvb20ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgU3RhdGljIEFuaW1hdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBFbXBoYXNpc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZsYXNoLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xuICBhbmltYXRpb24tbmFtZTogZmxhc2g7XG59XG5cbi5zaGFrZS50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xufVxuXG4uYm91bmNlLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbn1cblxuLnRhZGEudHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi5wdWxzZS50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xufVxuXG4uamlnZ2xlLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGppZ2dsZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGppZ2dsZTtcbn1cblxuLnRyYW5zaXRpb24uZ2xvdyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyMDAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwMG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuXG4udHJhbnNpdGlvbi5nbG93IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZ2xvdztcbiAgYW5pbWF0aW9uLW5hbWU6IGdsb3c7XG59XG5cbi8qIEZsYXNoICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGFzaCB7XG4gIDAlLCA1MCUsIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsIDc1JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qIFNoYWtlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG59XG5cbi8qIEJvdW5jZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5cbi8qIFRhZGEgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4vKiBQdWxzZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiBKaWdnbGUgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGppZ2dsZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cblxuICA2NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgamlnZ2xlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgfVxuXG4gIDY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLyogR2xvdyAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ2xvdyB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZEO1xuICB9XG5cbiAgMzAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkNEO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkNGRDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGdsb3cge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkNGRDtcbiAgfVxuXG4gIDMwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZDRDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0ZDRkQ7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDAuMC44IC0gQ2FsZW5kYXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovLnVpLmNhbGVuZGFyIC51aS5wb3B1cHttYXgtd2lkdGg6bm9uZTtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS51aS5jYWxlbmRhciAuY2FsZW5kYXI6Zm9jdXN7b3V0bGluZTowfS51aS5jYWxlbmRhciAudWkucG9wdXAgLnVpLmdyaWR7ZGlzcGxheTpibG9jazt3aGl0ZS1zcGFjZTpub3dyYXB9LnVpLmNhbGVuZGFyIC51aS5wb3B1cCAudWkuZ3JpZD4uY29sdW1ue3dpZHRoOmF1dG99LnVpLmNhbGVuZGFyIC51aS50YWJsZS5taW51dGUsLnVpLmNhbGVuZGFyIC51aS50YWJsZS5tb250aCwudWkuY2FsZW5kYXIgLnVpLnRhYmxlLnllYXJ7bWluLXdpZHRoOjE1ZW19LnVpLmNhbGVuZGFyIC51aS50YWJsZS5kYXl7bWluLXdpZHRoOjE4ZW19LnVpLmNhbGVuZGFyIC51aS50YWJsZS5ob3Vye21pbi13aWR0aDoyMGVtfS51aS5jYWxlbmRhciAudWkudGFibGUgdHIgdGQsLnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0aHtwYWRkaW5nOi41ZW07d2hpdGUtc3BhY2U6bm93cmFwfS51aS5jYWxlbmRhciAudWkudGFibGUgdHIgdGh7Ym9yZGVyLWxlZnQ6bm9uZX0udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRoIC5pY29ue21hcmdpbjowfS51aS5jYWxlbmRhciAudWkudGFibGUgdHI6Zmlyc3QtY2hpbGQgdGh7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS51aS5jYWxlbmRhciAudWkudGFibGUuZGF5IHRyOmZpcnN0LWNoaWxkIHRoe2JvcmRlcjpub25lfS51aS5jYWxlbmRhciAudWkudGFibGUuZGF5IHRyOm50aC1jaGlsZCgyKSB0aHtwYWRkaW5nLXRvcDouMmVtO3BhZGRpbmctYm90dG9tOi4zZW19LnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciB0ZHtwYWRkaW5nLWxlZnQ6LjFlbTtwYWRkaW5nLXJpZ2h0Oi4xZW19LnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciAubGlua3tjdXJzb3I6cG9pbnRlcn0udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5wcmV2Lmxpbmt7d2lkdGg6MTQuMjg1NzE0MjklO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MH0udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIC5uZXh0Lmxpbmt7d2lkdGg6MTQuMjg1NzE0MjklO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LnVpLmNhbGVuZGFyIC51aS50YWJsZSB0ciAuZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZTtjb2xvcjpyZ2JhKDQwLDQwLDQwLC4zKX0udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRkLnRvZGF5e2ZvbnQtd2VpZ2h0OjcwMH0udWkuY2FsZW5kYXIgLnVpLnRhYmxlIHRyIHRkLnJhbmdle2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMDUpO2NvbG9yOnJnYmEoMCwwLDAsLjk1KTtib3gtc2hhZG93Om5vbmV9LnVpLmNhbGVuZGFyIC51aS50YWJsZS5pbnZlcnRlZCB0ciB0ZC5yYW5nZXtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA4KTtjb2xvcjojZmZmO2JveC1zaGFkb3c6bm9uZX0udWkuY2FsZW5kYXIgLmNhbGVuZGFyLmFjdGl2ZSAudWkudGFibGUgdGJvZHkgdHIgdGQuZm9jdXMsLnVpLmNhbGVuZGFyIC5jYWxlbmRhci5hY3RpdmUgLnVpLnRhYmxlLmludmVydGVkIHRib2R5IHRyIHRkLmZvY3VzLC51aS5jYWxlbmRhciAuY2FsZW5kYXI6Zm9jdXMgLnVpLnRhYmxlIHRib2R5IHRyIHRkLmZvY3VzLC51aS5jYWxlbmRhciAuY2FsZW5kYXI6Zm9jdXMgLnVpLnRhYmxlLmludmVydGVkIHRib2R5IHRyIHRkLmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICM4NUI3RDl9XG4ub2NjbHVkZWQtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8qIHByZXZlbnRzIG1hcmdpbiBvdmVyZmxvdyBvbiBpdGVtIGNvbnRhaW5lciAqL1xuICBtaW4taGVpZ2h0OiAwLjAxcHg7XG5cbiAgLyogaGlkZXMgdGV4dCB2aXN1YWxseSB3aGlsZSBzdGlsbCBiZWluZyByZWFkYWJsZSBieSBzY3JlZW4gcmVhZGVycyAqL1xuICBjb2xvcjogcmdiYSgwLDAsMCwwKTtcbn1cblxudGFibGUgLm9jY2x1ZGVkLWNvbnRlbnQsXG50Ym9keSAub2NjbHVkZWQtY29udGVudCxcbnRoZWFkIC5vY2NsdWRlZC1jb250ZW50LFxudGZvb3QgLm9jY2x1ZGVkLWNvbnRlbnQsIHtcbiAgZGlzcGxheTogdGFibGUtcm93O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG51bCAub2NjbHVkZWQtY29udGVudCxcbm9sIC5vY2NsdWRlZC1jb250ZW50IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLmVtYmVyLXRhYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5lbWJlci10YWJsZSB0YWJsZSB7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5lbWJlci10YWJsZSB0ZCxcbiAgLmVtYmVyLXRhYmxlIHRoIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgLmVtYmVyLXRhYmxlIHRkLmlzLWZpeGVkLWxlZnQsIC5lbWJlci10YWJsZSB0ZC5pcy1maXhlZC1yaWdodCxcbiAgICAuZW1iZXItdGFibGUgdGguaXMtZml4ZWQtbGVmdCxcbiAgICAuZW1iZXItdGFibGUgdGguaXMtZml4ZWQtcmlnaHQge1xuICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuZW1iZXItdGFibGUgdGQuZW1iZXItdGFibGVfX3RleHQtYWxpZ24tbGVmdCxcbiAgICAuZW1iZXItdGFibGUgdGguZW1iZXItdGFibGVfX3RleHQtYWxpZ24tbGVmdCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLmVtYmVyLXRhYmxlIHRkLmVtYmVyLXRhYmxlX190ZXh0LWFsaWduLWNlbnRlcixcbiAgICAuZW1iZXItdGFibGUgdGguZW1iZXItdGFibGVfX3RleHQtYWxpZ24tY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5lbWJlci10YWJsZSB0ZC5lbWJlci10YWJsZV9fdGV4dC1hbGlnbi1yaWdodCxcbiAgICAuZW1iZXItdGFibGUgdGguZW1iZXItdGFibGVfX3RleHQtYWxpZ24tcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmVtYmVyLXRhYmxlIHRoIHtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLmVtYmVyLXRhYmxlIHRoOm5vdCguaXMtZml4ZWQtcmlnaHQpIC5ldC1oZWFkZXItcmVzaXplLWFyZWEge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAuZW1iZXItdGFibGUgdGguaXMtZml4ZWQtcmlnaHQgLmV0LWhlYWRlci1yZXNpemUtYXJlYSB7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5lbWJlci10YWJsZSB0ZC5pcy1maXhlZC1sZWZ0LFxuICAuZW1iZXItdGFibGUgdGQuaXMtZml4ZWQtcmlnaHQge1xuICAgIHotaW5kZXg6IDM7IH1cbiAgLmVtYmVyLXRhYmxlIHRoLmlzLWZpeGVkLWxlZnQsXG4gIC5lbWJlci10YWJsZSB0aC5pcy1maXhlZC1yaWdodCB7XG4gICAgei1pbmRleDogNDsgfVxuICAuZW1iZXItdGFibGUgdGguaXMtc29ydGFibGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuZW1iZXItdGFibGUgdGhlYWQge1xuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLmVtYmVyLXRhYmxlIHRib2R5IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5lbWJlci10YWJsZSB0Zm9vdCB7XG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAuZW1iZXItdGFibGUuZXQtdW5zZWxlY3RhYmxlIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuZW1iZXItdGFibGUgLmV0LWhlYWRlci1yZXNpemUtYXJlYSB7XG4gICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyB9XG4gIC5lbWJlci10YWJsZSAuZXQtc3BlZWNoLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc3BlZWNoIHtcbiAgICAuZW1iZXItdGFibGUgLmV0LXNwZWVjaC1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV3b0pJblpsY25OcGIyNGlPaUF6TEFvSkltWnBiR1VpT2lBaVpXMWlaWEl0ZEdGaWJHVXVZM056SWl3S0NTSnpiM1Z5WTJWU2IyOTBJam9nSWk5MllYSXZkM2QzTDJWdGN5MW1jbTl1ZEdWdVpDOWhjSEF2YzNSNWJHVnpJaXdLQ1NKemIzVnlZMlZ6SWpvZ1d3b0pDU0l1TGk4dUxpOHVMaTkyWVhJdmQzZDNMMlZ0Y3kxbWNtOXVkR1Z1WkM5dWIyUmxYMjF2WkhWc1pYTXZaVzFpWlhJdGRHRmliR1V2WVdSa2IyNHZjM1I1YkdWekwyRmtaRzl1TG5OamMzTWlDZ2xkTEFvSkluTnZkWEpqWlhORGIyNTBaVzUwSWpvZ1d3b0pDU0l1WlcxaVpYSXRkR0ZpYkdVZ2UxeHVJQ0J3YjNOcGRHbHZiam9nY21Wc1lYUnBkbVU3WEc0Z0lHOTJaWEptYkc5M09pQmhkWFJ2TzF4dUlDQnRZWGd0YUdWcFoyaDBPaUF4TURBbE8xeHVJQ0J0WVhndGQybGtkR2c2SURFd01DVTdYRzRnSUdKdmVDMXphWHBwYm1jNklHSnZjbVJsY2kxaWIzZzdYRzVjYmlBZ2RHRmliR1VnZTF4dUlDQWdJR0p2Y21SbGNpMXpjR0ZqYVc1bk9pQXdPMXh1SUNBZ0lIUmhZbXhsTFd4aGVXOTFkRG9nWm1sNFpXUTdYRzRnSUNBZ1ltOTRMWE5wZW1sdVp6b2dZbTl5WkdWeUxXSnZlRHRjYmlBZ2ZWeHVYRzRnSUhSa0xGeHVJQ0IwYUNCN1hHNGdJQ0FnWW05NExYTnBlbWx1WnpvZ1ltOXlaR1Z5TFdKdmVEdGNibHh1SUNBZ0lDWXVhWE10Wm1sNFpXUXRiR1ZtZEN4Y2JpQWdJQ0FtTG1sekxXWnBlR1ZrTFhKcFoyaDBJSHRjYmlBZ0lDQWdJQzh2SUhOaGMzTXRiR2x1ZERwa2FYTmhZbXhsTFdKc2IyTnJJRzV2TFdSMWNHeHBZMkYwWlMxd2NtOXdaWEowYVdWelhHNGdJQ0FnSUNCd2IzTnBkR2x2YmpvZ0xYZGxZbXRwZEMxemRHbGphM2s3WEc0Z0lDQWdJQ0J3YjNOcGRHbHZiam9nYzNScFkydDVPMXh1SUNBZ0lDQWdiR1ZtZERvZ01EdGNiaUFnSUNCOVhHNWNiaUFnSUNBbUxtVnRZbVZ5TFhSaFlteGxYMTkwWlhoMExXRnNhV2R1TFd4bFpuUWdlMXh1SUNBZ0lDQWdkR1Y0ZEMxaGJHbG5iam9nYkdWbWREdGNiaUFnSUNCOVhHNWNiaUFnSUNBbUxtVnRZbVZ5TFhSaFlteGxYMTkwWlhoMExXRnNhV2R1TFdObGJuUmxjaUI3WEc0Z0lDQWdJQ0IwWlhoMExXRnNhV2R1T2lCalpXNTBaWEk3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdKaTVsYldKbGNpMTBZV0pzWlY5ZmRHVjRkQzFoYkdsbmJpMXlhV2RvZENCN1hHNGdJQ0FnSUNCMFpYaDBMV0ZzYVdkdU9pQnlhV2RvZER0Y2JpQWdJQ0I5WEc0Z0lIMWNibHh1SUNCMGFDQjdYRzRnSUNBZ2VpMXBibVJsZURvZ01qdGNibHh1SUNBZ0lDWTZibTkwS0M1cGN5MW1hWGhsWkMxeWFXZG9kQ2tnZTF4dUlDQWdJQ0FnTG1WMExXaGxZV1JsY2kxeVpYTnBlbVV0WVhKbFlTQjdYRzRnSUNBZ0lDQWdJSEpwWjJoME9pQXdPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNibHh1SUNBZ0lDWXVhWE10Wm1sNFpXUXRjbWxuYUhRZ2UxeHVJQ0FnSUNBZ0xtVjBMV2hsWVdSbGNpMXlaWE5wZW1VdFlYSmxZU0I3WEc0Z0lDQWdJQ0FnSUd4bFpuUTZJREE3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1SUNCOVhHNWNiaUFnZEdRdWFYTXRabWw0WldRdGJHVm1kQ3hjYmlBZ2RHUXVhWE10Wm1sNFpXUXRjbWxuYUhRZ2UxeHVJQ0FnSUhvdGFXNWtaWGc2SURNN1hHNGdJSDFjYmx4dUlDQjBhQzVwY3kxbWFYaGxaQzFzWldaMExGeHVJQ0IwYUM1cGN5MW1hWGhsWkMxeWFXZG9kQ0I3WEc0Z0lDQWdlaTFwYm1SbGVEb2dORHRjYmlBZ2ZWeHVYRzRnSUhSb0xtbHpMWE52Y25SaFlteGxJSHRjYmlBZ0lDQmpkWEp6YjNJNklIQnZhVzUwWlhJN1hHNGdJSDFjYmx4dUlDQjBhR1ZoWkNCN1hHNGdJQ0FnTHk4Z2MyRnpjeTFzYVc1ME9tUnBjMkZpYkdVdFlteHZZMnNnYm04dFpIVndiR2xqWVhSbExYQnliM0JsY25ScFpYTmNiaUFnSUNCd2IzTnBkR2x2YmpvZ0xYZGxZbXRwZEMxemRHbGphM2s3WEc0Z0lDQWdjRzl6YVhScGIyNDZJSE4wYVdOcmVUdGNibHh1SUNBZ0lIUnZjRG9nTUR0Y2JpQWdJQ0I2TFdsdVpHVjRPaUF5TzF4dUlDQWdJR0p2ZUMxemFYcHBibWM2SUdKdmNtUmxjaTFpYjNnN1hHNGdJSDFjYmx4dUlDQjBZbTlrZVNCN1hHNGdJQ0FnWW05NExYTnBlbWx1WnpvZ1ltOXlaR1Z5TFdKdmVEdGNiaUFnZlZ4dVhHNGdJSFJtYjI5MElIdGNiaUFnSUNBdkx5QnpZWE56TFd4cGJuUTZaR2x6WVdKc1pTMWliRzlqYXlCdWJ5MWtkWEJzYVdOaGRHVXRjSEp2Y0dWeWRHbGxjMXh1SUNBZ0lIQnZjMmwwYVc5dU9pQXRkMlZpYTJsMExYTjBhV05yZVR0Y2JpQWdJQ0J3YjNOcGRHbHZiam9nYzNScFkydDVPMXh1SUNBZ0lHSnZkSFJ2YlRvZ01EdGNiaUFnSUNCNkxXbHVaR1Y0T2lBeU8xeHVJQ0FnSUdKdmVDMXphWHBwYm1jNklHSnZjbVJsY2kxaWIzZzdYRzRnSUgxY2JseHVJQ0FtTG1WMExYVnVjMlZzWldOMFlXSnNaU0I3WEc0Z0lDQWdkWE5sY2kxelpXeGxZM1E2SUc1dmJtVTdYRzRnSUgxY2JseHVJQ0F1WlhRdGFHVmhaR1Z5TFhKbGMybDZaUzFoY21WaElIdGNiaUFnSUNCamRYSnpiM0k2SUdOdmJDMXlaWE5wZW1VN1hHNWNiaUFnSUNCM2FXUjBhRG9nTVRCd2VEdGNiaUFnSUNCb1pXbG5hSFE2SURFd01DVTdYRzVjYmlBZ0lDQndiM05wZEdsdmJqb2dZV0p6YjJ4MWRHVTdYRzRnSUNBZ2RHOXdPaUF3TzF4dUlDQjlYRzVjYmlBZ0xtVjBMWE53WldWamFDMXZibXg1SUh0Y2JpQWdJQ0JrYVhOd2JHRjVPaUJ1YjI1bElDRnBiWEJ2Y25SaGJuUTdYRzRnSUgxY2JseHVJQ0JBYldWa2FXRWdjM0JsWldOb0lIdGNiaUFnSUNBdVpYUXRjM0JsWldOb0xXOXViSGtnZTF4dUlDQWdJQ0FnWkdsemNHeGhlVG9nWW14dlkyc2dJV2x0Y0c5eWRHRnVkRHRjYmlBZ0lDQjlYRzRnSUgxY2JuMWNiaUlLQ1Ywc0Nna2libUZ0WlhNaU9pQmJYU3dLQ1NKdFlYQndhVzVuY3lJNklDSkJRVUZCTEVGQlFVRXNXVUZCV1N4RFFVRkRPMFZCUTFnc1VVRkJVU3hGUVVGRkxGRkJRVkU3UlVGRGJFSXNVVUZCVVN4RlFVRkZMRWxCUVVrN1JVRkRaQ3hWUVVGVkxFVkJRVVVzU1VGQlNUdEZRVU5vUWl4VFFVRlRMRVZCUVVVc1NVRkJTVHRGUVVObUxGVkJRVlVzUlVGQlJTeFZRVUZWTEVkQk5rZDJRanRGUVd4SVJDeEJRVTlGTEZsQlVGVXNRMEZQVml4TFFVRkxMRU5CUVVNN1NVRkRTaXhqUVVGakxFVkJRVVVzUTBGQlF6dEpRVU5xUWl4WlFVRlpMRVZCUVVVc1MwRkJTenRKUVVOdVFpeFZRVUZWTEVWQlFVVXNWVUZCVlN4SFFVTjJRanRGUVZoSUxFRkJZVVVzV1VGaVZTeERRV0ZXTEVWQlFVVTdSVUZpU2l4WlFVRlpMRU5CWTFZc1JVRkJSU3hEUVVGRE8wbEJRMFFzVlVGQlZTeEZRVUZGTEZWQlFWVXNSMEZ4UW5aQ08wbEJjRU5JTEVGQmFVSkpMRmxCYWtKUkxFTkJZVllzUlVGQlJTeEJRVWxETEdOQlFXTXNSVUZxUW01Q0xGbEJRVmtzUTBGaFZpeEZRVUZGTEVGQlMwTXNaVUZCWlR0SlFXeENjRUlzV1VGQldTeERRV05XTEVWQlFVVXNRVUZIUXl4alFVRmpPMGxCYWtKdVFpeFpRVUZaTEVOQlkxWXNSVUZCUlN4QlFVbERMR1ZCUVdVc1EwRkJRenROUVVWbUxGRkJRVkVzUlVGQlJTeGpRVUZqTzAxQlEzaENMRkZCUVZFc1JVRkJSU3hOUVVGTk8wMUJRMmhDTEVsQlFVa3NSVUZCUlN4RFFVRkRMRWRCUTFJN1NVRjJRa3dzUVVGNVFra3NXVUY2UWxFc1EwRmhWaXhGUVVGRkxFRkJXVU1zTmtKQlFUWkNPMGxCZWtKc1F5eFpRVUZaTEVOQlkxWXNSVUZCUlN4QlFWZERMRFpDUVVFMlFpeERRVUZETzAxQlF6ZENMRlZCUVZVc1JVRkJSU3hKUVVGSkxFZEJRMnBDTzBsQk0wSk1MRUZCTmtKSkxGbEJOMEpSTEVOQllWWXNSVUZCUlN4QlFXZENReXdyUWtGQkswSTdTVUUzUW5CRExGbEJRVmtzUTBGalZpeEZRVUZGTEVGQlpVTXNLMEpCUVN0Q0xFTkJRVU03VFVGREwwSXNWVUZCVlN4RlFVRkZMRTFCUVUwc1IwRkRia0k3U1VFdlFrd3NRVUZwUTBrc1dVRnFRMUVzUTBGaFZpeEZRVUZGTEVGQmIwSkRMRGhDUVVFNFFqdEpRV3BEYmtNc1dVRkJXU3hEUVdOV0xFVkJRVVVzUVVGdFFrTXNPRUpCUVRoQ0xFTkJRVU03VFVGRE9VSXNWVUZCVlN4RlFVRkZMRXRCUVVzc1IwRkRiRUk3UlVGdVEwd3NRVUZ6UTBVc1dVRjBRMVVzUTBGelExWXNSVUZCUlN4RFFVRkRPMGxCUTBRc1QwRkJUeXhGUVVGRkxFTkJRVU1zUjBGaFdEdEpRWEJFU0N4QlFUQkRUU3haUVRGRFRTeERRWE5EVml4RlFVRkZMRUZCUjBNc1NVRkJTeXhEUVVGQkxHVkJRV1VzUlVGRGJrSXNjMEpCUVhOQ0xFTkJRVU03VFVGRGNrSXNTMEZCU3l4RlFVRkZMRU5CUVVNc1IwRkRWRHRKUVRWRFVDeEJRV2RFVFN4WlFXaEVUU3hEUVhORFZpeEZRVUZGTEVGQlUwTXNaVUZCWlN4RFFVTmtMSE5DUVVGelFpeERRVUZETzAxQlEzSkNMRWxCUVVrc1JVRkJSU3hEUVVGRExFZEJRMUk3UlVGc1JGQXNRVUZ6UkVVc1dVRjBSRlVzUTBGelJGWXNSVUZCUlN4QlFVRkJMR05CUVdNN1JVRjBSR3hDTEZsQlFWa3NRMEYxUkZZc1JVRkJSU3hCUVVGQkxHVkJRV1VzUTBGQlF6dEpRVU5vUWl4UFFVRlBMRVZCUVVVc1EwRkJReXhIUVVOWU8wVkJla1JJTEVGQk1rUkZMRmxCTTBSVkxFTkJNa1JXTEVWQlFVVXNRVUZCUVN4alFVRmpPMFZCTTBSc1FpeFpRVUZaTEVOQk5FUldMRVZCUVVVc1FVRkJRU3hsUVVGbExFTkJRVU03U1VGRGFFSXNUMEZCVHl4RlFVRkZMRU5CUVVNc1IwRkRXRHRGUVRsRVNDeEJRV2RGUlN4WlFXaEZWU3hEUVdkRlZpeEZRVUZGTEVGQlFVRXNXVUZCV1N4RFFVRkRPMGxCUTJJc1RVRkJUU3hGUVVGRkxFOUJRVThzUjBGRGFFSTdSVUZzUlVnc1FVRnZSVVVzV1VGd1JWVXNRMEZ2UlZZc1MwRkJTeXhEUVVGRE8wbEJSVW9zVVVGQlVTeEZRVUZGTEdOQlFXTTdTVUZEZUVJc1VVRkJVU3hGUVVGRkxFMUJRVTA3U1VGRmFFSXNSMEZCUnl4RlFVRkZMRU5CUVVNN1NVRkRUaXhQUVVGUExFVkJRVVVzUTBGQlF6dEpRVU5XTEZWQlFWVXNSVUZCUlN4VlFVRlZMRWRCUTNaQ08wVkJOVVZJTEVGQk9FVkZMRmxCT1VWVkxFTkJPRVZXTEV0QlFVc3NRMEZCUXp0SlFVTktMRlZCUVZVc1JVRkJSU3hWUVVGVkxFZEJRM1pDTzBWQmFFWklMRUZCYTBaRkxGbEJiRVpWTEVOQmEwWldMRXRCUVVzc1EwRkJRenRKUVVWS0xGRkJRVkVzUlVGQlJTeGpRVUZqTzBsQlEzaENMRkZCUVZFc1JVRkJSU3hOUVVGTk8wbEJRMmhDTEUxQlFVMHNSVUZCUlN4RFFVRkRPMGxCUTFRc1QwRkJUeXhGUVVGRkxFTkJRVU03U1VGRFZpeFZRVUZWTEVWQlFVVXNWVUZCVlN4SFFVTjJRanRGUVhwR1NDeEJRVEpHUlN4WlFUTkdWU3hCUVRKR1ZDeG5Ra0ZCWjBJc1EwRkJRenRKUVVOb1FpeFhRVUZYTEVWQlFVVXNTVUZCU1N4SFFVTnNRanRGUVRkR1NDeEJRU3RHUlN4WlFTOUdWU3hEUVN0R1ZpeHpRa0ZCYzBJc1EwRkJRenRKUVVOeVFpeE5RVUZOTEVWQlFVVXNWVUZCVlR0SlFVVnNRaXhMUVVGTExFVkJRVVVzU1VGQlNUdEpRVU5ZTEUxQlFVMHNSVUZCUlN4SlFVRkpPMGxCUlZvc1VVRkJVU3hGUVVGRkxGRkJRVkU3U1VGRGJFSXNSMEZCUnl4RlFVRkZMRU5CUVVNc1IwRkRVRHRGUVhaSFNDeEJRWGxIUlN4WlFYcEhWU3hEUVhsSFZpeGxRVUZsTEVOQlFVTTdTVUZEWkN4UFFVRlBMRVZCUVVVc1pVRkJaU3hIUVVONlFqdEZRVVZFTEUxQlFVMHNRMEZCUXl4TlFVRk5PMGxCTjBkbUxFRkJPRWRKTEZsQk9VZFJMRU5CT0VkU0xHVkJRV1VzUTBGQlF6dE5RVU5rTEU5QlFVOHNSVUZCUlN4blFrRkJaMElzUjBGRE1VSWlDbjA9ICovIl19 */