/* ==========================================================================
   Property (Property Editor Properties)
   ========================================================================== */
/**
 * Property Component
 *
 * This is a property that is used within the context of a property editor to
 * provide a label and input field.
 *
 * Example HTML:
 *
 * <div class="a-Property">
 *   <div class="a-Property-labelContainer">
 *     <label class="a-Property-label">Label</label>
 *   </div>
 *   <div class="a-Property-fieldContainer">
 *     <input type="text" class="a-Property-field">
 *   </div>
 * </div>
 */
.a-Property {
  display: table;
  padding: 0;
  margin: 0;
  table-layout: auto;
  width: 100%;
  position: relative; }

.a-Property .a-Icon.icon-required {
  display: none; }

.a-Property-buttonContainer,
.a-Property-labelContainer,
.a-Property-unitContainer {
  display: table-cell;
  vertical-align: middle; }

.a-Property-labelContainer {
  min-width: 112px;
  padding-right: 0; }

#templateOptionsDlgPE .a-Property-labelContainer {
  min-width: 144px; }

.a-PropertyEditor--stacked .a-Property:not(.a-Property--stacked) .a-Property-labelContainer {
  width: 100%;
  display: table-row; }

.a-Property-fieldContainer {
  display: table-cell;
  width: 100%;
  vertical-align: middle; }

.a-Property-fieldContainer--comboBox {
  padding-right: 0 !important; }

.a-Property-buttonContainer--comboBox .a-Button {
  margin-left: -1px; }

.a-Property-colorPreview {
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; }

.a-Property-fieldContainer--colorPicker {
  padding-right: 0 !important; }
  .a-Property-fieldContainer--colorPicker .a-Property-field {
    padding-left: 24px;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important; }
  .a-Property-fieldContainer--colorPicker .a-Property-colorPreview {
    position: absolute;
    margin: 6px;
    pointer-events: none; }

.a-Property-buttonContainer--colorPicker .a-Button {
  margin-left: -1px; }

.a-Property-unitContainer {
  padding-left: 0 !important;
  white-space: nowrap; }

/******************************************************************************
Radio
******************************************************************************/
.a-Property-radioGroup:focus {
  outline: none; }

.a-Property-radio {
  display: inline-block; }

.a-Property-radio-input {
  margin: 2px;
  height: 16px;
  width: 16px;
  vertical-align: top;
  display: inline-block; }

.a-Property-radio-label {
  padding: 2px;
  font-size: 12px;
  vertical-align: top;
  display: inline-block; }

.a-Property-fieldContainer--radioGroup {
  padding-top: 6px;
  padding-bottom: 6px; }

/******************************************************************************
Yes / No Radios
******************************************************************************/
.a-Property-radioGroup--yesNo {
  *zoom: 1; }
  .a-Property-radioGroup--yesNo:before, .a-Property-radioGroup--yesNo:after {
    content: " ";
    display: table; }
  .a-Property-radioGroup--yesNo:after {
    clear: both; }
  .a-Property-radioGroup--yesNo .a-Property-radio {
    float: left; }
  .a-Property-radioGroup--yesNo .a-Property-radio-input {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px; }
    .a-Property-radioGroup--yesNo .a-Property-radio-input:disabled + label {
      opacity: .5; }
  .a-Property-radioGroup--yesNo .a-Property-radio-input + label {
    min-width: 48px;
    text-align: center;
    border-radius: 2px;
    line-height: 20px; }

/******************************************************************************
Stacked Properties
******************************************************************************/
.a-Property--stacked {
  position: relative; }
  .a-Property--stacked .a-Property-labelContainer,
  .a-Property--stacked .a-Property-fieldContainer {
    display: block; }
  .a-Property--stacked .a-Property-labelContainer {
    padding-bottom: 0;
    margin-right: 64px; }
  .a-Property--stacked .a-Property-fieldContainer {
    padding-top: 0; }
  .a-Property--stacked .a-Property-buttonContainer {
    position: absolute;
    top: 0;
    right: 0; }
    .a-Property--stacked .a-Property-buttonContainer + .a-Property-fieldContainer {
      padding-top: 4px; }
    .a-Property--stacked .a-Property-buttonContainer .a-Button--quickPick {
      margin-left: 8px; }

.a-Property--scrollable {
  display: block;
  overflow: auto; }

.a-Property-labelContainer--withButtons {
  table-layout: auto;
  display: table-cell;
  padding-bottom: 8px; }

.a-Property-labelContainer--hiddenLabel {
  padding: 0; }

.a-Property-buttonContainer {
  padding-left: 0 !important; }

.a-Property-buttonContainer--pullRight {
  float: right; }

.a-Property.is-changed .a-Property-labelContainer:before {
  content: '';
  width: 0;
  height: 0;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  background: transparent;
  border-style: solid;
  border-color: #2D7BBB transparent transparent #2D7BBB;
  border-width: 3px; }

.a-Property-label,
.a-Property-unit {
  display: block;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis; }

.a-Property-field {
  display: block;
  background-clip: border-box;
  border: none;
  width: 100%; }

.a-Property-field--textarea {
  min-height: 48px;
  font-family: 'Menlo', 'Consolas', monospace, serif;
  resize: vertical; }

/******************************************************************************
Hide/Show Classes
******************************************************************************/
.a-Property.js-showAll,
.a-PropertyEditor-propertyGroup.js-showAll {
  display: none; }

.a-PropertyEditor.js-showAll .a-Property.js-showAll,
.a-PropertyEditor.js-showAll .a-PropertyEditor-propertyGroup.js-showAll {
  display: block; }

.a-PropertyEditor--stacked.js-showAll .a-Property.js-showAll {
  display: table; }

/******************************************************************************
Variable Field
******************************************************************************/
/******************************************************************************
Checkbox
******************************************************************************/
.a-Property-checkboxGroup:focus {
  outline: none; }

.a-Property-checkbox-input {
  margin: 2px;
  height: 16px;
  width: 16px;
  vertical-align: top;
  display: inline-block; }

.a-Property-checkbox-label {
  padding: 2px;
  font-size: 12px;
  vertical-align: top;
  display: inline-block; }

/******************************************************************************
Set Items Table
******************************************************************************/
.a-Property-setItemsTable {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse; }
  .a-Property-setItemsTable td {
    padding-bottom: 4px; }
  .a-Property-setItemsTable tr:last-child td {
    padding-bottom: 0; }

.a-Property-setItemsHeader-header {
  text-align: left; }

.a-Property-setItemsTable-removeCol {
  width: 40px; }

/******************************************************************************
Property Editor in Dialogs
******************************************************************************/
/******************************************************************************
Property Editor Buttons
******************************************************************************/
.a-Button.a-Property-button {
  width: 100%;
  white-space: normal;
  padding-top: 6px;
  padding-bottom: 6px; }

/******************************************************************************
Stacked Styles
******************************************************************************/
.a-PropertyEditor--stacked .a-Property-labelContainer .a-Property-label {
  padding-bottom: 2px;
  padding-left: 12px;
  padding-right: 12px;
  font-size: 11px; }

.a-PropertyEditor--stacked .a-Property-fieldContainer,
.a-PropertyEditor--stacked .a-Property-buttonContainer {
  padding-top: 0;
  padding-bottom: 8px; }

.a-PropertyEditor--stacked .a-Property--stacked .a-Property-buttonContainer {
  padding-top: 4px;
  padding-bottom: 4px; }

.a-PropertyEditor--stacked .a-Property--stacked .a-Property-labelContainer .a-Property-label {
  padding: 4px 0; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByb3BlcnR5LnNjc3MiLCIuLi9tb2R1bGVzL19jb21tb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQTs7Z0ZBRWdGO0FBRWhGOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBRUg7RUFDQyxlQUFlO0VBQ2YsV0FBVztFQUNYLFVBQVU7RUFDVixtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLG1CQUFtQixFQUNuQjs7QUFDRDtFQU1FLGNBQWMsRUFDZjs7QUFDRDs7O0VBR0Msb0JBQW9CO0VBQ3BCLHVCQUF1QixFQUN2Qjs7QUFDRDtFQUNDLGlCQUFpQjtFQUNqQixpQkFBaUIsRUFDakI7O0FBQ0Q7RUFDRSxpQkFBaUIsRUFDbEI7O0FBR0Q7RUFDRSxZQUFZO0VBQ1osbUJBQW1CLEVBQ3BCOztBQUNEO0VBQ0Msb0JBQW9CO0VBQ3BCLFlBQVk7RUFDWCx1QkFBdUIsRUFDeEI7O0FBQ0Q7RUFDQyw0QkFBNEIsRUFLNUI7O0FBQ0Q7RUFFSSxrQkFBa0IsRUFDbkI7O0FBR0g7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLGFBQWE7RUFDYixvQkFBb0I7RUFDcEIsK0NBQTJDLEVBQzVDOztBQUdEO0VBQ0UsNEJBQTRCLEVBVzdCO0VBWkQ7SUFHSSxtQkFBbUI7SUFDbkIsc0NBQXNDO0lBQ3RDLHlDQUF5QyxFQUMxQztFQU5IO0lBUUksbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixxQkFBcUIsRUFDdEI7O0FBRUg7RUFFSSxrQkFBa0IsRUFDbkI7O0FBSUg7RUFDQywyQkFBMkI7RUFDM0Isb0JBQW9CLEVBQ3BCOztBQUdEOzsrRUFFK0U7QUFJL0U7RUFDQyxjQUFjLEVBQ2Q7O0FBQ0Q7RUFDRSxzQkFBc0IsRUFDdkI7O0FBQ0Q7RUFDSSxZQUFZO0VBQ1osYUFBYTtFQUNiLFlBQVk7RUFDWixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQ3pCOztBQUNEO0VBQ0ksYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQ3pCOztBQUNEO0VBQ0MsaUJBQWlCO0VBQ2pCLG9CQUFvQixFQUNwQjs7QUFJRDs7K0VBRStFO0FBRS9FO0dDdkhHLFFBQVMsRURnSlg7RUF6QkQ7SUM3SE8sYUFBYTtJQUNiLGVBQWUsRUFDbEI7RUQySEo7SUN6SE8sWUFBWSxFQUNmO0VEd0hKO0lBR0ksWUFBWSxFQUNiO0VBSkg7SUNwR0UsVUFBVTtJQUNWLG9CQUFVO0lBQ1YsWUFBWTtJQUNaLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsV0FBVztJQUNYLG1CQUFtQjtJQUNuQixXQUFXLEVEK0dWO0lBbEJIO01BZ0JNLFlBQVksRUFDYjtFQWpCTDtJQW9CSSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixrQkFBa0IsRUFDbkI7O0FBR0g7OytFQUUrRTtBQUUvRTtFQUNDLG1CQUFtQixFQXdCbkI7RUF6QkQ7O0lBSUUsZUFBZSxFQUVmO0VBTkY7SUFRRSxrQkFBa0I7SUFDbEIsbUJBQW1CLEVBQ25CO0VBVkY7SUFZRSxlQUFlLEVBQ2Y7RUFiRjtJQWVFLG1CQUFtQjtJQUNuQixPQUFPO0lBQ1AsU0FBUyxFQU9UO0lBeEJGO01BbUJHLGlCQUFpQixFQUNqQjtJQXBCSDtNQXNCTSxpQkFBaUIsRUFDbEI7O0FBR0w7RUFDQyxlQUFlO0VBQ2YsZUFBZSxFQUNmOztBQUVEO0VBQ0MsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUVwQixvQkFBb0IsRUFDcEI7O0FBRUQ7RUFDQyxXQUFXLEVBQ1g7O0FBR0Q7RUFDQywyQkFBMkIsRUFJM0I7O0FBQ0Q7RUFDQyxhQUFhLEVBQ2I7O0FBUUQ7RUFFSSxZQUFZO0VBQ1osU0FBUztFQUNULFVBQVU7RUFDVixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLE9BQU87RUFDUCxRQUFRO0VBQ1Isd0JBQXdCO0VBQ3hCLG9CQUFvQjtFQUNwQixzREFBc0Q7RUFDdEQsa0JBQWtCLEVBQ25COztBQU1IOztFQUVDLGVBQWU7RUFHZixpQkFBaUI7RUFDakIsNEJBQTRCO0VBQzVCLHdCQUF3QixFQUN4Qjs7QUFDRDtFQUNDLGVBQWU7RUFDZiw0QkFBNEI7RUFFNUIsYUFBYTtFQUNiLFlBQVksRUFDWjs7QUFDRDtFQUVDLGlCQUFpQjtFQUNqQixtREFBbUQ7RUFDbkQsaUJBQWlCLEVBQ2pCOztBQUVEOzsrRUFFK0U7QUFDL0U7O0VBRUUsY0FBYyxFQUNmOztBQUVEOztFQUVFLGVBQ0QsRUFBQzs7QUFDRjtFQUNDLGVBQWUsRUFDZjs7QUFFRDs7K0VBRStFO0FBSS9FOzsrRUFFK0U7QUFDL0U7RUFDQyxjQUFjLEVBQ2Q7O0FBQ0Q7RUFDSSxZQUFZO0VBQ1osYUFBYTtFQUNiLFlBQVk7RUFDWixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQ3pCOztBQUNEO0VBQ0ksYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQ3pCOztBQUVEOzsrRUFFK0U7QUFDL0U7RUFDQyxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLDBCQUEwQixFQU8xQjtFQVZEO0lBS0Usb0JBQW9CLEVBQ3BCO0VBTkY7SUFRRSxrQkFBa0IsRUFDbEI7O0FBR0Y7RUFDQyxpQkFBaUIsRUFDakI7O0FBRUQ7RUFDQyxZQUFZLEVBQ1o7O0FBR0Q7OytFQUUrRTtBQU8vRTs7K0VBRStFO0FBQy9FO0VBQ0UsWUFBWTtFQUNaLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsb0JBQW9CLEVBQ3JCOztBQUdEOzsrRUFFK0U7QUFDL0U7RUFFSSxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixnQkFBZ0IsRUFDakI7O0FBTkg7O0VBU0ksZUFBZTtFQUNmLG9CQUFvQixFQUNyQjs7QUFYSDtFQWFJLGlCQUFpQjtFQUNqQixvQkFBb0IsRUFDckI7O0FBZkg7RUFpQkksZUFBZSxFQUNoQiIsImZpbGUiOiJQcm9wZXJ0eS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS1cbi8vIEltcG9ydCBDb21wYXNzXG4vLyAtLS1cbkBpbXBvcnQgXCIuLi9tb2R1bGVzL2NvbW1vblwiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUHJvcGVydHkgKFByb3BlcnR5IEVkaXRvciBQcm9wZXJ0aWVzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBQcm9wZXJ0eSBDb21wb25lbnRcbiAqXG4gKiBUaGlzIGlzIGEgcHJvcGVydHkgdGhhdCBpcyB1c2VkIHdpdGhpbiB0aGUgY29udGV4dCBvZiBhIHByb3BlcnR5IGVkaXRvciB0b1xuICogcHJvdmlkZSBhIGxhYmVsIGFuZCBpbnB1dCBmaWVsZC5cbiAqXG4gKiBFeGFtcGxlIEhUTUw6XG4gKlxuICogPGRpdiBjbGFzcz1cImEtUHJvcGVydHlcIj5cbiAqICAgPGRpdiBjbGFzcz1cImEtUHJvcGVydHktbGFiZWxDb250YWluZXJcIj5cbiAqICAgICA8bGFiZWwgY2xhc3M9XCJhLVByb3BlcnR5LWxhYmVsXCI+TGFiZWw8L2xhYmVsPlxuICogICA8L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cImEtUHJvcGVydHktZmllbGRDb250YWluZXJcIj5cbiAqICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImEtUHJvcGVydHktZmllbGRcIj5cbiAqICAgPC9kaXY+XG4gKiA8L2Rpdj5cbiAqL1xuXG4uYS1Qcm9wZXJ0eSB7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdHRhYmxlLWxheW91dDogYXV0bztcblx0d2lkdGg6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hLVByb3BlcnR5IC5hLUljb24uaWNvbi1yZXF1aXJlZCB7XG5cdC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ly8gdG9wOiAwO1xuXHQvLyBsZWZ0OiAwO1xuXG4gIC8vIEhpZGluZyBpbiA1LjFcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5hLVByb3BlcnR5LWJ1dHRvbkNvbnRhaW5lcixcbi5hLVByb3BlcnR5LWxhYmVsQ29udGFpbmVyLFxuLmEtUHJvcGVydHktdW5pdENvbnRhaW5lciB7XG5cdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uYS1Qcm9wZXJ0eS1sYWJlbENvbnRhaW5lciB7XG5cdG1pbi13aWR0aDogMTEycHg7XG5cdHBhZGRpbmctcmlnaHQ6IDA7XG59XG4jdGVtcGxhdGVPcHRpb25zRGxnUEUgLmEtUHJvcGVydHktbGFiZWxDb250YWluZXIge1xuICBtaW4td2lkdGg6IDE0NHB4O1xufVxuXG4vLyBTdGFja2luZyBMYWJlbCBDb250YWluZXJcbi5hLVByb3BlcnR5RWRpdG9yLS1zdGFja2VkIC5hLVByb3BlcnR5Om5vdCguYS1Qcm9wZXJ0eS0tc3RhY2tlZCkgLmEtUHJvcGVydHktbGFiZWxDb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogdGFibGUtcm93O1xufVxuLmEtUHJvcGVydHktZmllbGRDb250YWluZXIge1xuXHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHR3aWR0aDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5hLVByb3BlcnR5LWZpZWxkQ29udGFpbmVyLS1jb21ib0JveCB7XG5cdHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0LmEtUHJvcGVydHktZmllbGQge1xuXHRcdC8vIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdFx0Ly8gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcblx0fVxufVxuLmEtUHJvcGVydHktYnV0dG9uQ29udGFpbmVyLS1jb21ib0JveCB7XG4gIC5hLUJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuLmEtUHJvcGVydHktY29sb3JQcmV2aWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJveC1zaGFkb3c6ICAwIDAgMCAxcHggcmdiYSgwLDAsMCwuMSkgaW5zZXQ7XG59XG5cbi8vIENvbG9yIFBpY2tlclxuLmEtUHJvcGVydHktZmllbGRDb250YWluZXItLWNvbG9yUGlja2VyIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAuYS1Qcm9wZXJ0eS1maWVsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuYS1Qcm9wZXJ0eS1jb2xvclByZXZpZXcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW46IDZweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuLmEtUHJvcGVydHktYnV0dG9uQ29udGFpbmVyLS1jb2xvclBpY2tlciB7XG4gIC5hLUJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGxlZnQgcGFkZGluZyB0byByZW1vdmUgZXh0cmEgZ2FwIGZyb20gZmllbGRcbi5hLVByb3BlcnR5LXVuaXRDb250YWluZXIge1xuXHRwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5SYWRpb1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLy8gLmEtUHJvcGVydHktcmFkaW9Hcm91cC51aS1idXR0b25zZXQgLmEtUHJvcGVydHktcmFkaW8ge1xuLy8gXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyB9XG4uYS1Qcm9wZXJ0eS1yYWRpb0dyb3VwOmZvY3VzIHtcblx0b3V0bGluZTogbm9uZTtcbn1cbi5hLVByb3BlcnR5LXJhZGlvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmEtUHJvcGVydHktcmFkaW8taW5wdXQge1xuICAgIG1hcmdpbjogMnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5hLVByb3BlcnR5LXJhZGlvLWxhYmVsIHtcbiAgICBwYWRkaW5nOiAycHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmEtUHJvcGVydHktZmllbGRDb250YWluZXItLXJhZGlvR3JvdXAge1xuXHRwYWRkaW5nLXRvcDogNnB4O1xuXHRwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuLmEtUHJvcGVydHktZmllbGRDb250YWluZXItLXJhZGlvR3JvdXAge1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5ZZXMgLyBObyBSYWRpb3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmEtUHJvcGVydHktcmFkaW9Hcm91cC0teWVzTm8ge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLmEtUHJvcGVydHktcmFkaW8ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5hLVByb3BlcnR5LXJhZGlvLWlucHV0IHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseUhpZGRlbjtcbiAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgfVxuICAgICY6bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgICB9XG4gICAgJjpob3ZlciArIGxhYmVsIHtcbiAgICB9XG4gICAgJjpmb2N1cyArIGxhYmVsIHtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICAgIG9wYWNpdHk6IC41O1xuICAgIH1cbiAgfVxuICAuYS1Qcm9wZXJ0eS1yYWRpby1pbnB1dCArIGxhYmVsIHtcbiAgICBtaW4td2lkdGg6IDQ4cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TdGFja2VkIFByb3BlcnRpZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmEtUHJvcGVydHktLXN0YWNrZWQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdC5hLVByb3BlcnR5LWxhYmVsQ29udGFpbmVyLFxuXHQuYS1Qcm9wZXJ0eS1maWVsZENvbnRhaW5lciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Ly9AaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXHR9XG5cdC5hLVByb3BlcnR5LWxhYmVsQ29udGFpbmVyIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDY0cHg7XG5cdH1cblx0LmEtUHJvcGVydHktZmllbGRDb250YWluZXIge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHR9XG5cdC5hLVByb3BlcnR5LWJ1dHRvbkNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHQmICsgLmEtUHJvcGVydHktZmllbGRDb250YWluZXIge1xuXHRcdFx0cGFkZGluZy10b3A6IDRweDtcblx0XHR9XG4gICAgLmEtQnV0dG9uLS1xdWlja1BpY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG5cdH1cbn1cbi5hLVByb3BlcnR5LS1zY3JvbGxhYmxlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuXG4uYS1Qcm9wZXJ0eS1sYWJlbENvbnRhaW5lci0td2l0aEJ1dHRvbnMge1xuXHR0YWJsZS1sYXlvdXQ6IGF1dG87XG5cdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdC8vIGZsb2F0OiBsZWZ0O1xuXHRwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuXG4uYS1Qcm9wZXJ0eS1sYWJlbENvbnRhaW5lci0taGlkZGVuTGFiZWwge1xuXHRwYWRkaW5nOiAwO1xufVxuXG5cbi5hLVByb3BlcnR5LWJ1dHRvbkNvbnRhaW5lciB7XG5cdHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuXHQvLyAmID4gLmEtQnV0dG9uIHtcblx0Ly8gXHRtYXJnaW4tbGVmdDogLTFweDtcblx0Ly8gfVxufVxuLmEtUHJvcGVydHktYnV0dG9uQ29udGFpbmVyLS1wdWxsUmlnaHQge1xuXHRmbG9hdDogcmlnaHQ7XG59XG5cbi5hLVByb3BlcnR5LmlzLWFjdGl2ZSB7XG59XG4uYS1Qcm9wZXJ0eS5pcy1mb2N1c2VkIHtcbn1cbi5hLVByb3BlcnR5LmlzLXJlcXVpcmVkIHtcbn1cbi5hLVByb3BlcnR5LmlzLWNoYW5nZWQge1xuICAuYS1Qcm9wZXJ0eS1sYWJlbENvbnRhaW5lcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMkQ3QkJCIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyRDdCQkI7XG4gICAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIH1cbn1cblxuXG4vLyBTdWIgQ29tcG9uZW50c1xuXG4uYS1Qcm9wZXJ0eS1sYWJlbCxcbi5hLVByb3BlcnR5LXVuaXQge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ly8gSGlkZGVuIE92ZXJmbG93XG5cdC8vIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIFJlbW92aW5nIHRvIGFsbG93IGxhYmVscyB0byB3cmFwXG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC1tcy10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4uYS1Qcm9wZXJ0eS1maWVsZCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG5cdC8vQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcblx0Ym9yZGVyOiBub25lO1xuXHR3aWR0aDogMTAwJTtcbn1cbi5hLVByb3BlcnR5LWZpZWxkLS10ZXh0YXJlYSB7XG5cdC8vIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRtaW4taGVpZ2h0OiA0OHB4O1xuXHRmb250LWZhbWlseTogJ01lbmxvJywgJ0NvbnNvbGFzJywgbW9ub3NwYWNlLCBzZXJpZjtcblx0cmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuSGlkZS9TaG93IENsYXNzZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5hLVByb3BlcnR5LmpzLXNob3dBbGwsXG4uYS1Qcm9wZXJ0eUVkaXRvci1wcm9wZXJ0eUdyb3VwLmpzLXNob3dBbGwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYS1Qcm9wZXJ0eUVkaXRvci5qcy1zaG93QWxsIC5hLVByb3BlcnR5LmpzLXNob3dBbGwsXG4uYS1Qcm9wZXJ0eUVkaXRvci5qcy1zaG93QWxsIC5hLVByb3BlcnR5RWRpdG9yLXByb3BlcnR5R3JvdXAuanMtc2hvd0FsbCB7XG4gIGRpc3BsYXk6IGJsb2NrXG59XG4uYS1Qcm9wZXJ0eUVkaXRvci0tc3RhY2tlZC5qcy1zaG93QWxsIC5hLVByb3BlcnR5LmpzLXNob3dBbGwge1xuXHRkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuVmFyaWFibGUgRmllbGRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5hLVByb3BlcnR5LWZpZWxkLmlzLXZhcmlhYmxlIHtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQ2hlY2tib3hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5hLVByb3BlcnR5LWNoZWNrYm94R3JvdXA6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xufVxuLmEtUHJvcGVydHktY2hlY2tib3gtaW5wdXQge1xuICAgIG1hcmdpbjogMnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5hLVByb3BlcnR5LWNoZWNrYm94LWxhYmVsIHtcbiAgICBwYWRkaW5nOiAycHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TZXQgSXRlbXMgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5hLVByb3BlcnR5LXNldEl0ZW1zVGFibGUge1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdHRkIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogNHB4O1xuXHR9XG5cdHRyOmxhc3QtY2hpbGQgdGQge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG59XG5cbi5hLVByb3BlcnR5LXNldEl0ZW1zSGVhZGVyLWhlYWRlciB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5hLVByb3BlcnR5LXNldEl0ZW1zVGFibGUtcmVtb3ZlQ29sIHtcblx0d2lkdGg6IDQwcHg7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuUHJvcGVydHkgRWRpdG9yIGluIERpYWxvZ3NcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8vIC51aS1kaWFsb2cgLmEtUHJvcGVydHkge1xuLy8gICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4vLyAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbi8vICAgbWFyZ2luLXRvcDogLTFweDtcbi8vIH1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuUHJvcGVydHkgRWRpdG9yIEJ1dHRvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5hLUJ1dHRvbi5hLVByb3BlcnR5LWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblN0YWNrZWQgU3R5bGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYS1Qcm9wZXJ0eUVkaXRvci0tc3RhY2tlZCB7XG4gIC5hLVByb3BlcnR5LWxhYmVsQ29udGFpbmVyICAuYS1Qcm9wZXJ0eS1sYWJlbHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuICAuYS1Qcm9wZXJ0eS1maWVsZENvbnRhaW5lcixcbiAgLmEtUHJvcGVydHktYnV0dG9uQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICB9XG4gIC5hLVByb3BlcnR5LS1zdGFja2VkIC5hLVByb3BlcnR5LWJ1dHRvbkNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICB9XG4gIC5hLVByb3BlcnR5LS1zdGFja2VkIC5hLVByb3BlcnR5LWxhYmVsQ29udGFpbmVyIC5hLVByb3BlcnR5LWxhYmVsIHtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgfVxufVxuIiwiQG1peGluIHRyYW5zcGFyZW50RGl2aWRlcnMge1xuICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI0ZGRiwuNzUpO1xuICAgICAgdG9wOiAwO1xuICAgfVxuICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLC4xNSk7XG4gICAgICBib3R0b206IDA7XG4gICB9XG4gICAmOmJlZm9yZSxcbiAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICB9XG59XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICAmOmJlZm9yZSxcbiAgICY6YWZ0ZXIge1xuICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgfVxuICAgJjphZnRlciB7XG4gICAgICAgY2xlYXI6IGJvdGg7XG4gICB9XG4gICAqem9vbTogMTtcbn1cblxuQG1peGluIGFwZXg1aWNvbiB7XG4gIGZvbnQtZmFtaWx5OiBcImFwZXgtNS1pY29uLWZvbnRcIiAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG59XG5cbkBtaXhpbiB2aXN1YWxseUhpZGRlbiB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG5AbWl4aW4gbm9XcmFwVGV4dCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBAbWl4aW4gY2xlYXJmaXgyIHtcbi8vICAgICB6b29tOjE7XG4vLyAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuLy8gICAgICAgICBjb250ZW50OiBcIlxcMDAyMFwiOyBcbi8vICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuLy8gICAgICAgICBoZWlnaHQ6IDA7IFxuLy8gICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcbi8vICAgICB9XG4vLyAgICAgJjphZnRlciB7XG4vLyAgICAgICAgIGNsZWFyOiBib3RoO1xuLy8gICAgIH1cbi8vIH1cblxuLy8gLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gU3ByaXRlIE1peGluXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5AbWl4aW4gcGRTcHJpdGUoJHNpemUsICR4LCAkeSwgJHdpZHRoOiAwLCAkaGVpZ2h0OiAwLCAkaW1wOiAnJykge1xuICAkb2Zmc2V0OiAwO1xuICBAaWYgJHNpemUgPT0gMTYge1xuICAgICRvZmZzZXQ6IDIwO1xuICB9IEBlbHNlIGlmICRzaXplID09IDIwIHtcbiAgICAkb2Zmc2V0OiAxNTA7XG4gIH0gQGVsc2UgaWYgJHNpemUgPT0gMjQge1xuICAgICRvZmZzZXQ6IDI3MDtcbiAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAzMiB7XG4gICAgJG9mZnNldDogMzcwO1xuICB9IEBlbHNlIGlmICRzaXplID09IDM2IHtcbiAgICAkb2Zmc2V0OiA1NjA7XG4gIH0gQGVsc2UgaWYgJHNpemUgPT0gNjQge1xuICAgICRvZmZzZXQ6IC0xOyAvLzc0MFxuICB9IEBlbHNlIHtcbiAgICAkb2Zmc2V0OiAwO1xuICB9XG4gIFxuICBAaWYgJHdpZHRoICE9IDAge1xuICAgIHdpZHRoOiAjeyR3aWR0aH1weDtcbiAgfVxuICBAaWYgJGhlaWdodCAhPSAwIHtcbiAgICBoZWlnaHQ6ICN7JGhlaWdodH1weDtcbiAgfVxuICBAaWYgJG9mZnNldCA+IDAge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0jeyR4KiRzaXplfXB4IC0jeygkeSokc2l6ZSkrJG9mZnNldH1weCAjeyRpbXB9O1xuICB9IEBlbHNlIGlmICRvZmZzZXQgPT0gLTEge1xuICAgIC8vIFdpemFyZCBYLVBvc2l0aW9uIGlzIDUwJVxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAtI3soJHkqJHNpemUpKzc0MH1weCAjeyRpbXB9O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtI3skeH1weCAtI3soJHkpfXB4ICN7JGltcH07XG4gIH1cbn1cblxuLy8gLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gRXh0ZW5kaWJsZSBTcHJpdGUgQ2xhc3Ncbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiVwZFNwcml0ZSB7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvYXBleF81X3VpLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vLyAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBNZWRpYSBRdWVyaWVzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4kZGlzcGxheS14eHhzOiA2NDBweDtcbiRkaXNwbGF5LXh4czogODAwcHg7XG4kZGlzcGxheS14czogMTAyNHB4O1xuJGRpc3BsYXktc21hbGw6IDEyODBweDtcbiRkaXNwbGF5LW1lZGl1bTogMTY4MHB4O1xuJGRpc3BsYXktbGFyZ2U6IDE5MjBweDtcblxuQG1peGluIHJlc3BvbmQtdG8oJG1lZGlhKSB7XG4gIEBpZiAkbWVkaWEgPT0geHh4cy1zY3JlZW5zIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkaXNwbGF5LXh4eHMpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAaWYgJG1lZGlhID09IHh4cy1zY3JlZW5zIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkaXNwbGF5LXh4cykgeyBAY29udGVudDsgfVxuICB9XG4gIEBpZiAkbWVkaWEgPT0gc21hbGxlc3Qtc2NyZWVucyB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGlzcGxheS14cykgeyBAY29udGVudDsgfVxuICB9XG4gIEBpZiAkbWVkaWEgPT0gc21hbGwtc2NyZWVucy1pbiB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGlzcGxheS1zbWFsbCkgeyBAY29udGVudDsgfVxuICB9XG4gIEBpZiAkbWVkaWEgPT0gbWVkaXVtLXNjcmVlbnMtaW4ge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRpc3BsYXktbWVkaXVtKSB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGlmICRtZWRpYSA9PSBsYXJnZS1zY3JlZW5zLWluIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkaXNwbGF5LWxhcmdlKSB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGlmICRtZWRpYSA9PSBzbWFsbC1zY3JlZW5zLW91dCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZGlzcGxheS1zbWFsbCArIDEpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAaWYgJG1lZGlhID09IG1lZGl1bS1zY3JlZW5zLW91dCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZGlzcGxheS1tZWRpdW0gKyAxKSB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGlmICRtZWRpYSA9PSBsYXJnZS1zY3JlZW5zLW91dCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZGlzcGxheS1sYXJnZSArIDEpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSBpZiAkbWVkaWEgPT0gc21hbGwtc2NyZWVucyB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZGlzcGxheS14cyArIDEpIGFuZCAobWF4LXdpZHRoOiAkZGlzcGxheS1zbWFsbCAtIDEpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSBpZiAkbWVkaWEgPT0gbWVkaXVtLXNjcmVlbnMge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGRpc3BsYXktc21hbGwgKyAxKSBhbmQgKG1heC13aWR0aDogJGRpc3BsYXktbWVkaXVtIC0gMSkgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIGlmICRtZWRpYSA9PSBsYXJnZS1zY3JlZW5zIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkaXNwbGF5LW1lZGl1bSArIDEpIGFuZCAobWF4LXdpZHRoOiAkZGlzcGxheS1sYXJnZSAtIDEpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSBpZiAkbWVkaWEgPT0gbGFyZ2VzdC1zY3JlZW5zIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkaXNwbGF5LWxhcmdlKSB7IEBjb250ZW50OyB9XG4gIH1cbn1cblxuXG4vLyAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBFeHRlbmRpYmxlIEljb24gQ2xhc3Ncbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiVhLUljb24ge1xuICBmb250LWZhbWlseTogXCJhcGV4LTUtaWNvbi1mb250XCIgIWltcG9ydGFudDtcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1peGluIHNoYWRvd1Njcm9sbCgkc2l6ZTogNCwgJGJnOiAjRkZGRkZGKSB7XG4gICRzaGFkb3dTbWFsbDogJHNpemUgKyBcInB4XCI7XG4gICRzaGFkb3dCaWc6ICAgJHNpemUgKiAyICsgXCJweFwiO1xuICAkYm9keUJHOiAgICAgICRiZztcbiAgYmFja2dyb3VuZDpcbiAgICBsaW5lYXItZ3JhZGllbnQoJGJvZHlCRyAzMCUsIHJnYmEoJGJvZHlCRywwKSksXG4gICAgbGluZWFyLWdyYWRpZW50KHJnYmEoJGJvZHlCRywwKSwgJGJvZHlCRyA3MCUpIDAgMTAwJSxcbiAgICBcbiAgICBsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuMDI1KSwgcmdiYSgwLDAsMCwwKSksXG4gICAgbGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsMCksIHJnYmEoMCwwLDAsLjAyNSkpIDAgMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHlCRztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlICRzaGFkb3dCaWcsIDEwMCUgJHNoYWRvd0JpZywgMTAwJSAkc2hhZG93U21hbGwsIDEwMCUgJHNoYWRvd1NtYWxsO1xuICBcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBsb2NhbCwgbG9jYWwsIHNjcm9sbCwgc2Nyb2xsO1xufSJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */
