@charset "UTF-8";
@font-face {
  font-family: "Helvetica Neue";
  src: url("/assets/fonts/helveticaneue-condensed-webfont.woff2") format("woff2"), url("/assets/fonts/helveticaneue-condensed-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
.gifWrap {
  text-align: center;
  width: 100%;
}

.gifLogo {
  height: 200px;
}

#angularContentHolder {
  margin-top: 0 !important;
}

.resopens {
  padding-left: 0;
}

#resopens2 {
  padding-left: 0;
}

#pvr-tiles2 {
  padding: 0 0 !important;
  box-shadow: none;
}

#pvr-tiles2 div {
  box-shadow: none;
}

body.slim #pvr-tiles2 .ui.grid.segment > .column:not(.row) {
  margin-bottom: 0.3em;
  margin-top: 0.3em;
}

body.slim #pvr-tiles2 .ui.divider {
  display: none;
}

body.slim #pvr-tiles2 .pvr-tile .column {
  width: 100% !important;
}

body.slim #pvr-tiles2 .pvr-tile .column .sub-header {
  display: inline-block;
}

body.slim #pvr-tiles2 .pvr-tile .column .sub-header:not(:last-child):after {
  content: "|";
  margin-left: 1.1em;
  margin-right: 1em;
}

body.slim #pvr-tiles2 .pvr-tile .column.ten.wide .header {
  display: inline-block;
  margin-right: 2em;
  margin-bottom: 0;
}

body.slim #pvr-tiles2 .pvr-tile .column.ten.wide .sub-header:after {
  display: none;
}

body.slim #pvr-tiles2 .pvr-tile .column.ten.wide .slim.divider {
  margin: 0.1rem 0;
  display: block;
}

body.beefy #pvr-tiles2 .pvr-tile .column {
  font-size: 1.2rem;
}

#pvr-tiles2 .pvr-tile {
  padding-left: 0 !important;
}

#pvr-tiles2 .pvr-tile .column {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

#pvr-tiles2 .pvr-tile .column.six.wide {
  border-top: 0;
  padding-top: 0 !important;
}

#pvr-tiles2 .pvr-tile .ui.divider {
  margin-right: 2.5rem;
}

#pvr-tiles2 .pvr-tile .ui .segment {
  box-shadow: none !important;
}

.pvr-tile2 {
  box-shadow: none !important;
  padding: 0 0 !important;
}

body #pvr-pag, body #pvr-tiles, body #pvr-wrap {
  padding: 0;
}

body #pvr-wrap > div {
  padding-bottom: 10px;
}

.pvrFormPriceWarning {
  background-color: rgba(255, 0, 0, 0.3) !important;
}

.cronEmailsOn {
  color: green;
}

.cronEmailsOff {
  color: red;
}

.pvrFormFieldDiv {
  min-width: 160px !important;
}

.pvrProductsTable {
  font-size: 10px !important;
}

.pvrProductsTable th {
  background-color: #2DB374 !important;
  color: white !important;
}

.pvrProductsTable tr:nth-child(even) {
  background-color: #111 !important;
  color: white !important;
}

.pvrProductsTable tr:nth-child(odd) {
  background-color: #333 !important;
  color: white !important;
}

.pvrProductsTable tr:hover {
  background-color: #6AEC92 !important;
  color: black !important;
}

.text-danger {
  color: #cc0000;
}

.notes-warning-div {
  color: #cc0000;
  background-color: white;
  padding: 4px;
  margin-top: 4px;
  text-transform: none;
}

.validation-check {
  height: 22px !important;
  width: auto !important;
}

.validation-check.large {
  font-size: 2em;
  line-height: 0.5em;
}

.validation-check.green {
  color: #2db475 !important;
  text-shadow: 0px 0px 1px #000;
}

.validation-check.red {
  color: #e00 !important;
  text-shadow: 0px 0px 1px #000;
}

.validation-check.orange {
  color: orange !important;
  text-shadow: 0px 0px 1px #000;
}

.validation-check.yellow {
  --color:#e8ec01 !important;
  color: yellow !important;
  text-shadow: 0px 0px 1px #000;
}

.dashboard-order-header {
  font-size: 13px !important;
  min-width: 185px !important;
}

a.red:link {
  color: #cc0000;
  text-decoration: none;
}

a.red:visited {
  color: #cc0000;
  text-decoration: none;
}

a.red:hover {
  color: #cc0000;
  text-decoration: underline;
}

a.green:link {
  color: #00cc00;
  text-decoration: none;
}

a.green:visited {
  color: #00cc00;
  text-decoration: none;
}

a.green:hover {
  color: #00cc00;
  text-decoration: underline;
}

a.yellow:link {
  color: #cccc00;
  text-decoration: none;
}

a.yellow:visited {
  color: #cccc00;
  text-decoration: none;
}

a.yellow:hover {
  color: #cccc00;
  text-decoration: underline;
}

a.black:link {
  color: #666;
  text-decoration: none;
}

a.black:visited {
  color: #666;
  text-decoration: none;
}

a.black:hover {
  color: #666;
  text-decoration: underline;
}

.box {
  border: 2px solid;
  border-radius: 0.25rem;
  padding: 0.25rem;
  margin: 0.25rem;
}

table.box-td {
  border-spacing: 0 0.25rem;
}

td.box-td {
  border: 2px solid;
  border-left: 0;
  padding: 0.25rem;
  margin: 0.25rem 0;
}
td.box-td:first-child {
  border-left: 2px solid;
  border-radius: 0.25rem 0 0 0.25rem;
}
td.box-td:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.alert-neutral {
  color: #000 !important;
  accent-color: #000 !important;
  background-color: #FFF !important;
  border-color: #555 !important;
  font-weight: normal;
}

.alert-danger {
  color: #721c24 !important;
  accent-color: #721c24 !important;
  background-color: #f8d7da !important;
  border-color: #721c24 !important;
  font-weight: bold;
}

.alert-warning {
  color: #856404 !important;
  accent-color: #856404 !important;
  background-color: #fff3cd !important;
  border-color: #856404 !important;
}

.alert-success {
  color: #155724 !important;
  accent-color: #155724 !important;
  background-color: #d4edda !important;
  border-color: #c3e6cb !important;
}

/* filter and pagination */
.pvr-pag-div .ui button, .order-filters.ui button,
body .pvr-pag-div .ui.label, .order-filters.ui .label {
  font-size: 0.7rem;
}

.product.accordion .accordion-content .header {
  color: #1b6d47;
  padding-top: 0.5em;
}
.product.accordion .accordion-content .field-grid {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  text-align: center;
}
.product.accordion .accordion-content .field-grid label {
  display: block;
  text-align: center;
  font-size: 0.8em;
}
.product.accordion .accordion-content .field-grid > * {
  flex-basis: 80px;
  flex-grow: 1;
  flex-shrink: 0;
  display: block !important;
  width: 25%;
  float: none !important;
}

.semantic {
  /*
  * # Semantic UI - 1.11.5
  * 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 'https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic&subset=latin';
  /*!
   * # Semantic UI 1.11.5 - Reset
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Reset
  *******************************/
  /* Border-Box */
  /* iPad Input Shadows */
  /*******************************
           Theme Overrides
  *******************************/
  /*! normalize.css v3.0.1 | MIT License | git.io/normalize */
  /**
   * Correct `block` display not defined in IE 8/9.
   */
  /*! normalize.css v3.0.1 | MIT License | git.io/normalize */
  /**
   * 1. Set default font family to sans-serif.
   * 2. Prevent iOS text size adjust after orientation change, without disabling
   *    user zoom.
   */
  /**
   * Remove default margin.
   */
  /* HTML5 display definitions
     ========================================================================== */
  /**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
  /**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
  /**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
  /**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
   */
  /* Links
     ========================================================================== */
  /**
   * Remove the gray background color from active links in IE 10.
   */
  /**
   * Improve readability when focused and also mouse hovered in all browsers.
   */
  /* Text-level semantics
     ========================================================================== */
  /**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
  /**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
  /**
   * Address styling not present in Safari and Chrome.
   */
  /**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
  /**
   * Address styling not present in IE 8/9.
   */
  /**
   * Address inconsistent and variable font size in all browsers.
   */
  /**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
  /* Embedded content
     ========================================================================== */
  /**
   * Remove border when inside `a` element in IE 8/9/10.
   */
  /**
   * Correct overflow not hidden in IE 9/10/11.
   */
  /* Grouping content
     ========================================================================== */
  /**
   * Address margin not present in IE 8/9 and Safari.
   */
  /**
   * Address differences between Firefox and other browsers.
   */
  /**
   * Contain overflow in all browsers.
   */
  /**
   * Address odd `em`-unit font size rendering in all browsers.
   */
  /* Forms
     ========================================================================== */
  /**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
  /**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
  /**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
  /**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
  /**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
  /**
   * Re-set default cursor for disabled elements.
   */
  /**
   * Remove inner padding and border in Firefox 4+.
   */
  /**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
  /**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
  /**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
  /**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
   *    (include `-moz` to future-proof).
   */
  /**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
  /**
   * Define consistent border, margin, and padding.
   */
  /**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
  /**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
  /**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
  /* Tables
     ========================================================================== */
  /**
   * Remove most spacing between table cells.
   */
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI - Site
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Page
  *******************************/
  /*******************************
               Headers
  *******************************/
  /*******************************
               Text
  *******************************/
  /*-------------------
          Links
  --------------------*/
  /*******************************
            Highlighting
  *******************************/
  /* Site */
  /* Form */
  /*******************************
          Global Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /* Sidebar 
  ----------*/
  /* Order column/tiles
  ---------------------*/
  /* Display Modes
  ----------------*/
  /*@media screen and (max-width: 767px) {
    html,
    body {
      overflow-y: visible;
    }

    #nav-wrap {
      z-index: 10;
      position: relative;
    }

    #nav-wrap #top-nav .item:not(.brand) {
      float: right;
    }

    #nav-wrap #nav-tiles-wrap {
      padding-left: 2.5rem;
    }

    #nav-wrap #nav-tiles-wrap #main-menu .item {
      width: 50%;
      margin-bottom: 0.2rem;
      min-height: inherit;
    }

    #pvr-pag {
      padding: 0.25rem 1rem !important;
    }

    #pvr-tiles {
      padding: 0 0 !important;
    }

    #pvr-tiles .pvr-tile {
      padding-left: 2.5rem !important;
    }

    #pvr-tiles .pvr-tile .column {
      padding-left: 1rem !important;
      padding-right: 1rem !important;
    }

    #pvr-tiles .pvr-tile .column.six.wide {
      border-top: 0;
      padding-top: 0 !important;
    }

    #pvr-tiles .pvr-tile .ui.divider {
      margin-right: 2.5rem;
    }

    #pvr-wrap {
      display: none !important;
      background-color: rgba(255, 255, 255, 0.95);
      padding-right: 0.35rem;
      height: 100% !important;
      margin-top: 0 !important;
    }

    #pvr-wrap .modal-close {
      display: inline-block;
      padding-right: 1.5em;
    }

    #pvr-wrap .modal-close:hover:before {
      color: #4c4f52;
    }

    #sidebar {
      position: fixed;
    }

    .sidebar-tab {
      position: fixed;
      z-index: 1;
    }

    .pusher .column.scrolly {
      overflow-y: visible;
    }

    #scrollWrap {
      padding-left: 1rem;
      padding-right: 1rem;
    }
  }*/
  /*!
   * # Semantic UI 1.11.5 - Button
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * 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-color: #e0e0e0;
    color: rgba(0, 0, 0, 0.6);
    font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
    margin: 0em 0.25em 0em 0em;
    padding: 0.78571em 1.5em 0.78571em;
    text-transform: none;
    text-shadow: none;
    font-weight: bold;
    line-height: 1;
    font-style: normal;
    text-align: center;
    text-decoration: none;
    background-image: none;
    border-radius: 0;
    box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;
    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
  ---------------*/
  /*--------------
        Focus
  ---------------*/
  /*--------------
        Down
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*--------------
      Loading
  ---------------*/
  /* Specificity hack */
  /*-------------------
        Disabled
  --------------------*/
  /* Basic Group With Disabled */
  /*******************************
               Types
  *******************************/
  /*-------------------
         Animated
  --------------------*/
  /* Horizontal */
  /* Vertical */
  /* Fade */
  /*-------------------
         Inverted
  --------------------*/
  /*-------------------
         Social
  --------------------*/
  /* Facebook */
  /* Twitter */
  /* Google Plus */
  /* Linked In */
  /* YouTube */
  /* Instagram */
  /* Pinterest */
  /* VK */
  /*--------------
       Icon
  ---------------*/
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Floated
  --------------------*/
  /*-------------------
         Compact
  --------------------*/
  /*-------------------
          Sizes
  --------------------*/
  /*--------------
      Icon Only
  ---------------*/
  /*-------------------
          Basic
  --------------------*/
  /* Vertical */
  /* Standard Basic Inverted */
  /* Basic Group */
  /*--------------
    Labeled Icon
  ---------------*/
  /* Left Labeled */
  /* Left Labeled */
  /* Right Labeled */
  /* Fluid Labeled */
  /*--------------
       Toggle
  ---------------*/
  /* Toggle (Modifies active state to give affordances) */
  /*--------------
      Circular
  ---------------*/
  /*--------------
       Attached
  ---------------*/
  /*-------------------
        Or Buttons
  --------------------*/
  /* Fluid Or */
  /*-------------------
         Attached
  --------------------*/
  /* Plural Attached */
  /* Top Side */
  /* Bottom Side */
  /* Left Side */
  /* Right Side */
  /* Fluid */
  /* Fluid Vertical Buttons */
  /*-------------------
         Colors
  --------------------*/
  /*--- Black ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Blue ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Green ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Orange ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Pink ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Purple ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Red ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Teal ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*--- Yellow ---*/
  /* Basic */
  /* Inverted */
  /* Inverted Basic */
  /*-------------------
         Primary
  --------------------*/
  /*-------------------
        Secondary
  --------------------*/
  /*---------------
      Positive
  ----------------*/
  /*---------------
       Negative
  ----------------*/
  /*******************************
              Groups
  *******************************/
  /* Vertical  Style */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Divider
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Divider
  *******************************/
  /*--------------
        Basic
  ---------------*/
  /*--------------
      Coupling
  ---------------*/
  /*--------------
     Horizontal
  ---------------*/
  /*--------------
      Vertical
  ---------------*/
  /* Inside grid */
  /*--------------
        Icon
  ---------------*/
  /*******************************
            Variations
  *******************************/
  /*--------------
      Hidden
  ---------------*/
  /*--------------
      Inverted
  ---------------*/
  /*--------------
      Fitted
  ---------------*/
  /*--------------
      Clearing
  ---------------*/
  /*--------------
      Section
  ---------------*/
  /*--------------
       Sizes
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Flag
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Flag
  *******************************/
  /* Sprite */
  /* Flag Sprite Based On http://www.famfamfam.com/lab/icons/flags/ */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Header
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Header
  *******************************/
  /* Standard */
  /*--------------
     Sub Header
  ---------------*/
  /*--------------
        Icon
  ---------------*/
  /* With Text Node */
  /*-------------------
          Image
  --------------------*/
  /*--------------
       Content
  ---------------*/
  /* After Image */
  /* After Icon */
  /*--------------
   Loose Coupling
  ---------------*/
  /* Positioning */
  /*******************************
              Types
  *******************************/
  /*--------------
       Page
  ---------------*/
  /* Sub Header */
  /*--------------
   Content Heading
  ---------------*/
  /* Sub Header */
  /*-------------------
          Icon
  --------------------*/
  /*******************************
              States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Colors
  --------------------*/
  /*-------------------
        Inverted
  --------------------*/
  /*-------------------
     Inverted Colors
  --------------------*/
  /*-------------------
         Aligned
  --------------------*/
  /*-------------------
         Floated
  --------------------*/
  /*-------------------
         Fittted
  --------------------*/
  /*-------------------
        Dividing
  --------------------*/
  /*-------------------
          Block
  --------------------*/
  /*-------------------
         Attached
  --------------------*/
  /* Attached Sizes */
  /*-------------------
          Sizing
  --------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Icon
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Icon
  *******************************/
  /*******************************
               Types
  *******************************/
  /*--------------
      Loading
  ---------------*/
  /*******************************
               States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*-------------------
           Link
  --------------------*/
  /*-------------------
        Circular
  --------------------*/
  /*-------------------
        Flipped
  --------------------*/
  /*-------------------
        Rotated
  --------------------*/
  /*-------------------
        Bordered
  --------------------*/
  /*-------------------
         Colors
  --------------------*/
  /*-------------------
        Inverted
  --------------------*/
  /* Inverted Shapes */
  /*-------------------
          Sizes
  --------------------*/
  /*
   * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
   * License - http://fontawesome.io/license (Font: SIL OFL 1.1, 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
  *******************************/
  /* Web Content */
  /* User Actions */
  /* Messages */
  /* Users */
  /* Gender & Sexuality */
  /* View Adjustment */
  /* Literal Objects */
  /* Shapes */
  /* Item Selection */
  /* Media */
  /* Pointers */
  /* Computer */
  /* File System */
  /* Technologies */
  /* Rating */
  /* Audio */
  /* Map, Locations, & Transportation */
  /* Tables */
  /* Text Editor */
  /* Currency */
  /* Payment Options */
  /* Networks and Websites*/
  /*******************************
              Aliases
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Image
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Image
  *******************************/
  /*******************************
              States
  *******************************/
  /*******************************
            Variations
  *******************************/
  /*--------------
       Inline
  ---------------*/
  /*------------------
    Vertical Aligned
  -------------------*/
  /*--------------
       Rounded
  ---------------*/
  /*--------------
      Bordered
  ---------------*/
  /*--------------
      Circular
  ---------------*/
  /*--------------
       Fluid
  ---------------*/
  /*--------------
       Avatar
  ---------------*/
  /*-------------------
         Floated
  --------------------*/
  /*--------------
       Sizes
  ---------------*/
  /*******************************
                Groups
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Input
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Standard
  *******************************/
  /*--------------------
          Inputs
  ---------------------*/
  /*--------------------
        Placeholder
  ---------------------*/
  /* browsers require these rules separate */
  /*******************************
              States
  *******************************/
  /*--------------------
          Active
  ---------------------*/
  /*--------------------
         Loading
  ---------------------*/
  /*--------------------
          Focus
  ---------------------*/
  /*--------------------
          Error
  ---------------------*/
  /* Error Placeholder */
  /* Focused Error Placeholder */
  /*******************************
             Variations
  *******************************/
  /*--------------------
        Transparent
  ---------------------*/
  /* Transparent Icon */
  /* Transparent Inverted */
  /*--------------------
           Icon
  ---------------------*/
  /* Left Icon Input */
  /* Focus */
  /*--------------------
          Labeled
  ---------------------*/
  /* Adjacent Label */
  /* Fluid Labeled */
  /* Label on Left */
  /* Label on Right */
  /* Corner Label */
  /* Spacing with corner label */
  /*--------------------
          Action
  ---------------------*/
  /* Fluid */
  /* Button on Right */
  /* Button on Left */
  /*--------------------
         Inverted
  ---------------------*/
  /* Standard */
  /*--------------------
          Fluid
  ---------------------*/
  /*--------------------
          Size
  ---------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Label
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Label
  *******************************/
  /* Link */
  /* Inside Link */
  /* Icon */
  /* Detail */
  /* Removable label */
  /*-------------------
         Group
  --------------------*/
  /*-------------------
         Coupling
  --------------------*/
  /* Remove border radius on attached segment */
  /* Padding on next content after a label */
  /*******************************
               Types
  *******************************/
  /*-------------------
           Tag
  --------------------*/
  /*-------------------
      Corner Label
  --------------------*/
  /* Icon Label */
  /* Left Corner */
  /* Segment */
  /* Input */
  /*-------------------
         Ribbon
  --------------------*/
  /* Right Ribbon */
  /* Positioning */
  /* Inside Image */
  /*-------------------
        Attached
  --------------------*/
  /*******************************
               States
  *******************************/
  /*-------------------
        Disabled
  --------------------*/
  /*-------------------
          Hover
  --------------------*/
  /*-------------------
        Visible
  --------------------*/
  /*-------------------
        Hidden
  --------------------*/
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Colors
  --------------------*/
  /*--- Black ---*/
  /*--- Blue ---*/
  /*--- Green ---*/
  /*--- Orange ---*/
  /*--- Pink ---*/
  /*--- Purple ---*/
  /*--- Red ---*/
  /*--- Teal ---*/
  /*--- Yellow ---*/
  /*-------------------
         Fluid
  --------------------*/
  /*-------------------
         Inverted
  --------------------*/
  /*-------------------
       Horizontal
  --------------------*/
  /*-------------------
         Circular
  --------------------*/
  /*-------------------
         Pointing
  --------------------*/
  /*--- Above ---*/
  /*--- Below ---*/
  /*--- Left ---*/
  /*--- Right ---*/
  /*------------------
     Floating Label
  -------------------*/
  /*-------------------
          Sizes
  --------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - List
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              List
  *******************************/
  /*******************************
              Content
  *******************************/
  /* List Item */
  /* Child List */
  /* Icon */
  /* Image */
  /* Content */
  /* Item Link */
  /* Linked Item Icons */
  /* Linking Content */
  /* Header */
  /* Floated Content */
  /*******************************
              Coupling
  *******************************/
  /*******************************
              Types
  *******************************/
  /*-------------------
        Horizontal
  --------------------*/
  /* Padding on all elements */
  /* Horizontal List */
  /*******************************
               States
  *******************************/
  /*-------------------
         Disabled
  --------------------*/
  /*-------------------
          Hover
  --------------------*/
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Inverted
  --------------------*/
  /* Item Link */
  /* Linking Content */
  /*-------------------
         Link
  --------------------*/
  /* Inverted */
  /*-------------------
        Selection
  --------------------*/
  /* Inverted */
  /* Celled / Divided Selection List */
  /*-------------------
         Animated
  --------------------*/
  /*-------------------
         Fitted
  --------------------*/
  /*-------------------
        Bulleted
  --------------------*/
  /* Horizontal Bulleted */
  /*-------------------
         Ordered
  --------------------*/
  /* Child Lists */
  /* Horizontal Ordered */
  /*-------------------
         Divided
  --------------------*/
  /* Sub Menu */
  /* Divided bulleted */
  /* Divided Ordered */
  /* Divided Selection */
  /* Divided horizontal */
  /* Inverted */
  /*-------------------
          Celled
  --------------------*/
  /* Padding on all elements */
  /* Sub Menu */
  /* Celled Bulleted */
  /* Celled Ordered */
  /* Celled Horizontal */
  /* Inverted */
  /*-------------------
         Relaxed
  --------------------*/
  /* Very Relaxed */
  /*-------------------
        Sizes
  --------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Loader
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Loader
  *******************************/
  /* Standard Size */
  /* Static Shape */
  /* Active Shape */
  /* Active Animation */
  /* Sizes */
  /*-------------------
        Coupling
  --------------------*/
  /* Show inside active dimmer */
  /* Black Dimmer */
  /* White Dimmer (Inverted) */
  /*******************************
               Types
  *******************************/
  /*-------------------
          Text
  --------------------*/
  /*******************************
              States
  *******************************/
  /*******************************
              Variations
  *******************************/
  /*-------------------
          Sizes
  --------------------*/
  /* Loader */
  /* Text Loader */
  /*-------------------
         Inverted
  --------------------*/
  /*-------------------
         Inline
  --------------------*/
  /* Centered Inline */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Rail
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Rails
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*--------------
       Internal
  ---------------*/
  /*--------------
       Divided
  ---------------*/
  /*--------------
      Distance
  ---------------*/
  /*--------------
      Attached
  ---------------*/
  /*--------------
       Sizing
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Reveal
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Reveal
  *******************************/
  /* Make sure hovered element is on top of other reveal */
  /*******************************
                Types
  *******************************/
  /*--------------
        Slide
  ---------------*/
  /*--------------
        Fade
  ---------------*/
  /*--------------
        Move
  ---------------*/
  /*--------------
       Rotate
  ---------------*/
  /*******************************
                States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*--------------
       Masked
  ---------------*/
  /*--------------
       Instant
  ---------------*/
  /*--------------
       Sizing
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Segment
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Segment
  *******************************/
  /* Vertical */
  /* Horizontal */
  /*-------------------
      Loose Coupling
  --------------------*/
  /* Header */
  /* Label */
  /* Grid */
  /* Table */
  /*******************************
               Types
  *******************************/
  /*-------------------
          Piled
  --------------------*/
  /* Piled Attached */
  /*-------------------
         Stacked
  --------------------*/
  /* Add additional page */
  /* Inverted */
  /*-------------------
         Compact
  --------------------*/
  /*-------------------
         Circular
  --------------------*/
  /*-------------------
         Raised
  --------------------*/
  /*******************************
              States
  *******************************/
  /*--------------
      Disabled
  ---------------*/
  /*--------------
      Loading
  ---------------*/
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Basic
  --------------------*/
  /*-------------------
         Fittted
  --------------------*/
  /*-------------------
         Colors
  --------------------*/
  /*-------------------
     Inverted Colors
  --------------------*/
  /*-------------------
         Aligned
  --------------------*/
  /*-------------------
         Floated
  --------------------*/
  /*-------------------
        Inverted
  --------------------*/
  /*-------------------
       Ordinality
  --------------------*/
  /*-------------------
        Attached
  --------------------*/
  /* Top */
  /* Bottom */
  /*-------------------
         Groups
  --------------------*/
  /* Top */
  /* Bottom */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Step
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Singular
  *******************************/
  /*******************************
              Plural
  *******************************/
  /*******************************
              Content
  *******************************/
  /* Title */
  /* Description */
  /* Icon */
  /* Link */
  /*******************************
              Types
  *******************************/
  /*--------------
       Ordered
  ---------------*/
  /*--------------
      Vertical
  ---------------*/
  /* Arrow */
  /* Active Arrow */
  /*---------------
      Responsive
  ----------------*/
  /* Mobile (Default) */
  /*******************************
               States
  *******************************/
  /* Link Hover */
  /* Link Down */
  /* Active */
  /* Active Hover */
  /* Completed */
  /* Disabled */
  /*******************************
             Variations
  *******************************/
  /*--------------
     Stackable
  ---------------*/
  /* Tablet Or Below */
  /*--------------
        Fluid
  ---------------*/
  /* Fluid */
  /*--------------
      Attached
  ---------------*/
  /* Top */
  /* Bottom */
  /*-------------------
      Evenly Divided
  --------------------*/
  /*-------------------
         Sizes
  --------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Breadcrumb
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Breadcrumb
  *******************************/
  /*******************************
            Content
  *******************************/
  /* Divider */
  /* Link */
  /* Icon Divider */
  /* Section */
  /* Loose Coupling */
  /*******************************
              States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Form
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Elements
  *******************************/
  /*--------------------
          Form
  ---------------------*/
  /*--------------------
          Content
  ---------------------*/
  /*--------------------
          Field
  ---------------------*/
  /*--------------------
          Labels
  ---------------------*/
  /*--------------------
      Standard Inputs
  ---------------------*/
  /*--------------------------
    Input w/ attached Button
  ---------------------------*/
  /*--------------------
       Basic Select
  ---------------------*/
  /*--------------------
         Dropdown
  ---------------------*/
  /*--------------------
         Dividers
  ---------------------*/
  /*--------------------
     Types of Messages
  ---------------------*/
  /* Assumptions */
  /*--------------------
     Validation Prompt
  ---------------------*/
  /*******************************
              States
  *******************************/
  /*--------------------
        Placeholder
  ---------------------*/
  /* browsers require these rules separate */
  /* Error Placeholder */
  /*--------------------
          Focus
  ---------------------*/
  /*--------------------
          Success
  ---------------------*/
  /* On Form */
  /*--------------------
          Error
  ---------------------*/
  /* On Form */
  /*--------------------
          Warning
  ---------------------*/
  /* On Form */
  /* On Field(s) */
  /* Preserve Native Select Stylings */
  /*------------------
      Dropdown Error
  --------------------*/
  /* Hover */
  /* Active */
  /*--------------------
      Checkbox Error
  ---------------------*/
  /*--------------------
         Disabled
  ---------------------*/
  /*--------------
      Loading
  ---------------*/
  /*******************************
           Element Types
  *******************************/
  /*--------------------
       Required Field
  ---------------------*/
  /*******************************
             Variations
  *******************************/
  /*--------------------
      Inverted Colors
  ---------------------*/
  /*--------------------
       Field Groups
  ---------------------*/
  /* Grouped Vertically */
  /*--------------------
          Fields
  ---------------------*/
  /* Split fields */
  /* Other Combinations */
  /* Swap to full width on mobile */
  /* Sizing Combinations */
  /* Swap to full width on mobile */
  /*--------------------
      Inline Fields
  ---------------------*/
  /* Label */
  /*--------------------
          Sizes
  ---------------------*/
  /* Standard */
  /* Medium */
  /* Large */
  /* Huge */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Grid
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Standard
  *******************************/
  /*----------------------
        Remove Gutters
  -----------------------*/
  /* Collapse Margins on Consecutive Grids */
  /*-------------------
         Columns
  --------------------*/
  /* Standard 16 column */
  /*-------------------
          Rows
  --------------------*/
  /*-------------------
         Columns
  --------------------*/
  /* Vertical padding when no rows */
  /*-------------------
        Content
  --------------------*/
  /*-------------------
      Loose Coupling
  --------------------*/
  /* remove Border on last horizontal segment */
  /*******************************
             Variations
  *******************************/
  /*-----------------------
         Page Grid
  -------------------------*/
  /* Collapse Margin */
  /*-------------------
       Column Count
  --------------------*/
  /* Assume full width with one column */
  /* Grid Based */
  /* Row Based Overrides */
  /*-------------------
      Column Width
  --------------------*/
  /* Sizing Combinations */
  /*----------------------
      Width per Device
  -----------------------*/
  /* Mobile Sizing Combinations */
  /* Tablet Sizing Combinations */
  /* Computer/Desktop Sizing Combinations */
  /* Large Monitor Sizing Combinations */
  /* Widescreen Sizing Combinations */
  /*----------------------
          Centered
  -----------------------*/
  /*----------------------
          Relaxed
  -----------------------*/
  /* Coupling with UI Divider */
  /*----------------------
          Padded
  -----------------------*/
  /*----------------------
         "Floated"
  -----------------------*/
  /*----------------------
          Divided
  -----------------------*/
  /* Swap from padding to margin on columns to have dividers align */
  /* No divider on first column on row */
  /* Divided Row */
  /* Vertically Divided */
  /* Padded Horizontally Divided */
  /* First Row Vertically Divided */
  /* Inverted Divided */
  /* Relaxed */
  /*----------------------
           Celled
  -----------------------*/
  /* Internally Celled */
  /*----------------------
    Horizontally Centered
  -----------------------*/
  /* Left Aligned */
  /* Center Aligned */
  /* Right Aligned */
  /* Justified */
  /*----------------------
     Vertically Aligned
  -----------------------*/
  /* Top Aligned */
  /* Middle Aligned */
  /* Bottom Aligned */
  /*----------------------
           Colored
  -----------------------*/
  /*----------------------
        Equal Width
  -----------------------*/
  /* Flexbox (Experimental / Overrides Where Supported) */
  /*----------------------
    Equal Height Columns
  -----------------------*/
  /* Flexbox (Experimental / Overrides Where Supported) */
  /*-------------------
        Doubling
  --------------------*/
  /* Tablet Only */
  /* Mobily Only */
  /*-------------------
        Stackable
  --------------------*/
  /*----------------------
       Only (Device)
  -----------------------*/
  /* These include arbitrary class repetitions for forced specificity */
  /* Mobile Only Hide */
  /* Tablet Only Hide */
  /* Computer Only Hide */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Menu
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Standard
  *******************************/
  /*--------------
        Menu
  ---------------*/
  /*--------------
       Colors
  ---------------*/
  /* Text Color */
  /* Hover */
  /*--------------
        Items
  ---------------*/
  /* Floated Content */
  /*--------------
      Borders
  ---------------*/
  /*--------------
    Text Content
  ---------------*/
  /*--------------
        Icons
  ---------------*/
  /*--------------
       Button
  ---------------*/
  /*--------------
       Inputs
  ---------------*/
  /* Resizes */
  /*--------------
       Header
  ---------------*/
  /*--------------
      Dropdowns
  ---------------*/
  /* Dropdown */
  /* Menu Position */
  /* Secondary Menu Dropdown */
  /* Even Width Menu Dropdown */
  /*--------------
       Labels
  ---------------*/
  /*--------------
       Images
  ---------------*/
  /*******************************
               States
  *******************************/
  /*--------------
        Hover
  ---------------*/
  /*--------------
       Pressed
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /* Vertical */
  /*--------------
    Active Hover
  ---------------*/
  /*--------------
       Disabled
  ---------------*/
  /*******************************
               Types
  *******************************/
  /*--------------
      Vertical
  ---------------*/
  /*--- Item ---*/
  /*--- Label ---*/
  /*--- Icon ---*/
  /*--- Border ---*/
  /*--- Dropdown ---*/
  /*--- Sub Menu ---*/
  /*--------------
       Tiered
  ---------------*/
  /* Sub Menu */
  /* Sub Menu Divider */
  /* Sub Menu Hover */
  /* Sub Menu Active */
  /* Inverted Tiered Menu */
  /* Tiered Pointing */
  /*--------------
       Tabular
  ---------------*/
  /* Hover */
  /* Active */
  /* Coupling with segment for attachment */
  /*--------------
     Pagination
  ---------------*/
  /* Active */
  /*--------------
     Secondary
  ---------------*/
  /* Hover */
  /* Active */
  /* Inverted */
  /* Disable variations */
  /*---------------------
     Secondary Vertical
  -----------------------*/
  /* Inverted */
  /* Hover */
  /* Pressed */
  /* Active */
  /*---------------------
     Secondary Pointing
  -----------------------*/
  /* Item Types */
  /* Hover */
  /* Pressed */
  /* Active */
  /* Secondary Vertical Pointing */
  /* Hover */
  /* Pressed */
  /* Active */
  /* Inverted Vertical Pointing Secondary */
  /*--------------
      Text Menu
  ---------------*/
  /*--- fluid text ---*/
  /*--- vertical text ---*/
  /*--- hover ---*/
  /*--- active ---*/
  /* disable variations */
  /* Inverted */
  /* Fluid */
  /*--------------
      Icon Only
  ---------------*/
  /* Item Icon Only */
  /*--- inverted ---*/
  /*--------------
     Labeled Icon
  ---------------*/
  /*******************************
             Variations
  *******************************/
  /*--------------
      Colors
  ---------------*/
  /*--- Light Colors  ---*/
  /*--------------
      Inverted
  ---------------*/
  /*--- Border ---*/
  /*--- Hover ---*/
  /*--- Pressed ---*/
  /*--- Active ---*/
  /*--- Pointers ---*/
  /*--------------
      Selection
  ---------------*/
  /*--------------
       Floated
  ---------------*/
  /*--------------
   Inverted Colors
  ---------------*/
  /*--- Light Colors  ---*/
  /*--- Inverted Colors  ---*/
  /* Blue */
  /* Green */
  /* Orange */
  /* Pink */
  /* Purple */
  /* Red */
  /* Teal */
  /* Yellow */
  /*--------------
       Fitted
  ---------------*/
  /*--------------
     Borderless
  ---------------*/
  /*-------------------
         Compact
  --------------------*/
  /*-------------------
          Fluid
  --------------------*/
  /*-------------------
        Evenly Sized
  --------------------*/
  /*--------------
       Fixed
  ---------------*/
  /* Coupling with Grid */
  /*-------------------
         Pointing
  --------------------*/
  /* Don't double up pointers */
  /* Colors */
  /*--------------
      Attached
  ---------------*/
  /*--------------
       Sizes
  ---------------*/
  /* Small */
  /* Medium */
  /* Large */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /* Text Color */
  /* Active */
  /*--------------
     Pagination
  ---------------*/
  /*******************************
               States
  *******************************/
  /*--------------
        Hover
  ---------------*/
  /*!
   * # Semantic UI 1.11.5 - Message
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Message
  *******************************/
  /*--------------
       Content
  ---------------*/
  /* Header */
  /* Default font size */
  /* Paragraph */
  /* List */
  /* Icon */
  /* Close Icon */
  /* First / Last Element */
  /*******************************
              States
  *******************************/
  /*--------------
      Visible
  ---------------*/
  /*--------------
       Hidden
  ---------------*/
  /*******************************
              Variations
  *******************************/
  /*--------------
      Compact
  ---------------*/
  /*--------------
      Attached
  ---------------*/
  /*--------------
        Icon
  ---------------*/
  /*--------------
      Floating
  ---------------*/
  /*--------------
       Colors
  ---------------*/
  /*--------------
       Types
  ---------------*/
  /* Positive */
  /* Negative */
  /* Info */
  /* Warning */
  /* Error */
  /* Success */
  /* Colors */
  /*--------------
       Sizes
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Table
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Table
  *******************************/
  /* Prototype */
  /*******************************
               Parts
  *******************************/
  /* Table Content */
  /* Headers */
  /* Footer */
  /* Table Row */
  /* Table Cells */
  /* Icons */
  /* Table Segment */
  /* Responsive */
  /*******************************
              Coupling
  *******************************/
  /* UI Image */
  /*******************************
               Types
  *******************************/
  /*--------------
      Complex
  ---------------*/
  /*--------------
     Definition
  ---------------*/
  /* Remove Border */
  /* Highlight Defining Column */
  /* Fix 2nd Column */
  /*******************************
               States
  *******************************/
  /*--------------
      Positive
  ---------------*/
  /*--------------
       Negative
  ---------------*/
  /*--------------
        Error
  ---------------*/
  /*--------------
       Warning
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*--------------
       Disabled
  ---------------*/
  /*******************************
            Variations
  *******************************/
  /*--------------
      Stackable
  ---------------*/
  /*--------------
       Aligned
  ---------------*/
  /*--------------
      Collapsing
  ---------------*/
  /*--------------
       Attached
  ---------------*/
  /* All */
  /* Top */
  /* Bottom */
  /*--------------
       Striped
  ---------------*/
  /* Table Striping */
  /* Stripes */
  /*-------------------
         Colors
  --------------------*/
  /*-------------------
     Inverted Colors
  --------------------*/
  /*--------------
    Column Count
  ---------------*/
  /* Grid Based */
  /* Column Width */
  /*--------------
      Sortable
  ---------------*/
  /* Hover */
  /* Sorted */
  /* Sorted Hover */
  /* Inverted */
  /*--------------
      Inverted
  ---------------*/
  /* Text Color */
  /* Definition */
  /*--------------
     Collapsing
  ---------------*/
  /*--------------
        Basic
  ---------------*/
  /* Very Basic */
  /*--------------
       Celled
  ---------------*/
  /*--------------
       Padded
  ---------------*/
  /* Very */
  /*--------------
       Compact
  ---------------*/
  /* Very */
  /*--------------
        Sizes
  ---------------*/
  /* Small */
  /* Standard */
  /* Large */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Ad
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2013 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
           Advertisement
  *******************************/
  /*--------------
       Common
  ---------------*/
  /* Leaderboard */
  /* Medium Rectangle */
  /* Large Rectangle */
  /* Half Page */
  /*--------------
       Square
  ---------------*/
  /* Square */
  /* Small Square */
  /*--------------
      Rectangle
  ---------------*/
  /* Small Rectangle */
  /* Vertical Rectangle */
  /*--------------
       Button
  ---------------*/
  /*--------------
     Skyscrapers
  ---------------*/
  /* Skyscraper */
  /* Wide Skyscraper */
  /*--------------
       Banners
  ---------------*/
  /* Banner */
  /* Vertical Banner */
  /* Top Banner */
  /* Half Banner */
  /*--------------
      Boards
  ---------------*/
  /* Leaderboard */
  /* Billboard */
  /*--------------
      Panorama
  ---------------*/
  /* Panorama */
  /*--------------
       Netboard
  ---------------*/
  /* Netboard */
  /*--------------
       Mobile
  ---------------*/
  /* Large Mobile Banner */
  /* Mobile Leaderboard */
  /*******************************
               Types
  *******************************/
  /* Mobile Sizes */
  /*******************************
             Variations
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Item
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Standard
  *******************************/
  /*--------------
        Card
  ---------------*/
  /*--------------
        Cards
  ---------------*/
  /* Clearing */
  /* Consecutive Card Groups Preserve Row Spacing */
  /*--------------
    Rounded Edges
  ---------------*/
  /*--------------
       Images
  ---------------*/
  /*--------------
       Content
  ---------------*/
  /* Default Header Size */
  /*--------------
       Floated
  ---------------*/
  /*--------------
       Aligned
  ---------------*/
  /*--------------
    Content Image
  ---------------*/
  /*--------------
     Description
  ---------------*/
  /*--------------
      Paragraph
  ---------------*/
  /*--------------
        Meta
  ---------------*/
  /*--------------
        Links
  ---------------*/
  /* Generic */
  /* Header */
  /* Meta */
  /*--------------
       Buttons
  ---------------*/
  /*--------------
        Dimmer
  ---------------*/
  /*--------------
       Labels
  ---------------*/
  /*-----Star----- */
  /* Icon */
  /*-----Like----- */
  /* Icon */
  /*----------------
    Extra Content
  -----------------*/
  /*******************************
             Variations
  *******************************/
  /*-------------------
          Fluid
  --------------------*/
  /*-------------------
          Link
  --------------------*/
  /*-------------------
         Colors
  --------------------*/
  /* Hover */
  /*--------------
     Card Count
  ---------------*/
  /*-------------------
        Doubling
  --------------------*/
  /* Mobily Only */
  /* Tablet Only */
  /*-------------------
        Stackable
  --------------------*/
  /*--------------
        Size
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Comment
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Standard
  *******************************/
  /*--------------
      Comments
  ---------------*/
  /*--------------
       Comment
  ---------------*/
  /*--------------------
      Nested Comments
  ---------------------*/
  /*--------------
       Avatar
  ---------------*/
  /*--------------
       Content
  ---------------*/
  /* If there is an avatar move content over */
  /*--------------
       Author
  ---------------*/
  /*--------------
       Metadata
  ---------------*/
  /*--------------------
       Comment Text
  ---------------------*/
  /*--------------------
       User Actions
  ---------------------*/
  /*--------------------
        Reply Form
  ---------------------*/
  /*******************************
              State
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*--------------------
          Threaded
  ---------------------*/
  /*--------------------
          Minimal
  ---------------------*/
  /*--------------------
         Sizes
  ---------------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Feed
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
           Activity Feed
  *******************************/
  /*******************************
              Content
  *******************************/
  /* Event */
  /* Event Label */
  /* Content */
  /* Link */
  /*--------------
        Date
  ---------------*/
  /*--------------
       Summary
  ---------------*/
  /* Summary Image */
  /*--------------
        User
  ---------------*/
  /*--------------
     Inline Date
  ---------------*/
  /* Date inside Summary */
  /*--------------
    Extra Summary
  ---------------*/
  /* Images */
  /* Text */
  /*--------------
        Meta
  ---------------*/
  /* First element */
  /* Action */
  /*******************************
              Variations
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Item
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Standard
  *******************************/
  /*--------------
        Item
  ---------------*/
  /*--------------
        Items
  ---------------*/
  /*--------------
        Item
  ---------------*/
  /*--------------
       Images
  ---------------*/
  /*--------------
       Content
  ---------------*/
  /* Default Header Size */
  /*--------------
       Floated
  ---------------*/
  /*--------------
    Content Image
  ---------------*/
  /*--------------
     Description
  ---------------*/
  /*--------------
      Paragraph
  ---------------*/
  /*--------------
        Meta
  ---------------*/
  /*--------------
        Links
  ---------------*/
  /* Generic */
  /* Header */
  /* Meta */
  /*--------------
       Labels
  ---------------*/
  /*-----Star----- */
  /* Icon */
  /*-----Like----- */
  /* Icon */
  /*----------------
    Extra Content
  -----------------*/
  /*******************************
            Responsive
  *******************************/
  /* Default Image Width */
  /* Tablet Only */
  /* Mobily Only */
  /*******************************
             Variations
  *******************************/
  /*-------------------
         Aligned
  --------------------*/
  /*--------------
       Relaxed
  ---------------*/
  /*-------------------
        Divided
  --------------------*/
  /* Relaxed Divided */
  /*-------------------
          Link
  --------------------*/
  /*--------------
        Size
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Statistic
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Statistic
  *******************************/
  /* Standalone */
  /* Grouped */
  /*******************************
              Group
  *******************************/
  /* Clearing */
  /*******************************
              Content
  *******************************/
  /*--------------
        Value
  ---------------*/
  /*--------------
       Label
  ---------------*/
  /* Top Label */
  /* Bottom Label */
  /*******************************
               Types
  *******************************/
  /*--------------
     Icon Value
  ---------------*/
  /*--------------
     Text Value
  ---------------*/
  /*--------------
     Image Value
  ---------------*/
  /*******************************
              Variations
  *******************************/
  /*--------------
     Horizontal
  ---------------*/
  /*--------------
       Colors
  ---------------*/
  /*--------------
      Floated
  ---------------*/
  /*--------------
      Inverted
  ---------------*/
  /*--------------
       Sizes
  ---------------*/
  /* Mini */
  /* Tiny */
  /* Small */
  /* Medium */
  /* Large */
  /* Huge */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
      User Variable Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Accordion
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Accordion
  *******************************/
  /* Title */
  /* Default Styling */
  /* Content */
  /* Default Styling */
  /* Arrow */
  /*--------------
      Coupling
  ---------------*/
  /* Menu */
  /* Header */
  /*******************************
              States
  *******************************/
  /*******************************
              Types
  *******************************/
  /*--------------
       Styled
  ---------------*/
  /* Content */
  /* Hover */
  /* Active */
  /*******************************
              States
  *******************************/
  /*--------------
       Active
  ---------------*/
  /*******************************
             Variations
  *******************************/
  /*--------------
       Fluid
  ---------------*/
  /*--------------
       Inverted
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /* Dropdown Icon */
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Checkbox
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Checkbox
  *******************************/
  /*--------------
      Content
  ---------------*/
  /*--------------
        Box
  ---------------*/
  /*--------------
      Checkmark
  ---------------*/
  /*--------------
        Label
  ---------------*/
  /* Inside */
  /* Outside */
  /*******************************
             States
  *******************************/
  /*--------------
        Hover
  ---------------*/
  /*--------------
        Down
  ---------------*/
  /*--------------
        Focus
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*--------------
      Read-Only
  ---------------*/
  /*--------------
       Disabled
  ---------------*/
  /*******************************
               Types
  *******************************/
  /*--------------
       Radio
  ---------------*/
  /* Box */
  /* Circle */
  /* Radio Checkbox */
  /*--------------
       Slider
  ---------------*/
  /* Line */
  /* Handle */
  /* Focus */
  /* Hover */
  /* Active */
  /*--------------
       Toggle
  ---------------*/
  /* Switch */
  /* Handle */
  /* Focus */
  /* Hover */
  /* Active */
  /*******************************
              Variations
  *******************************/
  /*--------------
       Fitted
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*  UTF Reference
  .check:before { content: '\e800'; }  ''
  .circle:before { content: '\e801'; }
  .ok-circled:before { content: '\e806'; }
  .ok-circle:before { content: '\e805'; }
  .cancel-circle:before { content: '\e807'; }
  .cancel-circle-1:before { content: '\e804'; }
  .empty-circle:before { content: '\e802'; }
  .radio:before { content: '\e803'; }

  */
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Dimmer
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Dimmer
  *******************************/
  /* Dimmer Content */
  /* Loose Coupling */
  /*******************************
              States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*--------------
        Page
  ---------------*/
  /*
  body.dimmable > :not(.dimmer) {
    filter: @elementStartFilter;
  }
  body.dimmed.dimmable > :not(.dimmer) {
    filter: @elementEndFilter;
    transition: @elementTransition;
  }
  */
  /*--------------
      Aligned
  ---------------*/
  /*--------------
      Inverted
  ---------------*/
  /*--------------
       Simple
  ---------------*/
  /* Displays without javascript */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Dropdown
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Dropdown
  *******************************/
  /*******************************
              Content
  *******************************/
  /*--------------
        Menu
  ---------------*/
  /*--------------
    Hidden Input
  ---------------*/
  /*--------------
   Dropdown Icon
  ---------------*/
  /*--------------
        Text
  ---------------*/
  /*--------------
      Menu Item
  ---------------*/
  /*--------------
    Floated Content
  ---------------*/
  /*--------------
    Menu Divider
  ---------------*/
  /*-----------------
    Item Description
  -------------------*/
  /*--------------
      Sub Menu
  ---------------*/
  /* Hide Arrow */
  /*******************************
              Coupling
  *******************************/
  /*--------------
     Sub Elements
  ---------------*/
  /* Icons / Flags / Labels / Image */
  /*--------------
       Image
  ---------------*/
  /*--------------
        Menu
  ---------------*/
  /* Remove Menu Item Divider */
  /* Prevent Menu Item Border */
  /* Automatically float dropdown menu right on last menu item */
  /*--------------
       Button
  ---------------*/
  /* No Margin On Icon Button */
  /*******************************
                Types
  *******************************/
  /*--------------
      Selection
  ---------------*/
  /* Displays like a select box */
  /* Compact */
  /*  Selection Menu */
  /* Scrollbar in IE */
  /* Menu Item */
  /* Hover */
  /* Disabled */
  /* Visible */
  /* Visible Hover */
  /* Active Item */
  /* Dropdown Icon */
  /* Connecting Border */
  /*--------------
     Searchable
  ---------------*/
  /* Search Selection */
  /* Search Dropdown */
  /* Text Layering */
  /* Search Selection */
  /* Active/Visible Search */
  /* Search Menu */
  /*--------------
       Inline
  ---------------*/
  /*******************************
              States
  *******************************/
  /*--------------------
          Hover
  ----------------------*/
  /* Menu Item Hover */
  /*--------------------
          Active
  ----------------------*/
  /* Menu Item Active */
  /*--------------------
       Default Text
  ----------------------*/
  /*--------------------
          Loading
  ----------------------*/
  /*--------------------
      Keyboard Select
  ----------------------*/
  /* Selected Item */
  /*--------------------
      Search Filtered
  ----------------------*/
  /* Filtered Item */
  /*--------------------
          Error
  ----------------------*/
  /* Item Hover */
  /* Item Active */
  /*--------------------
          Disabled
  ----------------------*/
  /* Disabled */
  /*******************************
             Variations
  *******************************/
  /*--------------
      Direction
  ---------------*/
  /* Flyout Direction */
  /* Default Side (Right) */
  /* Left Flyout Menu */
  /*--------------
       Upward
  ---------------*/
  /* Active Upward */
  /* Selection */
  /*--------------
       Simple
  ---------------*/
  /* Displays without javascript */
  /* Visible */
  /*--------------
        Fluid
  ---------------*/
  /*--------------
      Floating
  ---------------*/
  /*--------------
       Pointing
  ---------------*/
  /* Top Left Pointing */
  /* Top Right  Pointing */
  /* Left Pointing */
  /* Right Pointing */
  /* Bottom Pointing */
  /* Reverse Sub-Menu Direction */
  /* Bottom Left */
  /* Bottom Right */
  /*******************************
           Theme Overrides
  *******************************/
  /* Dropdown Carets */
  /* Sub Menu */
  /* Upward Dropdown */
  /* Vertical Menu Dropdown */
  /* Icons for Reference
  .dropdown.down.icon {
    content: "\f0d7";
  }
  .dropdown.up.icon {
    content: "\f0d8";
  }
  .dropdown.left.icon {
    content: "\f0d9";
  }
  .dropdown.icon.icon {
    content: "\f0da";
  }
  */
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Modal
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Modal
  *******************************/
  /*******************************
              Content
  *******************************/
  /*--------------
       Close
  ---------------*/
  /*--------------
       Header
  ---------------*/
  /*--------------
       Content
  ---------------*/
  /* Image */
  /* Description */
  /*rtl:ignore*/
  /*--------------
       Actions
  ---------------*/
  /*-------------------
         Responsive
  --------------------*/
  /* Modal Width */
  /* Tablet and Mobile */
  /* Mobile */
  /*******************************
               Types
  *******************************/
  /* Tablet and Mobile */
  /*******************************
              Variations
  *******************************/
  /* A modal that cannot fit on the page */
  /*******************************
               States
  *******************************/
  /*******************************
             Variations
  *******************************/
  /*--------------
     Full Screen
  ---------------*/
  /*--------------
        Size
  ---------------*/
  /* Small */
  /* Small Modal Width */
  /* Large Modal Width */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Nag
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Nag
  *******************************/
  /*******************************
               States
  *******************************/
  /* Hover */
  /*******************************
             Variations
  *******************************/
  /*--------------
       Static
  ---------------*/
  /*--------------
       Fixed
  ---------------*/
  /*--------------
       Bottom
  ---------------*/
  /*--------------
       White
  ---------------*/
  /*******************************
             Groups
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Popup
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Popup
  *******************************/
  /*******************************
              Types
  *******************************/
  /*--------------
       Spacing
  ---------------*/
  /*--------------
       Pointer
  ---------------*/
  /*--- Below ---*/
  /*--- Above ---*/
  /*--- Left Center ---*/
  /*--- Right Center  ---*/
  /*******************************
              Coupling
  *******************************/
  /* Immediate Nested Grid */
  /*******************************
              States
  *******************************/
  /*******************************
              Variations
  *******************************/
  /*--------------
       Basic
  ---------------*/
  /*--------------
       Wide
  ---------------*/
  /*--------------
       Fluid
  ---------------*/
  /*--------------
       Colors
  ---------------*/
  /* Inverted colors  */
  /*--------------
       Flowing
  ---------------*/
  /*--------------
       Sizes
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Progress Bar
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Progress
  *******************************/
  /* Indicating */
  /* Indicating Label */
  /* Single Digits */
  /* Indicating Success */
  /*******************************
              Content
  *******************************/
  /* Activity Bar */
  /* Percent Complete */
  /* Label */
  /*******************************
               States
  *******************************/
  /*--------------
       Success
  ---------------*/
  /*--------------
       Warning
  ---------------*/
  /*--------------
       Error
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*--------------
      Disabled
  ---------------*/
  /*******************************
             Variations
  *******************************/
  /*--------------
      Inverted
  ---------------*/
  /*--------------
      Attached
  ---------------*/
  /* bottom attached */
  /* top attached */
  /* Coupling */
  /*--------------
       Colors
  ---------------*/
  /*--------------
       Sizes
  ---------------*/
  /*******************************
              Progress
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Rating
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             Rating
  *******************************/
  /* Icon */
  /*******************************
               Types
  *******************************/
  /*-------------------
          Star
  --------------------*/
  /* Inactive */
  /* Active Star */
  /* Selected Star */
  /*-------------------
          Heart
  --------------------*/
  /* Active Heart */
  /* Selected Heart */
  /*******************************
               States
  *******************************/
  /* Inactive Icon */
  /* Active Icon */
  /* Selected Icon */
  /*-------------------
         Disabled
  --------------------*/
  /* disabled rating */
  /*-------------------
       Interacting (Active)
  --------------------*/
  /* Selected Rating */
  /*******************************
            Variations
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /* Empty Star */
  /* Active Star */
  /*-------------------
          Star
  --------------------*/
  /* Unfilled Star */
  /* Active Star */
  /* Partial */
  /*-------------------
          Heart
  --------------------*/
  /* Empty Heart
  .ui.heart.rating .icon:before {
    content: '\f08a';
  }
  */
  /* Active */
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Search
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Search
  *******************************/
  /*--------------
       Icon
  ---------------*/
  /*--------------
      Results
  ---------------*/
  /*--------------
      Result
  ---------------*/
  /* Image */
  /*--------------
        Info
  ---------------*/
  /*--------------
      Message
  ---------------*/
  /* View All Results */
  /*******************************
              States
  *******************************/
  /*--------------------
         Loading
  ---------------------*/
  /*--------------
        Hover
  ---------------*/
  /*--------------
        Active
  ---------------*/
  /*******************************
             Types
  *******************************/
  /*--------------
      Categories
  ---------------*/
  /* Category */
  /* Category Result */
  /* Category Result Name */
  /*******************************
             Variations
  *******************************/
  /*-------------------
       Left / Right
  --------------------*/
  /*--------------
      Fluid
  ---------------*/
  /*--------------
        Sizes
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Shape
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
                Shape
  *******************************/
  /*******************************
               Types
  *******************************/
  /*******************************
            Variations
  *******************************/
  /*******************************
               States
  *******************************/
  /*--------------
      Loading
  ---------------*/
  /*--------------
      Animating
  ---------------*/
  /*--------------
        CSS
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Sidebar
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Sidebar
  *******************************/
  /* Sidebar Menu */
  /* GPU Layers for Child Elements */
  /*--------------
     Direction
  ---------------*/
  /*--------------
       Pushable
  ---------------*/
  /* Whole Page */
  /* Page Context */
  /*--------------
       Fixed
  ---------------*/
  /*--------------
       Page
  ---------------*/
  /*--------------
       Dimmer
  ---------------*/
  /*--------------
      Coupling
  ---------------*/
  /*******************************
              States
  *******************************/
  /*--------------
       Dimmed
  ---------------*/
  /*--------------
      Animating
  ---------------*/
  /*--------------
       Visible
  ---------------*/
  /* Shadow Direction */
  /* Visible On Load */
  /* opposite sides visible forces content overlay */
  /*--------------
         iOS
  ---------------*/
  /*
    iOS incorrectly sizes document when content
    is presented outside of view with 2Dtranslate
  */
  /*******************************
            Variations
  *******************************/
  /*--------------
       Width
  ---------------*/
  /* Left / Right */
  /* Left Visible */
  /* Right Visible */
  /*******************************
            Animations
  *******************************/
  /*--------------
      Overlay
  ---------------*/
  /* Set-up */
  /* Initial */
  /* Animation */
  /* End - Sidebar */
  /* End - Pusher */
  /*--------------
        Push
  ---------------*/
  /* Initial */
  /* Sidebar - Initial */
  /* End */
  /*--------------
      Uncover
  ---------------*/
  /* Initial */
  /* End */
  /*--------------
     Slide Along
  ---------------*/
  /* Initial */
  /* Sidebar - Initial */
  /* Animation */
  /* End */
  /*--------------
     Slide Out
  ---------------*/
  /* Initial */
  /* Sidebar - Initial */
  /* Animation */
  /* End */
  /*--------------
     Scale Down
  ---------------*/
  /* Initial */
  /* Sidebar - Initial  */
  /* Pusher - Initial */
  /* Animation */
  /* End */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Sticky
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Sticky
  *******************************/
  /*******************************
              States
  *******************************/
  /* Bound */
  /* Fixed */
  /* Bound/Fixed Position */
  /*******************************
              Types
  *******************************/
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Tab
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
             UI Tabs
  *******************************/
  /*******************************
               States
  *******************************/
  /*--------------------
         Active
  ---------------------*/
  /*--------------------
         Loading
  ---------------------*/
  /*******************************
           Tab Overrides
  *******************************/
  /*******************************
          User Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Table
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
               Table
  *******************************/
  /* Prototype */
  /*******************************
               Parts
  *******************************/
  /* Table Content */
  /* Headers */
  /* Footer */
  /* Table Row */
  /* Table Cells */
  /* Icons */
  /* Table Segment */
  /* Responsive */
  /*******************************
              Coupling
  *******************************/
  /* UI Image */
  /*******************************
               Types
  *******************************/
  /*--------------
      Complex
  ---------------*/
  /*--------------
     Definition
  ---------------*/
  /* Remove Border */
  /* Highlight Defining Column */
  /* Fix 2nd Column */
  /*******************************
               States
  *******************************/
  /*--------------
      Positive
  ---------------*/
  /*--------------
       Negative
  ---------------*/
  /*--------------
        Error
  ---------------*/
  /*--------------
       Warning
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*--------------
       Disabled
  ---------------*/
  /*******************************
            Variations
  *******************************/
  /*--------------
      Stackable
  ---------------*/
  /*--------------
       Aligned
  ---------------*/
  /*--------------
      Collapsing
  ---------------*/
  /*--------------
       Attached
  ---------------*/
  /* All */
  /* Top */
  /* Bottom */
  /*--------------
       Striped
  ---------------*/
  /* Table Striping */
  /* Stripes */
  /*-------------------
         Colors
  --------------------*/
  /*-------------------
     Inverted Colors
  --------------------*/
  /*--------------
    Column Count
  ---------------*/
  /* Grid Based */
  /* Column Width */
  /*--------------
      Sortable
  ---------------*/
  /* Hover */
  /* Sorted */
  /* Sorted Hover */
  /* Inverted */
  /*--------------
      Inverted
  ---------------*/
  /* Text Color */
  /* Definition */
  /*--------------
     Collapsing
  ---------------*/
  /*--------------
        Basic
  ---------------*/
  /* Very Basic */
  /*--------------
       Celled
  ---------------*/
  /*--------------
       Padded
  ---------------*/
  /* Very */
  /*--------------
       Compact
  ---------------*/
  /* Very */
  /*--------------
        Sizes
  ---------------*/
  /* Small */
  /* Standard */
  /* Large */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Transition
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributorss
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
            Transitions
  *******************************/
  /*******************************
              States
  *******************************/
  /* Animating */
  /* Loading */
  /* Hidden */
  /* Visible */
  /* Disabled */
  /*******************************
            Variations
  *******************************/
  /*******************************
            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
  ---------------*/
  /* In */
  /* Out */
  /*--------------
       Drop
  ---------------*/
  /* Drop */
  /*--------------
        Fade
  ---------------*/
  /* In */
  /* Out */
  /*--------------
       Flips
  ---------------*/
  /* In */
  /* Out */
  /*--------------
        Scale
  ---------------*/
  /* In */
  /* Out */
  /*--------------
        Fly
  ---------------*/
  /* Inward */
  /* Outward */
  /* In */
  /* Out */
  /*--------------
       Slide
  ---------------*/
  /* In */
  /* Out */
  /*--------------
       Swing
  ---------------*/
  /* In */
  /* Out */
  /*******************************
         Static Animations
  *******************************/
  /*--------------
      Emphasis
  ---------------*/
  /* Flash */
  /* Shake */
  /* Bounce */
  /* Tada */
  /* Pulse */
  /* Rubberband */
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Video
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Video
  *******************************/
  /*--------------
       Content
  ---------------*/
  /* Placeholder Image */
  /* Play Icon Overlay */
  /* IFrame Embed */
  /*******************************
              States
  *******************************/
  /*--------------
      Hover
  ---------------*/
  /*--------------
       Active
  ---------------*/
  /*******************************
          Video Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
  /*!
   * # Semantic UI 1.11.5 - Form
   * http://github.com/semantic-org/semantic-ui/
   *
   *
   * Copyright 2014 Contributors
   * Released under the MIT license
   * http://opensource.org/licenses/MIT
   *
   */
  /*******************************
              Elements
  *******************************/
  /*--------------------
          Form
  ---------------------*/
  /*--------------------
          Content
  ---------------------*/
  /*--------------------
          Field
  ---------------------*/
  /*--------------------
          Labels
  ---------------------*/
  /*--------------------
      Standard Inputs
  ---------------------*/
  /*--------------------------
    Input w/ attached Button
  ---------------------------*/
  /*--------------------
       Basic Select
  ---------------------*/
  /*--------------------
         Dropdown
  ---------------------*/
  /*--------------------
         Dividers
  ---------------------*/
  /*--------------------
     Types of Messages
  ---------------------*/
  /* Assumptions */
  /*--------------------
     Validation Prompt
  ---------------------*/
  /*******************************
              States
  *******************************/
  /*--------------------
        Placeholder
  ---------------------*/
  /* browsers require these rules separate */
  /* Error Placeholder */
  /*--------------------
          Focus
  ---------------------*/
  /*--------------------
          Success
  ---------------------*/
  /* On Form */
  /*--------------------
          Error
  ---------------------*/
  /* On Form */
  /*--------------------
          Warning
  ---------------------*/
  /* On Form */
  /* On Field(s) */
  /* Preserve Native Select Stylings */
  /*------------------
      Dropdown Error
  --------------------*/
  /* Hover */
  /* Active */
  /*--------------------
      Checkbox Error
  ---------------------*/
  /*--------------------
         Disabled
  ---------------------*/
  /*--------------
      Loading
  ---------------*/
  /*******************************
           Element Types
  *******************************/
  /*--------------------
       Required Field
  ---------------------*/
  /*******************************
             Variations
  *******************************/
  /*--------------------
      Inverted Colors
  ---------------------*/
  /*--------------------
       Field Groups
  ---------------------*/
  /* Grouped Vertically */
  /*--------------------
          Fields
  ---------------------*/
  /* Split fields */
  /* Other Combinations */
  /* Swap to full width on mobile */
  /* Sizing Combinations */
  /* Swap to full width on mobile */
  /*--------------------
      Inline Fields
  ---------------------*/
  /* Label */
  /*--------------------
          Sizes
  ---------------------*/
  /* Standard */
  /* Medium */
  /* Large */
  /* Huge */
  /*******************************
           Theme Overrides
  *******************************/
  /*******************************
           Site Overrides
  *******************************/
}
.semantic *,
.semantic *:before,
.semantic *:after {
  box-sizing: inherit;
}
.semantic html {
  box-sizing: border-box;
}
.semantic input[type=text],
.semantic input[type=email],
.semantic input[type=search],
.semantic input[type=password] {
  -webkit-appearance: none;
  -moz-appearance: none;
  /* mobile firefox too! */
}
.semantic html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
.semantic body {
  margin: 0;
}
.semantic article,
.semantic aside,
.semantic details,
.semantic figcaption,
.semantic figure,
.semantic footer,
.semantic header,
.semantic hgroup,
.semantic main,
.semantic nav,
.semantic section,
.semantic summary {
  display: block;
}
.semantic audio,
.semantic canvas,
.semantic progress,
.semantic video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}
.semantic audio:not([controls]) {
  display: none;
  height: 0;
}
.semantic [hidden],
.semantic template {
  display: none;
}
.semantic a {
  background: transparent;
}
.semantic a:active,
.semantic a:hover {
  outline: 0;
}
.semantic abbr[title] {
  border-bottom: 1px dotted;
}
.semantic b,
.semantic strong {
  font-weight: bold;
}
.semantic dfn {
  font-style: italic;
}
.semantic h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
.semantic mark {
  background: #ff0;
  color: #000;
}
.semantic small {
  font-size: 80%;
}
.semantic sub,
.semantic sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
.semantic sup {
  top: -0.5em;
}
.semantic sub {
  bottom: -0.25em;
}
.semantic img {
  border: 0;
}
.semantic svg:not(:root) {
  overflow: hidden;
}
.semantic figure {
  margin: 1em 40px;
}
.semantic hr {
  box-sizing: content-box;
  height: 0;
}
.semantic pre {
  overflow: auto;
}
.semantic code,
.semantic kbd,
.semantic pre,
.semantic samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
.semantic button,
.semantic input,
.semantic optgroup,
.semantic select,
.semantic textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}
.semantic button {
  overflow: visible;
}
.semantic button,
.semantic select {
  text-transform: none;
}
.semantic button,
.semantic html input[type=button],
.semantic input[type=reset],
.semantic input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}
.semantic button[disabled],
.semantic html input[disabled] {
  cursor: default;
}
.semantic button::-moz-focus-inner,
.semantic input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.semantic input {
  line-height: normal;
}
.semantic input[type=checkbox],
.semantic input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
.semantic input[type=number]::-webkit-inner-spin-button,
.semantic input[type=number]::-webkit-outer-spin-button {
  height: auto;
}
.semantic input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}
.semantic input[type=search]::-webkit-search-cancel-button,
.semantic input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
.semantic fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
.semantic legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}
.semantic textarea {
  overflow: auto;
}
.semantic optgroup {
  font-weight: bold;
}
.semantic table {
  border-collapse: collapse;
  border-spacing: 0;
}
.semantic td,
.semantic th {
  padding: 0;
}
.semantic html,
.semantic body {
  height: 100%;
}
.semantic html {
  font-size: 14px;
}
.semantic body {
  margin: 0px;
  padding: 0px;
  min-width: 320px;
  background: #f7f7f7;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.33;
  color: rgba(0, 0, 0, 0.8);
  font-smoothing: antialiased;
}
.semantic h1,
.semantic h2,
.semantic h3,
.semantic h4,
.semantic h5 {
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  line-height: 1.33em;
  margin: -webkit-calc(2rem - 0.165em ) 0em 1rem;
  margin: calc(2rem - 0.165em) 0em 1rem;
  font-weight: bold;
  padding: 0em;
}
.semantic h1 {
  min-height: 1rem;
  font-size: 2rem;
}
.semantic h2 {
  font-size: 1.714rem;
}
.semantic h3 {
  font-size: 1.28rem;
}
.semantic h4 {
  font-size: 1.071rem;
}
.semantic h5 {
  font-size: 1rem;
}
.semantic h1:first-child,
.semantic h2:first-child,
.semantic h3:first-child,
.semantic h4:first-child,
.semantic h5:first-child {
  margin-top: 0em;
}
.semantic h1:last-child,
.semantic h2:last-child,
.semantic h3:last-child,
.semantic h4:last-child,
.semantic h5:last-child {
  margin-bottom: 0em;
}
.semantic p {
  margin: 0em 0em 1em;
  line-height: 1.33;
}
.semantic p:first-child {
  margin-top: 0em;
}
.semantic p:last-child {
  margin-bottom: 0em;
}
.semantic a {
  color: #009fda;
  text-decoration: none;
}
.semantic a:hover {
  color: #00b2f3;
}
.semantic ::-webkit-selection {
  background-color: #cce2ff;
  color: rgba(0, 0, 0, 0.8);
}
.semantic ::-moz-selection {
  background-color: #cce2ff;
  color: rgba(0, 0, 0, 0.8);
}
.semantic ::selection {
  background-color: #cce2ff;
  color: rgba(0, 0, 0, 0.8);
}
.semantic textarea::-webkit-selection,
.semantic input::-webkit-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.8);
}
.semantic textarea::-moz-selection,
.semantic input::-moz-selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.8);
}
.semantic textarea::selection,
.semantic input::selection {
  background-color: rgba(100, 100, 100, 0.4);
  color: rgba(0, 0, 0, 0.8);
}
.semantic html {
  overflow: hidden;
}
.semantic body {
  position: relative;
  overflow: hidden;
}
.semantic .ui.wrapper {
  position: relative;
  margin-top: 1em;
}
.semantic .ui.left.sidebar {
  position: absolute;
}
.semantic .ui.left.sidebar.menu {
  background: #E2E2E2;
}
.semantic .ui.sidebar.menu .item {
  display: block;
  background: rgba(0, 0, 0, 0);
  font-size: 1.25rem;
}
.semantic .sidebar-tab {
  position: absolute;
  width: 30px;
  height: 100%;
  height: 100vh;
  top: 0;
  bottom: 0;
  left: 0;
  background: #202121;
  border-bottom-right-radius: 2px;
  z-index: 0;
  font-size: 1em;
  color: #feffff;
  overflow-x: hidden;
  display: table;
  text-align: center;
  cursor: pointer;
  z-index: 1;
}
.semantic .sidebar-tab:hover {
  background: rgba(32, 33, 33, 0.7);
}
.semantic .sidebar-tab:before {
  display: table-cell;
  vertical-align: middle;
  font-weight: 500;
  font-style: normal;
  font-family: Icons;
  content: "\f061";
  font-size: 1.5em;
  position: absolute;
  left: 0.25em;
  top: 40%;
}
.semantic .sidebar-tab.opened {
  left: 260px;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.semantic .sidebar-tab.opened:before {
  content: "\f060";
}
.semantic .pusher {
  margin-top: 1em;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
  padding: 0 3em;
}
.semantic .pusher .column.scrolly {
  overflow-y: scroll;
  max-height: 100%;
  padding-top: 0.1rem;
  padding-left: 0.1rem;
  padding-right: 0.1rem;
}
.semantic .scrolly {
  overflow-y: scroll;
}
.semantic .ui.pusher.page.grid {
  padding-left: 2rem;
  padding-right: 0;
}
.semantic .ui.green.header {
  font-size: 1em;
}
.semantic .sub-header {
  margin-bottom: 0.25em;
  font-weight: 700;
}
.semantic .sub-header span {
  font-weight: 700;
  opacity: 0.7;
  margin-right: 0.5em;
}
.semantic .divided.column {
  margin-top: 1em;
}
.semantic #resopens {
  padding-left: 0;
}
.semantic #pvr-wrap,
.semantic #pvr-pag,
.semantic #pvr-tiles {
  padding-top: 0.35rem;
  padding-right: 0rem;
  padding-bottom: 0rem;
  padding-left: 0.25rem;
}
.semantic #pvr-wrap div,
.semantic #pvr-pag div,
.semantic #pvr-tiles div {
  box-shadow: none;
}
.semantic #pvr-wrap {
  height: 100%;
  height: 87vh;
  font-size: 0.9rem;
  overflow-y: scroll;
  overflow-x: hidden;
}
.semantic #pvr-wrap .button {
  width: 16em;
  margin-top: 2em;
}
.semantic #pvr-wrap .table-pad form {
  display: inline-block;
}
.semantic #pvr-wrap .table-pad button {
  margin-top: 1em;
  margin-bottom: 2.5em;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.semantic #pvr-wrap .modal-close {
  display: none;
}
.semantic #pvr-pag .ui.grid.segment.filters {
  margin-top: 0;
  margin-bottom: 0;
  background: #f0f0f0;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.semantic #pvr-pag .ui.grid.segment.filters .filter.button.active,
.semantic #pvr-pag .ui.grid.segment.filters .filter.button:hover {
  background-color: #2db475;
}
.semantic .pvr-header.ui.segment {
  background: #2db475;
}
.semantic .pvr-header.ui.segment .tabley {
  display: table;
}
.semantic .pvr-header.ui.segment .wrap {
  width: 100%;
  text-align: left;
  display: table-row;
}
.semantic .pvr-header.ui.segment .header {
  display: table-cell;
  color: #ffffff;
  font-weight: 700;
  font-size: 1.1rem;
  padding-top: 1em;
  padding-right: 1em;
  text-align: right;
  width: 11em;
}
.semantic .pvr-header.ui.segment .sub-header {
  display: table-cell;
  padding-top: 1em;
}
.semantic .pvr-header.ui.segment .wrap:nth-of-type(2n) .header,
.semantic .pvr-header.ui.segment .wrap:nth-of-type(2n) .sub-header {
  padding-top: 0;
}
.semantic .pvr-header.ui.segment textarea {
  font-size: 0.75rem;
  margin: 2em 0em 0em -2em;
  border: none;
  background-color: #348b63;
  color: #ffffff;
  font-weight: 700;
}
.semantic .pvr-header.ui.segment textarea::-webkit-input-placeholder {
  color: #ffffff;
}
.semantic .pvr-header.ui.segment textarea::-moz-placeholder {
  color: #ffffff;
}
.semantic .pvr-header.ui.segment textarea:-ms-input-placeholder {
  color: #ffffff;
}
.semantic .pvr-header.ui.segment textarea::placeholder {
  color: #ffffff;
}
.semantic .pvr-header.ui.segment textarea:focus::-webkit-input-placeholder {
  color: #cccccc;
}
.semantic .pvr-header.ui.segment textarea:focus::-moz-placeholder {
  color: #cccccc;
}
.semantic .pvr-header.ui.segment textarea:focus:-ms-input-placeholder {
  color: #cccccc;
}
.semantic .pvr-header.ui.segment textarea:focus::placeholder {
  color: #cccccc;
}
.semantic .pvr-header.ui.segment ol li {
  color: #fff;
  letter-spacing: 0.5px;
  font-size: 0.9em;
}
.semantic .pvr-header.ui.segment ol li span {
  color: #000;
  font-weight: 700;
}
.semantic .table-pad {
  padding: 1em 1.5em 1em 1em;
}
.semantic .summary {
  padding-right: 2.5em;
}
.semantic .right.aligned.freight-costs {
  margin-bottom: 2em;
  margin-top: 2em;
}
.semantic strong.green {
  color: #2db475;
}
.semantic .price {
  margin-top: 0.5em;
  margin-bottom: 1.25em;
}
.semantic .pvr-tile span.ui.label.expiresSoon {
  opacity: 1;
  margin-left: 0.5em;
}
@media screen and (max-width: 1040px) {
  .semantic .ui.menu.seven.item .item {
    font-size: 0.85rem;
  }
}
@media screen and (max-width: 870px) {
  .semantic .ui.menu.seven.item .item {
    font-size: 0.75rem;
  }
}
.semantic .pvr-tile {
  cursor: pointer;
}
.semantic .ui.grid .ui.segment.pvr-tile.active {
  background-color: #2db475;
  color: #1b1c1d;
}
.semantic .ui.grid .ui.segment.pvr-tile.active .header {
  color: #ffffff !important;
}
.semantic .ui.grid .ui.segment.pvr-tile.active span,
.semantic .ui.grid .ui.segment.pvr-tile.active .sub-header {
  color: #1b6d47;
}
.semantic .ui.grid .ui.segment.pvr-tile.active span strong,
.semantic .ui.grid .ui.segment.pvr-tile.active .sub-header strong {
  color: #1b1c1d;
}
.semantic .picker {
  width: 130% !important;
}
.semantic .right-date .picker {
  left: -6em;
}
.semantic #gifWrap {
  height: 85vh;
  text-align: center;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.semantic #gifWrap img {
  max-width: 7rem;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.semantic .ui.product.accordion input {
  padding: 0.25em 0.5em !important;
}
.semantic .ui.product.accordion .ui.selection.dropdown,
.semantic .ui.product.accordion .ui.selection.dropdown input {
  padding: 0.25em 0.5em;
}
.semantic .ui.product.accordion .form .header {
  margin-bottom: 0.5em;
}
.semantic .ui.product.accordion .content.active {
  padding-top: 1.5em !important;
}
.semantic .ui.header.top.margin {
  margin-top: 0.3em;
}
.semantic .ui.modal .submit.button:hover {
  background-color: #2db475;
}
.semantic .ui.modal .green.button:hover {
  background-color: #1b6d47;
}
.semantic .ui.new-pvr.modal .ui.left.content.form {
  height: 94vh;
  overflow-y: scroll;
  overflow-x: visible;
}
.semantic .ui.new-pvr.modal .four.fields {
  padding-left: 1.5em;
  margin-top: 0.5em;
}
.semantic .pvrColor .selectize-input {
  padding: 0 0;
}
.semantic i.icon.modal-close {
  float: right;
  margin-bottom: 1em;
  padding-right: 1.4em;
  padding-top: 0.5em;
  cursor: pointer;
  z-index: 9999;
  position: absolute;
  right: 0;
}
.semantic i.icon.modal-close:hover:before {
  color: #2db475;
}
.semantic .ui.search.modal .form {
  padding-top: 1em;
}
.semantic .ui.search.modal .modal-close {
  margin-bottom: 1em;
}
.semantic .modal .field > label {
  display: block;
  margin: 0 0 0.2857rem;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: 700;
  text-transform: none;
}
.semantic .modal .ui.form .field > label {
  opacity: 0.7;
}
.semantic .ui.help img {
  width: 100%;
  margin-bottom: 1rem;
}
.semantic .slim.divider {
  display: none;
}
.semantic #marketingWrap > div {
  display: block;
  position: relative;
}
.semantic #contractor-logo {
  /* Test test */
  display: inline-block;
  max-width: 200px;
}
.semantic body.slim #pvr-tiles .ui.grid.segment > .column:not(.row) {
  margin-bottom: 0.3em;
  margin-top: 0.3em;
}
.semantic body.slim #pvr-tiles .ui.divider {
  display: none;
}
.semantic body.slim #pvr-tiles .pvr-tile .column {
  width: 100% !important;
}
.semantic body.slim #pvr-tiles .pvr-tile .column .sub-header {
  display: inline-block;
}
.semantic body.slim #pvr-tiles .pvr-tile .column .sub-header:not(:last-child):after {
  content: "|";
  margin-left: 1.1em;
  margin-right: 1em;
}
.semantic body.slim #pvr-tiles .pvr-tile .column.ten.wide .header {
  display: inline-block;
  margin-right: 2em;
  margin-bottom: 0;
}
.semantic body.slim #pvr-tiles .pvr-tile .column.ten.wide .sub-header:after {
  display: none;
}
.semantic body.slim #pvr-tiles .pvr-tile .column.ten.wide .slim.divider {
  margin: 0.1rem 0;
  display: block;
}
.semantic body.beefy #pvr-tiles .pvr-tile .column {
  font-size: 1.2rem;
}
@media screen and (max-width: 1300px) {
  .semantic #main-menu .item {
    font-size: 0.8rem;
  }
  .semantic .pvr-header.ui.segment textarea {
    margin: 0em 0em;
  }
  .semantic .pvr-header.ui.grid.segment .column {
    width: 98% !important;
    margin: 0 auto;
    clear: both;
  }
}
@media screen and (min-width: 1000px) {
  .semantic .ui.help img {
    width: 100%;
    margin-bottom: 1rem;
    padding-left: 10%;
    padding-right: 10%;
  }
}
@media screen and (max-width: 420px) {
  .semantic #pvr-pag {
    width: 100% !important;
  }
}
.semantic .ui.button:hover {
  background-color: #e8e8e8;
  background-image: none;
  box-shadow: "";
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.button:hover .icon {
  opacity: 0.85;
}
.semantic .ui.button:focus {
  background-color: "";
  color: rgba(0, 0, 0, 0.8);
  background-image: "" !important;
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 0px 1px rgba(81, 167, 232, 0.8) inset, 0px 0px 3px 2px rgba(81, 167, 232, 0.8) !important;
}
.semantic .ui.button:focus .icon {
  opacity: 0.85;
}
.semantic .ui.button:active,
.semantic .ui.active.button:active {
  background-color: #cccccc;
  background-image: "";
  color: rgba(0, 0, 0, 0.8);
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 1px 4px 0px rgba(39, 41, 43, 0.15) inset !important;
}
.semantic .ui.active.button {
  background-color: #d0d0d0;
  background-image: none;
  box-shadow: 0px 0px 0px 1px transparent inset;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.active.button:hover {
  background-color: #d0d0d0;
  background-image: none;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.active.button:active {
  background-color: #d0d0d0;
  background-image: none;
}
.semantic .ui.loading.loading.loading.loading.loading.loading.button {
  position: relative;
  cursor: default;
  text-shadow: none !important;
  color: transparent !important;
  opacity: 1;
  pointer-events: none;
  -webkit-transition: all 0s linear, opacity 0.2s ease;
  transition: all 0s linear, opacity 0.2s ease;
}
.semantic .ui.loading.button:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.15);
}
.semantic .ui.loading.button:after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  -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;
}
.semantic .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);
  }
}
.semantic .ui.basic.loading.button:not(.inverted):before {
  border-color: rgba(0, 0, 0, 0.1);
}
.semantic .ui.basic.loading.button:not(.inverted):after {
  border-top-color: #aaaaaa;
}
.semantic .ui.buttons .disabled.button,
.semantic .ui.disabled.button,
.semantic .ui.button:disabled,
.semantic .ui.disabled.button:hover,
.semantic .ui.disabled.active.button {
  cursor: default;
  background-color: #dcddde !important;
  color: rgba(0, 0, 0, 0.4) !important;
  opacity: 0.3 !important;
  background-image: none !important;
  box-shadow: none !important;
  pointer-events: none;
}
.semantic .ui.basic.buttons .ui.disabled.button {
  border-color: rgba(39, 41, 43, 0.5);
}
.semantic .ui.animated.button {
  position: relative;
  overflow: hidden;
  vertical-align: middle;
  padding-right: 0em !important;
}
.semantic .ui.animated.button .content {
  will-change: transform, opacity;
}
.semantic .ui.animated.button .visible.content {
  position: relative;
  margin-right: 1.5em;
}
.semantic .ui.animated.button .hidden.content {
  position: absolute;
  width: 100%;
}
.semantic .ui.animated.button .visible.content,
.semantic .ui.animated.button .hidden.content {
  -webkit-transition: right 0.3s ease 0s;
  transition: right 0.3s ease 0s;
}
.semantic .ui.animated.button .visible.content {
  left: auto;
  right: 0%;
}
.semantic .ui.animated.button .hidden.content {
  top: 50%;
  left: auto;
  right: -100%;
  margin-top: -0.5em;
}
.semantic .ui.animated.button:hover .visible.content {
  left: auto;
  right: 200%;
}
.semantic .ui.animated.button:hover .hidden.content {
  left: auto;
  right: 0%;
}
.semantic .ui.vertical.animated.button .visible.content,
.semantic .ui.vertical.animated.button .hidden.content {
  -webkit-transition: top 0.3s ease, -webkit-transform 0.3s ease;
  transition: top 0.3s ease, transform 0.3s ease;
}
.semantic .ui.vertical.animated.button .visible.content {
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  transform: translateY(0%);
  right: auto;
}
.semantic .ui.vertical.animated.button .hidden.content {
  top: -50%;
  left: 0%;
  right: auto;
}
.semantic .ui.vertical.animated.button:hover .visible.content {
  -webkit-transform: translateY(200%);
  -ms-transform: translateY(200%);
  transform: translateY(200%);
  right: auto;
}
.semantic .ui.vertical.animated.button:hover .hidden.content {
  top: 50%;
  right: auto;
}
.semantic .ui.fade.animated.button .visible.content,
.semantic .ui.fade.animated.button .hidden.content {
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.semantic .ui.fade.animated.button .visible.content {
  left: auto;
  right: auto;
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.semantic .ui.fade.animated.button .hidden.content {
  opacity: 0;
  left: 0%;
  right: auto;
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5);
}
.semantic .ui.fade.animated.button:hover .visible.content {
  left: auto;
  right: auto;
  opacity: 0;
  -webkit-transform: scale(0.75);
  -ms-transform: scale(0.75);
  transform: scale(0.75);
}
.semantic .ui.fade.animated.button:hover .hidden.content {
  left: 0%;
  right: auto;
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.semantic .ui.inverted.button {
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
  background: transparent none;
  color: #ffffff;
  text-shadow: none !important;
}
.semantic .ui.inverted.buttons .button {
  margin: 0px 0px 0px -2px;
}
.semantic .ui.inverted.buttons .button:first-child {
  margin-left: 0em;
}
.semantic .ui.inverted.vertical.buttons .button {
  margin: 0px 0px -2px 0px;
}
.semantic .ui.inverted.vertical.buttons .button:first-child {
  margin-top: 0em;
}
.semantic .ui.inverted.buttons .button:hover {
  position: relative;
}
.semantic .ui.inverted.button:hover {
  background: #ffffff;
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.facebook.button {
  background-color: #3b579d;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.facebook.button:hover {
  background-color: #3f5da8;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.facebook.button:active {
  background-color: #314983;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.twitter.button {
  background-color: #4092cc;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.twitter.button:hover {
  background-color: #4c99cf;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.twitter.button:active {
  background-color: #3180b7;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.google.plus.button {
  background-color: #d34836;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.google.plus.button:hover {
  background-color: #d65343;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.google.plus.button:active {
  background-color: #bc3a29;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.linkedin.button {
  background-color: #1f88be;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.linkedin.button:hover {
  background-color: #2191cb;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.linkedin.button:active {
  background-color: #1a729f;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.youtube.button {
  background-color: #cc181e;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.youtube.button:hover {
  background-color: #da1a20;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.youtube.button:active {
  background-color: #ac1419;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.instagram.button {
  background-color: #49769c;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.instagram.button:hover {
  background-color: #4e7ea6;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.instagram.button:active {
  background-color: #3e6484;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.pinterest.button {
  background-color: #00aced;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.pinterest.button:hover {
  background-color: #00b7fc;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.pinterest.button:active {
  background-color: #0092c9;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.vk.button {
  background-color: #4D7198;
  color: #ffffff;
  background-image: none;
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.vk.button:hover {
  background-color: #5279a2;
  color: #ffffff;
}
.semantic .ui.vk.button:active {
  background-color: #415f80;
  color: #ffffff;
}
.semantic .ui.button > .icon {
  opacity: 0.8;
  margin: 0em 0.4em 0em -0.2em;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  vertical-align: baseline;
  color: "";
}
.semantic .ui.button > .right.icon {
  margin: 0em -0.2em 0em 0.4em;
}
.semantic .ui[class*="left floated"].buttons,
.semantic .ui[class*="left floated"].button {
  float: left;
  margin-left: 0em;
  margin-right: 0.25em;
}
.semantic .ui[class*="right floated"].buttons,
.semantic .ui[class*="right floated"].button {
  float: right;
  margin-right: 0em;
  margin-left: 0.25em;
}
.semantic .ui.compact.buttons .button,
.semantic .ui.compact.button {
  padding: 0.5892825em 1.125em 0.5892825em;
}
.semantic .ui.compact.icon.buttons .button,
.semantic .ui.compact.icon.button {
  padding: 0.5892825em 0.5892825em 0.5892825em;
}
.semantic .ui.compact.labeled.icon.buttons .button,
.semantic .ui.compact.labeled.icon.button {
  padding: 0.5892825em 3.69642em 0.5892825em;
}
.semantic .ui.mini.buttons .button,
.semantic .ui.mini.buttons .or,
.semantic .ui.mini.button {
  font-size: 0.71428571rem;
}
.semantic .ui.tiny.buttons .button,
.semantic .ui.tiny.buttons .or,
.semantic .ui.tiny.button {
  font-size: 0.85714286rem;
}
.semantic .ui.small.buttons .button,
.semantic .ui.small.buttons .or,
.semantic .ui.small.button {
  font-size: 0.92857143rem;
}
.semantic .ui.buttons .button,
.semantic .ui.buttons .or,
.semantic .ui.button {
  font-size: 1rem;
}
.semantic .ui.large.buttons .button,
.semantic .ui.large.buttons .or,
.semantic .ui.large.button {
  font-size: 1.14285714rem;
}
.semantic .ui.big.buttons .button,
.semantic .ui.big.buttons .or,
.semantic .ui.big.button {
  font-size: 1.28571429rem;
}
.semantic .ui.huge.buttons .button,
.semantic .ui.huge.buttons .or,
.semantic .ui.huge.button {
  font-size: 1.42857143rem;
}
.semantic .ui.massive.buttons .button,
.semantic .ui.massive.buttons .or,
.semantic .ui.massive.button {
  font-size: 1.71428571rem;
}
.semantic .ui.icon.buttons .button,
.semantic .ui.icon.button {
  padding: 0.78571em 0.78571em 0.78571em;
}
.semantic .ui.icon.buttons .button > .icon,
.semantic .ui.icon.button > .icon {
  opacity: 0.9;
  margin: 0em;
  vertical-align: top;
}
.semantic .ui.basic.buttons .button,
.semantic .ui.basic.button {
  background: transparent !important;
  background-image: none;
  color: rgba(0, 0, 0, 0.6) !important;
  font-weight: normal;
  border-radius: 0;
  text-transform: none;
  text-shadow: none !important;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.basic.buttons {
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15);
  border-radius: 0;
}
.semantic .ui.basic.buttons .button {
  border-radius: 0em;
}
.semantic .ui.basic.buttons .button:hover,
.semantic .ui.basic.button:hover {
  background: #fafafa !important;
  color: rgba(0, 0, 0, 0.8) !important;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset, 0px 0px 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.basic.buttons .button:active,
.semantic .ui.basic.button:active {
  background: #f8f8f8 !important;
  color: rgba(0, 0, 0, 0.8) !important;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.basic.buttons .active.button,
.semantic .ui.basic.active.button {
  background: rgba(0, 0, 0, 0.05) !important;
  box-shadow: "" !important;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: rgba(39, 41, 43, 0.3);
}
.semantic .ui.basic.buttons .active.button:hover,
.semantic .ui.basic.active.button:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
.semantic .ui.basic.buttons .button:hover {
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset, 0px 0px 0px 0px rgba(39, 41, 43, 0.15) inset inset;
}
.semantic .ui.basic.buttons .button:active {
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(39, 41, 43, 0.15) inset inset;
}
.semantic .ui.basic.buttons .active.button {
  box-shadow: rgba(39, 41, 43, 0.3) inset;
}
.semantic .ui.basic.inverted.buttons .button,
.semantic .ui.basic.inverted.button {
  background-color: transparent !important;
  color: #fafafa !important;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
}
.semantic .ui.basic.inverted.buttons .button:hover,
.semantic .ui.basic.inverted.button:hover {
  color: #ffffff !important;
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}
.semantic .ui.basic.inverted.buttons .button:active,
.semantic .ui.basic.inverted.button:active {
  background-color: rgba(255, 255, 255, 0.05) !important;
  color: #ffffff !important;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9) inset !important;
}
.semantic .ui.basic.inverted.buttons .active.button,
.semantic .ui.basic.inverted.active.button {
  background-color: rgba(255, 255, 255, 0.05);
  color: #ffffff;
  text-shadow: none;
  box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7) inset;
}
.semantic .ui.basic.inverted.buttons .active.button:hover,
.semantic .ui.basic.inverted.active.button:hover {
  background-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}
.semantic .ui.basic.buttons .button {
  border-left: 1px solid rgba(39, 41, 43, 0.15);
  box-shadow: none;
}
.semantic .ui.basic.vertical.buttons .button {
  border-left: none;
}
.semantic .ui.basic.vertical.buttons .button {
  border-left-width: 0px;
  border-top: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.basic.vertical.buttons .button:first-child {
  border-top-width: 0px;
}
.semantic .ui.labeled.icon.buttons .button,
.semantic .ui.labeled.icon.button {
  position: relative;
  padding-left: 4.07142em !important;
  padding-right: 1.5em !important;
}
.semantic .ui.labeled.icon.buttons > .button > .icon,
.semantic .ui.labeled.icon.button > .icon {
  position: absolute;
  width: 2.57142em;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.05);
  text-align: center;
  color: "";
  border-radius: 0 0px 0px 0;
  line-height: 1;
  box-shadow: -1px 0px 0px 0px transparent inset;
}
.semantic .ui.labeled.icon.buttons > .button > .icon,
.semantic .ui.labeled.icon.button > .icon {
  top: 0em;
  left: 0em;
}
.semantic .ui[class*="right labeled"].icon.button {
  padding-right: 4.07142em !important;
  padding-left: 1.5em !important;
}
.semantic .ui[class*="right labeled"].icon.button > .icon {
  left: auto;
  right: 0em;
  border-radius: 0em 0 0 0em;
  box-shadow: 1px 0px 0px 0px transparent inset;
}
.semantic .ui.labeled.icon.buttons > .button > .icon:before,
.semantic .ui.labeled.icon.button > .icon:before,
.semantic .ui.labeled.icon.buttons > .button > .icon:after,
.semantic .ui.labeled.icon.button > .icon:after {
  display: block;
  position: absolute;
  width: 100%;
  top: 50%;
  text-align: center;
  margin-top: -0.5em;
}
.semantic .ui.labeled.icon.buttons .button > .icon {
  border-radius: 0em;
}
.semantic .ui.labeled.icon.buttons .button:first-child > .icon {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.semantic .ui.labeled.icon.buttons .button:last-child > .icon {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.semantic .ui.vertical.labeled.icon.buttons .button:first-child > .icon {
  border-radius: 0em;
  border-top-left-radius: 0;
}
.semantic .ui.vertical.labeled.icon.buttons .button:last-child > .icon {
  border-radius: 0em;
  border-bottom-left-radius: 0;
}
.semantic .ui.fluid[class*="left labeled"].icon.button,
.semantic .ui.fluid[class*="right labeled"].icon.button {
  padding-left: 1.5em !important;
  padding-right: 1.5em !important;
}
.semantic .ui.toggle.buttons .active.button,
.semantic .ui.buttons .button.toggle.active,
.semantic .ui.button.toggle.active {
  background-color: #2db475 !important;
  box-shadow: none !important;
  text-shadow: none;
  color: #ffffff !important;
}
.semantic .ui.button.toggle.active:hover {
  background-color: #30c07d !important;
  text-shadow: none;
  color: #ffffff !important;
}
.semantic .ui.circular.button {
  border-radius: 10em;
}
.semantic .ui.circular.button > .icon {
  width: 1em;
  vertical-align: baseline;
}
.semantic .ui.attached.button {
  display: block;
  margin: 0em;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) !important;
  border-radius: 0em;
}
.semantic .ui.attached.top.button {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.attached.bottom.button {
  border-radius: 0em 0em 0 0;
}
.semantic .ui.attached.left.button {
  display: inline-block;
  border-left: none;
  padding-right: 0.75em;
  text-align: right;
  border-radius: 0 0em 0em 0;
}
.semantic .ui.attached.right.button {
  display: inline-block;
  padding-left: 0.75em;
  text-align: left;
  border-radius: 0em 0 0 0em;
}
.semantic .ui.buttons .or {
  position: relative;
  float: left;
  width: 0.3em;
  height: 2.57142em;
  z-index: 3;
}
.semantic .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.892855em;
  margin-left: -0.892855em;
  width: 1.78571em;
  height: 1.78571em;
  line-height: 1.78571em;
  color: rgba(0, 0, 0, 0.4);
  font-style: normal;
  font-weight: bold;
  box-shadow: 0px 0px 0px 1px transparent inset;
}
.semantic .ui.buttons .or[data-text]:before {
  content: attr(data-text);
}
.semantic .ui.fluid.buttons .or {
  width: 0em !important;
}
.semantic .ui.fluid.buttons .or:after {
  display: none;
}
.semantic .attached.ui.buttons {
  margin: 0px;
  border-radius: 0em 0em 0em 0em;
}
.semantic .attached.ui.buttons .button {
  margin: 0em;
}
.semantic .attached.ui.buttons .button:first-child {
  border-radius: 0em 0em 0em 0em;
}
.semantic .attached.ui.buttons .button:last-child {
  border-radius: 0em 0em 0em 0em;
}
.semantic [class*="top attached"].ui.buttons {
  margin-bottom: -1px;
  border-radius: 0 0 0em 0em;
}
.semantic [class*="top attached"].ui.buttons .button:first-child {
  border-radius: 0 0em 0em 0em;
}
.semantic [class*="top attached"].ui.buttons .button:last-child {
  border-radius: 0em 0 0em 0em;
}
.semantic [class*="bottom attached"].ui.buttons {
  margin-top: -1px;
  border-radius: 0em 0em 0 0;
}
.semantic [class*="bottom attached"].ui.buttons .button:first-child {
  border-radius: 0em 0em 0em 0;
}
.semantic [class*="bottom attached"].ui.buttons .button:last-child {
  border-radius: 0em 0em 0 0em;
}
.semantic [class*="left attached"].ui.buttons {
  margin-left: -1px;
  border-radius: 0em 0 0 0em;
}
.semantic [class*="left attached"].ui.buttons .button:first-child {
  margin-left: -1px;
  border-radius: 0em 0 0em 0em;
}
.semantic [class*="left attached"].ui.buttons .button:last-child {
  margin-left: -1px;
  border-radius: 0em 0em 0 0em;
}
.semantic [class*="right attached"].ui.buttons,
.semantic [class*="right attached"].ui.buttons .button {
  margin-right: -1px;
  border-radius: 0 0em 0em 0;
}
.semantic [class*="right attached"].ui.buttons .button:first-child {
  margin-left: -1px;
  border-radius: 0 0em 0em 0em;
}
.semantic [class*="right attached"].ui.buttons .button:last-child {
  margin-left: -1px;
  border-radius: 0em 0em 0em 0;
}
.semantic .ui.fluid.buttons,
.semantic .ui.button.fluid,
.semantic .ui.fluid.buttons > .button {
  display: block;
  width: 100%;
}
.semantic .ui.\32 .buttons,
.semantic .ui.two.buttons {
  width: 100%;
}
.semantic .ui.\32 .buttons > .button,
.semantic .ui.two.buttons > .button {
  width: 50%;
}
.semantic .ui.\33 .buttons,
.semantic .ui.three.buttons {
  width: 100%;
}
.semantic .ui.\33 .buttons > .button,
.semantic .ui.three.buttons > .button {
  width: 33.333%;
}
.semantic .ui.\34 .buttons,
.semantic .ui.four.buttons {
  width: 100%;
}
.semantic .ui.\34 .buttons > .button,
.semantic .ui.four.buttons > .button {
  width: 25%;
}
.semantic .ui.\35 .buttons,
.semantic .ui.five.buttons {
  width: 100%;
}
.semantic .ui.\35 .buttons > .button,
.semantic .ui.five.buttons > .button {
  width: 20%;
}
.semantic .ui.\36 .buttons,
.semantic .ui.six.buttons {
  width: 100%;
}
.semantic .ui.\36 .buttons > .button,
.semantic .ui.six.buttons > .button {
  width: 16.666%;
}
.semantic .ui.\37 .buttons,
.semantic .ui.seven.buttons {
  width: 100%;
}
.semantic .ui.\37 .buttons > .button,
.semantic .ui.seven.buttons > .button {
  width: 14.285%;
}
.semantic .ui.\38 .buttons,
.semantic .ui.eight.buttons {
  width: 100%;
}
.semantic .ui.\38 .buttons > .button,
.semantic .ui.eight.buttons > .button {
  width: 12.5%;
}
.semantic .ui.\39 .buttons,
.semantic .ui.nine.buttons {
  width: 100%;
}
.semantic .ui.\39 .buttons > .button,
.semantic .ui.nine.buttons > .button {
  width: 11.11%;
}
.semantic .ui.\31 0.buttons,
.semantic .ui.ten.buttons {
  width: 100%;
}
.semantic .ui.\31 0.buttons > .button,
.semantic .ui.ten.buttons > .button {
  width: 10%;
}
.semantic .ui.\31 1.buttons,
.semantic .ui.eleven.buttons {
  width: 100%;
}
.semantic .ui.\31 1.buttons > .button,
.semantic .ui.eleven.buttons > .button {
  width: 9.09%;
}
.semantic .ui.\31 2.buttons,
.semantic .ui.twelve.buttons {
  width: 100%;
}
.semantic .ui.\31 2.buttons > .button,
.semantic .ui.twelve.buttons > .button {
  width: 8.3333%;
}
.semantic .ui.fluid.vertical.buttons,
.semantic .ui.fluid.vertical.buttons > .button {
  display: block;
  width: auto;
}
.semantic .ui.\32 .vertical.buttons > .button,
.semantic .ui.two.vertical.buttons > .button {
  height: 50%;
}
.semantic .ui.\33 .vertical.buttons > .button,
.semantic .ui.three.vertical.buttons > .button {
  height: 33.333%;
}
.semantic .ui.\34 .vertical.buttons > .button,
.semantic .ui.four.vertical.buttons > .button {
  height: 25%;
}
.semantic .ui.\35 .vertical.buttons > .button,
.semantic .ui.five.vertical.buttons > .button {
  height: 20%;
}
.semantic .ui.\36 .vertical.buttons > .button,
.semantic .ui.six.vertical.buttons > .button {
  height: 16.666%;
}
.semantic .ui.\37 .vertical.buttons > .button,
.semantic .ui.seven.vertical.buttons > .button {
  height: 14.285%;
}
.semantic .ui.\38 .vertical.buttons > .button,
.semantic .ui.eight.vertical.buttons > .button {
  height: 12.5%;
}
.semantic .ui.\39 .vertical.buttons > .button,
.semantic .ui.nine.vertical.buttons > .button {
  height: 11.11%;
}
.semantic .ui.\31 0.vertical.buttons > .button,
.semantic .ui.ten.vertical.buttons > .button {
  height: 10%;
}
.semantic .ui.\31 1.vertical.buttons > .button,
.semantic .ui.eleven.vertical.buttons > .button {
  height: 9.09%;
}
.semantic .ui.\31 2.vertical.buttons > .button,
.semantic .ui.twelve.vertical.buttons > .button {
  height: 8.3333%;
}
.semantic .ui.black.buttons .button,
.semantic .ui.black.button {
  background-color: #1b1c1d;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.black.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.black.buttons .button:hover,
.semantic .ui.black.button:hover {
  background-color: #1b1c1d;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.black.buttons .button:active,
.semantic .ui.black.button:active {
  background-color: #0a0a0b;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.black.buttons .active.button,
.semantic .ui.black.buttons .active.button:active,
.semantic .ui.black.active.button,
.semantic .ui.black.button .active.button:active {
  background-color: #0f0f10;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.black.buttons .button,
.semantic .ui.basic.black.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.black.buttons .button:hover,
.semantic .ui.basic.black.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #1b1c1d inset !important;
  color: #1b1c1d !important;
}
.semantic .ui.basic.black.buttons .button:active,
.semantic .ui.basic.black.button:active {
  box-shadow: 0px 0px 0px 2px #0a0a0b inset !important;
  color: #0a0a0b !important;
}
.semantic .ui.basic.black.buttons .active.button,
.semantic .ui.basic.black.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #0a0a0b inset !important;
  color: #0a0a0b !important;
}
.semantic .ui.buttons > .basic.black.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.black.buttons .button,
.semantic .ui.inverted.black.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #d4d4d5 inset !important;
  color: #ffffff;
}
.semantic .ui.inverted.black.buttons .button:hover,
.semantic .ui.inverted.black.button:hover {
  box-shadow: 0px 0px 0px 2px #333333 inset !important;
  background-color: #333333;
  color: #ffffff;
}
.semantic .ui.inverted.black.buttons .active.button,
.semantic .ui.inverted.black.active.button {
  box-shadow: 0px 0px 0px 2px #333333 inset !important;
  background-color: #333333;
  color: #ffffff;
}
.semantic .ui.inverted.black.buttons .button:active,
.semantic .ui.inverted.black.button:active {
  box-shadow: 0px 0px 0px 2px #212121 inset !important;
  background-color: #212121;
  color: #ffffff;
}
.semantic .ui.inverted.black.basic.buttons .button,
.semantic .ui.inverted.black.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.black.basic.buttons .button:hover,
.semantic .ui.inverted.black.buttons .basic.button:hover,
.semantic .ui.inverted.black.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #333333 inset !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.black.basic.buttons .active.button,
.semantic .ui.inverted.black.buttons .basic.active.button,
.semantic .ui.inverted.black.basic.active.button {
  box-shadow: 0px 0px 0px 2px #333333 inset !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.black.basic.buttons .button:active,
.semantic .ui.inverted.black.buttons .basic.button:active,
.semantic .ui.inverted.black.basic.button:active {
  box-shadow: 0px 0px 0px 2px #212121 inset !important;
  color: #ffffff !important;
}
.semantic .ui.blue.buttons .button,
.semantic .ui.blue.button {
  background-color: #3b83c0;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.blue.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.blue.buttons .button:hover,
.semantic .ui.blue.button:hover {
  background-color: #458ac6;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.blue.buttons .button:active,
.semantic .ui.blue.button:active {
  background-color: #3370a5;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.blue.buttons .active.button,
.semantic .ui.blue.buttons .active.button:active,
.semantic .ui.blue.active.button,
.semantic .ui.blue.button .active.button:active {
  background-color: #3576ac;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.blue.buttons .button,
.semantic .ui.basic.blue.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.blue.buttons .button:hover,
.semantic .ui.basic.blue.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #458ac6 inset !important;
  color: #458ac6 !important;
}
.semantic .ui.basic.blue.buttons .button:active,
.semantic .ui.basic.blue.button:active {
  box-shadow: 0px 0px 0px 2px #3370a5 inset !important;
  color: #3370a5 !important;
}
.semantic .ui.basic.blue.buttons .active.button,
.semantic .ui.basic.blue.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #3370a5 inset !important;
  color: #3370a5 !important;
}
.semantic .ui.buttons > .basic.blue.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.blue.buttons .button,
.semantic .ui.inverted.blue.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #54c8ff inset !important;
  color: #54c8ff;
}
.semantic .ui.inverted.blue.buttons .button:hover,
.semantic .ui.inverted.blue.button:hover {
  box-shadow: 0px 0px 0px 2px #54c8ff inset !important;
  background-color: #54c8ff;
  color: #ffffff;
}
.semantic .ui.inverted.blue.buttons .active.button,
.semantic .ui.inverted.blue.active.button {
  box-shadow: 0px 0px 0px 2px #54c8ff inset !important;
  background-color: #54c8ff;
  color: #ffffff;
}
.semantic .ui.inverted.blue.buttons .button:active,
.semantic .ui.inverted.blue.button:active {
  box-shadow: 0px 0px 0px 2px #30bdff inset !important;
  background-color: #30bdff;
  color: #ffffff;
}
.semantic .ui.inverted.blue.basic.buttons .button,
.semantic .ui.inverted.blue.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.blue.basic.buttons .button:hover,
.semantic .ui.inverted.blue.buttons .basic.button:hover,
.semantic .ui.inverted.blue.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #54c8ff inset !important;
  color: #54c8ff !important;
}
.semantic .ui.inverted.blue.basic.buttons .active.button,
.semantic .ui.inverted.blue.buttons .basic.active.button,
.semantic .ui.inverted.blue.basic.active.button {
  box-shadow: 0px 0px 0px 2px #54c8ff inset !important;
  color: #54c8ff !important;
}
.semantic .ui.inverted.blue.basic.buttons .button:active,
.semantic .ui.inverted.blue.buttons .basic.button:active,
.semantic .ui.inverted.blue.basic.button:active {
  box-shadow: 0px 0px 0px 2px #30bdff inset !important;
  color: #54c8ff !important;
}
.semantic .ui.green.buttons .button,
.semantic .ui.green.button {
  background-color: #2db475;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.green.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.green.buttons .button:hover,
.semantic .ui.green.button:hover {
  background-color: #30c07d;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.green.buttons .button:active,
.semantic .ui.green.button:active {
  background-color: #269762;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.green.buttons .active.button,
.semantic .ui.green.buttons .active.button:active,
.semantic .ui.green.active.button,
.semantic .ui.green.button .active.button:active {
  background-color: #28a068;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.green.buttons .button,
.semantic .ui.basic.green.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.green.buttons .button:hover,
.semantic .ui.basic.green.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #30c07d inset !important;
  color: #30c07d !important;
}
.semantic .ui.basic.green.buttons .button:active,
.semantic .ui.basic.green.button:active {
  box-shadow: 0px 0px 0px 2px #269762 inset !important;
  color: #269762 !important;
}
.semantic .ui.basic.green.buttons .active.button,
.semantic .ui.basic.green.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #269762 inset !important;
  color: #269762 !important;
}
.semantic .ui.buttons > .basic.green.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.green.buttons .button,
.semantic .ui.inverted.green.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #cbeddd inset !important;
  color: #cbeddd;
}
.semantic .ui.inverted.green.buttons .button:hover,
.semantic .ui.inverted.green.button:hover {
  box-shadow: 0px 0px 0px 2px #cbeddd inset !important;
  background-color: #cbeddd;
  color: #ffffff;
}
.semantic .ui.inverted.green.buttons .active.button,
.semantic .ui.inverted.green.active.button {
  box-shadow: 0px 0px 0px 2px #cbeddd inset !important;
  background-color: #cbeddd;
  color: #ffffff;
}
.semantic .ui.inverted.green.buttons .button:active,
.semantic .ui.inverted.green.button:active {
  box-shadow: 0px 0px 0px 2px #b0e4cc inset !important;
  background-color: #b0e4cc;
  color: #ffffff;
}
.semantic .ui.inverted.green.basic.buttons .button,
.semantic .ui.inverted.green.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.green.basic.buttons .button:hover,
.semantic .ui.inverted.green.buttons .basic.button:hover,
.semantic .ui.inverted.green.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #cbeddd inset !important;
  color: #cbeddd !important;
}
.semantic .ui.inverted.green.basic.buttons .active.button,
.semantic .ui.inverted.green.buttons .basic.active.button,
.semantic .ui.inverted.green.basic.active.button {
  box-shadow: 0px 0px 0px 2px #cbeddd inset !important;
  color: #cbeddd !important;
}
.semantic .ui.inverted.green.basic.buttons .button:active,
.semantic .ui.inverted.green.buttons .basic.button:active,
.semantic .ui.inverted.green.basic.button:active {
  box-shadow: 0px 0px 0px 2px #b0e4cc inset !important;
  color: #cbeddd !important;
}
.semantic .ui.orange.buttons .button,
.semantic .ui.orange.button {
  background-color: #e07b53;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.orange.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.orange.buttons .button:hover,
.semantic .ui.orange.button:hover {
  background-color: #e28560;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.orange.buttons .button:active,
.semantic .ui.orange.button:active {
  background-color: #db6435;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.orange.buttons .active.button,
.semantic .ui.orange.buttons .active.button:active,
.semantic .ui.orange.active.button,
.semantic .ui.orange.button .active.button:active {
  background-color: #dc6a3d;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.orange.buttons .button,
.semantic .ui.basic.orange.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.orange.buttons .button:hover,
.semantic .ui.basic.orange.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #e28560 inset !important;
  color: #e28560 !important;
}
.semantic .ui.basic.orange.buttons .button:active,
.semantic .ui.basic.orange.button:active {
  box-shadow: 0px 0px 0px 2px #db6435 inset !important;
  color: #db6435 !important;
}
.semantic .ui.basic.orange.buttons .active.button,
.semantic .ui.basic.orange.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #db6435 inset !important;
  color: #db6435 !important;
}
.semantic .ui.buttons > .basic.orange.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.orange.buttons .button,
.semantic .ui.inverted.orange.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #ff851b inset !important;
  color: #ff851b;
}
.semantic .ui.inverted.orange.buttons .button:hover,
.semantic .ui.inverted.orange.button:hover {
  box-shadow: 0px 0px 0px 2px #ff851b inset !important;
  background-color: #ff851b;
  color: #ffffff;
}
.semantic .ui.inverted.orange.buttons .active.button,
.semantic .ui.inverted.orange.active.button {
  box-shadow: 0px 0px 0px 2px #ff851b inset !important;
  background-color: #ff851b;
  color: #ffffff;
}
.semantic .ui.inverted.orange.buttons .button:active,
.semantic .ui.inverted.orange.button:active {
  box-shadow: 0px 0px 0px 2px #f67300 inset !important;
  background-color: #f67300;
  color: #ffffff;
}
.semantic .ui.inverted.orange.basic.buttons .button,
.semantic .ui.inverted.orange.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.orange.basic.buttons .button:hover,
.semantic .ui.inverted.orange.buttons .basic.button:hover,
.semantic .ui.inverted.orange.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff851b inset !important;
  color: #ff851b !important;
}
.semantic .ui.inverted.orange.basic.buttons .active.button,
.semantic .ui.inverted.orange.buttons .basic.active.button,
.semantic .ui.inverted.orange.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff851b inset !important;
  color: #ff851b !important;
}
.semantic .ui.inverted.orange.basic.buttons .button:active,
.semantic .ui.inverted.orange.buttons .basic.button:active,
.semantic .ui.inverted.orange.basic.button:active {
  box-shadow: 0px 0px 0px 2px #f67300 inset !important;
  color: #ff851b !important;
}
.semantic .ui.pink.buttons .button,
.semantic .ui.pink.button {
  background-color: #d9499a;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.pink.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.pink.buttons .button:hover,
.semantic .ui.pink.button:hover {
  background-color: #dc56a1;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.pink.buttons .button:active,
.semantic .ui.pink.button:active {
  background-color: #d22c8a;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.pink.buttons .active.button,
.semantic .ui.pink.buttons .active.button:active,
.semantic .ui.pink.active.button,
.semantic .ui.pink.button .active.button:active {
  background-color: #d5348e;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.pink.buttons .button,
.semantic .ui.basic.pink.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.pink.buttons .button:hover,
.semantic .ui.basic.pink.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #dc56a1 inset !important;
  color: #dc56a1 !important;
}
.semantic .ui.basic.pink.buttons .button:active,
.semantic .ui.basic.pink.button:active {
  box-shadow: 0px 0px 0px 2px #d22c8a inset !important;
  color: #d22c8a !important;
}
.semantic .ui.basic.pink.buttons .active.button,
.semantic .ui.basic.pink.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #d22c8a inset !important;
  color: #d22c8a !important;
}
.semantic .ui.buttons > .basic.pink.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.pink.buttons .button,
.semantic .ui.inverted.pink.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #ff8edf inset !important;
  color: #ff8edf;
}
.semantic .ui.inverted.pink.buttons .button:hover,
.semantic .ui.inverted.pink.button:hover {
  box-shadow: 0px 0px 0px 2px #ff8edf inset !important;
  background-color: #ff8edf;
  color: #ffffff;
}
.semantic .ui.inverted.pink.buttons .active.button,
.semantic .ui.inverted.pink.active.button {
  box-shadow: 0px 0px 0px 2px #ff8edf inset !important;
  background-color: #ff8edf;
  color: #ffffff;
}
.semantic .ui.inverted.pink.buttons .button:active,
.semantic .ui.inverted.pink.button:active {
  box-shadow: 0px 0px 0px 2px #ff6ad5 inset !important;
  background-color: #ff6ad5;
  color: #ffffff;
}
.semantic .ui.inverted.pink.basic.buttons .button,
.semantic .ui.inverted.pink.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.pink.basic.buttons .button:hover,
.semantic .ui.inverted.pink.buttons .basic.button:hover,
.semantic .ui.inverted.pink.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff8edf inset !important;
  color: #ff8edf !important;
}
.semantic .ui.inverted.pink.basic.buttons .active.button,
.semantic .ui.inverted.pink.buttons .basic.active.button,
.semantic .ui.inverted.pink.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff8edf inset !important;
  color: #ff8edf !important;
}
.semantic .ui.inverted.pink.basic.buttons .button:active,
.semantic .ui.inverted.pink.buttons .basic.button:active,
.semantic .ui.inverted.pink.basic.button:active {
  box-shadow: 0px 0px 0px 2px #ff6ad5 inset !important;
  color: #ff8edf !important;
}
.semantic .ui.purple.buttons .button,
.semantic .ui.purple.button {
  background-color: #564f8a;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.purple.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.purple.buttons .button:hover,
.semantic .ui.purple.button:hover {
  background-color: #5c5594;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.purple.buttons .button:active,
.semantic .ui.purple.button:active {
  background-color: #484273;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.purple.buttons .active.button,
.semantic .ui.purple.buttons .active.button:active,
.semantic .ui.purple.active.button,
.semantic .ui.purple.button .active.button:active {
  background-color: #4c467a;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.purple.buttons .button,
.semantic .ui.basic.purple.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.purple.buttons .button:hover,
.semantic .ui.basic.purple.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #5c5594 inset !important;
  color: #5c5594 !important;
}
.semantic .ui.basic.purple.buttons .button:active,
.semantic .ui.basic.purple.button:active {
  box-shadow: 0px 0px 0px 2px #484273 inset !important;
  color: #484273 !important;
}
.semantic .ui.basic.purple.buttons .active.button,
.semantic .ui.basic.purple.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #484273 inset !important;
  color: #484273 !important;
}
.semantic .ui.buttons > .basic.purple.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.purple.buttons .button,
.semantic .ui.inverted.purple.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #cdc6ff inset !important;
  color: #cdc6ff;
}
.semantic .ui.inverted.purple.buttons .button:hover,
.semantic .ui.inverted.purple.button:hover {
  box-shadow: 0px 0px 0px 2px #cdc6ff inset !important;
  background-color: #cdc6ff;
  color: #1b1c1d;
}
.semantic .ui.inverted.purple.buttons .active.button,
.semantic .ui.inverted.purple.active.button {
  box-shadow: 0px 0px 0px 2px #cdc6ff inset !important;
  background-color: #cdc6ff;
  color: #1b1c1d;
}
.semantic .ui.inverted.purple.buttons .button:active,
.semantic .ui.inverted.purple.button:active {
  box-shadow: 0px 0px 0px 2px #aea2ff inset !important;
  background-color: #aea2ff;
  color: #1b1c1d;
}
.semantic .ui.inverted.purple.basic.buttons .button,
.semantic .ui.inverted.purple.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.purple.basic.buttons .button:hover,
.semantic .ui.inverted.purple.buttons .basic.button:hover,
.semantic .ui.inverted.purple.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #cdc6ff inset !important;
  color: #cdc6ff !important;
}
.semantic .ui.inverted.purple.basic.buttons .active.button,
.semantic .ui.inverted.purple.buttons .basic.active.button,
.semantic .ui.inverted.purple.basic.active.button {
  box-shadow: 0px 0px 0px 2px #cdc6ff inset !important;
  color: #cdc6ff !important;
}
.semantic .ui.inverted.purple.basic.buttons .button:active,
.semantic .ui.inverted.purple.buttons .basic.button:active,
.semantic .ui.inverted.purple.basic.button:active {
  box-shadow: 0px 0px 0px 2px #aea2ff inset !important;
  color: #cdc6ff !important;
}
.semantic .ui.red.buttons .button,
.semantic .ui.red.button {
  background-color: #cc181e;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.red.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.red.buttons .button:hover,
.semantic .ui.red.button:hover {
  background-color: #da1a20;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.red.buttons .button:active,
.semantic .ui.red.button:active {
  background-color: #ac1419;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.red.buttons .active.button,
.semantic .ui.red.buttons .active.button:active,
.semantic .ui.red.active.button,
.semantic .ui.red.button .active.button:active {
  background-color: #b5151b;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.red.buttons .button,
.semantic .ui.basic.red.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.red.buttons .button:hover,
.semantic .ui.basic.red.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #da1a20 inset !important;
  color: #da1a20 !important;
}
.semantic .ui.basic.red.buttons .button:active,
.semantic .ui.basic.red.button:active {
  box-shadow: 0px 0px 0px 2px #ac1419 inset !important;
  color: #ac1419 !important;
}
.semantic .ui.basic.red.buttons .active.button,
.semantic .ui.basic.red.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #ac1419 inset !important;
  color: #ac1419 !important;
}
.semantic .ui.buttons > .basic.red.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.red.buttons .button,
.semantic .ui.inverted.red.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #ff695e inset !important;
  color: #ff695e;
}
.semantic .ui.inverted.red.buttons .button:hover,
.semantic .ui.inverted.red.button:hover {
  box-shadow: 0px 0px 0px 2px #ff695e inset !important;
  background-color: #ff695e;
  color: #ffffff;
}
.semantic .ui.inverted.red.buttons .active.button,
.semantic .ui.inverted.red.active.button {
  box-shadow: 0px 0px 0px 2px #ff695e inset !important;
  background-color: #ff695e;
  color: #ffffff;
}
.semantic .ui.inverted.red.buttons .button:active,
.semantic .ui.inverted.red.button:active {
  box-shadow: 0px 0px 0px 2px #ff483a inset !important;
  background-color: #ff483a;
  color: #ffffff;
}
.semantic .ui.inverted.red.basic.buttons .button,
.semantic .ui.inverted.red.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.red.basic.buttons .button:hover,
.semantic .ui.inverted.red.buttons .basic.button:hover,
.semantic .ui.inverted.red.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ff695e inset !important;
  color: #ff695e !important;
}
.semantic .ui.inverted.red.basic.buttons .active.button,
.semantic .ui.inverted.red.buttons .basic.active.button,
.semantic .ui.inverted.red.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ff695e inset !important;
  color: #ff695e !important;
}
.semantic .ui.inverted.red.basic.buttons .button:active,
.semantic .ui.inverted.red.buttons .basic.button:active,
.semantic .ui.inverted.red.basic.button:active {
  box-shadow: 0px 0px 0px 2px #ff483a inset !important;
  color: #ff695e !important;
}
.semantic .ui.teal.buttons .button,
.semantic .ui.teal.button {
  background-color: #00b5ad;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.teal.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.teal.buttons .button:hover,
.semantic .ui.teal.button:hover {
  background-color: #00c4bc;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.teal.buttons .button:active,
.semantic .ui.teal.button:active {
  background-color: #00918b;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.teal.buttons .active.button,
.semantic .ui.teal.buttons .active.button:active,
.semantic .ui.teal.active.button,
.semantic .ui.teal.button .active.button:active {
  background-color: #009c95;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.teal.buttons .button,
.semantic .ui.basic.teal.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.teal.buttons .button:hover,
.semantic .ui.basic.teal.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #00c4bc inset !important;
  color: #00c4bc !important;
}
.semantic .ui.basic.teal.buttons .button:active,
.semantic .ui.basic.teal.button:active {
  box-shadow: 0px 0px 0px 2px #00918b inset !important;
  color: #00918b !important;
}
.semantic .ui.basic.teal.buttons .active.button,
.semantic .ui.basic.teal.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #00918b inset !important;
  color: #00918b !important;
}
.semantic .ui.buttons > .basic.teal.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.teal.buttons .button,
.semantic .ui.inverted.teal.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #6dffff inset !important;
  color: #6dffff;
}
.semantic .ui.inverted.teal.buttons .button:hover,
.semantic .ui.inverted.teal.button:hover {
  box-shadow: 0px 0px 0px 2px #6dffff inset !important;
  background-color: #6dffff;
  color: #1b1c1d;
}
.semantic .ui.inverted.teal.buttons .active.button,
.semantic .ui.inverted.teal.active.button {
  box-shadow: 0px 0px 0px 2px #6dffff inset !important;
  background-color: #6dffff;
  color: #1b1c1d;
}
.semantic .ui.inverted.teal.buttons .button:active,
.semantic .ui.inverted.teal.button:active {
  box-shadow: 0px 0px 0px 2px #49ffff inset !important;
  background-color: #49ffff;
  color: #1b1c1d;
}
.semantic .ui.inverted.teal.basic.buttons .button,
.semantic .ui.inverted.teal.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.teal.basic.buttons .button:hover,
.semantic .ui.inverted.teal.buttons .basic.button:hover,
.semantic .ui.inverted.teal.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #6dffff inset !important;
  color: #6dffff !important;
}
.semantic .ui.inverted.teal.basic.buttons .active.button,
.semantic .ui.inverted.teal.buttons .basic.active.button,
.semantic .ui.inverted.teal.basic.active.button {
  box-shadow: 0px 0px 0px 2px #6dffff inset !important;
  color: #6dffff !important;
}
.semantic .ui.inverted.teal.basic.buttons .button:active,
.semantic .ui.inverted.teal.buttons .basic.button:active,
.semantic .ui.inverted.teal.basic.button:active {
  box-shadow: 0px 0px 0px 2px #49ffff inset !important;
  color: #6dffff !important;
}
.semantic .ui.yellow.buttons .button,
.semantic .ui.yellow.button {
  background-color: #f2c61f;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.yellow.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.yellow.buttons .button:hover,
.semantic .ui.yellow.button:hover {
  background-color: #f3ca2d;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.yellow.buttons .button:active,
.semantic .ui.yellow.button:active {
  background-color: #e0b40d;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.yellow.buttons .active.button,
.semantic .ui.yellow.buttons .active.button:active,
.semantic .ui.yellow.active.button,
.semantic .ui.yellow.button .active.button:active {
  background-color: #eabc0e;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.basic.yellow.buttons .button,
.semantic .ui.basic.yellow.button {
  box-shadow: 0px 0px 0px 2px rgba(39, 41, 43, 0.15) inset !important;
  color: rgba(0, 0, 0, 0.6) !important;
}
.semantic .ui.basic.yellow.buttons .button:hover,
.semantic .ui.basic.yellow.button:hover {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #f3ca2d inset !important;
  color: #f3ca2d !important;
}
.semantic .ui.basic.yellow.buttons .button:active,
.semantic .ui.basic.yellow.button:active {
  box-shadow: 0px 0px 0px 2px #e0b40d inset !important;
  color: #e0b40d !important;
}
.semantic .ui.basic.yellow.buttons .active.button,
.semantic .ui.basic.yellow.active.button {
  background: transparent !important;
  box-shadow: 0px 0px 0px 2px #e0b40d inset !important;
  color: #e0b40d !important;
}
.semantic .ui.buttons > .basic.yellow.button:not(:first-child) {
  margin-left: -2px;
}
.semantic .ui.inverted.yellow.buttons .button,
.semantic .ui.inverted.yellow.button {
  background-color: transparent;
  box-shadow: 0px 0px 0px 2px #ffe21f inset !important;
  color: #ffe21f;
}
.semantic .ui.inverted.yellow.buttons .button:hover,
.semantic .ui.inverted.yellow.button:hover {
  box-shadow: 0px 0px 0px 2px #ffe21f inset !important;
  background-color: #ffe21f;
  color: #1b1c1d;
}
.semantic .ui.inverted.yellow.buttons .active.button,
.semantic .ui.inverted.yellow.active.button {
  box-shadow: 0px 0px 0px 2px #ffe21f inset !important;
  background-color: #ffe21f;
  color: #1b1c1d;
}
.semantic .ui.inverted.yellow.buttons .button:active,
.semantic .ui.inverted.yellow.button:active {
  box-shadow: 0px 0px 0px 2px #fada00 inset !important;
  background-color: #fada00;
  color: #1b1c1d;
}
.semantic .ui.inverted.yellow.basic.buttons .button,
.semantic .ui.inverted.yellow.buttons .basic.button,
.semantic .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;
}
.semantic .ui.inverted.yellow.basic.buttons .button:hover,
.semantic .ui.inverted.yellow.buttons .basic.button:hover,
.semantic .ui.inverted.yellow.basic.button:hover {
  box-shadow: 0px 0px 0px 2px #ffe21f inset !important;
  color: #ffe21f !important;
}
.semantic .ui.inverted.yellow.basic.buttons .active.button,
.semantic .ui.inverted.yellow.buttons .basic.active.button,
.semantic .ui.inverted.yellow.basic.active.button {
  box-shadow: 0px 0px 0px 2px #ffe21f inset !important;
  color: #ffe21f !important;
}
.semantic .ui.inverted.yellow.basic.buttons .button:active,
.semantic .ui.inverted.yellow.buttons .basic.button:active,
.semantic .ui.inverted.yellow.basic.button:active {
  box-shadow: 0px 0px 0px 2px #fada00 inset !important;
  color: #ffe21f !important;
}
.semantic .ui.primary.buttons .button,
.semantic .ui.primary.button {
  background-color: #3b83c0;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.primary.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.primary.buttons .button:hover,
.semantic .ui.primary.button:hover {
  background-color: #458ac6;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.primary.buttons .button:active,
.semantic .ui.primary.button:active {
  background-color: #3370a5;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.primary.buttons .active.button,
.semantic .ui.primary.active.button {
  background-color: #3576ac;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.secondary.buttons .button,
.semantic .ui.secondary.button {
  background-color: #1b1c1d;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.secondary.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.secondary.buttons .button:hover,
.semantic .ui.secondary.button:hover {
  background-color: #222425;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.secondary.buttons .button:active,
.semantic .ui.secondary.button:active {
  background-color: #0a0a0b;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.secondary.buttons .active.button,
.semantic .ui.secondary.active.button {
  background-color: #0f0f10;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.positive.buttons .button,
.semantic .ui.positive.button {
  background-color: #2db475 !important;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.positive.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.positive.buttons .button:hover,
.semantic .ui.positive.button:hover,
.semantic .ui.positive.buttons .active.button,
.semantic .ui.positive.active.button {
  background-color: #30c07d !important;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.positive.buttons .button:active,
.semantic .ui.positive.button:active {
  background-color: #269762 !important;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.positive.buttons .active.button,
.semantic .ui.positive.buttons .active.button:active,
.semantic .ui.positive.active.button,
.semantic .ui.positive.button .active.button:active {
  background-color: #28a068;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.negative.buttons .button,
.semantic .ui.negative.button {
  background-color: #cc181e !important;
  color: #ffffff;
  text-shadow: none;
  background-image: none;
}
.semantic .ui.negative.button {
  box-shadow: 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.negative.buttons .button:hover,
.semantic .ui.negative.button:hover,
.semantic .ui.negative.buttons .active.button,
.semantic .ui.negative.active.button {
  background-color: #da1a20 !important;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.negative.buttons .button:active,
.semantic .ui.negative.button:active {
  background-color: #ac1419 !important;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.negative.buttons .active.button,
.semantic .ui.negative.buttons .active.button:active,
.semantic .ui.negative.active.button,
.semantic .ui.negative.button .active.button:active {
  background-color: #b5151b;
  color: #ffffff;
  text-shadow: none;
}
.semantic .ui.buttons {
  display: inline-block;
  vertical-align: middle;
  margin: 0em 0.25em 0em 0em;
}
.semantic .ui.buttons > .button:hover,
.semantic .ui.buttons > .active.button {
  position: relative;
}
.semantic .ui.buttons:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.semantic .ui.buttons .button:first-child {
  border-left: none;
}
.semantic .ui.buttons:not(.basic):not(.inverted) {
  box-shadow: none;
}
.semantic .ui.buttons > .ui.button:not(.basic):not(.inverted),
.semantic .ui.buttons:not(.basic):not(.inverted) > .button {
  box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.buttons .button {
  margin: 0em;
  float: left;
  border-radius: 0em;
  margin: 0px 0px 0px 0px;
}
.semantic .ui.buttons .button:first-child {
  margin-left: 0em;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.semantic .ui.buttons .button:last-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.semantic .ui.vertical.buttons {
  display: inline-block;
}
.semantic .ui.vertical.buttons .button {
  display: block;
  float: none;
  width: 100%;
  margin: 0px 0px 0px 0px;
  box-shadow: none;
}
.semantic .ui.vertical.buttons .button:first-child,
.semantic .ui.vertical.buttons .mini.button:first-child,
.semantic .ui.vertical.buttons .tiny.button:first-child,
.semantic .ui.vertical.buttons .small.button:first-child,
.semantic .ui.vertical.buttons .massive.button:first-child,
.semantic .ui.vertical.buttons .huge.button:first-child {
  border-radius: 0 0 0px 0px;
}
.semantic .ui.vertical.buttons .button:last-child,
.semantic .ui.vertical.buttons .mini.button:last-child,
.semantic .ui.vertical.buttons .tiny.button:last-child,
.semantic .ui.vertical.buttons .small.button:last-child,
.semantic .ui.vertical.buttons .massive.button:last-child,
.semantic .ui.vertical.buttons .huge.button:last-child,
.semantic .ui.vertical.buttons .gigantic.button:last-child {
  margin-bottom: 0px;
  border-radius: 0px 0px 0 0;
}
.semantic .ui.caution.button:hover {
  background-color: #cc181e;
}
.semantic .ui.filter.button {
  padding-top: 0.45em;
  padding-bottom: 0.55em;
}
.semantic .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;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.semantic .ui.divider:not(.vertical):not(.horizontal) {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.semantic .ui.grid > .ui.divider {
  font-size: 1rem;
}
.semantic .ui.horizontal.divider {
  position: relative;
  height: auto;
  margin: "";
  overflow: hidden;
  line-height: 1;
  text-align: center;
}
.semantic .ui.horizontal.divider:before,
.semantic .ui.horizontal.divider:after {
  position: absolute;
  content: "";
  z-index: 3;
  width: 50%;
  top: 50%;
  height: 0px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.semantic .ui.horizontal.divider:before {
  margin-left: -webkit-calc(-50% - 1em );
  margin-left: calc(-50% - 1em);
}
.semantic .ui.horizontal.divider:after {
  margin-left: 1em;
}
.semantic .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%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.semantic .ui.vertical.divider:before,
.semantic .ui.vertical.divider:after {
  position: absolute;
  left: 50%;
  content: "";
  z-index: 3;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  width: 0%;
  height: -webkit-calc(100% - 1rem );
  height: calc(100% - 1rem);
}
.semantic .ui.vertical.divider:before {
  top: -100%;
}
.semantic .ui.vertical.divider:after {
  top: auto;
  bottom: 0px;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.stackable.grid .ui.vertical.divider,
  .semantic .ui.grid .stackable.row .ui.vertical.divider {
    position: relative;
    margin: 1rem 0rem;
    left: 50%;
    height: auto;
    overflow: hidden;
    line-height: 1;
    text-align: center;
  }
  .semantic .ui.stackable.grid .ui.vertical.divider:before,
  .semantic .ui.grid .stackable.row .ui.vertical.divider:before,
  .semantic .ui.stackable.grid .ui.vertical.divider:after,
  .semantic .ui.grid .stackable.row .ui.vertical.divider:after {
    position: absolute;
    left: auto;
    content: "";
    z-index: 3;
    width: 50%;
    top: 50%;
    height: 0px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .semantic .ui.stackable.grid .ui.vertical.divider:before,
  .semantic .ui.grid .stackable.row .ui.vertical.divider:before {
    margin-left: -51%;
  }
  .semantic .ui.stackable.grid .ui.vertical.divider:after,
  .semantic .ui.grid .stackable.row .ui.vertical.divider:after {
    margin-left: 1em;
  }
}
.semantic .ui.divider > .icon {
  margin: 0rem;
  font-size: 1rem;
  height: 1em;
  vertical-align: middle;
}
.semantic .ui.hidden.divider {
  border-color: transparent !important;
}
.semantic .ui.divider.inverted,
.semantic .ui.vertical.inverted.divider,
.semantic .ui.horizontal.inverted.divider {
  color: #ffffff;
}
.semantic .ui.divider.inverted,
.semantic .ui.divider.inverted:after,
.semantic .ui.divider.inverted:before {
  border-top-color: rgba(0, 0, 0, 0.15) !important;
  border-bottom-color: rgba(255, 255, 255, 0.15) !important;
  border-left-color: rgba(0, 0, 0, 0.15) !important;
  border-right-color: rgba(255, 255, 255, 0.15) !important;
}
.semantic .ui.fitted.divider {
  margin: 0em;
}
.semantic .ui.clearing.divider {
  clear: both;
}
.semantic .ui.section.divider {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.semantic .ui.divider {
  font-size: 1rem;
}
.semantic 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;
}
.semantic i.flag:not(.icon):before {
  display: inline-block;
  content: "";
  background: url("themes/default/assets/images/flags.png") no-repeat 0px 0px;
  width: 16px;
  height: 11px;
}
.semantic i.flag.ad:before,
.semantic i.flag.andorra:before {
  background-position: 0px 0px;
}
.semantic i.flag.ae:before,
.semantic i.flag.united.arab.emirates:before,
.semantic i.flag.uae:before {
  background-position: 0px -26px;
}
.semantic i.flag.af:before,
.semantic i.flag.afghanistan:before {
  background-position: 0px -52px;
}
.semantic i.flag.ag:before,
.semantic i.flag.antigua:before {
  background-position: 0px -78px;
}
.semantic i.flag.ai:before,
.semantic i.flag.anguilla:before {
  background-position: 0px -104px;
}
.semantic i.flag.al:before,
.semantic i.flag.albania:before {
  background-position: 0px -130px;
}
.semantic i.flag.am:before,
.semantic i.flag.armenia:before {
  background-position: 0px -156px;
}
.semantic i.flag.an:before,
.semantic i.flag.netherlands.antilles:before {
  background-position: 0px -182px;
}
.semantic i.flag.ao:before,
.semantic i.flag.angola:before {
  background-position: 0px -208px;
}
.semantic i.flag.ar:before,
.semantic i.flag.argentina:before {
  background-position: 0px -234px;
}
.semantic i.flag.as:before,
.semantic i.flag.american.samoa:before {
  background-position: 0px -260px;
}
.semantic i.flag.at:before,
.semantic i.flag.austria:before {
  background-position: 0px -286px;
}
.semantic i.flag.au:before,
.semantic i.flag.australia:before {
  background-position: 0px -312px;
}
.semantic i.flag.aw:before,
.semantic i.flag.aruba:before {
  background-position: 0px -338px;
}
.semantic i.flag.ax:before,
.semantic i.flag.aland.islands:before {
  background-position: 0px -364px;
}
.semantic i.flag.az:before,
.semantic i.flag.azerbaijan:before {
  background-position: 0px -390px;
}
.semantic i.flag.ba:before,
.semantic i.flag.bosnia:before {
  background-position: 0px -416px;
}
.semantic i.flag.bb:before,
.semantic i.flag.barbados:before {
  background-position: 0px -442px;
}
.semantic i.flag.bd:before,
.semantic i.flag.bangladesh:before {
  background-position: 0px -468px;
}
.semantic i.flag.be:before,
.semantic i.flag.belgium:before {
  background-position: 0px -494px;
}
.semantic i.flag.bf:before,
.semantic i.flag.burkina.faso:before {
  background-position: 0px -520px;
}
.semantic i.flag.bg:before,
.semantic i.flag.bulgaria:before {
  background-position: 0px -546px;
}
.semantic i.flag.bh:before,
.semantic i.flag.bahrain:before {
  background-position: 0px -572px;
}
.semantic i.flag.bi:before,
.semantic i.flag.burundi:before {
  background-position: 0px -598px;
}
.semantic i.flag.bj:before,
.semantic i.flag.benin:before {
  background-position: 0px -624px;
}
.semantic i.flag.bm:before,
.semantic i.flag.bermuda:before {
  background-position: 0px -650px;
}
.semantic i.flag.bn:before,
.semantic i.flag.brunei:before {
  background-position: 0px -676px;
}
.semantic i.flag.bo:before,
.semantic i.flag.bolivia:before {
  background-position: 0px -702px;
}
.semantic i.flag.br:before,
.semantic i.flag.brazil:before {
  background-position: 0px -728px;
}
.semantic i.flag.bs:before,
.semantic i.flag.bahamas:before {
  background-position: 0px -754px;
}
.semantic i.flag.bt:before,
.semantic i.flag.bhutan:before {
  background-position: 0px -780px;
}
.semantic i.flag.bv:before,
.semantic i.flag.bouvet.island:before {
  background-position: 0px -806px;
}
.semantic i.flag.bw:before,
.semantic i.flag.botswana:before {
  background-position: 0px -832px;
}
.semantic i.flag.by:before,
.semantic i.flag.belarus:before {
  background-position: 0px -858px;
}
.semantic i.flag.bz:before,
.semantic i.flag.belize:before {
  background-position: 0px -884px;
}
.semantic i.flag.ca:before,
.semantic i.flag.canada:before {
  background-position: 0px -910px;
}
.semantic i.flag.cc:before,
.semantic i.flag.cocos.islands:before {
  background-position: 0px -962px;
}
.semantic i.flag.cd:before,
.semantic i.flag.congo:before {
  background-position: 0px -988px;
}
.semantic i.flag.cf:before,
.semantic i.flag.central.african.republic:before {
  background-position: 0px -1014px;
}
.semantic i.flag.cg:before,
.semantic i.flag.congo.brazzaville:before {
  background-position: 0px -1040px;
}
.semantic i.flag.ch:before,
.semantic i.flag.switzerland:before {
  background-position: 0px -1066px;
}
.semantic i.flag.ci:before,
.semantic i.flag.cote.divoire:before {
  background-position: 0px -1092px;
}
.semantic i.flag.ck:before,
.semantic i.flag.cook.islands:before {
  background-position: 0px -1118px;
}
.semantic i.flag.cl:before,
.semantic i.flag.chile:before {
  background-position: 0px -1144px;
}
.semantic i.flag.cm:before,
.semantic i.flag.cameroon:before {
  background-position: 0px -1170px;
}
.semantic i.flag.cn:before,
.semantic i.flag.china:before {
  background-position: 0px -1196px;
}
.semantic i.flag.co:before,
.semantic i.flag.colombia:before {
  background-position: 0px -1222px;
}
.semantic i.flag.cr:before,
.semantic i.flag.costa.rica:before {
  background-position: 0px -1248px;
}
.semantic i.flag.cs:before,
.semantic i.flag.serbia:before {
  background-position: 0px -1274px;
}
.semantic i.flag.cu:before,
.semantic i.flag.cuba:before {
  background-position: 0px -1300px;
}
.semantic i.flag.cv:before,
.semantic i.flag.cape.verde:before {
  background-position: 0px -1326px;
}
.semantic i.flag.cx:before,
.semantic i.flag.christmas.island:before {
  background-position: 0px -1352px;
}
.semantic i.flag.cy:before,
.semantic i.flag.cyprus:before {
  background-position: 0px -1378px;
}
.semantic i.flag.cz:before,
.semantic i.flag.czech.republic:before {
  background-position: 0px -1404px;
}
.semantic i.flag.de:before,
.semantic i.flag.germany:before {
  background-position: 0px -1430px;
}
.semantic i.flag.dj:before,
.semantic i.flag.djibouti:before {
  background-position: 0px -1456px;
}
.semantic i.flag.dk:before,
.semantic i.flag.denmark:before {
  background-position: 0px -1482px;
}
.semantic i.flag.dm:before,
.semantic i.flag.dominica:before {
  background-position: 0px -1508px;
}
.semantic i.flag.do:before,
.semantic i.flag.dominican.republic:before {
  background-position: 0px -1534px;
}
.semantic i.flag.dz:before,
.semantic i.flag.algeria:before {
  background-position: 0px -1560px;
}
.semantic i.flag.ec:before,
.semantic i.flag.ecuador:before {
  background-position: 0px -1586px;
}
.semantic i.flag.ee:before,
.semantic i.flag.estonia:before {
  background-position: 0px -1612px;
}
.semantic i.flag.eg:before,
.semantic i.flag.egypt:before {
  background-position: 0px -1638px;
}
.semantic i.flag.eh:before,
.semantic i.flag.western.sahara:before {
  background-position: 0px -1664px;
}
.semantic i.flag.er:before,
.semantic i.flag.eritrea:before {
  background-position: 0px -1716px;
}
.semantic i.flag.es:before,
.semantic i.flag.spain:before {
  background-position: 0px -1742px;
}
.semantic i.flag.et:before,
.semantic i.flag.ethiopia:before {
  background-position: 0px -1768px;
}
.semantic i.flag.eu:before,
.semantic i.flag.european.union:before {
  background-position: 0px -1794px;
}
.semantic i.flag.fi:before,
.semantic i.flag.finland:before {
  background-position: 0px -1846px;
}
.semantic i.flag.fj:before,
.semantic i.flag.fiji:before {
  background-position: 0px -1872px;
}
.semantic i.flag.fk:before,
.semantic i.flag.falkland.islands:before {
  background-position: 0px -1898px;
}
.semantic i.flag.fm:before,
.semantic i.flag.micronesia:before {
  background-position: 0px -1924px;
}
.semantic i.flag.fo:before,
.semantic i.flag.faroe.islands:before {
  background-position: 0px -1950px;
}
.semantic i.flag.fr:before,
.semantic i.flag.france:before {
  background-position: 0px -1976px;
}
.semantic i.flag.ga:before,
.semantic i.flag.gabon:before {
  background-position: -36px 0px;
}
.semantic i.flag.gb:before,
.semantic i.flag.united.kingdom:before {
  background-position: -36px -26px;
}
.semantic i.flag.gd:before,
.semantic i.flag.grenada:before {
  background-position: -36px -52px;
}
.semantic i.flag.ge:before,
.semantic i.flag.georgia:before {
  background-position: -36px -78px;
}
.semantic i.flag.gf:before,
.semantic i.flag.french.guiana:before {
  background-position: -36px -104px;
}
.semantic i.flag.gh:before,
.semantic i.flag.ghana:before {
  background-position: -36px -130px;
}
.semantic i.flag.gi:before,
.semantic i.flag.gibraltar:before {
  background-position: -36px -156px;
}
.semantic i.flag.gl:before,
.semantic i.flag.greenland:before {
  background-position: -36px -182px;
}
.semantic i.flag.gm:before,
.semantic i.flag.gambia:before {
  background-position: -36px -208px;
}
.semantic i.flag.gn:before,
.semantic i.flag.guinea:before {
  background-position: -36px -234px;
}
.semantic i.flag.gp:before,
.semantic i.flag.guadeloupe:before {
  background-position: -36px -260px;
}
.semantic i.flag.gq:before,
.semantic i.flag.equatorial.guinea:before {
  background-position: -36px -286px;
}
.semantic i.flag.gr:before,
.semantic i.flag.greece:before {
  background-position: -36px -312px;
}
.semantic i.flag.gs:before,
.semantic i.flag.sandwich.islands:before {
  background-position: -36px -338px;
}
.semantic i.flag.gt:before,
.semantic i.flag.guatemala:before {
  background-position: -36px -364px;
}
.semantic i.flag.gu:before,
.semantic i.flag.guam:before {
  background-position: -36px -390px;
}
.semantic i.flag.gw:before,
.semantic i.flag.guinea-bissau:before {
  background-position: -36px -416px;
}
.semantic i.flag.gy:before,
.semantic i.flag.guyana:before {
  background-position: -36px -442px;
}
.semantic i.flag.hk:before,
.semantic i.flag.hong.kong:before {
  background-position: -36px -468px;
}
.semantic i.flag.hm:before,
.semantic i.flag.heard.island:before {
  background-position: -36px -494px;
}
.semantic i.flag.hn:before,
.semantic i.flag.honduras:before {
  background-position: -36px -520px;
}
.semantic i.flag.hr:before,
.semantic i.flag.croatia:before {
  background-position: -36px -546px;
}
.semantic i.flag.ht:before,
.semantic i.flag.haiti:before {
  background-position: -36px -572px;
}
.semantic i.flag.hu:before,
.semantic i.flag.hungary:before {
  background-position: -36px -598px;
}
.semantic i.flag.id:before,
.semantic i.flag.indonesia:before {
  background-position: -36px -624px;
}
.semantic i.flag.ie:before,
.semantic i.flag.ireland:before {
  background-position: -36px -650px;
}
.semantic i.flag.il:before,
.semantic i.flag.israel:before {
  background-position: -36px -676px;
}
.semantic i.flag.in:before,
.semantic i.flag.india:before {
  background-position: -36px -702px;
}
.semantic i.flag.io:before,
.semantic i.flag.indian.ocean.territory:before {
  background-position: -36px -728px;
}
.semantic i.flag.iq:before,
.semantic i.flag.iraq:before {
  background-position: -36px -754px;
}
.semantic i.flag.ir:before,
.semantic i.flag.iran:before {
  background-position: -36px -780px;
}
.semantic i.flag.is:before,
.semantic i.flag.iceland:before {
  background-position: -36px -806px;
}
.semantic i.flag.it:before,
.semantic i.flag.italy:before {
  background-position: -36px -832px;
}
.semantic i.flag.jm:before,
.semantic i.flag.jamaica:before {
  background-position: -36px -858px;
}
.semantic i.flag.jo:before,
.semantic i.flag.jordan:before {
  background-position: -36px -884px;
}
.semantic i.flag.jp:before,
.semantic i.flag.japan:before {
  background-position: -36px -910px;
}
.semantic i.flag.ke:before,
.semantic i.flag.kenya:before {
  background-position: -36px -936px;
}
.semantic i.flag.kg:before,
.semantic i.flag.kyrgyzstan:before {
  background-position: -36px -962px;
}
.semantic i.flag.kh:before,
.semantic i.flag.cambodia:before {
  background-position: -36px -988px;
}
.semantic i.flag.ki:before,
.semantic i.flag.kiribati:before {
  background-position: -36px -1014px;
}
.semantic i.flag.km:before,
.semantic i.flag.comoros:before {
  background-position: -36px -1040px;
}
.semantic i.flag.kn:before,
.semantic i.flag.saint.kitts.and.nevis:before {
  background-position: -36px -1066px;
}
.semantic i.flag.kp:before,
.semantic i.flag.north.korea:before {
  background-position: -36px -1092px;
}
.semantic i.flag.kr:before,
.semantic i.flag.south.korea:before {
  background-position: -36px -1118px;
}
.semantic i.flag.kw:before,
.semantic i.flag.kuwait:before {
  background-position: -36px -1144px;
}
.semantic i.flag.ky:before,
.semantic i.flag.cayman.islands:before {
  background-position: -36px -1170px;
}
.semantic i.flag.kz:before,
.semantic i.flag.kazakhstan:before {
  background-position: -36px -1196px;
}
.semantic i.flag.la:before,
.semantic i.flag.laos:before {
  background-position: -36px -1222px;
}
.semantic i.flag.lb:before,
.semantic i.flag.lebanon:before {
  background-position: -36px -1248px;
}
.semantic i.flag.lc:before,
.semantic i.flag.saint.lucia:before {
  background-position: -36px -1274px;
}
.semantic i.flag.li:before,
.semantic i.flag.liechtenstein:before {
  background-position: -36px -1300px;
}
.semantic i.flag.lk:before,
.semantic i.flag.sri.lanka:before {
  background-position: -36px -1326px;
}
.semantic i.flag.lr:before,
.semantic i.flag.liberia:before {
  background-position: -36px -1352px;
}
.semantic i.flag.ls:before,
.semantic i.flag.lesotho:before {
  background-position: -36px -1378px;
}
.semantic i.flag.lt:before,
.semantic i.flag.lithuania:before {
  background-position: -36px -1404px;
}
.semantic i.flag.lu:before,
.semantic i.flag.luxembourg:before {
  background-position: -36px -1430px;
}
.semantic i.flag.lv:before,
.semantic i.flag.latvia:before {
  background-position: -36px -1456px;
}
.semantic i.flag.ly:before,
.semantic i.flag.libya:before {
  background-position: -36px -1482px;
}
.semantic i.flag.ma:before,
.semantic i.flag.morocco:before {
  background-position: -36px -1508px;
}
.semantic i.flag.mc:before,
.semantic i.flag.monaco:before {
  background-position: -36px -1534px;
}
.semantic i.flag.md:before,
.semantic i.flag.moldova:before {
  background-position: -36px -1560px;
}
.semantic i.flag.me:before,
.semantic i.flag.montenegro:before {
  background-position: -36px -1586px;
}
.semantic i.flag.mg:before,
.semantic i.flag.madagascar:before {
  background-position: -36px -1613px;
}
.semantic i.flag.mh:before,
.semantic i.flag.marshall.islands:before {
  background-position: -36px -1639px;
}
.semantic i.flag.mk:before,
.semantic i.flag.macedonia:before {
  background-position: -36px -1665px;
}
.semantic i.flag.ml:before,
.semantic i.flag.mali:before {
  background-position: -36px -1691px;
}
.semantic i.flag.mm:before,
.semantic i.flag.myanmar:before,
.semantic i.flag.burma:before {
  background-position: -36px -1717px;
}
.semantic i.flag.mn:before,
.semantic i.flag.mongolia:before {
  background-position: -36px -1743px;
}
.semantic i.flag.mo:before,
.semantic i.flag.macau:before {
  background-position: -36px -1769px;
}
.semantic i.flag.mp:before,
.semantic i.flag.northern.mariana.islands:before {
  background-position: -36px -1795px;
}
.semantic i.flag.mq:before,
.semantic i.flag.martinique:before {
  background-position: -36px -1821px;
}
.semantic i.flag.mr:before,
.semantic i.flag.mauritania:before {
  background-position: -36px -1847px;
}
.semantic i.flag.ms:before,
.semantic i.flag.montserrat:before {
  background-position: -36px -1873px;
}
.semantic i.flag.mt:before,
.semantic i.flag.malta:before {
  background-position: -36px -1899px;
}
.semantic i.flag.mu:before,
.semantic i.flag.mauritius:before {
  background-position: -36px -1925px;
}
.semantic i.flag.mv:before,
.semantic i.flag.maldives:before {
  background-position: -36px -1951px;
}
.semantic i.flag.mw:before,
.semantic i.flag.malawi:before {
  background-position: -36px -1977px;
}
.semantic i.flag.mx:before,
.semantic i.flag.mexico:before {
  background-position: -72px 0px;
}
.semantic i.flag.my:before,
.semantic i.flag.malaysia:before {
  background-position: -72px -26px;
}
.semantic i.flag.mz:before,
.semantic i.flag.mozambique:before {
  background-position: -72px -52px;
}
.semantic i.flag.na:before,
.semantic i.flag.namibia:before {
  background-position: -72px -78px;
}
.semantic i.flag.nc:before,
.semantic i.flag.new.caledonia:before {
  background-position: -72px -104px;
}
.semantic i.flag.ne:before,
.semantic i.flag.niger:before {
  background-position: -72px -130px;
}
.semantic i.flag.nf:before,
.semantic i.flag.norfolk.island:before {
  background-position: -72px -156px;
}
.semantic i.flag.ng:before,
.semantic i.flag.nigeria:before {
  background-position: -72px -182px;
}
.semantic i.flag.ni:before,
.semantic i.flag.nicaragua:before {
  background-position: -72px -208px;
}
.semantic i.flag.nl:before,
.semantic i.flag.netherlands:before {
  background-position: -72px -234px;
}
.semantic i.flag.no:before,
.semantic i.flag.norway:before {
  background-position: -72px -260px;
}
.semantic i.flag.np:before,
.semantic i.flag.nepal:before {
  background-position: -72px -286px;
}
.semantic i.flag.nr:before,
.semantic i.flag.nauru:before {
  background-position: -72px -312px;
}
.semantic i.flag.nu:before,
.semantic i.flag.niue:before {
  background-position: -72px -338px;
}
.semantic i.flag.nz:before,
.semantic i.flag.new.zealand:before {
  background-position: -72px -364px;
}
.semantic i.flag.om:before,
.semantic i.flag.oman:before {
  background-position: -72px -390px;
}
.semantic i.flag.pa:before,
.semantic i.flag.panama:before {
  background-position: -72px -416px;
}
.semantic i.flag.pe:before,
.semantic i.flag.peru:before {
  background-position: -72px -442px;
}
.semantic i.flag.pf:before,
.semantic i.flag.french.polynesia:before {
  background-position: -72px -468px;
}
.semantic i.flag.pg:before,
.semantic i.flag.new.guinea:before {
  background-position: -72px -494px;
}
.semantic i.flag.ph:before,
.semantic i.flag.philippines:before {
  background-position: -72px -520px;
}
.semantic i.flag.pk:before,
.semantic i.flag.pakistan:before {
  background-position: -72px -546px;
}
.semantic i.flag.pl:before,
.semantic i.flag.poland:before {
  background-position: -72px -572px;
}
.semantic i.flag.pm:before,
.semantic i.flag.saint.pierre:before {
  background-position: -72px -598px;
}
.semantic i.flag.pn:before,
.semantic i.flag.pitcairn.islands:before {
  background-position: -72px -624px;
}
.semantic i.flag.pr:before,
.semantic i.flag.puerto.rico:before {
  background-position: -72px -650px;
}
.semantic i.flag.ps:before,
.semantic i.flag.palestine:before {
  background-position: -72px -676px;
}
.semantic i.flag.pt:before,
.semantic i.flag.portugal:before {
  background-position: -72px -702px;
}
.semantic i.flag.pw:before,
.semantic i.flag.palau:before {
  background-position: -72px -728px;
}
.semantic i.flag.py:before,
.semantic i.flag.paraguay:before {
  background-position: -72px -754px;
}
.semantic i.flag.qa:before,
.semantic i.flag.qatar:before {
  background-position: -72px -780px;
}
.semantic i.flag.re:before,
.semantic i.flag.reunion:before {
  background-position: -72px -806px;
}
.semantic i.flag.ro:before,
.semantic i.flag.romania:before {
  background-position: -72px -832px;
}
.semantic i.flag.rs:before,
.semantic i.flag.serbia:before {
  background-position: -72px -858px;
}
.semantic i.flag.ru:before,
.semantic i.flag.russia:before {
  background-position: -72px -884px;
}
.semantic i.flag.rw:before,
.semantic i.flag.rwanda:before {
  background-position: -72px -910px;
}
.semantic i.flag.sa:before,
.semantic i.flag.saudi.arabia:before {
  background-position: -72px -936px;
}
.semantic i.flag.sb:before,
.semantic i.flag.solomon.islands:before {
  background-position: -72px -962px;
}
.semantic i.flag.sc:before,
.semantic i.flag.seychelles:before {
  background-position: -72px -988px;
}
.semantic i.flag.sd:before,
.semantic i.flag.sudan:before {
  background-position: -72px -1040px;
}
.semantic i.flag.se:before,
.semantic i.flag.sweden:before {
  background-position: -72px -1066px;
}
.semantic i.flag.sg:before,
.semantic i.flag.singapore:before {
  background-position: -72px -1092px;
}
.semantic i.flag.sh:before,
.semantic i.flag.saint.helena:before {
  background-position: -72px -1118px;
}
.semantic i.flag.si:before,
.semantic i.flag.slovenia:before {
  background-position: -72px -1144px;
}
.semantic i.flag.sj:before,
.semantic i.flag.svalbard:before,
.semantic i.flag.jan.mayen:before {
  background-position: -72px -1170px;
}
.semantic i.flag.sk:before,
.semantic i.flag.slovakia:before {
  background-position: -72px -1196px;
}
.semantic i.flag.sl:before,
.semantic i.flag.sierra.leone:before {
  background-position: -72px -1222px;
}
.semantic i.flag.sm:before,
.semantic i.flag.san.marino:before {
  background-position: -72px -1248px;
}
.semantic i.flag.sn:before,
.semantic i.flag.senegal:before {
  background-position: -72px -1274px;
}
.semantic i.flag.so:before,
.semantic i.flag.somalia:before {
  background-position: -72px -1300px;
}
.semantic i.flag.sr:before,
.semantic i.flag.suriname:before {
  background-position: -72px -1326px;
}
.semantic i.flag.st:before,
.semantic i.flag.sao.tome:before {
  background-position: -72px -1352px;
}
.semantic i.flag.sv:before,
.semantic i.flag.el.salvador:before {
  background-position: -72px -1378px;
}
.semantic i.flag.sy:before,
.semantic i.flag.syria:before {
  background-position: -72px -1404px;
}
.semantic i.flag.sz:before,
.semantic i.flag.swaziland:before {
  background-position: -72px -1430px;
}
.semantic i.flag.tc:before,
.semantic i.flag.caicos.islands:before {
  background-position: -72px -1456px;
}
.semantic i.flag.td:before,
.semantic i.flag.chad:before {
  background-position: -72px -1482px;
}
.semantic i.flag.tf:before,
.semantic i.flag.french.territories:before {
  background-position: -72px -1508px;
}
.semantic i.flag.tg:before,
.semantic i.flag.togo:before {
  background-position: -72px -1534px;
}
.semantic i.flag.th:before,
.semantic i.flag.thailand:before {
  background-position: -72px -1560px;
}
.semantic i.flag.tj:before,
.semantic i.flag.tajikistan:before {
  background-position: -72px -1586px;
}
.semantic i.flag.tk:before,
.semantic i.flag.tokelau:before {
  background-position: -72px -1612px;
}
.semantic i.flag.tl:before,
.semantic i.flag.timorleste:before {
  background-position: -72px -1638px;
}
.semantic i.flag.tm:before,
.semantic i.flag.turkmenistan:before {
  background-position: -72px -1664px;
}
.semantic i.flag.tn:before,
.semantic i.flag.tunisia:before {
  background-position: -72px -1690px;
}
.semantic i.flag.to:before,
.semantic i.flag.tonga:before {
  background-position: -72px -1716px;
}
.semantic i.flag.tr:before,
.semantic i.flag.turkey:before {
  background-position: -72px -1742px;
}
.semantic i.flag.tt:before,
.semantic i.flag.trinidad:before {
  background-position: -72px -1768px;
}
.semantic i.flag.tv:before,
.semantic i.flag.tuvalu:before {
  background-position: -72px -1794px;
}
.semantic i.flag.tw:before,
.semantic i.flag.taiwan:before {
  background-position: -72px -1820px;
}
.semantic i.flag.tz:before,
.semantic i.flag.tanzania:before {
  background-position: -72px -1846px;
}
.semantic i.flag.ua:before,
.semantic i.flag.ukraine:before {
  background-position: -72px -1872px;
}
.semantic i.flag.ug:before,
.semantic i.flag.uganda:before {
  background-position: -72px -1898px;
}
.semantic i.flag.um:before,
.semantic i.flag.us.minor.islands:before {
  background-position: -72px -1924px;
}
.semantic i.flag.us:before,
.semantic i.flag.america:before,
.semantic i.flag.united.states:before {
  background-position: -72px -1950px;
}
.semantic i.flag.uy:before,
.semantic i.flag.uruguay:before {
  background-position: -72px -1976px;
}
.semantic i.flag.uz:before,
.semantic i.flag.uzbekistan:before {
  background-position: -108px 0px;
}
.semantic i.flag.va:before,
.semantic i.flag.vatican.city:before {
  background-position: -108px -26px;
}
.semantic i.flag.vc:before,
.semantic i.flag.saint.vincent:before {
  background-position: -108px -52px;
}
.semantic i.flag.ve:before,
.semantic i.flag.venezuela:before {
  background-position: -108px -78px;
}
.semantic i.flag.vg:before,
.semantic i.flag.british.virgin.islands:before {
  background-position: -108px -104px;
}
.semantic i.flag.vi:before,
.semantic i.flag.us.virgin.islands:before {
  background-position: -108px -130px;
}
.semantic i.flag.vn:before,
.semantic i.flag.vietnam:before {
  background-position: -108px -156px;
}
.semantic i.flag.vu:before,
.semantic i.flag.vanuatu:before {
  background-position: -108px -182px;
}
.semantic i.flag.wf:before,
.semantic i.flag.wallis.and.futuna:before {
  background-position: -108px -234px;
}
.semantic i.flag.ws:before,
.semantic i.flag.samoa:before {
  background-position: -108px -260px;
}
.semantic i.flag.ye:before,
.semantic i.flag.yemen:before {
  background-position: -108px -286px;
}
.semantic i.flag.yt:before,
.semantic i.flag.mayotte:before {
  background-position: -108px -312px;
}
.semantic i.flag.za:before,
.semantic i.flag.south.africa:before {
  background-position: -108px -338px;
}
.semantic i.flag.zm:before,
.semantic i.flag.zambia:before {
  background-position: -108px -364px;
}
.semantic i.flag.zw:before,
.semantic i.flag.zimbabwe:before {
  background-position: -108px -390px;
}
.semantic .ui.header {
  border: none;
  margin: -webkit-calc(2rem - 0.165em ) 0em 1rem;
  margin: calc(2rem - 0.165em) 0em 1rem;
  padding: 0em 0em;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-weight: bold;
  line-height: 1.33em;
  text-transform: none;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.header:first-child {
  margin-top: -0.165em;
}
.semantic .ui.header:last-child {
  margin-bottom: 0em;
}
.semantic .ui.header .sub.header {
  font-weight: normal;
  margin: 0em;
  padding: 0em;
  font-size: 1.1428rem;
  line-height: 1.2em;
  color: rgba(0, 0, 0, 0.5);
}
.semantic .ui.header > .icon {
  display: table-cell;
  opacity: 1;
  font-size: 1.5em;
  padding-top: 0.165em;
  vertical-align: middle;
}
.semantic .ui.header .icon:only-child {
  display: inline-block;
  padding: 0em;
  margin-right: 0.75rem;
}
.semantic .ui.header > .image,
.semantic .ui.header > img {
  display: inline-block;
  margin-top: 0.165em;
  width: 2.5em;
  height: auto;
  vertical-align: middle;
}
.semantic .ui.header > .image:only-child,
.semantic .ui.header > img:only-child {
  margin-right: 0.75rem;
}
.semantic .ui.header .content {
  display: inline-block;
  vertical-align: top;
}
.semantic .ui.header > img + .content,
.semantic .ui.header > .image + .content {
  padding-left: 0.75rem;
  vertical-align: middle;
}
.semantic .ui.header > .icon + .content {
  padding-left: 0.75rem;
  display: table-cell;
  vertical-align: middle;
}
.semantic .ui.header .ui.label {
  font-size: "";
  margin: 0em 0em 0em 0.5rem;
  vertical-align: middle;
}
.semantic .ui.header + p {
  margin-top: 0em;
}
.semantic h1.ui.header {
  font-size: 2rem;
}
.semantic h2.ui.header {
  font-size: 1.714rem;
}
.semantic h3.ui.header {
  font-size: 1.28rem;
}
.semantic h4.ui.header {
  font-size: 1.071rem;
}
.semantic h5.ui.header {
  font-size: 1rem;
}
.semantic h1.ui.header .sub.header {
  font-size: 1.4285rem;
}
.semantic h2.ui.header .sub.header {
  font-size: 1.1428rem;
}
.semantic h3.ui.header .sub.header {
  font-size: 1.1428rem;
}
.semantic h4.ui.header .sub.header {
  font-size: 1rem;
}
.semantic h5.ui.header .sub.header {
  font-size: 0.9285rem;
}
.semantic .ui.huge.header {
  min-height: 1em;
  font-size: 2em;
}
.semantic .ui.large.header {
  font-size: 1.714em;
}
.semantic .ui.medium.header {
  font-size: 1.28em;
}
.semantic .ui.small.header {
  font-size: 1.071em;
}
.semantic .ui.tiny.header {
  font-size: 1em;
}
.semantic .ui.huge.header .sub.header {
  font-size: 1.4285rem;
}
.semantic .ui.large.header .sub.header {
  font-size: 1.4285rem;
}
.semantic .ui.header .sub.header {
  font-size: 1.1428rem;
}
.semantic .ui.small.header .sub.header {
  font-size: 1rem;
}
.semantic .ui.tiny.header .sub.header {
  font-size: 0.9285rem;
}
.semantic .ui.icon.header {
  display: inline-block;
  text-align: center;
  margin: 2rem 0em 1rem;
}
.semantic .ui.icon.header:after {
  content: "";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.semantic .ui.icon.header:first-child {
  margin-top: 0em;
}
.semantic .ui.icon.header .icon {
  float: none;
  display: block;
  width: auto;
  height: auto;
  padding: 0em;
  font-size: 3em;
  margin: 0em auto 0.25rem;
  opacity: 1;
}
.semantic .ui.icon.header .content {
  display: block;
}
.semantic .ui.icon.header .circular.icon {
  font-size: 2em;
}
.semantic .ui.icon.header .square.icon {
  font-size: 2em;
}
.semantic .ui.block.icon.header .icon {
  margin-bottom: 0em;
}
.semantic .ui.icon.header.aligned {
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.semantic .ui.disabled.header {
  opacity: 0.3;
}
.semantic .ui.black.header {
  color: #1b1c1d !important;
}
.semantic a.ui.black.header:hover {
  color: #1b1c1d !important;
}
.semantic .ui.blue.header {
  color: #3b83c0 !important;
}
.semantic a.ui.blue.header:hover {
  color: #458ac6 !important;
}
.semantic .ui.green.header {
  color: #2db475 !important;
}
.semantic a.ui.green.header:hover {
  color: #30c07d !important;
}
.semantic .ui.orange.header {
  color: #e07b53 !important;
}
.semantic a.ui.orange.header:hover {
  color: #e28560 !important;
}
.semantic .ui.pink.header {
  color: #d9499a !important;
}
.semantic a.ui.pink.header:hover {
  color: #dc56a1 !important;
}
.semantic .ui.purple.header {
  color: #564f8a !important;
}
.semantic a.ui.purple.header:hover {
  color: #5c5594 !important;
}
.semantic .ui.red.header {
  color: #cc181e !important;
}
.semantic a.ui.red.header:hover {
  color: #da1a20 !important;
}
.semantic .ui.teal.header {
  color: #00b5ad !important;
}
.semantic a.ui.teal.header:hover {
  color: #00c4bc !important;
}
.semantic .ui.yellow.header {
  color: #f2c61f !important;
}
.semantic a.ui.yellow.header:hover {
  color: #f3ca2d !important;
}
.semantic .ui.black.dividing.header {
  border-bottom: 2px solid #1b1c1d;
}
.semantic .ui.blue.dividing.header {
  border-bottom: 2px solid #3b83c0;
}
.semantic .ui.green.dividing.header {
  border-bottom: 2px solid #2db475;
}
.semantic .ui.orange.dividing.header {
  border-bottom: 2px solid #e07b53;
}
.semantic .ui.pink.dividing.header {
  border-bottom: 2px solid #d9499a;
}
.semantic .ui.purple.dividing.header {
  border-bottom: 2px solid #564f8a;
}
.semantic .ui.red.dividing.header {
  border-bottom: 2px solid #cc181e;
}
.semantic .ui.teal.dividing.header {
  border-bottom: 2px solid #00b5ad;
}
.semantic .ui.yellow.dividing.header {
  border-bottom: 2px solid #f2c61f;
}
.semantic .ui.inverted.header {
  color: #ffffff;
}
.semantic .ui.inverted.header .sub.header {
  color: rgba(255, 255, 255, 0.85);
}
.semantic .ui.inverted.attached.header {
  background: #333333 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: #333333 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  box-shadow: none;
}
.semantic .ui.inverted.block.header {
  background: #333333 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: #333333 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  box-shadow: none;
}
.semantic .ui.inverted.black.header {
  color: #aaaaaa !important;
}
.semantic a.ui.inverted.black.header:hover {
  color: #b2b2b2 !important;
}
.semantic .ui.inverted.blue.header {
  color: #54c8ff !important;
}
.semantic a.ui.inverted.blue.header:hover {
  color: #63cdff !important;
}
.semantic .ui.inverted.green.header {
  color: #cbeddd !important;
}
.semantic a.ui.inverted.green.header:hover {
  color: #d6f1e4 !important;
}
.semantic .ui.inverted.orange.header {
  color: #ff851b !important;
}
.semantic a.ui.inverted.orange.header:hover {
  color: #ff8d2a !important;
}
.semantic .ui.inverted.pink.header {
  color: #ff8edf !important;
}
.semantic a.ui.inverted.pink.header:hover {
  color: #ff9de3 !important;
}
.semantic .ui.inverted.purple.header {
  color: #cdc6ff !important;
}
.semantic a.ui.inverted.purple.header:hover {
  color: #dad5ff !important;
}
.semantic .ui.inverted.red.header {
  color: #ff695e !important;
}
.semantic a.ui.inverted.red.header:hover {
  color: #ff776d !important;
}
.semantic .ui.inverted.teal.header {
  color: #6dffff !important;
}
.semantic a.ui.inverted.teal.header:hover {
  color: #7cffff !important;
}
.semantic .ui.inverted.yellow.header {
  color: #ffe21f !important;
}
.semantic a.ui.inverted.yellow.header:hover {
  color: #ffe42e !important;
}
.semantic .ui.inverted.block.header {
  border-bottom: none;
}
.semantic .ui.left.aligned.header {
  text-align: left;
}
.semantic .ui.right.aligned.header {
  text-align: right;
}
.semantic .ui.centered.header,
.semantic .ui.center.aligned.header {
  text-align: center;
}
.semantic .ui.justified.header {
  text-align: justify;
}
.semantic .ui.justified.header:after {
  display: inline-block;
  content: "";
  width: 100%;
}
.semantic .ui.floated.header,
.semantic .ui[class*="left floated"].header {
  float: left;
  margin-top: 0em;
  margin-right: 0.5em;
}
.semantic .ui[class*="right floated"].header {
  float: right;
  margin-top: 0em;
  margin-left: 0.5em;
}
.semantic .ui.fitted.header {
  padding: 0em;
}
.semantic .ui.dividing.header {
  padding-bottom: 0.25rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.dividing.header .sub.header {
  padding-bottom: 0.25rem;
}
.semantic .ui.dividing.header .icon {
  margin-bottom: 0em;
}
.semantic .ui.inverted.dividing.header {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.semantic .ui.block.header {
  background: #f0f0f0;
  padding: 0.75rem 1rem;
  box-shadow: none;
  border: 1px solid #d4d4d5;
  border-radius: 0.3125rem;
}
.semantic .ui.tiny.block.header {
  font-size: 1em;
}
.semantic .ui.small.block.header {
  font-size: 1.071em;
}
.semantic .ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1.28em;
}
.semantic .ui.large.block.header {
  font-size: 1.714em;
}
.semantic .ui.huge.block.header {
  font-size: 2em;
}
.semantic .ui.attached.header {
  background: #ffffff;
  padding: 0.75rem 1rem;
  margin-left: -1px;
  margin-right: -1px;
  box-shadow: none;
  border: 1px solid #d4d4d5;
}
.semantic .ui.attached.block.header {
  background: #f0f0f0;
}
.semantic .ui.attached:not(.top):not(.bottom).header {
  margin-top: 0em;
  margin-bottom: 0em;
  border-top: none;
  border-bottom: none;
  border-radius: 0em;
}
.semantic .ui.top.attached.header {
  margin-bottom: 0em;
  border-bottom: none;
  border-radius: 0.3125rem 0.3125rem 0em 0em;
}
.semantic .ui.bottom.attached.header {
  margin-top: 0em;
  border-top: none;
  border-radius: 0em 0em 0.3125rem 0.3125rem;
}
.semantic .ui.tiny.attached.header {
  font-size: 0.8571em;
}
.semantic .ui.small.attached.header {
  font-size: 0.9285em;
}
.semantic .ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1em;
}
.semantic .ui.large.attached.header {
  font-size: 1.0714em;
}
.semantic .ui.huge.attached.header {
  font-size: 1.1428em;
}
.semantic .ui.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
  font-size: 1.28em;
}
@font-face {
  font-family: "Icons";
  src: url("/semantic/dist/themes/default/assets/fonts/icons.eot");
  src: url("/semantic/dist/themes/default/assets/fonts/icons.eot?#iefix") format("embedded-opentype"), url("/semantic/dist/themes/default/assets/fonts/icons.woff2") format("woff"), url("/semantic/dist/themes/default/assets/fonts/icons.woff") format("woff"), url("/semantic/dist/themes/default/assets/fonts/icons.ttf") format("truetype"), url("/semantic/dist/themes/default/assets/fonts/icons.svg#icons") format("svg");
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-transform: none;
}
.semantic i.icon {
  display: inline-block;
  opacity: 1;
  margin: 0em 0.25rem 0em 0em;
  width: 1.23em;
  height: 0.9em;
  font-family: "Icons";
  font-style: normal;
  line-height: 1;
  font-weight: normal;
  text-decoration: inherit;
  text-align: center;
  speak: none;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.semantic i.icon:before {
  background: none !important;
}
.semantic i.icon.loading {
  height: 1em;
  -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);
  }
}
.semantic i.icon.hover {
  opacity: 1;
}
.semantic i.icon.active {
  opacity: 1;
}
.semantic i.emphasized.icon {
  opacity: 1;
}
.semantic i.disabled.icon {
  pointer-events: none;
  opacity: 0.3 !important;
}
.semantic i.link.icon {
  cursor: pointer;
  opacity: 0.8;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.semantic i.link.icon:hover {
  opacity: 1 !important;
}
.semantic i.circular.icon {
  border-radius: 500em !important;
  padding: 0.5em 0.5em !important;
  box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
  line-height: 1 !important;
  width: 2em !important;
  height: 2em !important;
}
.semantic i.circular.inverted.icon {
  border: none;
  box-shadow: none;
}
.semantic i.flipped.icon,
.semantic i.horizontally.flipped.icon {
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.semantic i.vertically.flipped.icon {
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
.semantic i.rotated.icon,
.semantic i.right.rotated.icon,
.semantic i.clockwise.rotated.icon {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.semantic i.left.rotated.icon,
.semantic i.counterclockwise.rotated.icon {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.semantic i.bordered.icon {
  width: 2em;
  height: 2em;
  padding: 0.55em 0.385em !important;
  box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
  vertical-align: baseline;
}
.semantic i.bordered.inverted.icon {
  border: none;
  box-shadow: none;
}
.semantic i.white.icon {
  color: #ffffff !important;
}
.semantic i.black.icon {
  color: #1b1c1d !important;
}
.semantic i.blue.icon {
  color: #3b83c0 !important;
}
.semantic i.green.icon {
  color: #2db475 !important;
}
.semantic i.orange.icon {
  color: #e07b53 !important;
}
.semantic i.pink.icon {
  color: #d9499a !important;
}
.semantic i.purple.icon {
  color: #564f8a !important;
}
.semantic i.red.icon {
  color: #cc181e !important;
}
.semantic i.teal.icon {
  color: #00b5ad !important;
}
.semantic i.yellow.icon {
  color: #f2c61f !important;
}
.semantic i.inverted.icon {
  color: #ffffff;
}
.semantic i.inverted.black.icon {
  color: #333333 !important;
}
.semantic i.inverted.blue.icon {
  color: #54c8ff !important;
}
.semantic i.inverted.green.icon {
  color: #cbeddd !important;
}
.semantic i.inverted.orange.icon {
  color: #ff851b !important;
}
.semantic i.inverted.pink.icon {
  color: #ff8edf !important;
}
.semantic i.inverted.purple.icon {
  color: #cdc6ff !important;
}
.semantic i.inverted.red.icon {
  color: #ff695e !important;
}
.semantic i.inverted.teal.icon {
  color: #6dffff !important;
}
.semantic i.inverted.yellow.icon {
  color: #ffe21f !important;
}
.semantic i.inverted.bordered.icon,
.semantic i.inverted.circular.icon {
  background-color: #222222 !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.black.icon,
.semantic i.inverted.circular.black.icon {
  background-color: #1b1c1d !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.blue.icon,
.semantic i.inverted.circular.blue.icon {
  background-color: #3b83c0 !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.green.icon,
.semantic i.inverted.circular.green.icon {
  background-color: #2db475 !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.orange.icon,
.semantic i.inverted.circular.orange.icon {
  background-color: #e07b53 !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.pink.icon,
.semantic i.inverted.circular.pink.icon {
  background-color: #d9499a !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.purple.icon,
.semantic i.inverted.circular.purple.icon {
  background-color: #564f8a !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.red.icon,
.semantic i.inverted.circular.red.icon {
  background-color: #cc181e !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.teal.icon,
.semantic i.inverted.circular.teal.icon {
  background-color: #00b5ad !important;
  color: #FFFFFF !important;
}
.semantic i.inverted.bordered.yellow.icon,
.semantic i.inverted.circular.yellow.icon {
  background-color: #f2c61f !important;
  color: #FFFFFF !important;
}
.semantic i.small.icon {
  font-size: 0.875em;
}
.semantic i.icon {
  font-size: 1em;
}
.semantic i.large.icon {
  font-size: 1.5em;
  vertical-align: middle;
}
.semantic i.big.icon {
  font-size: 2em;
  vertical-align: middle;
}
.semantic i.huge.icon {
  font-size: 4em;
  vertical-align: middle;
}
.semantic i.massive.icon {
  font-size: 8em;
  vertical-align: middle;
}
.semantic i.icon.search:before {
  content: "\f002";
}
.semantic i.icon.mail.outline:before {
  content: "\f003";
}
.semantic i.icon.external:before {
  content: "\f08e";
}
.semantic i.icon.signal:before {
  content: "\f012";
}
.semantic i.icon.setting:before {
  content: "\f013";
}
.semantic i.icon.home:before {
  content: "\f015";
}
.semantic i.icon.inbox:before {
  content: "\f01c";
}
.semantic i.icon.browser:before {
  content: "\f022";
}
.semantic i.icon.tag:before {
  content: "\f02b";
}
.semantic i.icon.tags:before {
  content: "\f02c";
}
.semantic i.icon.calendar:before {
  content: "\f073";
}
.semantic i.icon.comment:before {
  content: "\f075";
}
.semantic i.icon.comments:before {
  content: "\f086";
}
.semantic i.icon.shop:before {
  content: "\f07a";
}
.semantic i.icon.privacy:before {
  content: "\f084";
}
.semantic i.icon.settings:before {
  content: "\f085";
}
.semantic i.icon.trophy:before {
  content: "\f091";
}
.semantic i.icon.payment:before {
  content: "\f09d";
}
.semantic i.icon.feed:before {
  content: "\f09e";
}
.semantic i.icon.alarm.outline:before {
  content: "\f0a2";
}
.semantic i.icon.tasks:before {
  content: "\f0ae";
}
.semantic i.icon.cloud:before {
  content: "\f0c2";
}
.semantic i.icon.lab:before {
  content: "\f0c3";
}
.semantic i.icon.mail:before {
  content: "\f0e0";
}
.semantic i.icon.idea:before {
  content: "\f0eb";
}
.semantic i.icon.dashboard:before {
  content: "\f0e4";
}
.semantic i.icon.sitemap:before {
  content: "\f0e8";
}
.semantic i.icon.alarm:before {
  content: "\f0f3";
}
.semantic i.icon.terminal:before {
  content: "\f120";
}
.semantic i.icon.code:before {
  content: "\f121";
}
.semantic i.icon.protect:before {
  content: "\f132";
}
.semantic i.icon.calendar.outline:before {
  content: "\f133";
}
.semantic i.icon.ticket:before {
  content: "\f145";
}
.semantic i.icon.external.square:before {
  content: "\f14c";
}
.semantic i.icon.map:before {
  content: "\f14e";
}
.semantic i.icon.bug:before {
  content: "\f188";
}
.semantic i.icon.mail.square:before {
  content: "\f199";
}
.semantic i.icon.history:before {
  content: "\f1da";
}
.semantic i.icon.options:before {
  content: "\f1de";
}
.semantic i.icon.comment.outline:before {
  content: "\f0e5";
}
.semantic i.icon.comments.outline:before {
  content: "\f0e6";
}
.semantic i.icon.text.telephone:before {
  content: "\f1e4";
}
.semantic i.icon.find:before {
  content: "\f1e5";
}
.semantic i.icon.wifi:before {
  content: "\f1eb";
}
.semantic i.icon.alarm.slash:before {
  content: "\f1f6";
}
.semantic i.icon.alarm.slash.outline:before {
  content: "\f1f7";
}
.semantic i.icon.copyright:before {
  content: "\f1f9";
}
.semantic i.icon.at:before {
  content: "\f1fa";
}
.semantic i.icon.eyedropper:before {
  content: "\f1fb";
}
.semantic i.icon.paint.brush:before {
  content: "\f1fc";
}
.semantic i.icon.heartbeat:before {
  content: "\f21e";
}
.semantic i.icon.download:before {
  content: "\f019";
}
.semantic i.icon.repeat:before {
  content: "\f01e";
}
.semantic i.icon.refresh:before {
  content: "\f021";
}
.semantic i.icon.lock:before {
  content: "\f023";
}
.semantic i.icon.bookmark:before {
  content: "\f02e";
}
.semantic i.icon.print:before {
  content: "\f02f";
}
.semantic i.icon.write:before {
  content: "\f040";
}
.semantic i.icon.theme:before {
  content: "\f043";
}
.semantic i.icon.adjust:before {
  content: "\f042";
}
.semantic i.icon.edit:before {
  content: "\f044";
}
.semantic i.icon.external.share:before {
  content: "\f045";
}
.semantic i.icon.ban:before {
  content: "\f05e";
}
.semantic i.icon.mail.forward:before {
  content: "\f064";
}
.semantic i.icon.share:before {
  content: "\f064";
}
.semantic i.icon.expand:before {
  content: "\f065";
}
.semantic i.icon.compress:before {
  content: "\f066";
}
.semantic i.icon.unhide:before {
  content: "\f06e";
}
.semantic i.icon.hide:before {
  content: "\f070";
}
.semantic i.icon.random:before {
  content: "\f074";
}
.semantic i.icon.retweet:before {
  content: "\f079";
}
.semantic i.icon.sign.out:before {
  content: "\f08b";
}
.semantic i.icon.pin:before {
  content: "\f08d";
}
.semantic i.icon.sign.in:before {
  content: "\f090";
}
.semantic i.icon.upload:before {
  content: "\f093";
}
.semantic i.icon.call:before {
  content: "\f095";
}
.semantic i.icon.call.square:before {
  content: "\f098";
}
.semantic i.icon.remove.bookmark:before {
  content: "\f097";
}
.semantic i.icon.unlock:before {
  content: "\f09c";
}
.semantic i.icon.configure:before {
  content: "\f0ad";
}
.semantic i.icon.filter:before {
  content: "\f0b0";
}
.semantic i.icon.wizard:before {
  content: "\f0d0";
}
.semantic i.icon.undo:before {
  content: "\f0e2";
}
.semantic i.icon.exchange:before {
  content: "\f0ec";
}
.semantic i.icon.cloud.download:before {
  content: "\f0ed";
}
.semantic i.icon.cloud.upload:before {
  content: "\f0ee";
}
.semantic i.icon.reply:before {
  content: "\f112";
}
.semantic i.icon.reply.all:before {
  content: "\f122";
}
.semantic i.icon.erase:before {
  content: "\f12d";
}
.semantic i.icon.unlock.alternate:before {
  content: "\f13e";
}
.semantic i.icon.archive:before {
  content: "\f187";
}
.semantic i.icon.translate:before {
  content: "\f1ab";
}
.semantic i.icon.recycle:before {
  content: "\f1b8";
}
.semantic i.icon.send:before {
  content: "\f1d8";
}
.semantic i.icon.send.outline:before {
  content: "\f1d9";
}
.semantic i.icon.share.alternate:before {
  content: "\f1e0";
}
.semantic i.icon.share.alternate.square:before {
  content: "\f1e1";
}
.semantic i.icon.wait:before {
  content: "\f017";
}
.semantic i.icon.write.square:before {
  content: "\f14b";
}
.semantic i.icon.share.square:before {
  content: "\f14d";
}
.semantic i.icon.add.to.cart:before {
  content: "\f217";
}
.semantic i.icon.in.cart:before {
  content: "\f218";
}
.semantic i.icon.add.user:before {
  content: "\f234";
}
.semantic i.icon.remove.user:before {
  content: "\f235";
}
.semantic i.icon.help.circle:before {
  content: "\f059";
}
.semantic i.icon.info.circle:before {
  content: "\f05a";
}
.semantic i.icon.warning:before {
  content: "\f12a";
}
.semantic i.icon.warning.circle:before {
  content: "\f06a";
}
.semantic i.icon.warning.sign:before {
  content: "\f071";
}
.semantic i.icon.help:before {
  content: "\f128";
}
.semantic i.icon.info:before {
  content: "\f129";
}
.semantic i.icon.announcement:before {
  content: "\f0a1";
}
.semantic i.icon.birthday:before {
  content: "\f1fd";
}
.semantic i.icon.users:before {
  content: "\f0c0";
}
.semantic i.icon.doctor:before {
  content: "\f0f0";
}
.semantic i.icon.child:before {
  content: "\f1ae";
}
.semantic i.icon.user:before {
  content: "\f007";
}
.semantic i.icon.handicap:before {
  content: "\f193";
}
.semantic i.icon.student:before {
  content: "\f19d";
}
.semantic i.icon.spy:before {
  content: "\f21b";
}
.semantic i.icon.female:before {
  content: "\f182";
}
.semantic i.icon.male:before {
  content: "\f183";
}
.semantic i.icon.woman:before {
  content: "\f221";
}
.semantic i.icon.man:before {
  content: "\f222";
}
.semantic i.icon.non.binary.transgender:before {
  content: "\f223";
}
.semantic i.icon.intergender:before {
  content: "\f224";
}
.semantic i.icon.transgender:before {
  content: "\f225";
}
.semantic i.icon.lesbian:before {
  content: "\f226";
}
.semantic i.icon.gay:before {
  content: "\f227";
}
.semantic i.icon.heterosexual:before {
  content: "\f228";
}
.semantic i.icon.other.gender:before {
  content: "\f229";
}
.semantic i.icon.other.gender.vertical:before {
  content: "\f22a";
}
.semantic i.icon.other.gender.horizontal:before {
  content: "\f22b";
}
.semantic i.icon.neuter:before {
  content: "\f22c";
}
.semantic i.icon.grid.layout:before {
  content: "\f00a";
}
.semantic i.icon.list.layout:before {
  content: "\f00b";
}
.semantic i.icon.block.layout:before {
  content: "\f009";
}
.semantic i.icon.zoom:before {
  content: "\f00e";
}
.semantic i.icon.zoom.out:before {
  content: "\f010";
}
.semantic i.icon.resize.vertical:before {
  content: "\f07d";
}
.semantic i.icon.resize.horizontal:before {
  content: "\f07e";
}
.semantic i.icon.maximize:before {
  content: "\f0b2";
}
.semantic i.icon.crop:before {
  content: "\f125";
}
.semantic i.icon.cocktail:before {
  content: "\f000";
}
.semantic i.icon.road:before {
  content: "\f018";
}
.semantic i.icon.flag:before {
  content: "\f024";
}
.semantic i.icon.book:before {
  content: "\f02d";
}
.semantic i.icon.gift:before {
  content: "\f06b";
}
.semantic i.icon.leaf:before {
  content: "\f06c";
}
.semantic i.icon.fire:before {
  content: "\f06d";
}
.semantic i.icon.plane:before {
  content: "\f072";
}
.semantic i.icon.magnet:before {
  content: "\f076";
}
.semantic i.icon.legal:before {
  content: "\f0e3";
}
.semantic i.icon.lemon:before {
  content: "\f094";
}
.semantic i.icon.world:before {
  content: "\f0ac";
}
.semantic i.icon.travel:before {
  content: "\f0b1";
}
.semantic i.icon.shipping:before {
  content: "\f0d1";
}
.semantic i.icon.money:before {
  content: "\f0d6";
}
.semantic i.icon.lightning:before {
  content: "\f0e7";
}
.semantic i.icon.rain:before {
  content: "\f0e9";
}
.semantic i.icon.treatment:before {
  content: "\f0f1";
}
.semantic i.icon.suitcase:before {
  content: "\f0f2";
}
.semantic i.icon.bar:before {
  content: "\f0fc";
}
.semantic i.icon.flag.outline:before {
  content: "\f11d";
}
.semantic i.icon.flag.checkered:before {
  content: "\f11e";
}
.semantic i.icon.puzzle:before {
  content: "\f12e";
}
.semantic i.icon.fire.extinguisher:before {
  content: "\f134";
}
.semantic i.icon.rocket:before {
  content: "\f135";
}
.semantic i.icon.anchor:before {
  content: "\f13d";
}
.semantic i.icon.bullseye:before {
  content: "\f140";
}
.semantic i.icon.sun:before {
  content: "\f185";
}
.semantic i.icon.moon:before {
  content: "\f186";
}
.semantic i.icon.fax:before {
  content: "\f1ac";
}
.semantic i.icon.life.ring:before {
  content: "\f1cd";
}
.semantic i.icon.bomb:before {
  content: "\f1e2";
}
.semantic i.icon.soccer:before {
  content: "\f1e3";
}
.semantic i.icon.calculator:before {
  content: "\f1ec";
}
.semantic i.icon.diamond:before {
  content: "\f219";
}
.semantic i.icon.crosshairs:before {
  content: "\f05b";
}
.semantic i.icon.asterisk:before {
  content: "\f069";
}
.semantic i.icon.certificate:before {
  content: "\f0a3";
}
.semantic i.icon.circle:before {
  content: "\f111";
}
.semantic i.icon.quote.left:before {
  content: "\f10d";
}
.semantic i.icon.quote.right:before {
  content: "\f10e";
}
.semantic i.icon.ellipsis.horizontal:before {
  content: "\f141";
}
.semantic i.icon.ellipsis.vertical:before {
  content: "\f142";
}
.semantic i.icon.cube:before {
  content: "\f1b2";
}
.semantic i.icon.cubes:before {
  content: "\f1b3";
}
.semantic i.icon.circle.notched:before {
  content: "\f1ce";
}
.semantic i.icon.circle.thin:before {
  content: "\f1db";
}
.semantic i.icon.checkmark:before {
  content: "\f00c";
}
.semantic i.icon.remove:before {
  content: "\f00d";
}
.semantic i.icon.checkmark.box:before {
  content: "\f046";
}
.semantic i.icon.move:before {
  content: "\f047";
}
.semantic i.icon.add.circle:before {
  content: "\f055";
}
.semantic i.icon.minus.circle:before {
  content: "\f056";
}
.semantic i.icon.remove.circle:before {
  content: "\f057";
}
.semantic i.icon.check.circle:before {
  content: "\f058";
}
.semantic i.icon.remove.circle.outline:before {
  content: "\f05c";
}
.semantic i.icon.check.circle.outline:before {
  content: "\f05d";
}
.semantic i.icon.plus:before {
  content: "\f067";
}
.semantic i.icon.minus:before {
  content: "\f068";
}
.semantic i.icon.add.square:before {
  content: "\f0fe";
}
.semantic i.icon.radio:before {
  content: "\f10c";
}
.semantic i.icon.selected.radio:before {
  content: "\f192";
}
.semantic i.icon.minus.square:before {
  content: "\f146";
}
.semantic i.icon.minus.square.outline:before {
  content: "\f147";
}
.semantic i.icon.check.square:before {
  content: "\f14a";
}
.semantic i.icon.plus.square.outline:before {
  content: "\f196";
}
.semantic i.icon.toggle.off:before {
  content: "\f204";
}
.semantic i.icon.toggle.on:before {
  content: "\f205";
}
.semantic i.icon.film:before {
  content: "\f008";
}
.semantic i.icon.sound:before {
  content: "\f025";
}
.semantic i.icon.photo:before {
  content: "\f030";
}
.semantic i.icon.bar.chart:before {
  content: "\f080";
}
.semantic i.icon.camera.retro:before {
  content: "\f083";
}
.semantic i.icon.newspaper:before {
  content: "\f1ea";
}
.semantic i.icon.area.chart:before {
  content: "\f1fe";
}
.semantic i.icon.pie.chart:before {
  content: "\f200";
}
.semantic i.icon.line.chart:before {
  content: "\f201";
}
.semantic i.icon.arrow.circle.outline.down:before {
  content: "\f01a";
}
.semantic i.icon.arrow.circle.outline.up:before {
  content: "\f01b";
}
.semantic i.icon.chevron.left:before {
  content: "\f053";
}
.semantic i.icon.chevron.right:before {
  content: "\f054";
}
.semantic i.icon.arrow.left:before {
  content: "\f060";
}
.semantic i.icon.arrow.right:before {
  content: "\f061";
}
.semantic i.icon.arrow.up:before {
  content: "\f062";
}
.semantic i.icon.arrow.down:before {
  content: "\f063";
}
.semantic i.icon.chevron.up:before {
  content: "\f077";
}
.semantic i.icon.chevron.down:before {
  content: "\f078";
}
.semantic i.icon.pointing.right:before {
  content: "\f0a4";
}
.semantic i.icon.pointing.left:before {
  content: "\f0a5";
}
.semantic i.icon.pointing.up:before {
  content: "\f0a6";
}
.semantic i.icon.pointing.down:before {
  content: "\f0a7";
}
.semantic i.icon.arrow.circle.left:before {
  content: "\f0a8";
}
.semantic i.icon.arrow.circle.right:before {
  content: "\f0a9";
}
.semantic i.icon.arrow.circle.up:before {
  content: "\f0aa";
}
.semantic i.icon.arrow.circle.down:before {
  content: "\f0ab";
}
.semantic i.icon.caret.down:before {
  content: "\f0d7";
}
.semantic i.icon.caret.up:before {
  content: "\f0d8";
}
.semantic i.icon.caret.left:before {
  content: "\f0d9";
}
.semantic i.icon.caret.right:before {
  content: "\f0da";
}
.semantic i.icon.angle.double.left:before {
  content: "\f100";
}
.semantic i.icon.angle.double.right:before {
  content: "\f101";
}
.semantic i.icon.angle.double.up:before {
  content: "\f102";
}
.semantic i.icon.angle.double.down:before {
  content: "\f103";
}
.semantic i.icon.angle.left:before {
  content: "\f104";
}
.semantic i.icon.angle.right:before {
  content: "\f105";
}
.semantic i.icon.angle.up:before {
  content: "\f106";
}
.semantic i.icon.angle.down:before {
  content: "\f107";
}
.semantic i.icon.chevron.circle.left:before {
  content: "\f137";
}
.semantic i.icon.chevron.circle.right:before {
  content: "\f138";
}
.semantic i.icon.chevron.circle.up:before {
  content: "\f139";
}
.semantic i.icon.chevron.circle.down:before {
  content: "\f13a";
}
.semantic i.icon.toggle.down:before {
  content: "\f150";
}
.semantic i.icon.toggle.up:before {
  content: "\f151";
}
.semantic i.icon.toggle.right:before {
  content: "\f152";
}
.semantic i.icon.long.arrow.down:before {
  content: "\f175";
}
.semantic i.icon.long.arrow.up:before {
  content: "\f176";
}
.semantic i.icon.long.arrow.left:before {
  content: "\f177";
}
.semantic i.icon.long.arrow.right:before {
  content: "\f178";
}
.semantic i.icon.arrow.circle.outline.right:before {
  content: "\f18e";
}
.semantic i.icon.arrow.circle.outline.left:before {
  content: "\f190";
}
.semantic i.icon.toggle.left:before {
  content: "\f191";
}
.semantic i.icon.power:before {
  content: "\f011";
}
.semantic i.icon.trash:before {
  content: "\f1f8";
}
.semantic i.icon.trash.outline:before {
  content: "\f014";
}
.semantic i.icon.disk.outline:before {
  content: "\f0a0";
}
.semantic i.icon.desktop:before {
  content: "\f108";
}
.semantic i.icon.laptop:before {
  content: "\f109";
}
.semantic i.icon.tablet:before {
  content: "\f10a";
}
.semantic i.icon.mobile:before {
  content: "\f10b";
}
.semantic i.icon.game:before {
  content: "\f11b";
}
.semantic i.icon.keyboard:before {
  content: "\f11c";
}
.semantic i.icon.plug:before {
  content: "\f1e6";
}
.semantic i.icon.folder:before {
  content: "\f07b";
}
.semantic i.icon.folder.open:before {
  content: "\f07c";
}
.semantic i.icon.level.up:before {
  content: "\f148";
}
.semantic i.icon.level.down:before {
  content: "\f149";
}
.semantic i.icon.file:before {
  content: "\f15b";
}
.semantic i.icon.file.outline:before {
  content: "\f016";
}
.semantic i.icon.file.text:before {
  content: "\f15c";
}
.semantic i.icon.file.text.outline:before {
  content: "\f0f6";
}
.semantic i.icon.folder.outline:before {
  content: "\f114";
}
.semantic i.icon.folder.open.outline:before {
  content: "\f115";
}
.semantic i.icon.file.pdf.outline:before {
  content: "\f1c1";
}
.semantic i.icon.file.word.outline:before {
  content: "\f1c2";
}
.semantic i.icon.file.excel.outline:before {
  content: "\f1c3";
}
.semantic i.icon.file.powerpoint.outline:before {
  content: "\f1c4";
}
.semantic i.icon.file.image.outline:before {
  content: "\f1c5";
}
.semantic i.icon.file.archive.outline:before {
  content: "\f1c6";
}
.semantic i.icon.file.audio.outline:before {
  content: "\f1c7";
}
.semantic i.icon.file.video.outline:before {
  content: "\f1c8";
}
.semantic i.icon.file.code.outline:before {
  content: "\f1c9";
}
.semantic i.icon.barcode:before {
  content: "\f02a";
}
.semantic i.icon.qrcode:before {
  content: "\f029";
}
.semantic i.icon.fork:before {
  content: "\f126";
}
.semantic i.icon.html5:before {
  content: "\f13b";
}
.semantic i.icon.css3:before {
  content: "\f13c";
}
.semantic i.icon.rss:before {
  content: "\f09e";
}
.semantic i.icon.rss.square:before {
  content: "\f143";
}
.semantic i.icon.openid:before {
  content: "\f19b";
}
.semantic i.icon.database:before {
  content: "\f1c0";
}
.semantic i.icon.server:before {
  content: "\f233";
}
.semantic i.icon.heart:before {
  content: "\f004";
}
.semantic i.icon.star:before {
  content: "\f005";
}
.semantic i.icon.empty.star:before {
  content: "\f006";
}
.semantic i.icon.thumbs.outline.up:before {
  content: "\f087";
}
.semantic i.icon.thumbs.outline.down:before {
  content: "\f088";
}
.semantic i.icon.star.half:before {
  content: "\f089";
}
.semantic i.icon.empty.heart:before {
  content: "\f08a";
}
.semantic i.icon.smile:before {
  content: "\f118";
}
.semantic i.icon.frown:before {
  content: "\f119";
}
.semantic i.icon.meh:before {
  content: "\f11a";
}
.semantic i.icon.star.half.empty:before {
  content: "\f123";
}
.semantic i.icon.thumbs.up:before {
  content: "\f164";
}
.semantic i.icon.thumbs.down:before {
  content: "\f165";
}
.semantic i.icon.music:before {
  content: "\f001";
}
.semantic i.icon.video.play.outline:before {
  content: "\f01d";
}
.semantic i.icon.volume.off:before {
  content: "\f026";
}
.semantic i.icon.volume.down:before {
  content: "\f027";
}
.semantic i.icon.volume.up:before {
  content: "\f028";
}
.semantic i.icon.record:before {
  content: "\f03d";
}
.semantic i.icon.step.backward:before {
  content: "\f048";
}
.semantic i.icon.fast.backward:before {
  content: "\f049";
}
.semantic i.icon.backward:before {
  content: "\f04a";
}
.semantic i.icon.play:before {
  content: "\f04b";
}
.semantic i.icon.pause:before {
  content: "\f04c";
}
.semantic i.icon.stop:before {
  content: "\f04d";
}
.semantic i.icon.forward:before {
  content: "\f04e";
}
.semantic i.icon.fast.forward:before {
  content: "\f050";
}
.semantic i.icon.step.forward:before {
  content: "\f051";
}
.semantic i.icon.eject:before {
  content: "\f052";
}
.semantic i.icon.unmute:before {
  content: "\f130";
}
.semantic i.icon.mute:before {
  content: "\f131";
}
.semantic i.icon.video.play:before {
  content: "\f144";
}
.semantic i.icon.closed.captioning:before {
  content: "\f20a";
}
.semantic i.icon.marker:before {
  content: "\f041";
}
.semantic i.icon.coffee:before {
  content: "\f0f4";
}
.semantic i.icon.food:before {
  content: "\f0f5";
}
.semantic i.icon.building.outline:before {
  content: "\f0f7";
}
.semantic i.icon.hospital:before {
  content: "\f0f8";
}
.semantic i.icon.emergency:before {
  content: "\f0f9";
}
.semantic i.icon.first.aid:before {
  content: "\f0fa";
}
.semantic i.icon.military:before {
  content: "\f0fb";
}
.semantic i.icon.h:before {
  content: "\f0fd";
}
.semantic i.icon.location.arrow:before {
  content: "\f124";
}
.semantic i.icon.space.shuttle:before {
  content: "\f197";
}
.semantic i.icon.university:before {
  content: "\f19c";
}
.semantic i.icon.building:before {
  content: "\f1ad";
}
.semantic i.icon.paw:before {
  content: "\f1b0";
}
.semantic i.icon.spoon:before {
  content: "\f1b1";
}
.semantic i.icon.car:before {
  content: "\f1b9";
}
.semantic i.icon.taxi:before {
  content: "\f1ba";
}
.semantic i.icon.tree:before {
  content: "\f1bb";
}
.semantic i.icon.bicycle:before {
  content: "\f206";
}
.semantic i.icon.bus:before {
  content: "\f207";
}
.semantic i.icon.ship:before {
  content: "\f21a";
}
.semantic i.icon.motorcycle:before {
  content: "\f21c";
}
.semantic i.icon.street.view:before {
  content: "\f21d";
}
.semantic i.icon.hotel:before {
  content: "\f236";
}
.semantic i.icon.train:before {
  content: "\f238";
}
.semantic i.icon.subway:before {
  content: "\f239";
}
.semantic i.icon.table:before {
  content: "\f0ce";
}
.semantic i.icon.columns:before {
  content: "\f0db";
}
.semantic i.icon.sort:before {
  content: "\f0dc";
}
.semantic i.icon.sort.ascending:before {
  content: "\f0dd";
}
.semantic i.icon.sort.descending:before {
  content: "\f0de";
}
.semantic i.icon.sort.alphabet.ascending:before {
  content: "\f15d";
}
.semantic i.icon.sort.alphabet.descending:before {
  content: "\f15e";
}
.semantic i.icon.sort.content.ascending:before {
  content: "\f160";
}
.semantic i.icon.sort.content.descending:before {
  content: "\f161";
}
.semantic i.icon.sort.numeric.ascending:before {
  content: "\f162";
}
.semantic i.icon.sort.numeric.descending:before {
  content: "\f163";
}
.semantic i.icon.font:before {
  content: "\f031";
}
.semantic i.icon.bold:before {
  content: "\f032";
}
.semantic i.icon.italic:before {
  content: "\f033";
}
.semantic i.icon.text.height:before {
  content: "\f034";
}
.semantic i.icon.text.width:before {
  content: "\f035";
}
.semantic i.icon.align.left:before {
  content: "\f036";
}
.semantic i.icon.align.center:before {
  content: "\f037";
}
.semantic i.icon.align.right:before {
  content: "\f038";
}
.semantic i.icon.align.justify:before {
  content: "\f039";
}
.semantic i.icon.list:before {
  content: "\f03a";
}
.semantic i.icon.outdent:before {
  content: "\f03b";
}
.semantic i.icon.indent:before {
  content: "\f03c";
}
.semantic i.icon.linkify:before {
  content: "\f0c1";
}
.semantic i.icon.cut:before {
  content: "\f0c4";
}
.semantic i.icon.copy:before {
  content: "\f0c5";
}
.semantic i.icon.attach:before {
  content: "\f0c6";
}
.semantic i.icon.save:before {
  content: "\f0c7";
}
.semantic i.icon.content:before {
  content: "\f0c9";
}
.semantic i.icon.unordered.list:before {
  content: "\f0ca";
}
.semantic i.icon.ordered.list:before {
  content: "\f0cb";
}
.semantic i.icon.strikethrough:before {
  content: "\f0cc";
}
.semantic i.icon.underline:before {
  content: "\f0cd";
}
.semantic i.icon.paste:before {
  content: "\f0ea";
}
.semantic i.icon.unlink:before {
  content: "\f127";
}
.semantic i.icon.superscript:before {
  content: "\f12b";
}
.semantic i.icon.subscript:before {
  content: "\f12c";
}
.semantic i.icon.header:before {
  content: "\f1dc";
}
.semantic i.icon.paragraph:before {
  content: "\f1dd";
}
.semantic i.icon.euro:before {
  content: "\f153";
}
.semantic i.icon.pound:before {
  content: "\f154";
}
.semantic i.icon.dollar:before {
  content: "\f155";
}
.semantic i.icon.rupee:before {
  content: "\f156";
}
.semantic i.icon.yen:before {
  content: "\f157";
}
.semantic i.icon.ruble:before {
  content: "\f158";
}
.semantic i.icon.won:before {
  content: "\f159";
}
.semantic i.icon.lira:before {
  content: "\f195";
}
.semantic i.icon.shekel:before {
  content: "\f20b";
}
.semantic i.icon.paypal:before {
  content: "\f1ed";
}
.semantic i.icon.paypal.card:before {
  content: "\f1f4";
}
.semantic i.icon.google.wallet:before {
  content: "\f1ee";
}
.semantic i.icon.visa:before {
  content: "\f1f0";
}
.semantic i.icon.mastercard:before {
  content: "\f1f1";
}
.semantic i.icon.discover:before {
  content: "\f1f2";
}
.semantic i.icon.american.express:before {
  content: "\f1f3";
}
.semantic i.icon.stripe:before {
  content: "\f1f5";
}
.semantic i.icon.twitter.square:before {
  content: "\f081";
}
.semantic i.icon.facebook.square:before {
  content: "\f082";
}
.semantic i.icon.linkedin.square:before {
  content: "\f08c";
}
.semantic i.icon.github.square:before {
  content: "\f092";
}
.semantic i.icon.twitter:before {
  content: "\f099";
}
.semantic i.icon.facebook:before {
  content: "\f09a";
}
.semantic i.icon.github:before {
  content: "\f09b";
}
.semantic i.icon.pinterest:before {
  content: "\f0d2";
}
.semantic i.icon.pinterest.square:before {
  content: "\f0d3";
}
.semantic i.icon.google.plus.square:before {
  content: "\f0d4";
}
.semantic i.icon.google.plus:before {
  content: "\f0d5";
}
.semantic i.icon.linkedin:before {
  content: "\f0e1";
}
.semantic i.icon.github.alternate:before {
  content: "\f113";
}
.semantic i.icon.maxcdn:before {
  content: "\f136";
}
.semantic i.icon.bitcoin:before {
  content: "\f15a";
}
.semantic i.icon.youtube.square:before {
  content: "\f166";
}
.semantic i.icon.youtube:before {
  content: "\f167";
}
.semantic i.icon.xing:before {
  content: "\f168";
}
.semantic i.icon.xing.square:before {
  content: "\f169";
}
.semantic i.icon.youtube.play:before {
  content: "\f16a";
}
.semantic i.icon.dropbox:before {
  content: "\f16b";
}
.semantic i.icon.stack.overflow:before {
  content: "\f16c";
}
.semantic i.icon.instagram:before {
  content: "\f16d";
}
.semantic i.icon.flickr:before {
  content: "\f16e";
}
.semantic i.icon.adn:before {
  content: "\f170";
}
.semantic i.icon.bitbucket:before {
  content: "\f171";
}
.semantic i.icon.bitbucket.square:before {
  content: "\f172";
}
.semantic i.icon.tumblr:before {
  content: "\f173";
}
.semantic i.icon.tumblr.square:before {
  content: "\f174";
}
.semantic i.icon.apple:before {
  content: "\f179";
}
.semantic i.icon.windows:before {
  content: "\f17a";
}
.semantic i.icon.android:before {
  content: "\f17b";
}
.semantic i.icon.linux:before {
  content: "\f17c";
}
.semantic i.icon.dribbble:before {
  content: "\f17d";
}
.semantic i.icon.skype:before {
  content: "\f17e";
}
.semantic i.icon.foursquare:before {
  content: "\f180";
}
.semantic i.icon.trello:before {
  content: "\f181";
}
.semantic i.icon.gittip:before {
  content: "\f184";
}
.semantic i.icon.vk:before {
  content: "\f189";
}
.semantic i.icon.weibo:before {
  content: "\f18a";
}
.semantic i.icon.renren:before {
  content: "\f18b";
}
.semantic i.icon.pagelines:before {
  content: "\f18c";
}
.semantic i.icon.stack.exchange:before {
  content: "\f18d";
}
.semantic i.icon.vimeo:before {
  content: "\f194";
}
.semantic i.icon.slack:before {
  content: "\f198";
}
.semantic i.icon.wordpress:before {
  content: "\f19a";
}
.semantic i.icon.yahoo:before {
  content: "\f19e";
}
.semantic i.icon.google:before {
  content: "\f1a0";
}
.semantic i.icon.reddit:before {
  content: "\f1a1";
}
.semantic i.icon.reddit.square:before {
  content: "\f1a2";
}
.semantic i.icon.stumbleupon.circle:before {
  content: "\f1a3";
}
.semantic i.icon.stumbleupon:before {
  content: "\f1a4";
}
.semantic i.icon.delicious:before {
  content: "\f1a5";
}
.semantic i.icon.digg:before {
  content: "\f1a6";
}
.semantic i.icon.pied.piper:before {
  content: "\f1a7";
}
.semantic i.icon.pied.piper.alternate:before {
  content: "\f1a8";
}
.semantic i.icon.drupal:before {
  content: "\f1a9";
}
.semantic i.icon.joomla:before {
  content: "\f1aa";
}
.semantic i.icon.behance:before {
  content: "\f1b4";
}
.semantic i.icon.behance.square:before {
  content: "\f1b5";
}
.semantic i.icon.steam:before {
  content: "\f1b6";
}
.semantic i.icon.steam.square:before {
  content: "\f1b7";
}
.semantic i.icon.spotify:before {
  content: "\f1bc";
}
.semantic i.icon.deviantart:before {
  content: "\f1bd";
}
.semantic i.icon.soundcloud:before {
  content: "\f1be";
}
.semantic i.icon.vine:before {
  content: "\f1ca";
}
.semantic i.icon.codepen:before {
  content: "\f1cb";
}
.semantic i.icon.jsfiddle:before {
  content: "\f1cc";
}
.semantic i.icon.rebel:before {
  content: "\f1d0";
}
.semantic i.icon.empire:before {
  content: "\f1d1";
}
.semantic i.icon.git.square:before {
  content: "\f1d2";
}
.semantic i.icon.git:before {
  content: "\f1d3";
}
.semantic i.icon.hacker.news:before {
  content: "\f1d4";
}
.semantic i.icon.tencent.weibo:before {
  content: "\f1d5";
}
.semantic i.icon.qq:before {
  content: "\f1d6";
}
.semantic i.icon.wechat:before {
  content: "\f1d7";
}
.semantic i.icon.slideshare:before {
  content: "\f1e7";
}
.semantic i.icon.twitch:before {
  content: "\f1e8";
}
.semantic i.icon.yelp:before {
  content: "\f1e9";
}
.semantic i.icon.lastfm:before {
  content: "\f202";
}
.semantic i.icon.lastfm.square:before {
  content: "\f203";
}
.semantic i.icon.ioxhost:before {
  content: "\f208";
}
.semantic i.icon.angellist:before {
  content: "\f209";
}
.semantic i.icon.meanpath:before {
  content: "\f20c";
}
.semantic i.icon.buysellads:before {
  content: "\f20d";
}
.semantic i.icon.connectdevelop:before {
  content: "\f20e";
}
.semantic i.icon.dashcube:before {
  content: "\f210";
}
.semantic i.icon.forumbee:before {
  content: "\f211";
}
.semantic i.icon.leanpub:before {
  content: "\f212";
}
.semantic i.icon.sellsy:before {
  content: "\f213";
}
.semantic i.icon.shirtsinbulk:before {
  content: "\f214";
}
.semantic i.icon.simplybuilt:before {
  content: "\f215";
}
.semantic i.icon.skyatlas:before {
  content: "\f216";
}
.semantic i.icon.whatsapp:before {
  content: "\f232";
}
.semantic i.icon.viacoin:before {
  content: "\f237";
}
.semantic i.icon.medium:before {
  content: "\f23a";
}
.semantic i.icon.like:before {
  content: "\f004";
}
.semantic i.icon.favorite:before {
  content: "\f005";
}
.semantic i.icon.video:before {
  content: "\f008";
}
.semantic i.icon.check:before {
  content: "\f00c";
}
.semantic i.icon.remove:before {
  content: "\f00d";
}
.semantic i.icon.close:before {
  content: "\f00d";
}
.semantic i.icon.cancel:before {
  content: "\f00d";
}
.semantic i.icon.delete:before {
  content: "\f00d";
}
.semantic i.icon.x:before {
  content: "\f00d";
}
.semantic i.icon.user.times:before {
  content: "\f235";
}
.semantic i.icon.user.close:before {
  content: "\f235";
}
.semantic i.icon.user.cancel:before {
  content: "\f235";
}
.semantic i.icon.user.delete:before {
  content: "\f235";
}
.semantic i.icon.user.x:before {
  content: "\f235";
}
.semantic i.icon.zoom.in:before {
  content: "\f00e";
}
.semantic i.icon.magnify:before {
  content: "\f00e";
}
.semantic i.icon.shutdown:before {
  content: "\f011";
}
.semantic i.icon.clock:before {
  content: "\f017";
}
.semantic i.icon.time:before {
  content: "\f017";
}
.semantic i.icon.play.circle.outline:before {
  content: "\f01d";
}
.semantic i.icon.headphone:before {
  content: "\f025";
}
.semantic i.icon.volume.off:before {
  content: "\f026";
}
.semantic i.icon.camera:before {
  content: "\f030";
}
.semantic i.icon.video.camera:before {
  content: "\f03d";
}
.semantic i.icon.picture:before {
  content: "\f03e";
}
.semantic i.icon.pencil:before {
  content: "\f040";
}
.semantic i.icon.compose:before {
  content: "\f040";
}
.semantic i.icon.point:before {
  content: "\f041";
}
.semantic i.icon.tint:before {
  content: "\f043";
}
.semantic i.icon.signup:before {
  content: "\f044";
}
.semantic i.icon.plus.circle:before {
  content: "\f055";
}
.semantic i.icon.minus.circle:before {
  content: "\f056";
}
.semantic i.icon.dont:before {
  content: "\f05e";
}
.semantic i.icon.minimize:before {
  content: "\f066";
}
.semantic i.icon.add:before {
  content: "\f067";
}
.semantic i.icon.eye:before {
  content: "\f06e";
}
.semantic i.icon.attention:before {
  content: "\f06a";
}
.semantic i.icon.cart:before {
  content: "\f07a";
}
.semantic i.icon.shuffle:before {
  content: "\f074";
}
.semantic i.icon.talk:before {
  content: "\f075";
}
.semantic i.icon.chat:before {
  content: "\f075";
}
.semantic i.icon.shopping.cart:before {
  content: "\f07a";
}
.semantic i.icon.bar.graph:before {
  content: "\f080";
}
.semantic i.icon.area.graph:before {
  content: "\f1fe";
}
.semantic i.icon.pie.graph:before {
  content: "\f200";
}
.semantic i.icon.line.graph:before {
  content: "\f201";
}
.semantic i.icon.key:before {
  content: "\f084";
}
.semantic i.icon.privacy:before {
  content: "\f084";
}
.semantic i.icon.cogs:before {
  content: "\f085";
}
.semantic i.icon.discussions:before {
  content: "\f086";
}
.semantic i.icon.like.outline:before {
  content: "\f087";
}
.semantic i.icon.dislike.outline:before {
  content: "\f088";
}
.semantic i.icon.heart.outline:before {
  content: "\f08a";
}
.semantic i.icon.log.out:before {
  content: "\f08b";
}
.semantic i.icon.thumb.tack:before {
  content: "\f08d";
}
.semantic i.icon.winner:before {
  content: "\f091";
}
.semantic i.icon.bookmark.outline:before {
  content: "\f097";
}
.semantic i.icon.phone.square:before {
  content: "\f098";
}
.semantic i.icon.phone.square:before {
  content: "\f098";
}
.semantic i.icon.credit.card:before {
  content: "\f09d";
}
.semantic i.icon.hdd.outline:before {
  content: "\f0a0";
}
.semantic i.icon.bullhorn:before {
  content: "\f0a1";
}
.semantic i.icon.bell:before {
  content: "\f0f3";
}
.semantic i.icon.bell.outline:before {
  content: "\f0a2";
}
.semantic i.icon.bell.slash:before {
  content: "\f1f6";
}
.semantic i.icon.bell.slash.outline:before {
  content: "\f1f7";
}
.semantic i.icon.hand.outline.right:before {
  content: "\f0a4";
}
.semantic i.icon.hand.outline.left:before {
  content: "\f0a5";
}
.semantic i.icon.hand.outline.up:before {
  content: "\f0a6";
}
.semantic i.icon.hand.outline.down:before {
  content: "\f0a7";
}
.semantic i.icon.globe:before {
  content: "\f0ac";
}
.semantic i.icon.wrench:before {
  content: "\f0ad";
}
.semantic i.icon.briefcase:before {
  content: "\f0b1";
}
.semantic i.icon.group:before {
  content: "\f0c0";
}
.semantic i.icon.flask:before {
  content: "\f0c3";
}
.semantic i.icon.sidebar:before {
  content: "\f0c9";
}
.semantic i.icon.bars:before {
  content: "\f0c9";
}
.semantic i.icon.list.ul:before {
  content: "\f0ca";
}
.semantic i.icon.list.ol:before {
  content: "\f0cb";
}
.semantic i.icon.numbered.list:before {
  content: "\f0cb";
}
.semantic i.icon.magic:before {
  content: "\f0d0";
}
.semantic i.icon.truck:before {
  content: "\f0d1";
}
.semantic i.icon.currency:before {
  content: "\f0d6";
}
.semantic i.icon.triangle.down:before {
  content: "\f0d7";
}
.semantic i.icon.dropdown:before {
  content: "\f0d7";
}
.semantic i.icon.triangle.up:before {
  content: "\f0d8";
}
.semantic i.icon.triangle.left:before {
  content: "\f0d9";
}
.semantic i.icon.triangle.right:before {
  content: "\f0da";
}
.semantic i.icon.envelope:before {
  content: "\f0e0";
}
.semantic i.icon.conversation:before {
  content: "\f0e6";
}
.semantic i.icon.lightning:before {
  content: "\f0e7";
}
.semantic i.icon.umbrella:before {
  content: "\f0e9";
}
.semantic i.icon.lightbulb:before {
  content: "\f0eb";
}
.semantic i.icon.suitcase:before {
  content: "\f0f2";
}
.semantic i.icon.bell.outline:before {
  content: "\f0a2";
}
.semantic i.icon.ambulance:before {
  content: "\f0f9";
}
.semantic i.icon.medkit:before {
  content: "\f0fa";
}
.semantic i.icon.fighter.jet:before {
  content: "\f0fb";
}
.semantic i.icon.beer:before {
  content: "\f0fc";
}
.semantic i.icon.plus.square:before {
  content: "\f0fe";
}
.semantic i.icon.computer:before {
  content: "\f108";
}
.semantic i.icon.circle.outline:before {
  content: "\f10c";
}
.semantic i.icon.intersex:before {
  content: "\f10c";
}
.semantic i.icon.asexual:before {
  content: "\f10c";
}
.semantic i.icon.spinner:before {
  content: "\f110";
}
.semantic i.icon.gamepad:before {
  content: "\f11b";
}
.semantic i.icon.star.half.full:before {
  content: "\f123";
}
.semantic i.icon.question:before {
  content: "\f128";
}
.semantic i.icon.attention:before {
  content: "\f12a";
}
.semantic i.icon.eraser:before {
  content: "\f12d";
}
.semantic i.icon.microphone:before {
  content: "\f130";
}
.semantic i.icon.microphone.slash:before {
  content: "\f131";
}
.semantic i.icon.shield:before {
  content: "\f132";
}
.semantic i.icon.target:before {
  content: "\f140";
}
.semantic i.icon.play.circle:before {
  content: "\f144";
}
.semantic i.icon.pencil.square:before {
  content: "\f14b";
}
.semantic i.icon.compass:before {
  content: "\f14e";
}
.semantic i.icon.eur:before {
  content: "\f153";
}
.semantic i.icon.gbp:before {
  content: "\f154";
}
.semantic i.icon.usd:before {
  content: "\f155";
}
.semantic i.icon.inr:before {
  content: "\f156";
}
.semantic i.icon.cny:before,
.semantic i.icon.rmb:before,
.semantic i.icon.jpy:before {
  content: "\f157";
}
.semantic i.icon.rouble:before,
.semantic i.icon.rub:before {
  content: "\f158";
}
.semantic i.icon.won:before,
.semantic i.icon.krw:before {
  content: "\f159";
}
.semantic i.icon.btc:before {
  content: "\f15a";
}
.semantic i.icon.sheqel:before,
.semantic i.icon.ils:before {
  content: "\f20b";
}
.semantic i.icon.try:before {
  content: "\f195";
}
.semantic i.icon.zip:before {
  content: "\f187";
}
.semantic i.icon.dot.circle.outline:before {
  content: "\f192";
}
.semantic i.icon.sliders:before {
  content: "\f1de";
}
.semantic i.icon.wi-fi:before {
  content: "\f1eb";
}
.semantic i.icon.graduation:before {
  content: "\f19d";
}
.semantic i.icon.̽:before {
  content: "\f1b2";
}
.semantic i.icon.weixin:before {
  content: "\f1d7";
}
.semantic i.icon.binoculars:before {
  content: "\f1e5";
}
.semantic i.icon.gratipay:before {
  content: "\f184";
}
.semantic i.icon.genderless:before {
  content: "\f1db";
}
.semantic i.icon.teletype:before {
  content: "\f1e4";
}
.semantic i.icon.power.cord:before {
  content: "\f1e6";
}
.semantic i.icon.tty:before {
  content: "\f1e4";
}
.semantic i.icon.cc:before {
  content: "\f20a";
}
.semantic i.icon.ils:before {
  content: "\f20b";
}
.semantic i.icon.plus.cart:before {
  content: "\f217";
}
.semantic i.icon.arrow.down.cart:before {
  content: "\f218";
}
.semantic i.icon.detective:before {
  content: "\f21b";
}
.semantic i.icon.venus:before {
  content: "\f221";
}
.semantic i.icon.mars:before {
  content: "\f222";
}
.semantic i.icon.mercury:before {
  content: "\f223";
}
.semantic i.icon.venus.double:before {
  content: "\f226";
}
.semantic i.icon.female.homosexual:before {
  content: "\f226";
}
.semantic i.icon.mars.double:before {
  content: "\f227";
}
.semantic i.icon.male.homosexual:before {
  content: "\f227";
}
.semantic i.icon.venus.mars:before {
  content: "\f228";
}
.semantic i.icon.mars.stroke:before {
  content: "\f229";
}
.semantic i.icon.mars.alternate:before {
  content: "\f229";
}
.semantic i.icon.mars.vertical:before {
  content: "\f22a";
}
.semantic i.icon.mars.horizontal:before {
  content: "\f22b";
}
.semantic i.icon.mars.stroke.vertical:before {
  content: "\f22a";
}
.semantic i.icon.mars.stroke.horizontal:before {
  content: "\f22b";
}
.semantic i.icon.neuter:before {
  content: "\f22c";
}
.semantic i.icon.facebook.official {
  content: "\f230";
}
.semantic i.icon.pinterest.official {
  content: "\f231";
}
.semantic i.icon.bed:before {
  content: "\f236";
}
.semantic .ui.image {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  background-color: transparent;
}
.semantic img.ui.image {
  display: block;
}
.semantic .ui.image svg,
.semantic .ui.image img {
  display: block;
  max-width: 100%;
  height: auto;
}
.semantic .ui.hidden.images,
.semantic .ui.hidden.image {
  display: none;
}
.semantic .ui.disabled.images,
.semantic .ui.disabled.image {
  cursor: default;
  opacity: 0.3;
}
.semantic .ui.inline.image,
.semantic .ui.inline.image svg,
.semantic .ui.inline.image img {
  display: inline-block;
}
.semantic .ui.top.aligned.images .image,
.semantic .ui.top.aligned.image,
.semantic .ui.top.aligned.image svg,
.semantic .ui.top.aligned.image img {
  display: inline-block;
  vertical-align: top;
}
.semantic .ui.middle.aligned.images .image,
.semantic .ui.middle.aligned.image,
.semantic .ui.middle.aligned.image svg,
.semantic .ui.middle.aligned.image img {
  display: inline-block;
  vertical-align: middle;
}
.semantic .ui.bottom.aligned.images .image,
.semantic .ui.bottom.aligned.image,
.semantic .ui.bottom.aligned.image svg,
.semantic .ui.bottom.aligned.image img {
  display: inline-block;
  vertical-align: bottom;
}
.semantic .ui.rounded.images .image,
.semantic .ui.rounded.images img,
.semantic .ui.rounded.images svg,
.semantic .ui.rounded.image img,
.semantic .ui.rounded.image svg,
.semantic .ui.rounded.image {
  border-radius: 0.3125em;
}
.semantic .ui.bordered.images .image,
.semantic .ui.bordered.images img,
.semantic .ui.bordered.images svg,
.semantic .ui.bordered.image img,
.semantic .ui.bordered.image svg,
.semantic img.ui.bordered.image {
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.circular.images,
.semantic .ui.circular.image {
  overflow: hidden;
}
.semantic .ui.circular.images .image,
.semantic .ui.circular.images img,
.semantic .ui.circular.images svg,
.semantic .ui.circular.image img,
.semantic .ui.circular.image svg,
.semantic .ui.circular.image {
  border-radius: 500rem;
}
.semantic .ui.fluid.images,
.semantic .ui.fluid.image,
.semantic .ui.fluid.images img,
.semantic .ui.fluid.images svg,
.semantic .ui.fluid.image svg,
.semantic .ui.fluid.image img {
  display: block;
  width: 100%;
  height: auto;
}
.semantic .ui.avatar.images .image,
.semantic .ui.avatar.images img,
.semantic .ui.avatar.images svg,
.semantic .ui.avatar.image img,
.semantic .ui.avatar.image svg,
.semantic .ui.avatar.image {
  margin-right: 0.25em;
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  border-radius: 500rem;
}
.semantic .ui.floated.image,
.semantic .ui.floated.images {
  float: left;
  margin-right: 1em;
  margin-bottom: 1em;
}
.semantic .ui.right.floated.images,
.semantic .ui.right.floated.image {
  float: right;
  margin-right: 0em;
  margin-bottom: 1em;
  margin-left: 1em;
}
.semantic .ui.floated.images:last-child,
.semantic .ui.floated.image:last-child {
  margin-bottom: 0em;
}
.semantic .ui.centered.images,
.semantic .ui.centered.image {
  margin-left: auto;
  margin-right: auto;
}
.semantic .ui.mini.images .image,
.semantic .ui.mini.images img,
.semantic .ui.mini.images svg,
.semantic .ui.mini.image {
  width: 20px;
  height: auto;
  font-size: 0.71428571rem;
}
.semantic .ui.tiny.images .image,
.semantic .ui.tiny.images img,
.semantic .ui.tiny.images svg,
.semantic .ui.tiny.image {
  width: 80px;
  height: auto;
  font-size: 0.85714286rem;
}
.semantic .ui.small.images .image,
.semantic .ui.small.images img,
.semantic .ui.small.images svg,
.semantic .ui.small.image {
  width: 150px;
  height: auto;
  font-size: 0.92857143rem;
}
.semantic .ui.medium.images .image,
.semantic .ui.medium.images img,
.semantic .ui.medium.images svg,
.semantic .ui.medium.image {
  width: 300px;
  height: auto;
  font-size: 1rem;
}
.semantic .ui.large.images .image,
.semantic .ui.large.images img,
.semantic .ui.large.images svg,
.semantic .ui.large.image {
  width: 450px;
  height: auto;
  font-size: 1.14285714rem;
}
.semantic .ui.big.images .image,
.semantic .ui.big.images img,
.semantic .ui.big.images svg,
.semantic .ui.big.image {
  width: 600px;
  height: auto;
  font-size: 1.28571429rem;
}
.semantic .ui.huge.images .image,
.semantic .ui.huge.images img,
.semantic .ui.huge.images svg,
.semantic .ui.huge.image {
  width: 800px;
  height: auto;
  font-size: 1.42857143rem;
}
.semantic .ui.massive.images .image,
.semantic .ui.massive.images img,
.semantic .ui.massive.images svg,
.semantic .ui.massive.image {
  width: 960px;
  height: auto;
  font-size: 1.71428571rem;
}
.semantic .ui.images {
  font-size: 0em;
  margin: 0em -0.25rem 0rem;
}
.semantic .ui.images .image,
.semantic .ui.images img,
.semantic .ui.images svg {
  display: inline-block;
  margin: 0em 0.25rem 0.5rem;
}
.semantic .ui.input {
  position: relative;
  display: inline-block;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.input input {
  margin: 0em;
  width: 100%;
  outline: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  text-align: left;
  line-height: 1.2142em;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  padding: 0.67861em 1em;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0;
  -webkit-transition: background-color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  box-shadow: none;
}
.semantic .ui.input input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.input input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.input input:active,
.semantic .ui.input.down input {
  border-color: rgba(0, 0, 0, 0.3);
  background: #fafafa;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: none;
}
.semantic .ui.loading.loading.input > i.icon:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.loading.loading.input > i.icon:after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  -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: #aaaaaa transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}
.semantic .ui.input.focus input,
.semantic .ui.input input:focus {
  border-color: rgba(39, 41, 43, 0.3);
  background: #ffffff;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: none;
}
.semantic .ui.input.focus input input::-webkit-input-placeholder,
.semantic .ui.input input:focus input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.input.focus input input::-moz-placeholder,
.semantic .ui.input input:focus input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.input.error input {
  background-color: #fff0f0;
  border-color: #dbb1b1;
  color: #cc181e;
  box-shadow: none;
}
.semantic .ui.input.error input ::-webkit-input-placeholder {
  color: rgba(255, 80, 80, 0.4);
}
.semantic .ui.input.error input ::-moz-placeholder {
  color: rgba(255, 80, 80, 0.4);
}
.semantic .ui.input.error input :focus::-webkit-input-placeholder {
  color: rgba(255, 80, 80, 0.7);
}
.semantic .ui.input.error input :focus::-moz-placeholder {
  color: rgba(255, 80, 80, 0.7);
}
.semantic .ui.transparent.input input {
  border-color: transparent;
  background-color: transparent;
  padding: 0em;
}
.semantic .ui.transparent.icon.input > i.icon {
  width: 1.25em;
}
.semantic .ui.transparent.icon.input > input {
  padding-left: 0em !important;
  padding-right: 2em !important;
}
.semantic .ui.transparent[class*="left icon"].input > input {
  padding-left: 0em !important;
  padding-left: 2em !important;
}
.semantic .ui.transparent.inverted.input input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.semantic .ui.transparent.inverted.input {
  color: #ffffff;
}
.semantic .ui.transparent.inverted.input input {
  color: inherit;
}
.semantic .ui.icon.input > i.icon {
  cursor: default;
  position: absolute;
  text-align: center;
  top: 0px;
  right: 0px;
  margin: 0em;
  height: 100%;
  width: 2.82142em;
  opacity: 0.5;
  border-radius: 0em 0 0 0em;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.semantic .ui.icon.input input {
  padding-right: 2.82142em !important;
}
.semantic .ui.icon.input > i.icon:before,
.semantic .ui.icon.input > i.icon:after {
  left: 0;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%;
  margin-top: -0.5em;
}
.semantic .ui.icon.input > i.link.icon {
  cursor: pointer;
}
.semantic .ui.icon.input > i.circular.icon {
  top: 0.35em;
  right: 0.5em;
}
.semantic .ui[class*="left icon"].input > i.icon {
  right: auto;
  left: 1px;
  border-radius: 0 0em 0em 0;
}
.semantic .ui[class*="left icon"].input > i.circular.icon {
  right: auto;
  left: 0.5em;
}
.semantic .ui[class*="left icon"].input > input {
  padding-left: 2.82142em !important;
  padding-right: 1em !important;
}
.semantic .ui.icon.input > input:focus ~ i.icon {
  opacity: 1;
}
.semantic .ui.labeled.input {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.semantic .ui.labeled.input > .label {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  margin: 0;
  font-size: 1em;
}
.semantic .ui.labeled.input > .label:not(.corner) {
  padding-top: 0.78571em;
  padding-bottom: 0.78571em;
}
.semantic .ui.fluid.labeled.input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.semantic .ui.labeled.input:not([class*="corner labeled"]):not([class*="right labeled"]) > input {
  border-left: none;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.semantic .ui.labeled.input:not([class*="corner labeled"]):not([class*="right labeled"]) > .label {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.semantic .ui[class*="right labeled"].input > input {
  border-right: none;
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}
.semantic .ui[class*="right labeled"].input > .label {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.semantic .ui.labeled.input .corner.label {
  top: 1px;
  right: 1px;
  font-size: 0.75em;
  border-radius: 0em 0 0em 0em;
}
.semantic .ui.labeled.input input {
  padding-right: 2.5em !important;
}
.semantic .ui[class*="corner labeled"].icon.input:not(.left) > input {
  padding-right: 3.25em !important;
}
.semantic .ui[class*="corner labeled"].icon.input:not(.left) > .icon {
  margin-right: 1.25em;
}
.semantic .ui.action.input {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.semantic .ui.action.input > .button,
.semantic .ui.action.input > .buttons {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
}
.semantic .ui.action.input > .button,
.semantic .ui.action.input > .buttons > .button {
  padding-top: 0.78571em;
  padding-bottom: 0.78571em;
  margin: 0;
}
.semantic .ui.fluid.action.input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.semantic .ui.action.input:not([class*="left action"]) > input {
  border-right: none;
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}
.semantic .ui.action.input:not([class*="left action"]) > .button,
.semantic .ui.action.input:not([class*="left action"]) > .buttons > .button {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.semantic .ui[class*="left action"].input > .button,
.semantic .ui[class*="left action"].input > .buttons > .button {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.semantic .ui[class*="left action"].input > input {
  border-left: none;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.semantic .ui.inverted.input input {
  border: none;
}
.semantic .ui.fluid.input {
  display: block;
}
.semantic .ui.mini.input {
  font-size: 0.8125rem;
}
.semantic .ui.small.input {
  font-size: 0.875rem;
}
.semantic .ui.input {
  font-size: 1rem;
}
.semantic .ui.large.input {
  font-size: 1.125rem;
}
.semantic .ui.big.input {
  font-size: 1.25rem;
}
.semantic .ui.huge.input {
  font-size: 1.375rem;
}
.semantic .ui.massive.input {
  font-size: 1.5rem;
}
.semantic .ui.input input {
  cursor: text;
}
.semantic .ui.label {
  display: inline-block;
  vertical-align: baseline;
  line-height: 1;
  margin: 0em 0.125em;
  background-color: #e8e8e8;
  border-color: #e8e8e8;
  background-image: none;
  padding: 0.6em 0.8em;
  color: rgba(0, 0, 0, 0.6);
  text-transform: none;
  font-weight: bold;
  border-radius: 0;
  box-sizing: border-box;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.semantic .ui.label:first-child {
  margin-left: 0em;
}
.semantic .ui.label:last-child {
  margin-right: 0em;
}
.semantic a.ui.label {
  cursor: pointer;
}
.semantic .ui.label a {
  cursor: pointer;
  color: inherit;
  opacity: 0.8;
  -webkit-transition: 0.2s opacity ease;
  transition: 0.2s opacity ease;
}
.semantic .ui.label a:hover {
  opacity: 1;
}
.semantic .ui.label .icon {
  width: auto;
  margin: 0em 0.75em 0em 0em;
}
.semantic .ui.label .detail {
  display: inline-block;
  vertical-align: top;
  font-weight: bold;
  margin-left: 1em;
  opacity: 0.8;
}
.semantic .ui.label .detail .icon {
  margin: 0em 0.25em 0em 0em;
}
.semantic .ui.label .close.icon,
.semantic .ui.label .delete.icon {
  cursor: pointer;
  margin-right: 0em;
  margin-left: 0.5em;
  opacity: 0.8;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.semantic .ui.label .delete.icon:hover {
  opacity: 1;
}
.semantic .ui.labels .label {
  margin: 0em 0.5em 0.75em 0em;
}
.semantic .ui.attached.segment > .ui.top.left.attached.label,
.semantic .ui.bottom.attached.segment > .ui.top.left.attached.label {
  border-top-left-radius: 0;
}
.semantic .ui.attached.segment > .ui.top.right.attached.label,
.semantic .ui.bottom.attached.segment > .ui.top.right.attached.label {
  border-top-right-radius: 0;
}
.semantic .ui.top.attached.segment > .ui.bottom.left.attached.label {
  border-bottom-left-radius: 0;
}
.semantic .ui.top.attached.segment > .ui.bottom.right.attached.label {
  border-bottom-right-radius: 0;
}
.semantic .ui.top.attached.label:first-child + :not(.attached) {
  margin-top: 2rem !important;
}
.semantic .ui.bottom.attached.label:first-child ~ :last-child:not(.attached) {
  margin-top: 0em;
  margin-bottom: 2rem !important;
}
.semantic .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.6em 0.8em 0.6em 0.5em;
  border-radius: 0;
  box-shadow: none;
}
.semantic .ui.image.label img {
  display: inline-block;
  vertical-align: top;
  height: 2.2em;
  margin: -0.6em 0.5em -0.6em -0.5em;
  border-radius: 0;
}
.semantic .ui.image.label .detail {
  background: rgba(0, 0, 0, 0.1);
  margin: -0.6em -0.8em -0.6em 0.5em;
  padding: 0.6em 0.8em;
  border-radius: 0em 0 0 0em;
}
.semantic .ui.tag.labels .label,
.semantic .ui.tag.label {
  margin-left: 1em;
  position: relative;
  padding-left: 1.5em;
  padding-right: 1.5em;
  border-radius: 0em 0 0 0em;
}
.semantic .ui.tag.labels .label:before,
.semantic .ui.tag.label:before {
  position: absolute;
  -webkit-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  -ms-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  transform: translateY(-50%) translateX(50%) rotate(-45deg);
  top: 50%;
  right: 100%;
  content: "";
  background-color: #e8e8e8;
  background-image: none;
  width: 1.56em;
  height: 1.56em;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.semantic .ui.tag.labels .label:after,
.semantic .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;
}
.semantic .ui.corner.label {
  position: absolute;
  top: 0em;
  right: 0em;
  margin: 0em;
  padding: 0em;
  text-align: center;
  width: 3.25em;
  height: 3.25em;
  z-index: 1;
  -webkit-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
.semantic .ui.corner.label {
  background-color: transparent !important;
}
.semantic .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: 3.25em solid transparent;
  border-bottom: 3.25em solid transparent;
  border-left: 0em solid transparent;
  border-right-color: inherit;
  -webkit-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
.semantic .ui.corner.label .icon {
  position: relative;
  top: 0.4em;
  left: 0.75em;
  font-size: 1em;
  margin: 0em;
}
.semantic .ui.left.corner.label,
.semantic .ui.left.corner.label:after {
  right: auto;
  left: 0em;
}
.semantic .ui.left.corner.label:after {
  border-top: 3.25em solid transparent;
  border-right: 3.25em solid transparent;
  border-bottom: 0em solid transparent;
  border-left: 0em solid transparent;
  border-top-color: inherit;
}
.semantic .ui.left.corner.label .icon {
  left: -0.75em;
}
.semantic .ui.segment > .ui.corner.label {
  top: -1px;
  right: -1px;
}
.semantic .ui.segment > .ui.left.corner.label {
  right: auto;
  left: -1px;
}
.semantic .ui.input > .ui.corner.label {
  top: 1px;
  right: 1px;
}
.semantic .ui.input > .ui.right.corner.label {
  right: auto;
  left: 1px;
}
.semantic .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 0 0em;
  border-color: rgba(0, 0, 0, 0.15);
}
.semantic .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;
}
.semantic .ui[class*="right ribbon"].label {
  text-align: left;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  border-radius: 0 0em 0em 0;
  padding-left: 0.8em;
}
.semantic .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;
}
.semantic .ui.ribbon.label {
  left: -webkit-calc( -1rem - 1.2em );
  left: calc(-1rem - 1.2em);
  margin-right: -1.2em;
  padding-left: -webkit-calc( 1rem + 1.2em );
  padding-left: calc(1rem + 1.2em);
}
.semantic .ui[class*="right ribbon"].label {
  left: -webkit-calc(100% + 1rem + 1.2em );
  left: calc(100% + 1rem + 1.2em);
  padding-right: -webkit-calc( 1rem + 1.2em );
  padding-right: calc(1rem + 1.2em);
}
.semantic .ui.image > .ribbon.label,
.semantic .ui.card .image > .ribbon.label {
  position: absolute;
  top: 1rem;
}
.semantic .ui.card .image > .ui.ribbon.label,
.semantic .ui.image > .ui.ribbon.label {
  left: -webkit-calc( 0.05rem - 1.2em );
  left: calc(0.05rem - 1.2em);
  padding-left: -webkit-calc( -0.05rem + 1.2em );
  padding-left: calc(-0.05rem + 1.2em);
}
.semantic .ui.card .image > .ui[class*="right ribbon"].label,
.semantic .ui.image > .ui[class*="right ribbon"].label {
  left: -webkit-calc(100% + -0.05rem + 1.2em );
  left: calc(100% - 0.05rem + 1.2em);
  padding-left: 0.8em;
  padding-right: -webkit-calc( -0.05rem + 1.2em );
  padding-right: calc(-0.05rem + 1.2em);
}
.semantic .ui.top.attached.label,
.semantic .ui.attached.label {
  width: 100%;
  position: absolute;
  margin: 0em;
  top: 0em;
  left: 0em;
  padding: 0.75em 1em;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.bottom.attached.label {
  top: auto;
  bottom: 0em;
  border-radius: 0em 0em 0 0;
}
.semantic .ui.top.left.attached.label {
  width: auto;
  margin-top: 0em !important;
  border-radius: 0 0em 0 0em;
}
.semantic .ui.top.right.attached.label {
  width: auto;
  left: auto;
  right: 0em;
  border-radius: 0em 0 0em 0;
}
.semantic .ui.bottom.left.attached.label {
  width: auto;
  top: auto;
  bottom: 0em;
  border-radius: 0em 0 0em 0;
}
.semantic .ui.bottom.right.attached.label {
  top: auto;
  bottom: 0em;
  left: auto;
  right: 0em;
  width: auto;
  border-radius: 0 0em 0 0em;
}
.semantic .ui.label.disabled {
  opacity: 0.5;
}
.semantic a.ui.labels .label:hover,
.semantic a.ui.label:hover {
  background-color: #e0e0e0;
  border-color: #e0e0e0;
  background-image: none;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.labels a.label:hover:before,
.semantic a.ui.label:hover:before {
  background-color: #e0e0e0;
  background-image: none;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.labels.visible .label,
.semantic .ui.label.visible {
  display: inline-block !important;
}
.semantic .ui.labels.hidden .label,
.semantic .ui.label.hidden {
  display: none !important;
}
.semantic .ui.black.labels .label,
.semantic .ui.black.label {
  background-color: #1b1c1d !important;
  border-color: #1b1c1d !important;
  color: #ffffff !important;
}
.semantic .ui.labels .black.label:before,
.semantic .ui.black.labels .label:before,
.semantic .ui.black.label:before {
  background-color: #1b1c1d !important;
}
.semantic a.ui.black.labels .label:hover,
.semantic a.ui.black.label:hover {
  background-color: #1b1c1d !important;
  border-color: #1b1c1d !important;
}
.semantic .ui.labels a.black.label:hover:before,
.semantic .ui.black.labels a.label:hover:before,
.semantic a.ui.black.label:hover:before {
  background-color: #1b1c1d !important;
}
.semantic .ui.black.corner.label,
.semantic .ui.black.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.black.ribbon.label {
  border-color: #020203 !important;
}
.semantic .ui.blue.labels .label,
.semantic .ui.blue.label {
  background-color: #3b83c0 !important;
  border-color: #3b83c0 !important;
  color: #ffffff !important;
}
.semantic .ui.labels .blue.label:before,
.semantic .ui.blue.labels .label:before,
.semantic .ui.blue.label:before {
  background-color: #3b83c0 !important;
}
.semantic a.ui.blue.labels .label:hover,
.semantic .ui.blue.labels a.label:hover,
.semantic a.ui.blue.label:hover {
  background-color: #458ac6 !important;
  border-color: #458ac6 !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.blue.label:hover:before,
.semantic .ui.blue.labels a.label:hover:before,
.semantic a.ui.blue.label:hover:before {
  background-color: #458ac6 !important;
}
.semantic .ui.blue.corner.label,
.semantic .ui.blue.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.blue.ribbon.label {
  border-color: #2f6899 !important;
}
.semantic .ui.green.labels .label,
.semantic .ui.green.label {
  background-color: #2db475 !important;
  border-color: #2db475 !important;
  color: #ffffff !important;
}
.semantic .ui.labels .green.label:before,
.semantic .ui.green.labels .label:before,
.semantic .ui.green.label:before {
  background-color: #2db475 !important;
}
.semantic a.ui.green.labels .label:hover,
.semantic a.ui.green.label:hover {
  background-color: #30c07d !important;
  border-color: #30c07d !important;
}
.semantic .ui.labels a.green.label:hover:before,
.semantic .ui.green.labels a.label:hover:before,
.semantic a.ui.green.label:hover:before {
  background-color: #30c07d !important;
}
.semantic .ui.green.corner.label,
.semantic .ui.green.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.green.ribbon.label {
  border-color: #238b5a !important;
}
.semantic .ui.orange.labels .label,
.semantic .ui.orange.label {
  background-color: #e07b53 !important;
  border-color: #e07b53 !important;
  color: #ffffff !important;
}
.semantic .ui.labels .orange.label:before,
.semantic .ui.orange.labels .label:before,
.semantic .ui.orange.label:before {
  background-color: #e07b53 !important;
}
.semantic a.ui.orange.labels .label:hover,
.semantic .ui.orange.labels a.label:hover,
.semantic a.ui.orange.label:hover {
  background-color: #e28560 !important;
  border-color: #e28560 !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.orange.label:hover:before,
.semantic .ui.orange.labels a.label:hover:before,
.semantic a.ui.orange.label:hover:before {
  background-color: #e28560 !important;
}
.semantic .ui.orange.corner.label,
.semantic .ui.orange.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.orange.ribbon.label {
  border-color: #d85a28 !important;
}
.semantic .ui.pink.labels .label,
.semantic .ui.pink.label {
  background-color: #d9499a !important;
  border-color: #d9499a !important;
  color: #ffffff !important;
}
.semantic .ui.labels .pink.label:before,
.semantic .ui.pink.labels .label:before,
.semantic .ui.pink.label:before {
  background-color: #d9499a !important;
}
.semantic a.ui.pink.labels .label:hover,
.semantic .ui.pink.labels a.label:hover,
.semantic a.ui.pink.label:hover {
  background-color: #dc56a1 !important;
  border-color: #dc56a1 !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.pink.label:hover:before,
.semantic .ui.pink.labels a.label:hover:before,
.semantic a.ui.pink.label:hover:before {
  background-color: #dc56a1 !important;
}
.semantic .ui.pink.corner.label,
.semantic .ui.pink.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.pink.ribbon.label {
  border-color: #c62981 !important;
}
.semantic .ui.purple.labels .label,
.semantic .ui.purple.label {
  background-color: #564f8a !important;
  border-color: #564f8a !important;
  color: #ffffff !important;
}
.semantic .ui.labels .purple.label:before,
.semantic .ui.purple.labels .label:before,
.semantic .ui.purple.label:before {
  background-color: #564f8a !important;
}
.semantic a.ui.purple.labels .label:hover,
.semantic .ui.purple.labels a.label:hover,
.semantic a.ui.purple.label:hover {
  background-color: #5c5594 !important;
  border-color: #5c5594 !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.purple.label:hover:before,
.semantic .ui.purple.labels a.label:hover:before,
.semantic a.ui.purple.label:hover:before {
  background-color: #5c5594 !important;
}
.semantic .ui.purple.corner.label,
.semantic .ui.purple.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.purple.ribbon.label {
  border-color: #423c6a !important;
}
.semantic .ui.red.labels .label,
.semantic .ui.red.label {
  background-color: #cc181e !important;
  border-color: #cc181e !important;
  color: #ffffff !important;
}
.semantic .ui.labels .red.label:before,
.semantic .ui.red.labels .label:before,
.semantic .ui.red.label:before {
  background-color: #cc181e !important;
}
.semantic .ui.red.corner.label,
.semantic .ui.red.corner.label:hover {
  background-color: transparent !important;
}
.semantic a.ui.red.labels .label:hover,
.semantic a.ui.red.label:hover {
  background-color: #da1a20 !important;
  border-color: #da1a20 !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.red.label:hover:before,
.semantic .ui.red.labels a.label:hover:before,
.semantic a.ui.red.label:hover:before {
  background-color: #da1a20 !important;
}
.semantic .ui.red.ribbon.label {
  border-color: #9e1317 !important;
}
.semantic .ui.teal.labels .label,
.semantic .ui.teal.label {
  background-color: #00b5ad !important;
  border-color: #00b5ad !important;
  color: #ffffff !important;
}
.semantic .ui.labels .teal.label:before,
.semantic .ui.teal.labels .label:before,
.semantic .ui.teal.label:before {
  background-color: #00b5ad !important;
}
.semantic a.ui.teal.labels .label:hover,
.semantic .ui.teal.labels a.label:hover,
.semantic a.ui.teal.label:hover {
  background-color: #00c4bc !important;
  border-color: #00c4bc !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.teal.label:hover:before,
.semantic .ui.teal.labels a.label:hover:before,
.semantic a.ui.teal.label:hover:before {
  background-color: #00c4bc !important;
}
.semantic .ui.teal.corner.label,
.semantic .ui.teal.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.teal.ribbon.label {
  border-color: #00827c !important;
}
.semantic .ui.yellow.labels .label,
.semantic .ui.yellow.label {
  background-color: #f2c61f !important;
  border-color: #f2c61f !important;
  color: #ffffff !important;
}
.semantic .ui.labels .yellow.label:before,
.semantic .ui.yellow.labels .label:before,
.semantic .ui.yellow.label:before {
  background-color: #f2c61f !important;
}
.semantic a.ui.yellow.labels .label:hover,
.semantic .ui.yellow.labels a.label:hover,
.semantic a.ui.yellow.label:hover {
  background-color: #f3ca2d !important;
  border-color: #f3ca2d !important;
  color: #ffffff !important;
}
.semantic .ui.labels a.yellow.label:hover:before,
.semantic .ui.yellow.labels a.label:hover:before,
.semantic a.ui.yellow.label:hover:before {
  background-color: #f3ca2d !important;
}
.semantic .ui.yellow.corner.label,
.semantic .ui.yellow.corner.label:hover {
  background-color: transparent !important;
}
.semantic .ui.yellow.ribbon.label {
  border-color: #d2a90c !important;
}
.semantic .ui.label.fluid,
.semantic .ui.fluid.labels > .label {
  width: 100%;
  box-sizing: border-box;
}
.semantic .ui.inverted.labels .label,
.semantic .ui.inverted.label {
  color: #ffffff !important;
}
.semantic .ui.horizontal.labels .label,
.semantic .ui.horizontal.label {
  margin: 0em 0.5em 0em 0em;
  padding: 0.4em 0.8em;
  min-width: 3em;
  text-align: center;
}
.semantic .ui.circular.labels .label,
.semantic .ui.circular.label {
  min-width: 2em;
  min-height: 2em;
  padding: 0.5em !important;
  line-height: 1em;
  text-align: center;
  border-radius: 500rem;
}
.semantic .ui.empty.circular.labels .label,
.semantic .ui.empty.circular.label {
  min-width: 0em;
  min-height: 0em;
  overflow: hidden;
  width: 0.5em;
  height: 0.5em;
  vertical-align: baseline;
}
.semantic .ui.pointing.label {
  position: relative;
}
.semantic .ui.attached.pointing.label {
  position: absolute;
}
.semantic .ui.pointing.label:before {
  position: absolute;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background-image: none;
  z-index: 2;
  width: 0.6em;
  height: 0.6em;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.semantic .ui.pointing.label:before {
  background-color: #e8e8e8;
  background-image: none;
}
.semantic .ui.pointing.label,
.semantic .ui.pointing.above.label {
  margin-top: 1em;
}
.semantic .ui.pointing.label:before,
.semantic .ui.pointing.above.label:before {
  margin-left: -0.3em;
  top: -0.3em;
  left: 50%;
}
.semantic .ui.pointing.bottom.label,
.semantic .ui.pointing.below.label {
  margin-top: 0em;
  margin-bottom: 1em;
}
.semantic .ui.pointing.bottom.label:before,
.semantic .ui.pointing.below.label:before {
  margin-left: -0.3em;
  top: auto;
  right: auto;
  bottom: -0.3em;
  left: 50%;
}
.semantic .ui.pointing.left.label {
  margin-top: 0em;
  margin-left: 0.6em;
}
.semantic .ui.pointing.left.label:before {
  margin-top: -0.3em;
  bottom: auto;
  right: auto;
  top: 50%;
  left: 0em;
}
.semantic .ui.pointing.right.label {
  margin-top: 0em;
  margin-right: 0.6em;
}
.semantic .ui.pointing.right.label:before {
  margin-top: -0.3em;
  right: -0.3em;
  top: 50%;
  bottom: auto;
  left: auto;
}
.semantic .ui.floating.label {
  position: absolute;
  z-index: 100;
  top: -1em;
  left: 100%;
  margin: 0em 0em 0em -1.5em !important;
}
.semantic .ui.mini.labels .label,
.semantic .ui.mini.label {
  font-size: 0.6428rem;
}
.semantic .ui.tiny.labels .label,
.semantic .ui.tiny.label {
  font-size: 0.7142rem;
}
.semantic .ui.small.labels .label,
.semantic .ui.small.label {
  font-size: 0.7857rem;
}
.semantic .ui.labels .label,
.semantic .ui.label {
  font-size: 0.8571rem;
}
.semantic .ui.large.labels .label,
.semantic .ui.large.label {
  font-size: 1rem;
}
.semantic .ui.big.labels .label,
.semantic .ui.big.label {
  font-size: 1.1428rem;
}
.semantic .ui.huge.labels .label,
.semantic .ui.huge.label {
  font-size: 1.2857rem;
}
.semantic .ui.massive.labels .label,
.semantic .ui.massive.label {
  font-size: 1.4285rem;
}
.semantic ul.ui.list,
.semantic ol.ui.list,
.semantic .ui.list {
  list-style-type: none;
  margin: 1em 0em;
  padding: 0em 0em;
}
.semantic ul.ui.list:first-child,
.semantic ol.ui.list:first-child,
.semantic .ui.list:first-child {
  margin-top: 0em;
  padding-top: 0em;
}
.semantic ul.ui.list:last-child,
.semantic ol.ui.list:last-child,
.semantic .ui.list:last-child {
  margin-bottom: 0em;
  padding-bottom: 0em;
}
.semantic ul.ui.list li,
.semantic ol.ui.list li,
.semantic .ui.list > .item,
.semantic .ui.list .list > .item {
  display: list-item;
  table-layout: fixed;
  list-style-type: none;
  list-style-position: outside;
  padding: 0.3em 0em;
  line-height: 1.2;
}
.semantic ul.ui.list > li:first-child:after,
.semantic ol.ui.list > li:first-child:after,
.semantic .ui.list > .list > .item,
.semantic .ui.list > .item:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.semantic ul.ui.list li:first-child,
.semantic ol.ui.list li:first-child,
.semantic .ui.list .list > .item:first-child,
.semantic .ui.list > .item:first-child {
  padding-top: 0em;
}
.semantic ul.ui.list li:last-child,
.semantic ol.ui.list li:last-child,
.semantic .ui.list .list > .item:last-child,
.semantic .ui.list > .item:last-child {
  padding-bottom: 0em;
}
.semantic ul.ui.list ul,
.semantic ol.ui.list ol,
.semantic .ui.list .list {
  clear: both;
  margin: 0em;
  padding: 0.75em 0em 0.25em 0.5em;
}
.semantic .ui.list .list > .item > i.icon,
.semantic .ui.list > .item > i.icon {
  display: table-cell;
  margin: 0em;
  padding-top: 0.1rem;
  padding-right: 0.3em;
  vertical-align: middle;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.list .list > .item i[class*="top aligned"].icon,
.semantic .ui.list > .item > i[class*="top aligned"].icon {
  vertical-align: top;
}
.semantic .ui.list .list > .item > i.icon:only-child,
.semantic .ui.list > .item > i.icon:only-child {
  display: inline-block;
  vertical-align: top;
}
.semantic .ui.list .list > .item > .image,
.semantic .ui.list > .item > .image {
  display: table-cell;
  background-color: transparent;
  margin: 0em;
  padding-right: 0.5em;
  vertical-align: middle;
}
.semantic .ui.list .list > .item > [class*="top aligned"].image,
.semantic .ui.list > .item > [class*="top aligned"].image {
  vertical-align: top;
}
.semantic .ui.list .list > .item > .image img,
.semantic .ui.list > .item > .image img {
  vertical-align: middle;
}
.semantic .ui.list .list > .item > img.image,
.semantic .ui.list .list > .item > .image:only-child,
.semantic .ui.list > .item > img.image,
.semantic .ui.list > .item > .image:only-child {
  display: inline-block;
  padding-right: 0em;
}
.semantic .ui.list .list > .item > .content,
.semantic .ui.list > .item > .content {
  line-height: 1.2em;
}
.semantic .ui.list .list > .item > .image + .content,
.semantic .ui.list .list > .item > .icon + .content .ui.list > .item > .image + .content,
.semantic .ui.list > .item > .icon + .content {
  display: table-cell;
  padding: 0em 0em 0em 0.5em;
  vertical-align: middle;
}
.semantic .ui.list .list > .item > .image + .content,
.semantic .ui.list .list > .item > .icon + .content,
.semantic .ui.list > .item > .image + .content,
.semantic .ui.list > .item > .icon + .content {
  display: table-cell;
  padding: 0em 0em 0em 0.5em;
  vertical-align: middle;
}
.semantic .ui.list .list > .item > img.image + .content,
.semantic .ui.list > .item > img.image + .content {
  display: inline-block;
}
.semantic .ui.list .list > .item [class*="top aligned"].content,
.semantic .ui.list > .item > [class*="top aligned"].content {
  vertical-align: top;
}
.semantic .ui.list .list > .item > .content > .list,
.semantic .ui.list > .item > .content > .list {
  margin-left: 0em;
  padding-left: 0em;
}
.semantic .ui.list .list > a.item,
.semantic .ui.list > a.item {
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.list .list > a.item:hover,
.semantic .ui.list > a.item:hover {
  color: #00b2f3;
}
.semantic .ui.list .list > a.item i.icon,
.semantic .ui.list > a.item i.icon {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.list .item a {
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.list .item a:hover {
  color: #00b2f3 !important;
}
.semantic .ui.list .list > .item .header,
.semantic .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.8);
}
.semantic .ui.list .list > .item .description,
.semantic .ui.list > .item .description {
  display: block;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.list .list > .item [class*="left floated"],
.semantic .ui.list > .item [class*="left floated"] {
  float: left;
  margin: 0em 1em 0em 0em;
}
.semantic .ui.list .list > .item [class*="right floated"],
.semantic .ui.list > .item [class*="right floated"] {
  float: right;
  margin: 0em 0em 0em 1em;
}
.semantic .ui.menu .ui.list > .item,
.semantic .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.3em 0em;
  line-height: 1.2;
}
.semantic .ui.menu .ui.list .list > .item:before,
.semantic .ui.menu .ui.list > .item:before {
  border: none;
  background: none;
}
.semantic .ui.menu .ui.list .list > .item:first-child,
.semantic .ui.menu .ui.list > .item:first-child {
  padding-top: 0em;
}
.semantic .ui.menu .ui.list .list > .item:last-child,
.semantic .ui.menu .ui.list > .item:last-child {
  padding-bottom: 0em;
}
.semantic .ui.horizontal.list {
  display: inline-block;
  font-size: 0em;
}
.semantic .ui.horizontal.list > .item {
  display: inline-block;
  margin-left: 1em;
  font-size: 1rem;
}
.semantic .ui.horizontal.list > .item:first-child {
  margin-left: 0em !important;
  padding-left: 0em !important;
}
.semantic .ui.horizontal.list .list {
  padding-left: 0em;
  padding-bottom: 0em;
}
.semantic .ui.horizontal.list > .item:first-child,
.semantic .ui.horizontal.list > .item:last-child {
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
.semantic .ui.horizontal.list > .item > i.icon {
  margin: 0em;
  padding: 0em 0.25em 0em 0em;
}
.semantic .ui.horizontal.list > .item > .icon,
.semantic .ui.horizontal.list > .item > .icon + .content {
  float: none;
  display: inline-block;
}
.semantic .ui.list .list > .disabled.item,
.semantic .ui.list > .disabled.item {
  pointer-events: none;
  color: rgba(40, 40, 40, 0.3) !important;
}
.semantic .ui.inverted.list .list > .disabled.item,
.semantic .ui.inverted.list > .disabled.item {
  color: rgba(225, 225, 225, 0.3) !important;
}
.semantic .ui.list .list > a.item:hover .icon,
.semantic .ui.list > a.item:hover .icon {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.list .list > a.item > .icon,
.semantic .ui.inverted.list > a.item > .icon {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.inverted.list .list > .item .header,
.semantic .ui.inverted.list > .item .header {
  color: #ffffff;
}
.semantic .ui.inverted.list .list > .item .description,
.semantic .ui.inverted.list > .item .description {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.inverted.list .list > a.item,
.semantic .ui.inverted.list > a.item {
  cursor: pointer;
  color: #ffffff;
}
.semantic .ui.inverted.list .list > a.item:hover,
.semantic .ui.inverted.list > a.item:hover {
  color: #00b2f3;
}
.semantic .ui.inverted.list .item a {
  cursor: pointer;
  color: #ffffff !important;
}
.semantic .ui.inverted.list .item a:hover {
  color: #00b2f3 !important;
}
.semantic .ui.link.list .item,
.semantic .ui.link.list a.item,
.semantic .ui.link.list .item a {
  color: rgba(0, 0, 0, 0.4);
  -webkit-transition: 0.2s color ease;
  transition: 0.2s color ease;
}
.semantic .ui.link.list a.item:hover,
.semantic .ui.link.list .item a:hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.link.list a.item:active,
.semantic .ui.link.list .item a:active {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.link.list .active.item,
.semantic .ui.link.list .active.item a {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.link.list .item,
.semantic .ui.inverted.link.list a.item,
.semantic .ui.inverted.link.list .item a {
  color: rgba(255, 255, 255, 0.5);
}
.semantic .ui.inverted.link.list a.item:hover,
.semantic .ui.inverted.link.list .item a:hover {
  color: #ffffff;
}
.semantic .ui.inverted.link.list a.item:active,
.semantic .ui.inverted.link.list .item a:active {
  color: #ffffff;
}
.semantic .ui.inverted.link.list a.active.item,
.semantic .ui.inverted.link.list .active.item a {
  color: #ffffff;
}
.semantic .ui.selection.list .list > .item,
.semantic .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;
  -webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease;
  transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease;
}
.semantic .ui.selection.list .list > .item:last-child,
.semantic .ui.selection.list > .item:last-child {
  margin-bottom: 0em;
}
.semantic .ui.selection.list.list > .item:hover,
.semantic .ui.selection.list > .item:hover {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.selection.list .list > .item:active,
.semantic .ui.selection.list > .item:active {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.selection.list .list > .item.active,
.semantic .ui.selection.list > .item.active {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.selection.list > .item,
.semantic .ui.inverted.selection.list > .item {
  background: transparent;
  color: rgba(255, 255, 255, 0.5);
}
.semantic .ui.inverted.selection.list > .item:hover,
.semantic .ui.inverted.selection.list > .item:hover {
  background: rgba(255, 255, 255, 0.02);
  color: #ffffff;
}
.semantic .ui.inverted.selection.list > .item:active,
.semantic .ui.inverted.selection.list > .item:active {
  background: rgba(255, 255, 255, 0.05);
  color: #ffffff;
}
.semantic .ui.inverted.selection.list > .item.active,
.semantic .ui.inverted.selection.list > .item.active {
  background: rgba(255, 255, 255, 0.05);
  color: #ffffff;
}
.semantic .ui.celled.selection.list .list > .item,
.semantic .ui.divided.selection.list .list > .item,
.semantic .ui.celled.selection.list > .item,
.semantic .ui.divided.selection.list > .item {
  border-radius: 0em;
}
.semantic .ui.animated.list > .item {
  -webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease;
  transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease;
}
.semantic .ui.animated.list:not(.horizontal) > .item:hover {
  padding-left: 1em;
}
.semantic .ui.fitted.list:not(.selection) .list > .item,
.semantic .ui.fitted.list:not(.selection) > .item {
  padding-left: 0em;
  padding-right: 0em;
}
.semantic .ui.fitted.selection.list .list > .item,
.semantic .ui.fitted.selection.list > .item {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.semantic ul.ui.list,
.semantic .ui.bulleted.list {
  margin-left: 1rem;
}
.semantic ul.ui.list li,
.semantic .ui.bulleted.list .list > .item,
.semantic .ui.bulleted.list > .item {
  position: relative;
}
.semantic ul.ui.list li:before,
.semantic .ui.bulleted.list .list > .item:before,
.semantic .ui.bulleted.list > .item:before {
  position: absolute;
  top: auto;
  left: auto;
  margin-left: -1rem;
  content: "•";
  opacity: 1;
  color: rgba(0, 0, 0, 0.8);
  vertical-align: top;
}
.semantic ul.ui.list ul,
.semantic .ui.bulleted.list .list {
  padding-left: 1rem;
}
.semantic ul.ui.horizontal.bulleted.list,
.semantic .ui.horizontal.bulleted.list {
  margin-left: 0em;
}
.semantic ul.ui.horizontal.bulleted.list li,
.semantic .ui.horizontal.bulleted.list > .item {
  margin-left: 1.5rem;
}
.semantic ul.ui.horizontal.bulleted.list li:first-child,
.semantic .ui.horizontal.bulleted.list > .item:first-child {
  margin-left: 0em;
}
.semantic ul.ui.horizontal.bulleted.list li:first-child::before,
.semantic .ui.horizontal.bulleted.list > .item:first-child::before {
  display: none;
}
.semantic ol.ui.list,
.semantic .ui.ordered.list,
.semantic .ui.ordered.list .list,
.semantic ol.ui.list ol {
  counter-reset: ordered;
  margin-left: 1.25rem;
  list-style-type: none;
}
.semantic ol.ui.list li,
.semantic .ui.ordered.list .list > .item,
.semantic .ui.ordered.list > .item {
  list-style-type: none;
  position: relative;
}
.semantic ol.ui.list li:before,
.semantic .ui.ordered.list .list > .item:before,
.semantic .ui.ordered.list > .item:before {
  position: absolute;
  top: auto;
  left: auto;
  margin-left: -1.25rem;
  counter-increment: ordered;
  content: counters(ordered, ".") " ";
  text-align: right;
  color: rgba(0, 0, 0, 0.8);
  vertical-align: middle;
  opacity: 0.8;
}
.semantic ol.ui.list ol,
.semantic .ui.ordered.list .list {
  margin-left: 1em;
}
.semantic ol.ui.list ol li:before,
.semantic .ui.ordered.list .list > .item:before {
  margin-left: -2em;
}
.semantic ol.ui.horizontal.list,
.semantic .ui.ordered.horizontal.list {
  margin-left: 0em;
}
.semantic ol.ui.horizontal.list li:before,
.semantic .ui.ordered.horizontal.list .list > .item:before,
.semantic .ui.ordered.horizontal.list > .item:before {
  position: static;
  margin: 0em 0.5em 0em 0em;
}
.semantic .ui.divided.list > .item {
  border-top: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.divided.list .list > .item {
  border-top: none;
}
.semantic .ui.divided.list .item .list > .item {
  border-top: none;
}
.semantic .ui.divided.list .list > .item:first-child,
.semantic .ui.divided.list > .item:first-child {
  border-top: none;
}
.semantic .ui.divided.list:not(.horizontal) .list > .item:first-child {
  border-top-width: 1px;
}
.semantic .ui.divided.bulleted.list:not(.horizontal),
.semantic .ui.divided.bulleted.list .list {
  margin-left: 0em;
  padding-left: 0em;
}
.semantic .ui.divided.bulleted.list .list > .item:not(.horizontal),
.semantic .ui.divided.bulleted.list > .item:not(.horizontal) {
  padding-left: 1rem;
}
.semantic .ui.divided.ordered.list {
  margin-left: 0em;
}
.semantic .ui.divided.ordered.list .list > .item,
.semantic .ui.divided.ordered.list > .item {
  padding-left: 1.25rem;
}
.semantic .ui.divided.ordered.list .item .list {
  margin-left: 0em;
  margin-right: 0em;
  padding-bottom: 0.3em;
}
.semantic .ui.divided.ordered.list .item .list > .item {
  padding-left: 1em;
}
.semantic .ui.divided.selection.list .list > .item,
.semantic .ui.divided.selection.list > .item {
  margin: 0em;
  border-radius: 0em;
}
.semantic .ui.divided.horizontal.list {
  margin-left: 0em;
}
.semantic .ui.divided.horizontal.list > .item {
  border-top: none;
  border-left: 1px solid rgba(39, 41, 43, 0.15);
  margin: 0em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  line-height: 0.6;
}
.semantic .ui.horizontal.divided.list > .item:first-child {
  border-left: none;
}
.semantic .ui.divided.inverted.list > .item,
.semantic .ui.divided.inverted.list > .list,
.semantic .ui.divided.inverted.horizontal.list > .item {
  border-color: rgba(255, 255, 255, 0.2);
}
.semantic .ui.celled.list > .item,
.semantic .ui.celled.list > .list {
  border-top: 1px solid rgba(39, 41, 43, 0.15);
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.semantic .ui.celled.list > .item:last-child {
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.celled.list > .item:first-child,
.semantic .ui.celled.list > .item:last-child {
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
.semantic .ui.celled.list .item .list > .item {
  border-width: 0px;
}
.semantic .ui.celled.list .list > .item:first-child {
  border-top-width: 0px;
}
.semantic .ui.celled.bulleted.list {
  margin-left: 0em;
}
.semantic .ui.celled.bulleted.list .list > .item,
.semantic .ui.celled.bulleted.list > .item {
  padding-left: 1rem;
}
.semantic .ui.celled.bulleted.list .item .list {
  margin-left: -1rem;
  margin-right: -1rem;
  padding-bottom: 0.3em;
}
.semantic .ui.celled.ordered.list {
  margin-left: 0em;
}
.semantic .ui.celled.ordered.list .list > .item,
.semantic .ui.celled.ordered.list > .item {
  padding-left: 1.25rem;
}
.semantic .ui.celled.ordered.list .item .list {
  margin-left: 0em;
  margin-right: 0em;
  padding-bottom: 0.3em;
}
.semantic .ui.celled.ordered.list .list > .item {
  padding-left: 1em;
}
.semantic .ui.horizontal.celled.list {
  margin-left: 0em;
}
.semantic .ui.horizontal.celled.list .list > .item,
.semantic .ui.horizontal.celled.list > .item {
  border-top: none;
  border-left: 1px solid rgba(39, 41, 43, 0.15);
  margin: 0em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  line-height: 0.6;
}
.semantic .ui.horizontal.celled.list .list > .item:last-child,
.semantic .ui.horizontal.celled.list > .item:last-child {
  border-bottom: none;
  border-right: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.celled.inverted.list > .item,
.semantic .ui.celled.inverted.list > .list {
  border-color: 1px solid rgba(255, 255, 255, 0.2);
}
.semantic .ui.celled.inverted.horizontal.list .list > .item,
.semantic .ui.celled.inverted.horizontal.list > .item {
  border-color: 1px solid rgba(255, 255, 255, 0.2);
}
.semantic .ui.relaxed.list:not(.horizontal) > .item {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.semantic .ui.relaxed.list .list > .item .header,
.semantic .ui.relaxed.list > .item .header {
  /*margin-bottom: @relaxedHeaderMargin;*/
}
.semantic .ui.horizontal.relaxed.list > .item {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.semantic .ui[class*="very relaxed"].list:not(.horizontal) > .item {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui[class*="very relaxed"].list .list > .item .header,
.semantic .ui[class*="very relaxed"].list > .item .header {
  /*margin-bottom: @veryRelaxedHeaderMargin;*/
}
.semantic .ui.horizontal[class*="very relaxed"].list .list > .item,
.semantic .ui.horizontal[class*="very relaxed"].list > .item {
  padding-left: 2rem;
  padding-right: 2rem;
}
.semantic .ui.mini.list {
  font-size: 0.71428571em;
}
.semantic .ui.tiny.list {
  font-size: 0.85714286em;
}
.semantic .ui.small.list {
  font-size: 0.92857143em;
}
.semantic .ui.list {
  font-size: 1em;
}
.semantic .ui.large.list {
  font-size: 1.14285714em;
}
.semantic .ui.big.list {
  font-size: 1.28571429em;
}
.semantic .ui.huge.list {
  font-size: 1.42857143em;
}
.semantic .ui.massive.list {
  font-size: 1.71428571em;
}
.semantic .ui.mini.horizontal.list .list > .item,
.semantic .ui.mini.horizontal.list > .item {
  font-size: 0.71428571rem;
}
.semantic .ui.tiny.horizontal.list .list > .item,
.semantic .ui.tiny.horizontal.list > .item {
  font-size: 0.85714286rem;
}
.semantic .ui.small.horizontal.list .list > .item,
.semantic .ui.small.horizontal.list > .item {
  font-size: 0.92857143rem;
}
.semantic .ui.horizontal.list .list > .item,
.semantic .ui.horizontal.list > .item {
  font-size: 1rem;
}
.semantic .ui.large.horizontal.list .list > .item,
.semantic .ui.large.horizontal.list > .item {
  font-size: 1.14285714rem;
}
.semantic .ui.big.horizontal.list .list > .item,
.semantic .ui.big.horizontal.list > .item {
  font-size: 1.28571429rem;
}
.semantic .ui.huge.horizontal.list .list > .item,
.semantic .ui.huge.horizontal.list > .item {
  font-size: 1.42857143rem;
}
.semantic .ui.massive.horizontal.list .list > .item,
.semantic .ui.massive.horizontal.list > .item {
  font-size: 1.71428571rem;
}
.semantic .ui.loader {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0px;
  text-align: center;
  z-index: 1000;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
.semantic .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);
}
.semantic .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: #aaaaaa transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}
@-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);
  }
}
.semantic .ui.loader:before,
.semantic .ui.loader:after {
  width: 2.2585em;
  height: 2.2585em;
  margin: 0em 0em 0em -1.12925em;
}
.semantic .ui.mini.loader:before,
.semantic .ui.mini.loader:after {
  width: 1.2857em;
  height: 1.2857em;
  margin: 0em 0em 0em -0.64285em;
}
.semantic .ui.small.loader:before,
.semantic .ui.small.loader:after {
  width: 1.7142em;
  height: 1.7142em;
  margin: 0em 0em 0em -0.8571em;
}
.semantic .ui.large.loader:before,
.semantic .ui.large.loader:after {
  width: 4.5714em;
  height: 4.5714em;
  margin: 0em 0em 0em -2.2857em;
}
.semantic .ui.dimmer .loader {
  display: block;
}
.semantic .ui.dimmer .ui.loader {
  color: #ffffff;
}
.semantic .ui.dimmer .ui.loader:before {
  border-color: rgba(255, 255, 255, 0.15);
}
.semantic .ui.dimmer .ui.loader:after {
  border-color: #ffffff transparent transparent;
}
.semantic .ui.inverted.dimmer .ui.loader {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.dimmer .ui.loader:before {
  border-color: rgba(0, 0, 0, 0.1);
}
.semantic .ui.inverted.dimmer .ui.loader:after {
  border-color: #aaaaaa transparent transparent;
}
.semantic .ui.text.loader {
  width: auto !important;
  height: auto !important;
  text-align: center;
  font-style: normal;
}
.semantic .ui.indeterminate.loader:after {
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
}
.semantic .ui.loader.active,
.semantic .ui.loader.visible {
  display: block;
}
.semantic .ui.loader.disabled,
.semantic .ui.loader.hidden {
  display: none;
}
.semantic .ui.inverted.dimmer .ui.mini.loader,
.semantic .ui.mini.loader {
  width: 1.2857em;
  height: 1.2857em;
  font-size: 0.7857em;
}
.semantic .ui.inverted.dimmer .ui.small.loader,
.semantic .ui.small.loader {
  width: 1.7142em;
  height: 1.7142em;
  font-size: 0.9285em;
}
.semantic .ui.inverted.dimmer .ui.loader,
.semantic .ui.loader {
  width: 2.2585em;
  height: 2.2585em;
  font-size: 1em;
}
.semantic .ui.inverted.dimmer .ui.loader.large,
.semantic .ui.loader.large {
  width: 4.5714em;
  height: 4.5714em;
  font-size: 1.1428em;
}
.semantic .ui.mini.text.loader {
  min-width: 1.2857em;
  padding-top: 1.9857em;
}
.semantic .ui.small.text.loader {
  min-width: 1.7142em;
  padding-top: 2.4142em;
}
.semantic .ui.text.loader {
  min-width: 2.2585em;
  padding-top: 2.9585em;
}
.semantic .ui.large.text.loader {
  min-width: 4.5714em;
  padding-top: 5.2714em;
}
.semantic .ui.inverted.loader {
  color: #ffffff;
}
.semantic .ui.inverted.loader:before {
  border-color: rgba(255, 255, 255, 0.15);
}
.semantic .ui.inverted.loader:after {
  border-top-color: #ffffff;
}
.semantic .ui.inline.loader {
  position: relative;
  vertical-align: middle;
  margin: 0em;
  left: 0em;
  top: 0em;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.semantic .ui.inline.loader.active,
.semantic .ui.inline.loader.visible {
  display: inline-block;
}
.semantic .ui.centered.inline.loader.active,
.semantic .ui.centered.inline.loader.visible {
  display: block;
}
.semantic .ui.rail {
  position: absolute;
  top: 0%;
  width: 300px;
  height: 100%;
  box-sizing: content-box;
}
.semantic .ui.left.rail {
  left: auto;
  right: 100%;
  padding: 0em 2rem 0em 0em;
  margin: 0em 2rem 0em 0em;
}
.semantic .ui.right.rail {
  left: 100%;
  right: auto;
  padding: 0em 0em 0em 2rem;
  margin: 0em 0em 0em 2rem;
}
.semantic .ui.left.internal.rail {
  left: 0%;
  right: auto;
  padding: 0em 0em 0em 2rem;
  margin: 0em 0em 0em 2rem;
}
.semantic .ui.right.internal.rail {
  left: auto;
  right: 0%;
  padding: 0em 2rem 0em 0em;
  margin: 0em 2rem 0em 0em;
}
.semantic .ui.left.dividing.rail {
  padding: 0em 2.5rem 0em 0em;
  margin: 0em 2.5rem 0em 0em;
  border-right: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.right.dividing.rail {
  border-left: 1px solid rgba(39, 41, 43, 0.15);
  padding: 0em 0em 0em 2.5rem;
  margin: 0em 0em 0em 2.5rem;
}
.semantic .ui.close.left.rail {
  padding: 0em 1em 0em 0em;
  margin: 0em 1em 0em 0em;
}
.semantic .ui.close.right.rail {
  padding: 0em 0em 0em 1em;
  margin: 0em 0em 0em 1em;
}
.semantic .ui.very.close.left.rail {
  padding: 0em 0.5em 0em 0em;
  margin: 0em 0.5em 0em 0em;
}
.semantic .ui.very.close.right.rail {
  padding: 0em 0em 0em 0.5em;
  margin: 0em 0em 0em 0.5em;
}
.semantic .ui.attached.left.rail,
.semantic .ui.attached.right.rail {
  padding: 0em;
  margin: 0em;
}
.semantic .ui.rail {
  font-size: 1em;
}
.semantic .ui.reveal {
  display: inline-block;
  position: relative !important;
  font-size: 0em !important;
}
.semantic .ui.reveal > .visible.content {
  position: absolute !important;
  top: 0em !important;
  left: 0em !important;
  z-index: 3 !important;
  -webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
  transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
.semantic .ui.reveal > .hidden.content {
  position: relative !important;
  z-index: 2 !important;
}
.semantic .ui.reveal:hover .visible.content {
  z-index: 4 !important;
}
.semantic .ui.slide.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}
.semantic .ui.slide.reveal > .content {
  display: block;
  float: left;
  margin: 0em;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
  transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
.semantic .ui.slide.reveal > .visible.content {
  position: relative !important;
}
.semantic .ui.slide.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
  -webkit-transform: translateX(100%) !important;
  -ms-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}
.semantic .ui.slide.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
  -ms-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}
.semantic .ui.slide.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
  -ms-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}
.semantic .ui.slide.right.reveal > .visible.content {
  -webkit-transform: translateX(0%) !important;
  -ms-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}
.semantic .ui.slide.right.reveal > .hidden.content {
  -webkit-transform: translateX(-100%) !important;
  -ms-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}
.semantic .ui.slide.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
  -ms-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}
.semantic .ui.slide.right.reveal:hover > .hidden.content {
  -webkit-transform: translateX(0%) !important;
  -ms-transform: translateX(0%) !important;
  transform: translateX(0%) !important;
}
.semantic .ui.slide.up.reveal > .hidden.content {
  -webkit-transform: translateY(100%) !important;
  -ms-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}
.semantic .ui.slide.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
  -ms-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}
.semantic .ui.slide.up.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
  -ms-transform: translateY(0%) !important;
  transform: translateY(0%) !important;
}
.semantic .ui.slide.down.reveal > .hidden.content {
  -webkit-transform: translateY(-100%) !important;
  -ms-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}
.semantic .ui.slide.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
  -ms-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}
.semantic .ui.slide.down.reveal:hover > .hidden.content {
  -webkit-transform: translateY(0%) !important;
  -ms-transform: translateY(0%) !important;
  transform: translateY(0%) !important;
}
.semantic .ui.fade.reveal > .visible.content {
  opacity: 1;
}
.semantic .ui.fade.reveal:hover > .visible.content {
  opacity: 0;
}
.semantic .ui.move.reveal {
  position: relative !important;
  overflow: hidden !important;
  white-space: nowrap;
}
.semantic .ui.move.reveal > .content {
  display: block;
  float: left;
  margin: 0em;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
  transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s;
}
.semantic .ui.move.reveal > .visible.content {
  position: relative !important;
}
.semantic .ui.move.reveal > .hidden.content {
  position: absolute !important;
  left: 0% !important;
  width: 100% !important;
}
.semantic .ui.move.reveal:hover > .visible.content {
  -webkit-transform: translateX(-100%) !important;
  -ms-transform: translateX(-100%) !important;
  transform: translateX(-100%) !important;
}
.semantic .ui.move.right.reveal:hover > .visible.content {
  -webkit-transform: translateX(100%) !important;
  -ms-transform: translateX(100%) !important;
  transform: translateX(100%) !important;
}
.semantic .ui.move.up.reveal:hover > .visible.content {
  -webkit-transform: translateY(-100%) !important;
  -ms-transform: translateY(-100%) !important;
  transform: translateY(-100%) !important;
}
.semantic .ui.move.down.reveal:hover > .visible.content {
  -webkit-transform: translateY(100%) !important;
  -ms-transform: translateY(100%) !important;
  transform: translateY(100%) !important;
}
.semantic .ui.rotate.reveal > .visible.content {
  -webkit-transition-duration: 0.8s;
  transition-duration: 0.8s;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}
.semantic .ui.rotate.reveal > .visible.content,
.semantic .ui.rotate.right.reveal > .visible.content {
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right;
}
.semantic .ui.rotate.reveal:hover > .visible.content,
.semantic .ui.rotate.right.reveal:hover > .visible.content {
  -webkit-transform: rotate(110deg);
  -ms-transform: rotate(110deg);
  transform: rotate(110deg);
}
.semantic .ui.rotate.left.reveal > .visible.content {
  -webkit-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  transform-origin: bottom left;
}
.semantic .ui.rotate.left.reveal:hover > .visible.content {
  -webkit-transform: rotate(-110deg);
  -ms-transform: rotate(-110deg);
  transform: rotate(-110deg);
}
.semantic .ui.disabled.reveal {
  opacity: 1 !important;
}
.semantic .ui.disabled.reveal > .content {
  -webkit-transition: none !important;
  transition: none !important;
}
.semantic .ui.disabled.reveal:hover > .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;
  -ms-transform: none !important;
  transform: none !important;
}
.semantic .ui.disabled.reveal:hover > .hidden.content {
  display: none !important;
}
.semantic .ui.masked.reveal {
  overflow: hidden;
}
.semantic .ui.instant.reveal > .content {
  -webkit-transition-delay: 0s !important;
  transition-delay: 0s !important;
}
.semantic .ui.reveal > .content {
  font-size: 1rem !important;
}
.semantic .ui.segment {
  position: relative;
  background-color: #ffffff;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15), 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
  margin: 1rem 0em;
  padding: 1em 1em;
  border-radius: 0;
  border: none;
}
.semantic .ui.segment:first-child {
  margin-top: 0em;
}
.semantic .ui.segment:last-child {
  margin-bottom: 0em;
}
.semantic .ui.segment:after {
  content: "";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.semantic .ui[class*="vertical segment"] {
  margin: 0em;
  padding-left: 0em;
  padding-right: 0em;
  background-color: transparent;
  border-radius: 0px;
  border: none;
  box-shadow: 0px -1px 0px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui[class*="vertical segment"]:last-child {
  box-shadow: none;
}
.semantic .ui[class*="horizontal segment"] {
  margin: 0em;
  padding-top: 0em;
  padding-bottom: 0em;
  background-color: transparent;
  border-radius: 0px;
  border: none;
  box-shadow: 1px 0px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.inverted.segment > .ui.header {
  color: #ffffff;
}
.semantic .ui[class*="bottom attached"].segment > [class*="top attached"].label {
  border-top-left-radius: 0em;
  border-top-right-radius: 0em;
}
.semantic .ui[class*="top attached"].segment > [class*="bottom attached"].label {
  border-bottom-left-radius: 0em;
  border-bottom-right-radius: 0em;
}
.semantic .ui.attached.segment:not(.top):not(.bottom) > [class*="top attached"].label {
  border-top-left-radius: 0em;
  border-top-right-radius: 0em;
}
.semantic .ui.attached.segment:not(.top):not(.bottom) > [class*="bottom attached"].label {
  border-bottom-left-radius: 0em;
  border-bottom-right-radius: 0em;
}
.semantic .ui.page.grid.segment,
.semantic .ui.grid .ui.segment.column {
  padding-top: 2em;
  padding-bottom: 2em;
}
.semantic .ui.grid.segment {
  margin: 1rem 0rem;
  border-radius: 0;
}
.semantic .ui.basic.table.segment {
  background: #ffffff;
  border: none;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15), 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui[class*="very basic"].table.segment {
  padding: 1em 1em;
}
.semantic .ui.piled.segment {
  margin: 3em 0em;
  box-shadow: 0px 0px 1px 1px rgba(39, 41, 43, 0.15);
  z-index: auto;
}
.semantic .ui.piled.segment:first-child {
  margin-top: 0em;
}
.semantic .ui.piled.segment:last-child {
  margin-bottom: 0em;
}
.semantic .ui.piled.segment:after,
.semantic .ui.piled.segment:before {
  background-color: #ffffff;
  visibility: visible;
  content: "";
  display: block;
  height: 100%;
  left: 0px;
  position: absolute;
  width: 100%;
  box-shadow: 0px 0px 1px 1px rgba(39, 41, 43, 0.15);
}
.semantic .ui.piled.segment:after {
  -webkit-transform: rotate(1.2deg);
  -ms-transform: rotate(1.2deg);
  transform: rotate(1.2deg);
  top: 0;
  z-index: -1;
}
.semantic .ui.piled.segment:before {
  -webkit-transform: rotate(-1.2deg);
  -ms-transform: rotate(-1.2deg);
  transform: rotate(-1.2deg);
  top: 0;
  z-index: -2;
}
.semantic .ui[class*="top attached"].piled.segment {
  margin-top: 3em;
  margin-bottom: 0em;
}
.semantic .ui.piled.segment[class*="top attached"]:first-child {
  margin-top: 0em;
}
.semantic .ui.piled.segment[class*="bottom attached"] {
  margin-top: 0em;
  margin-bottom: 3em;
}
.semantic .ui.piled.segment[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}
.semantic .ui.stacked.segment {
  padding-bottom: 1.4em;
}
.semantic .ui.stacked.segment:after,
.semantic .ui.stacked.segment:before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0%;
  border-top: 1px solid rgba(39, 41, 43, 0.15);
  background-color: rgba(0, 0, 0, 0.03);
  width: 100%;
  height: 6px;
  visibility: visible;
}
.semantic .ui.stacked.segment:before {
  display: none;
}
.semantic .ui.tall.stacked.segment:before {
  display: block;
  bottom: 0px;
}
.semantic .ui.stacked.inverted.segment:after,
.semantic .ui.stacked.inverted.segment:before {
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(39, 41, 43, 0.3);
}
.semantic .ui.compact.segment {
  display: table;
}
.semantic .ui.circular.segment {
  display: table-cell;
  padding: 2em;
  text-align: center;
  vertical-align: middle;
  border-radius: 500em;
}
.semantic .ui.raised.segment {
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15), 0px 1px 4px 0px rgba(0, 0, 0, 0.15);
}
.semantic .ui.disabled.segment {
  opacity: 0.3;
  color: rgba(40, 40, 40, 0.3);
}
.semantic .ui.loading.segment {
  position: relative;
  cursor: default;
  point-events: none;
  text-shadow: none !important;
  color: transparent !important;
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}
.semantic .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;
  z-index: 100;
}
.semantic .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: #aaaaaa 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);
  }
}
.semantic .ui.basic.segment {
  position: relative;
  background-color: transparent;
  box-shadow: none;
  border-radius: 0px;
}
.semantic .ui.fitted.segment {
  padding: 0em;
}
.semantic .ui.black.segment:not(.inverted) {
  border-top: 2px solid #1b1c1d;
}
.semantic .ui.blue.segment:not(.inverted) {
  border-top: 2px solid #3b83c0;
}
.semantic .ui.green.segment:not(.inverted) {
  border-top: 2px solid #2db475;
}
.semantic .ui.orange.segment:not(.inverted) {
  border-top: 2px solid #e07b53;
}
.semantic .ui.pink.segment:not(.inverted) {
  border-top: 2px solid #d9499a;
}
.semantic .ui.purple.segment:not(.inverted) {
  border-top: 2px solid #564f8a;
}
.semantic .ui.red.segment:not(.inverted) {
  border-top: 2px solid #cc181e;
}
.semantic .ui.teal.segment:not(.inverted) {
  border-top: 2px solid #00b5ad;
}
.semantic .ui.yellow.segment:not(.inverted) {
  border-top: 2px solid #f2c61f;
}
.semantic .ui.black.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.blue.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.green.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.orange.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.pink.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.purple.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.red.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.teal.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.yellow.segment:not(.inverted):not(.attached) {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.semantic .ui.inverted.segment,
.semantic .ui.inverted.black.segment {
  background-color: #1b1c1d !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.blue.segment {
  background-color: #3b83c0 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.green.segment {
  background-color: #2db475 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.orange.segment {
  background-color: #e07b53 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.pink.segment {
  background-color: #d9499a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.purple.segment {
  background-color: #564f8a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.red.segment {
  background-color: #cc181e !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.teal.segment {
  background-color: #00b5ad !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.yellow.segment {
  background-color: #f2c61f !important;
  color: #ffffff !important;
}
.semantic .ui[class*="left aligned"].segment {
  text-align: left;
}
.semantic .ui[class*="right aligned"].segment {
  text-align: right;
}
.semantic .ui[class*="center aligned"].segment {
  text-align: center;
}
.semantic .ui.floated.segment,
.semantic .ui[class*="left floated"].segment {
  float: left;
  margin-right: 1rem;
}
.semantic .ui[class*="right floated"].segment {
  float: right;
  margin-left: 1rem;
}
.semantic .ui.inverted.segment {
  border: none;
  box-shadow: none;
}
.semantic .ui.inverted.segment .segment {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.segment .inverted.segment {
  color: #ffffff;
}
.semantic .ui.inverted.segment,
.semantic .ui.primary.inverted.segment {
  background-color: #1b1c1d;
  color: #ffffff;
}
.semantic .ui.inverted.block.segment,
.semantic .ui.inverted.attached.segment {
  border-color: #555555;
}
.semantic .ui.secondary.segment {
  background: #faf9fa;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.tertiary.segment {
  background: #ebebeb;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.secondary.inverted.segment {
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%);
  color: #fafafa;
}
.semantic .ui.tertiary.inverted.segment {
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%);
  background: linear-gradient(rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%);
  color: #f0f0f0;
}
.semantic .ui.segment.attached {
  top: 0px;
  bottom: 0px;
  margin: 0em -1px;
  width: -webkit-calc(100% + 2px );
  width: calc(100% + 2px);
  max-width: -webkit-calc(100% + 2px );
  max-width: calc(100% + 2px);
  border-radius: 0px;
  box-shadow: none;
  border: 1px solid #d4d4d5;
}
.semantic .ui.segment.attached + .ui.segment.attached:not(.top) {
  border-top: none;
}
.semantic .ui[class*="top attached"].segment {
  top: 0px;
  bottom: 0px;
  margin-top: 1rem;
  margin-bottom: 0em;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.segment[class*="top attached"]:first-child {
  margin-top: 0em;
}
.semantic .ui.segment[class*="bottom attached"] {
  top: 0px;
  bottom: 0px;
  margin-top: 0em;
  margin-bottom: 1rem;
  box-shadow: none, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
  border-radius: 0em 0em 0 0;
}
.semantic .ui.segment[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}
.semantic .ui.segments {
  margin: 1rem 0em;
}
.semantic .ui.segments:first-child {
  margin-top: 0em;
}
.semantic .ui.segments:last-child {
  margin-bottom: 0em;
}
.semantic .ui.segments > .segment {
  top: 0px;
  bottom: 0px;
  margin: 0em -1px;
  width: -webkit-calc(100% + 2px );
  width: calc(100% + 2px);
  max-width: -webkit-calc(100% + 2px );
  max-width: calc(100% + 2px);
  border-radius: 0px;
  box-shadow: none;
  border: 1px solid #d4d4d5;
}
.semantic .ui.segments > .segment:not(:first-child) {
  border-top: none;
}
.semantic .ui.segments > .segment:first-child {
  margin-top: 0em;
  bottom: 0px;
  margin-bottom: 0em;
  top: 0px;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.segments > .segment:last-child {
  bottom: 0px;
  margin-top: 0em;
  margin-bottom: 0em;
  top: 0px;
  box-shadow: none, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
  border-radius: 0em 0em 0 0;
}
.semantic .ui.grid .ui.segment.column,
.semantic .ui.page.grid.segment {
  margin-bottom: 0.25rem;
  margin-top: 0;
}
.semantic .ui.steps .step {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  margin: 0em 0em;
  padding: 0.9285em 1.5em 0.9285em 2.25em;
  background: #ffffff;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: 0px 0px 0px 1px #d4d4d5;
  border-radius: 0;
}
.semantic .ui.steps .step:after {
  position: absolute;
  z-index: 2;
  content: "";
  top: 50%;
  right: 0em;
  border: medium none;
  background-color: #ffffff;
  width: 1.5em;
  height: 1.5em;
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
  border-right: 1px solid rgba(39, 41, 43, 0.15);
  -webkit-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  -ms-transform: translateY(-50%) translateX(50%) rotate(-45deg);
  transform: translateY(-50%) translateX(50%) rotate(-45deg);
}
.semantic .ui.steps .step,
.semantic .ui.steps .step:after {
  -webkit-transition: background-color 0.2s ease, opacity 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  transition: background-color 0.2s ease, opacity 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}
.semantic .ui.steps {
  display: table;
  table-layout: fixed;
  background: "";
  box-shadow: "";
  line-height: 1.142rem;
  box-sizing: border-box;
  border-radius: 0.2857rem;
}
.semantic .ui.steps .step:first-child {
  padding-left: 1.5em;
  border-radius: 0.2857rem 0em 0em 0.2857rem;
}
.semantic .ui.steps .step:last-child {
  border-radius: 0em 0.2857rem 0.2857rem 0em;
}
.semantic .ui.steps .step:only-child {
  border-radius: 0.2857rem;
}
.semantic .ui.steps .step:last-child {
  margin-right: 0em;
}
.semantic .ui.steps .step:last-child:after {
  display: none;
}
.semantic .ui.steps .step .title {
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 1.0714em;
  font-weight: bold;
}
.semantic .ui.steps .step .description {
  font-weight: normal;
  font-size: 0.9285em;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.steps .step .title ~ .description {
  margin-top: 0.1em;
}
.semantic .ui.steps .step > .icon,
.semantic .ui.steps .step > .icon ~ .content {
  display: table-cell;
  vertical-align: middle;
}
.semantic .ui.steps .step > .icon {
  font-size: 2em;
  margin: 0em;
  padding-right: 0.6em;
}
.semantic .ui.steps .link.step,
.semantic .ui.steps a.step {
  cursor: pointer;
}
.semantic .ui.ordered.steps {
  counter-reset: ordered;
}
.semantic .ui.ordered.steps .step:before {
  display: table-cell;
  position: static;
  text-align: center;
  content: counters(ordered, ".");
  vertical-align: middle;
  padding-right: 0.6em;
  font-size: 2em;
  counter-increment: ordered;
}
.semantic .ui.ordered.steps .step > * {
  display: table-cell;
  vertical-align: middle;
}
.semantic .ui.vertical.steps {
  display: inline-block;
  overflow: visible;
}
.semantic .ui.vertical.steps .step {
  display: block;
  border-radius: 0;
  padding: 0.9285em 1.5em;
}
.semantic .ui.vertical.steps .step:first-child {
  padding: 0.9285em 1.5em;
  border-radius: 0.2857rem 0.2857rem 0em 0em;
}
.semantic .ui.vertical.steps .step:last-child {
  border-radius: 0em 0em 0.2857rem 0.2857rem;
}
.semantic .ui.vertical.steps .step:after {
  display: none;
}
.semantic .ui.vertical.steps .active.step:after {
  display: block;
}
@media only screen and (max-width: 767px) {
  .semantic {
    /* Arrow */
  }
  .semantic .ui.steps {
    overflow: visible;
  }
  .semantic .ui.steps .step {
    display: block;
    border-radius: 0;
    padding: 0.9285em 1.5em;
  }
  .semantic .ui.steps .step:first-child {
    padding: 0.9285em 1.5em;
    border-radius: 0.2857rem 0.2857rem 0em 0em;
  }
  .semantic .ui.steps .step:last-child {
    border-radius: 0em 0em 0.2857rem 0.2857rem;
  }
  .semantic .ui.steps .step:after {
    display: none;
  }
}
.semantic .ui.steps .link.step:hover::after,
.semantic .ui.steps .link.step:hover,
.semantic .ui.steps a.step:hover::after,
.semantic .ui.steps a.step:hover {
  background: #fafafa;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.steps .link.step:active::after,
.semantic .ui.steps .link.step:active,
.semantic .ui.steps a.step:active::after,
.semantic .ui.steps a.step:active {
  background: #f0f0f0;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.steps .step.active {
  cursor: auto;
  background: #f0f0f0;
}
.semantic .ui.steps .step.active:after {
  background: #f0f0f0;
}
.semantic .ui.steps .step.active .title {
  color: #009fda;
}
.semantic .ui.ordered.steps .step.active:before,
.semantic .ui.steps .active.step .icon {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.steps .link.active.step:hover::after,
.semantic .ui.steps .link.active.step:hover,
.semantic .ui.steps a.active.step:hover::after,
.semantic .ui.steps a.active.step:hover {
  cursor: pointer;
  background: #ececec;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.steps .step.completed > .icon:before,
.semantic .ui.ordered.steps .step.completed:before {
  color: #2db475;
}
.semantic .ui.steps .disabled.step {
  cursor: auto;
  background: #ffffff;
  pointer-events: none;
}
.semantic .ui.steps .disabled.step,
.semantic .ui.steps .disabled.step .title,
.semantic .ui.steps .disabled.step .description {
  color: rgba(40, 40, 40, 0.3);
}
.semantic .ui.steps .disabled.step:after {
  background: #ffffff;
}
@media only screen and (min-width: 992px) {
  .semantic {
    /* Arrow */
  }
  .semantic .ui[class*="tablet stackable"].steps {
    overflow: visible;
  }
  .semantic .ui[class*="tablet stackable"].steps .step {
    display: block;
    border-radius: 0;
    padding: 0.9285em 1.5em;
  }
  .semantic .ui[class*="tablet stackable"].steps .step:first-child {
    padding: 0.9285em 1.5em;
    border-radius: 0.2857rem 0.2857rem 0em 0em;
  }
  .semantic .ui[class*="tablet stackable"].steps .step:last-child {
    border-radius: 0em 0em 0.2857rem 0.2857rem;
  }
  .semantic .ui[class*="tablet stackable"].steps .step:after {
    display: none;
  }
}
.semantic .ui.fluid.steps {
  width: 100%;
}
.semantic .attached.ui.steps {
  margin: 0em;
  border-radius: 0.2857rem 0.2857rem 0em 0em;
}
.semantic .attached.ui.steps .step:first-child {
  border-radius: 0.2857rem 0em 0em 0em;
}
.semantic .attached.ui.steps .step:last-child {
  border-radius: 0em 0.2857rem 0em 0em;
}
.semantic .bottom.attached.ui.steps {
  margin: -1px 0em 0em;
  border-radius: 0em 0em 0.2857rem 0.2857rem;
}
.semantic .bottom.attached.ui.steps .step:first-child {
  border-radius: 0em 0em 0em 0.2857rem;
}
.semantic .bottom.attached.ui.steps .step:last-child {
  border-radius: 0em 0em 0.2857rem 0em;
}
.semantic .ui.one.steps,
.semantic .ui.two.steps,
.semantic .ui.three.steps,
.semantic .ui.four.steps,
.semantic .ui.five.steps,
.semantic .ui.six.steps,
.semantic .ui.seven.steps,
.semantic .ui.eight.steps {
  width: 100%;
}
.semantic .ui.one.steps > .step {
  width: 100%;
}
.semantic .ui.two.steps > .step {
  width: 50%;
}
.semantic .ui.three.steps > .step {
  width: 33.333%;
}
.semantic .ui.four.steps > .step {
  width: 25%;
}
.semantic .ui.five.steps > .step {
  width: 20%;
}
.semantic .ui.six.steps > .step {
  width: 16.666%;
}
.semantic .ui.seven.steps > .step {
  width: 14.285%;
}
.semantic .ui.eight.steps > .step {
  width: 12.5%;
}
.semantic .ui.small.step,
.semantic .ui.small.steps .step {
  font-size: 0.92857143rem;
}
.semantic .ui.step,
.semantic .ui.steps .step {
  font-size: 1rem;
}
.semantic .ui.large.step,
.semantic .ui.large.steps .step {
  font-size: 1.14285714rem;
}
@font-face {
  font-family: "Step";
  src: url("data:application/x-font-ttf;charset=utf-8;;base64,AAEAAAAOAIAAAwBgT1MvMj3hSQEAAADsAAAAVmNtYXDQEhm3AAABRAAAAUpjdnQgBkn/lAAABuwAAAAcZnBnbYoKeDsAAAcIAAAJkWdhc3AAAAAQAAAG5AAAAAhnbHlm32cEdgAAApAAAAC2aGVhZAErPHsAAANIAAAANmhoZWEHUwNNAAADgAAAACRobXR4CykAAAAAA6QAAAAMbG9jYQA4AFsAAAOwAAAACG1heHAApgm8AAADuAAAACBuYW1lzJ0aHAAAA9gAAALNcG9zdK69QJgAAAaoAAAAO3ByZXCSoZr/AAAQnAAAAFYAAQO4AZAABQAIAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA6ADoAQNS/2oAWgMLAE8AAAABAAAAAAAAAAAAAwAAAAMAAAAcAAEAAAAAAEQAAwABAAAAHAAEACgAAAAGAAQAAQACAADoAf//AAAAAOgA//8AABgBAAEAAAAAAAAAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAADpAKYABUAHEAZDwEAAQFCAAIBAmoAAQABagAAAGEUFxQDEisBFAcBBiInASY0PwE2Mh8BATYyHwEWA6QP/iAQLBD+6g8PTBAsEKQBbhAsEEwPAhYWEP4gDw8BFhAsEEwQEKUBbxAQTBAAAAH//f+xA18DCwAMABJADwABAQpDAAAACwBEFRMCESsBFA4BIi4CPgEyHgEDWXLG6MhuBnq89Lp+AV51xHR0xOrEdHTEAAAAAAEAAAABAADDeRpdXw889QALA+gAAAAAzzWYjQAAAADPNWBN//3/sQOkAwsAAAAIAAIAAAAAAAAAAQAAA1L/agBaA+gAAP/3A6QAAQAAAAAAAAAAAAAAAAAAAAMD6AAAA+gAAANZAAAAAAAAADgAWwABAAAAAwAWAAEAAAAAAAIABgATAG4AAAAtCZEAAAAAAAAAEgDeAAEAAAAAAAAANQAAAAEAAAAAAAEACAA1AAEAAAAAAAIABwA9AAEAAAAAAAMACABEAAEAAAAAAAQACABMAAEAAAAAAAUACwBUAAEAAAAAAAYACABfAAEAAAAAAAoAKwBnAAEAAAAAAAsAEwCSAAMAAQQJAAAAagClAAMAAQQJAAEAEAEPAAMAAQQJAAIADgEfAAMAAQQJAAMAEAEtAAMAAQQJAAQAEAE9AAMAAQQJAAUAFgFNAAMAAQQJAAYAEAFjAAMAAQQJAAoAVgFzAAMAAQQJAAsAJgHJQ29weXJpZ2h0IChDKSAyMDE0IGJ5IG9yaWdpbmFsIGF1dGhvcnMgQCBmb250ZWxsby5jb21mb250ZWxsb1JlZ3VsYXJmb250ZWxsb2ZvbnRlbGxvVmVyc2lvbiAxLjBmb250ZWxsb0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAbwBwAHkAcgBpAGcAaAB0ACAAKABDACkAIAAyADAAMQA0ACAAYgB5ACAAbwByAGkAZwBpAG4AYQBsACAAYQB1AHQAaABvAHIAcwAgAEAAIABmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQBmAG8AbgB0AGUAbABsAG8AUgBlAGcAdQBsAGEAcgBmAG8AbgB0AGUAbABsAG8AZgBvAG4AdABlAGwAbABvAFYAZQByAHMAaQBvAG4AIAAxAC4AMABmAG8AbgB0AGUAbABsAG8ARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAQIBAwljaGVja21hcmsGY2lyY2xlAAAAAAEAAf//AA8AAAAAAAAAAAAAAAAAAAAAADIAMgML/7EDC/+xsAAssCBgZi2wASwgZCCwwFCwBCZasARFW1ghIyEbilggsFBQWCGwQFkbILA4UFghsDhZWSCwCkVhZLAoUFghsApFILAwUFghsDBZGyCwwFBYIGYgiophILAKUFhgGyCwIFBYIbAKYBsgsDZQWCGwNmAbYFlZWRuwACtZWSOwAFBYZVlZLbACLCBFILAEJWFkILAFQ1BYsAUjQrAGI0IbISFZsAFgLbADLCMhIyEgZLEFYkIgsAYjQrIKAAIqISCwBkMgiiCKsAArsTAFJYpRWGBQG2FSWVgjWSEgsEBTWLAAKxshsEBZI7AAUFhlWS2wBCywB0MrsgACAENgQi2wBSywByNCIyCwACNCYbCAYrABYLAEKi2wBiwgIEUgsAJFY7ABRWJgRLABYC2wBywgIEUgsAArI7ECBCVgIEWKI2EgZCCwIFBYIbAAG7AwUFiwIBuwQFlZI7AAUFhlWbADJSNhRESwAWAtsAgssQUFRbABYUQtsAkssAFgICCwCUNKsABQWCCwCSNCWbAKQ0qwAFJYILAKI0JZLbAKLCC4BABiILgEAGOKI2GwC0NgIIpgILALI0IjLbALLEtUWLEHAURZJLANZSN4LbAMLEtRWEtTWLEHAURZGyFZJLATZSN4LbANLLEADENVWLEMDEOwAWFCsAorWbAAQ7ACJUKxCQIlQrEKAiVCsAEWIyCwAyVQWLEBAENgsAQlQoqKIIojYbAJKiEjsAFhIIojYbAJKiEbsQEAQ2CwAiVCsAIlYbAJKiFZsAlDR7AKQ0dgsIBiILACRWOwAUViYLEAABMjRLABQ7AAPrIBAQFDYEItsA4ssQAFRVRYALAMI0IgYLABYbUNDQEACwBCQopgsQ0FK7BtKxsiWS2wDyyxAA4rLbAQLLEBDistsBEssQIOKy2wEiyxAw4rLbATLLEEDistsBQssQUOKy2wFSyxBg4rLbAWLLEHDistsBcssQgOKy2wGCyxCQ4rLbAZLLAIK7EABUVUWACwDCNCIGCwAWG1DQ0BAAsAQkKKYLENBSuwbSsbIlktsBossQAZKy2wGyyxARkrLbAcLLECGSstsB0ssQMZKy2wHiyxBBkrLbAfLLEFGSstsCAssQYZKy2wISyxBxkrLbAiLLEIGSstsCMssQkZKy2wJCwgPLABYC2wJSwgYLANYCBDI7ABYEOwAiVhsAFgsCQqIS2wJiywJSuwJSotsCcsICBHICCwAkVjsAFFYmAjYTgjIIpVWCBHICCwAkVjsAFFYmAjYTgbIVktsCgssQAFRVRYALABFrAnKrABFTAbIlktsCkssAgrsQAFRVRYALABFrAnKrABFTAbIlktsCosIDWwAWAtsCssALADRWOwAUVisAArsAJFY7ABRWKwACuwABa0AAAAAABEPiM4sSoBFSotsCwsIDwgRyCwAkVjsAFFYmCwAENhOC2wLSwuFzwtsC4sIDwgRyCwAkVjsAFFYmCwAENhsAFDYzgtsC8ssQIAFiUgLiBHsAAjQrACJUmKikcjRyNhIFhiGyFZsAEjQrIuAQEVFCotsDAssAAWsAQlsAQlRyNHI2GwBkUrZYouIyAgPIo4LbAxLLAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjILAIQyCKI0cjRyNhI0ZgsARDsIBiYCCwACsgiophILACQ2BkI7ADQ2FkUFiwAkNhG7ADQ2BZsAMlsIBiYSMgILAEJiNGYTgbI7AIQ0awAiWwCENHI0cjYWAgsARDsIBiYCMgsAArI7AEQ2CwACuwBSVhsAUlsIBisAQmYSCwBCVgZCOwAyVgZFBYIRsjIVkjICCwBCYjRmE4WS2wMiywABYgICCwBSYgLkcjRyNhIzw4LbAzLLAAFiCwCCNCICAgRiNHsAArI2E4LbA0LLAAFrADJbACJUcjRyNhsABUWC4gPCMhG7ACJbACJUcjRyNhILAFJbAEJUcjRyNhsAYlsAUlSbACJWGwAUVjIyBYYhshWWOwAUViYCMuIyAgPIo4IyFZLbA1LLAAFiCwCEMgLkcjRyNhIGCwIGBmsIBiIyAgPIo4LbA2LCMgLkawAiVGUlggPFkusSYBFCstsDcsIyAuRrACJUZQWCA8WS6xJgEUKy2wOCwjIC5GsAIlRlJYIDxZIyAuRrACJUZQWCA8WS6xJgEUKy2wOSywMCsjIC5GsAIlRlJYIDxZLrEmARQrLbA6LLAxK4ogIDywBCNCijgjIC5GsAIlRlJYIDxZLrEmARQrsARDLrAmKy2wOyywABawBCWwBCYgLkcjRyNhsAZFKyMgPCAuIzixJgEUKy2wPCyxCAQlQrAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjIEewBEOwgGJgILAAKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwgGJhsAIlRmE4IyA8IzgbISAgRiNHsAArI2E4IVmxJgEUKy2wPSywMCsusSYBFCstsD4ssDErISMgIDywBCNCIzixJgEUK7AEQy6wJistsD8ssAAVIEewACNCsgABARUUEy6wLCotsEAssAAVIEewACNCsgABARUUEy6wLCotsEEssQABFBOwLSotsEIssC8qLbBDLLAAFkUjIC4gRoojYTixJgEUKy2wRCywCCNCsEMrLbBFLLIAADwrLbBGLLIAATwrLbBHLLIBADwrLbBILLIBATwrLbBJLLIAAD0rLbBKLLIAAT0rLbBLLLIBAD0rLbBMLLIBAT0rLbBNLLIAADkrLbBOLLIAATkrLbBPLLIBADkrLbBQLLIBATkrLbBRLLIAADsrLbBSLLIAATsrLbBTLLIBADsrLbBULLIBATsrLbBVLLIAAD4rLbBWLLIAAT4rLbBXLLIBAD4rLbBYLLIBAT4rLbBZLLIAADorLbBaLLIAATorLbBbLLIBADorLbBcLLIBATorLbBdLLAyKy6xJgEUKy2wXiywMiuwNistsF8ssDIrsDcrLbBgLLAAFrAyK7A4Ky2wYSywMysusSYBFCstsGIssDMrsDYrLbBjLLAzK7A3Ky2wZCywMyuwOCstsGUssDQrLrEmARQrLbBmLLA0K7A2Ky2wZyywNCuwNystsGgssDQrsDgrLbBpLLA1Ky6xJgEUKy2waiywNSuwNistsGsssDUrsDcrLbBsLLA1K7A4Ky2wbSwrsAhlsAMkUHiwARUwLQAAAEu4AMhSWLEBAY5ZuQgACABjILABI0SwAyNwsgQoCUVSRLIKAgcqsQYBRLEkAYhRWLBAiFixBgNEsSYBiFFYuAQAiFixBgFEWVlZWbgB/4WwBI2xBQBEAAA=") 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");
}
.semantic .ui.steps .step.completed > .icon:before,
.semantic .ui.ordered.steps .step.completed:before {
  font-family: "Step";
  content: "\e800";
  /* '' */
}
.semantic .ui.breadcrumb {
  margin: 1em 0em;
  display: inline-block;
  vertical-align: middle;
}
.semantic .ui.breadcrumb:first-child {
  margin-top: 0em;
}
.semantic .ui.breadcrumb:last-child {
  margin-bottom: 0em;
}
.semantic .ui.breadcrumb .divider {
  display: inline-block;
  opacity: 0.5;
  margin: 0em 0.2rem 0em;
  font-size: 0.9em;
  color: rgba(0, 0, 0, 0.4);
  vertical-align: baseline;
}
.semantic .ui.breadcrumb a {
  color: #009fda;
}
.semantic .ui.breadcrumb a:hover {
  color: #00b2f3;
}
.semantic .ui.breadcrumb .icon.divider {
  font-size: 0.85714286em;
  vertical-align: baseline;
}
.semantic .ui.breadcrumb a.section {
  cursor: pointer;
}
.semantic .ui.breadcrumb .section {
  display: inline-block;
  margin: 0em;
  padding: 0em;
}
.semantic .ui.breadcrumb.segment {
  display: inline-block;
  padding: 0.5em 1em;
}
.semantic .ui.breadcrumb .active.section {
  font-weight: bold;
}
.semantic .ui.mini.breadcrumb {
  font-size: 0.65em;
}
.semantic .ui.tiny.breadcrumb {
  font-size: 0.7em;
}
.semantic .ui.small.breadcrumb {
  font-size: 0.75em;
}
.semantic .ui.breadcrumb {
  font-size: 1em;
}
.semantic .ui.large.breadcrumb {
  font-size: 1.1em;
}
.semantic .ui.big.breadcrumb {
  font-size: 1.05em;
}
.semantic .ui.huge.breadcrumb {
  font-size: 1.3em;
}
.semantic .ui.massive.breadcrumb {
  font-size: 1.5em;
}
.semantic .ui.form {
  position: relative;
  max-width: 100%;
}
.semantic .ui.form > p {
  margin: 1em 0em;
}
.semantic .ui.form .fields .field,
.semantic .ui.form .field {
  clear: both;
  margin: 0em 0em 1em;
}
.semantic .ui.form .fields:last-child,
.semantic .ui.form .field:last-child {
  margin-bottom: 0em;
}
.semantic .ui.form .field > label {
  display: block;
  margin: 0em 0em 0.2857rem 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form .grouped.fields > label {
  margin: 0em 0em 0.2857rem 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form .inline.fields > label {
  display: inline-block;
  vertical-align: middle;
  margin: 0em 1em 0em 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form textarea,
.semantic .ui.form input:not([type]),
.semantic .ui.form input[type=date],
.semantic .ui.form input[type=datetime-local],
.semantic .ui.form input[type=email],
.semantic .ui.form input[type=number],
.semantic .ui.form input[type=password],
.semantic .ui.form input[type=search],
.semantic .ui.form input[type=tel],
.semantic .ui.form input[type=time],
.semantic .ui.form input[type=text],
.semantic .ui.form input[type=url],
.semantic .ui.form .ui.input {
  width: 100%;
  vertical-align: top;
}
.semantic .ui.form input:not([type]),
.semantic .ui.form input[type=date],
.semantic .ui.form input[type=datetime-local],
.semantic .ui.form input[type=email],
.semantic .ui.form input[type=number],
.semantic .ui.form input[type=password],
.semantic .ui.form input[type=search],
.semantic .ui.form input[type=tel],
.semantic .ui.form input[type=time],
.semantic .ui.form input[type=text],
.semantic .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.2142em;
  padding: 0.67861em 1em;
  font-size: 1em;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.textarea,
.semantic .ui.form textarea {
  margin: 0em;
  -webkit-appearance: none;
  tap-highlight-color: rgba(255, 255, 255, 0);
  padding: 0.78571em 1em;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  outline: none;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  font-size: 1em;
  height: 12em;
  min-height: 8em;
  max-height: 24em;
  line-height: 1.2857;
  resize: vertical;
}
.semantic .ui.form textarea,
.semantic .ui.form input[type=checkbox] {
  vertical-align: top;
}
.semantic .ui.form input.attached {
  width: auto;
}
.semantic .ui.form select {
  display: block;
  height: auto;
  width: 100%;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  padding: 0.62em 1em;
  color: rgba(0, 0, 0, 0.8);
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.form .field > .selection.dropdown {
  width: 100%;
}
.semantic .ui.form .field > .selection.dropdown > .dropdown.icon {
  float: right;
}
.semantic .ui.form .inline.field > .selection.dropdown {
  width: auto;
}
.semantic .ui.form .inline.field > .selection.dropdown > .dropdown.icon {
  float: none;
}
.semantic .ui.form .divider {
  clear: both;
  margin: 1em 0em;
}
.semantic .ui.form .success.message,
.semantic .ui.form .warning.message,
.semantic .ui.form .error.message {
  display: none;
}
.semantic .ui.form .message:first-child {
  margin-top: 0px;
}
.semantic .ui.form .field .prompt.label {
  white-space: nowrap;
}
.semantic .ui.form .inline.field .prompt {
  margin: -0.5em 0em -0.5em 1em;
}
.semantic .ui.form .inline.field .prompt:before {
  margin-top: -0.3em;
  bottom: auto;
  right: auto;
  top: 50%;
  left: 0em;
}
.semantic .ui.form ::-webkit-input-placeholder {
  color: rgba(140, 140, 140, 0.8);
}
.semantic .ui.form ::-moz-placeholder {
  color: rgba(140, 140, 140, 0.8);
}
.semantic .ui.form :focus::-webkit-input-placeholder {
  color: rgba(89, 89, 89, 0.8);
}
.semantic .ui.form :focus::-moz-placeholder {
  color: rgba(89, 89, 89, 0.8);
}
.semantic .ui.form .error ::-webkit-input-placeholder {
  color: #e73036;
}
.semantic .ui.form .error ::-moz-placeholder {
  color: #e73036;
}
.semantic .ui.form .error :focus::-webkit-input-placeholder {
  color: #e31b21;
}
.semantic .ui.form .error :focus::-moz-placeholder {
  color: #e31b21;
}
.semantic .ui.form input:not([type]):focus,
.semantic .ui.form input[type=date]:focus,
.semantic .ui.form input[type=datetime-local]:focus,
.semantic .ui.form input[type=email]:focus,
.semantic .ui.form input[type=number]:focus,
.semantic .ui.form input[type=password]:focus,
.semantic .ui.form input[type=search]:focus,
.semantic .ui.form input[type=tel]:focus,
.semantic .ui.form input[type=time]:focus,
.semantic .ui.form input[type=text]:focus,
.semantic .ui.form input[type=url]:focus {
  color: rgba(0, 0, 0, 0.85);
  border-color: rgba(39, 41, 43, 0.3);
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  background: #ffffff;
  box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset;
}
.semantic .ui.form textarea:focus {
  color: rgba(0, 0, 0, 0.85);
  border-color: rgba(39, 41, 43, 0.3);
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  background: #ffffff;
  box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset;
  -webkit-appearance: none;
}
.semantic .ui.form.success .success.message {
  display: block;
}
.semantic .ui.form.warning .warning.message {
  display: block;
}
.semantic .ui.form.error .error.message {
  display: block;
}
.semantic .ui.form .fields.error .field label,
.semantic .ui.form .field.error label,
.semantic .ui.form .fields.error .field .input,
.semantic .ui.form .field.error .input {
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .corner.label,
.semantic .ui.form .field.error .corner.label {
  border-color: #cc181e;
  color: #ffffff;
}
.semantic .ui.form .fields.error .field textarea,
.semantic .ui.form .fields.error .field select,
.semantic .ui.form .fields.error .field input:not([type]),
.semantic .ui.form .fields.error .field input[type=date],
.semantic .ui.form .fields.error .field input[type=datetime-local],
.semantic .ui.form .fields.error .field input[type=email],
.semantic .ui.form .fields.error .field input[type=number],
.semantic .ui.form .fields.error .field input[type=password],
.semantic .ui.form .fields.error .field input[type=search],
.semantic .ui.form .fields.error .field input[type=tel],
.semantic .ui.form .fields.error .field input[type=time],
.semantic .ui.form .fields.error .field input[type=text],
.semantic .ui.form .fields.error .field input[type=url],
.semantic .ui.form .field.error textarea,
.semantic .ui.form .field.error select,
.semantic .ui.form .field.error input:not([type]),
.semantic .ui.form .field.error input[type=date],
.semantic .ui.form .field.error input[type=datetime-local],
.semantic .ui.form .field.error input[type=email],
.semantic .ui.form .field.error input[type=number],
.semantic .ui.form .field.error input[type=password],
.semantic .ui.form .field.error input[type=search],
.semantic .ui.form .field.error input[type=tel],
.semantic .ui.form .field.error input[type=time],
.semantic .ui.form .field.error input[type=text],
.semantic .ui.form .field.error input[type=url] {
  background: #fff0f0;
  border-color: #dbb1b1;
  color: #cc181e;
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  box-shadow: 2px 0em 0em 0em #cc181e inset;
}
.semantic .ui.form .field.error textarea:focus,
.semantic .ui.form .field.error select:focus,
.semantic .ui.form .field.error input:not([type]):focus,
.semantic .ui.form .field.error input[type=date]:focus,
.semantic .ui.form .field.error input[type=datetime-local]:focus,
.semantic .ui.form .field.error input[type=email]:focus,
.semantic .ui.form .field.error input[type=number]:focus,
.semantic .ui.form .field.error input[type=password]:focus,
.semantic .ui.form .field.error input[type=search]:focus,
.semantic .ui.form .field.error input[type=tel]:focus,
.semantic .ui.form .field.error input[type=time]:focus,
.semantic .ui.form .field.error input[type=text]:focus,
.semantic .ui.form .field.error input[type=url]:focus {
  background: #fff0f0;
  border-color: #dbb1b1;
  color: #da1a20;
  -webkit-appearance: none;
  box-shadow: 2px 0em 0em 0em #da1a20 inset;
}
.semantic .ui.form .field.error select {
  -webkit-appearance: menulist-button;
}
.semantic .ui.form .fields.error .field .ui.dropdown,
.semantic .ui.form .fields.error .field .ui.dropdown .item,
.semantic .ui.form .field.error .ui.dropdown,
.semantic .ui.form .field.error .ui.dropdown .text,
.semantic .ui.form .field.error .ui.dropdown .item {
  background: #fff0f0;
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .ui.dropdown,
.semantic .ui.form .field.error .ui.dropdown {
  border-color: #dbb1b1 !important;
}
.semantic .ui.form .fields.error .field .ui.dropdown:hover,
.semantic .ui.form .field.error .ui.dropdown:hover {
  border-color: #dbb1b1 !important;
}
.semantic .ui.form .fields.error .field .ui.dropdown:hover .menu,
.semantic .ui.form .field.error .ui.dropdown:hover .menu {
  border-color: #dbb1b1;
}
.semantic .ui.form .fields.error .field .ui.dropdown .menu .item:hover,
.semantic .ui.form .field.error .ui.dropdown .menu .item:hover {
  background-color: #fbe7e7;
}
.semantic .ui.form .fields.error .field .ui.dropdown .menu .active.item,
.semantic .ui.form .field.error .ui.dropdown .menu .active.item {
  background-color: #fdcfcf !important;
}
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) label,
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box {
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before {
  background: #fff0f0;
  border-color: #dbb1b1;
}
.semantic .ui.form .fields.error .field .checkbox label:after,
.semantic .ui.form .field.error .checkbox label:after,
.semantic .ui.form .fields.error .field .checkbox .box:after,
.semantic .ui.form .field.error .checkbox .box:after {
  color: #cc181e;
}
.semantic .ui.form .field :disabled,
.semantic .ui.form .field.disabled {
  opacity: 0.5;
}
.semantic .ui.form .field.disabled label {
  opacity: 0.5;
}
.semantic .ui.form .field.disabled :disabled {
  opacity: 1;
}
.semantic .ui.loading.form {
  position: relative;
  cursor: default;
  point-events: none;
  text-shadow: none !important;
  color: transparent !important;
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
  z-index: 100;
}
.semantic .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;
}
.semantic .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: #aaaaaa 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);
  }
}
.semantic .ui.form .required.fields > .field > label:after,
.semantic .ui.form .required.field > label:after,
.semantic .ui.form .required.fields > .field > .checkbox:after,
.semantic .ui.form .required.field > .checkbox:after {
  margin: -0.2em 0em 0em 0.2em;
  content: "*";
  color: #cc181e;
}
.semantic .ui.form .required.fields > .field > label:after,
.semantic .ui.form .required.field > label:after {
  display: inline-block;
  vertical-align: top;
}
.semantic .ui.form .required.fields > .field > .checkbox:after,
.semantic .ui.form .required.field > .checkbox:after {
  position: absolute;
  top: 0%;
  left: 100%;
}
.semantic .ui.inverted.form label,
.semantic .ui.form .inverted.segment label,
.semantic .ui.form .inverted.segment .ui.checkbox label,
.semantic .ui.form .inverted.segment .ui.checkbox .box,
.semantic .ui.inverted.form .ui.checkbox label,
.semantic .ui.inverted.form .ui.checkbox .box {
  color: #ffffff;
}
.semantic .ui.form .grouped.fields {
  margin: 0em 0em 1em;
}
.semantic .ui.form .grouped.fields:last-child {
  margin-bottom: 0em;
}
.semantic .ui.form .grouped.fields > label {
  font-size: 0.9285em;
}
.semantic .ui.form .grouped.fields .field {
  display: block;
  float: none;
  margin: 0.5em 0em;
  padding: 0em;
}
.semantic .ui.form .fields {
  clear: both;
}
.semantic .ui.form .fields:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.semantic .ui.form .fields > .field {
  clear: none;
  float: left;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.semantic .ui.form .fields > .field:first-child {
  border-left: none;
  box-shadow: none;
}
.semantic .ui.form .two.fields > .fields,
.semantic .ui.form .two.fields > .field {
  width: 50%;
}
.semantic .ui.form .three.fields > .fields,
.semantic .ui.form .three.fields > .field {
  width: 33.33333333%;
}
.semantic .ui.form .four.fields > .fields,
.semantic .ui.form .four.fields > .field {
  width: 25%;
}
.semantic .ui.form .five.fields > .fields,
.semantic .ui.form .five.fields > .field {
  width: 20%;
}
.semantic .ui.form .six.fields > .fields,
.semantic .ui.form .six.fields > .field {
  width: 16.66666667%;
}
.semantic .ui.form .seven.fields > .fields,
.semantic .ui.form .seven.fields > .field {
  width: 14.28571429%;
}
.semantic .ui.form .eight.fields > .fields,
.semantic .ui.form .eight.fields > .field {
  width: 12.5%;
}
.semantic .ui.form .nine.fields > .fields,
.semantic .ui.form .nine.fields > .field {
  width: 11.11111111%;
}
.semantic .ui.form .ten.fields > .fields,
.semantic .ui.form .ten.fields > .field {
  width: 10%;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.form .two.fields > .fields,
  .semantic .ui.form .two.fields > .field,
  .semantic .ui.form .three.fields > .fields,
  .semantic .ui.form .three.fields > .field,
  .semantic .ui.form .four.fields > .fields,
  .semantic .ui.form .four.fields > .field,
  .semantic .ui.form .five.fields > .fields,
  .semantic .ui.form .five.fields > .field,
  .semantic .ui.form .six.fields > .fields,
  .semantic .ui.form .six.fields > .field,
  .semantic .ui.form .seven.fields > .fields,
  .semantic .ui.form .seven.fields > .field,
  .semantic .ui.form .eight.fields > .fields,
  .semantic .ui.form .eight.fields > .field,
  .semantic .ui.form .nine.fields > .fields,
  .semantic .ui.form .nine.fields > .field,
  .semantic .ui.form .ten.fields > .fields,
  .semantic .ui.form .ten.fields > .field {
    width: 100% !important;
    margin: 0em 0em 1em;
    padding-left: 0%;
    padding-right: 0%;
  }
}
.semantic .ui.form .fields .field:first-child {
  padding-left: 0%;
}
.semantic .ui.form .fields .field:last-child {
  padding-right: 0%;
}
.semantic .ui.form .fields .wide.field {
  width: 6.25%;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.semantic .ui.form .fields .wide.field:first-child {
  padding-left: 0%;
}
.semantic .ui.form .fields .wide.field:last-child {
  padding-right: 0%;
}
.semantic .ui.form .one.wide.field {
  width: 6.25% !important;
}
.semantic .ui.form .two.wide.field {
  width: 12.5% !important;
}
.semantic .ui.form .three.wide.field {
  width: 18.75% !important;
}
.semantic .ui.form .four.wide.field {
  width: 25% !important;
}
.semantic .ui.form .five.wide.field {
  width: 31.25% !important;
}
.semantic .ui.form .six.wide.field {
  width: 37.5% !important;
}
.semantic .ui.form .seven.wide.field {
  width: 43.75% !important;
}
.semantic .ui.form .eight.wide.field {
  width: 50% !important;
}
.semantic .ui.form .nine.wide.field {
  width: 56.25% !important;
}
.semantic .ui.form .ten.wide.field {
  width: 62.5% !important;
}
.semantic .ui.form .eleven.wide.field {
  width: 68.75% !important;
}
.semantic .ui.form .twelve.wide.field {
  width: 75% !important;
}
.semantic .ui.form .thirteen.wide.field {
  width: 81.25% !important;
}
.semantic .ui.form .fourteen.wide.field {
  width: 87.5% !important;
}
.semantic .ui.form .fifteen.wide.field {
  width: 93.75% !important;
}
.semantic .ui.form .sixteen.wide.field {
  width: 100% !important;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.form .two.fields > .fields,
  .semantic .ui.form .two.fields > .field,
  .semantic .ui.form .three.fields > .fields,
  .semantic .ui.form .three.fields > .field,
  .semantic .ui.form .four.fields > .fields,
  .semantic .ui.form .four.fields > .field,
  .semantic .ui.form .five.fields > .fields,
  .semantic .ui.form .five.fields > .field,
  .semantic .ui.form .fields > .two.wide.field,
  .semantic .ui.form .fields > .three.wide.field,
  .semantic .ui.form .fields > .four.wide.field,
  .semantic .ui.form .fields > .five.wide.field,
  .semantic .ui.form .fields > .six.wide.field,
  .semantic .ui.form .fields > .seven.wide.field,
  .semantic .ui.form .fields > .eight.wide.field,
  .semantic .ui.form .fields > .nine.wide.field,
  .semantic .ui.form .fields > .ten.wide.field,
  .semantic .ui.form .fields > .eleven.wide.field,
  .semantic .ui.form .fields > .twelve.wide.field,
  .semantic .ui.form .fields > .thirteen.wide.field,
  .semantic .ui.form .fields > .fourteen.wide.field,
  .semantic .ui.form .fields > .fifteen.wide.field,
  .semantic .ui.form .fields > .sixteen.wide.field {
    width: 100% !important;
    margin: 0em 0em 1em;
    padding-left: 0%;
    padding-right: 0%;
  }
}
.semantic .ui.form .inline.fields {
  margin: 0em 0em 1em;
}
.semantic .ui.form .inline.fields .field {
  display: inline-block;
  float: none;
  margin: 0em 1em 0em 0em;
  padding: 0em;
}
.semantic .ui.form .inline.fields .field > label,
.semantic .ui.form .inline.fields .field > p,
.semantic .ui.form .inline.fields .field > input,
.semantic .ui.form .inline.fields .field > .ui.input,
.semantic .ui.form .inline.field > label,
.semantic .ui.form .inline.field > p,
.semantic .ui.form .inline.field > input,
.semantic .ui.form .inline.field > .ui.input {
  display: inline-block;
  width: auto;
  margin-top: 0em;
  margin-bottom: 0em;
  vertical-align: middle;
  font-size: 0.9285em;
}
.semantic .ui.form .inline.fields .field > input,
.semantic .ui.form .inline.fields .field > .ui.input,
.semantic .ui.form .inline.field > input,
.semantic .ui.form .inline.field > .ui.input {
  font-size: 0.9285em;
}
.semantic .ui.form .inline.fields .field > .ui.checkbox label {
  padding-left: 1.75em;
}
.semantic .ui.form .inline.fields .field > :first-child,
.semantic .ui.form .inline.field > :first-child {
  margin: 0em 0.2857rem 0em 0em;
}
.semantic .ui.form .inline.fields .field > :only-child,
.semantic .ui.form .inline.field > :only-child {
  margin: 0em;
}
.semantic .ui.small.form {
  font-size: 0.875em;
}
.semantic .ui.form {
  font-size: auto;
}
.semantic .ui.large.form {
  font-size: 1.125em;
}
.semantic .ui.huge.form {
  font-size: 1.2em;
}
.semantic .ui.form .fields .field,
.semantic .ui.form .field {
  text-transform: uppercase;
}
.semantic .ui.modal ::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal :-moz-placeholder {
  /* Firefox 18- */
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal ::-moz-placeholder {
  /* Firefox 19+ */
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal :-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.grid {
  display: block;
  text-align: left;
  padding: 0em;
}
.semantic .ui.grid:after,
.semantic .ui.grid > .row:after {
  content: "";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.semantic .ui.grid {
  margin-top: -1rem;
  margin-bottom: -1rem;
  margin-left: -1rem;
  margin-right: -1rem;
}
.semantic .ui.relaxed.grid {
  margin-left: -1.5rem;
  margin-right: -1.5rem;
}
.semantic .ui[class*="very relaxed"].grid {
  margin-left: -2.5rem;
  margin-right: -2.5rem;
}
.semantic .ui.grid + .grid {
  margin-top: 1rem;
}
.semantic .ui.grid > .column:not(.row),
.semantic .ui.grid > .row > .column {
  position: relative;
  display: inline-block;
  font-size: 1rem;
  width: 6.25%;
  padding-left: 1rem;
  padding-right: 1rem;
  vertical-align: top;
}
.semantic .ui.grid > * {
  padding-left: 1rem;
  padding-right: 1rem;
}
.semantic .ui.grid > .row {
  position: relative;
  display: block;
  width: auto !important;
  padding: 0rem;
  font-size: 0rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .column:not(.row) {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .row > .column {
  margin-top: 0em;
  margin-bottom: 0em;
}
.semantic .ui.grid > .row > img,
.semantic .ui.grid > .row > .column > img {
  max-width: 100%;
}
.semantic .ui.grid .row + .ui.divider {
  margin: 1rem 1rem;
}
.semantic .ui.grid > .row > .column:last-child > .horizontal.segment,
.semantic .ui.grid > .column:last-child > .horizontal.segment {
  box-shadow: none;
}
.semantic .ui.page.grid {
  padding-left: 8%;
  padding-right: 8%;
  width: auto;
}
.semantic .ui.grid > .ui.grid:first-child {
  margin-top: 0em;
}
.semantic .ui.grid > .ui.grid:last-child {
  margin-bottom: 0em;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.page.grid {
    width: auto;
    padding-left: 0em;
    padding-right: 0em;
    margin-left: 0em;
    margin-right: 0em;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 4em;
    padding-right: 4em;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 8%;
    padding-right: 8%;
  }
}
@media only screen and (min-width: 1400px) {
  .semantic .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 15%;
    padding-right: 15%;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.page.grid {
    width: auto;
    margin-left: 0em;
    margin-right: 0em;
    padding-left: 23%;
    padding-right: 23%;
  }
}
.semantic .ui.grid > .column:only-child,
.semantic .ui.grid > .row > .column:only-child {
  width: 100%;
}
.semantic .ui[class*="one column"].grid > .row > .column,
.semantic .ui[class*="one column"].grid > .column {
  width: 100%;
}
.semantic .ui[class*="two column"].grid > .row > .column,
.semantic .ui[class*="two column"].grid > .column {
  width: 50%;
}
.semantic .ui[class*="three column"].grid > .row > .column,
.semantic .ui[class*="three column"].grid > .column {
  width: 33.33333333%;
}
.semantic .ui[class*="four column"].grid > .row > .column,
.semantic .ui[class*="four column"].grid > .column {
  width: 25%;
}
.semantic .ui[class*="five column"].grid > .row > .column,
.semantic .ui[class*="five column"].grid > .column {
  width: 20%;
}
.semantic .ui[class*="six column"].grid > .row > .column,
.semantic .ui[class*="six column"].grid > .column {
  width: 16.66666667%;
}
.semantic .ui[class*="seven column"].grid > .row > .column,
.semantic .ui[class*="seven column"].grid > .column {
  width: 14.28571429%;
}
.semantic .ui[class*="eight column"].grid > .row > .column,
.semantic .ui[class*="eight column"].grid > .column {
  width: 12.5%;
}
.semantic .ui[class*="nine column"].grid > .row > .column,
.semantic .ui[class*="nine column"].grid > .column {
  width: 11.11111111%;
}
.semantic .ui[class*="ten column"].grid > .row > .column,
.semantic .ui[class*="ten column"].grid > .column {
  width: 10%;
}
.semantic .ui[class*="eleven column"].grid > .row > .column,
.semantic .ui[class*="eleven column"].grid > .column {
  width: 9.09090909%;
}
.semantic .ui[class*="twelve column"].grid > .row > .column,
.semantic .ui[class*="twelve column"].grid > .column {
  width: 8.33333333%;
}
.semantic .ui[class*="thirteen column"].grid > .row > .column,
.semantic .ui[class*="thirteen column"].grid > .column {
  width: 7.69230769%;
}
.semantic .ui[class*="fourteen column"].grid > .row > .column,
.semantic .ui[class*="fourteen column"].grid > .column {
  width: 7.14285714%;
}
.semantic .ui[class*="fifteen column"].grid > .row > .column,
.semantic .ui[class*="fifteen column"].grid > .column {
  width: 6.66666667%;
}
.semantic .ui[class*="sixteen column"].grid > .row > .column,
.semantic .ui[class*="sixteen column"].grid > .column {
  width: 6.25%;
}
.semantic .ui.grid > [class*="one column"].row > .column {
  width: 100% !important;
}
.semantic .ui.grid > [class*="two column"].row > .column {
  width: 50% !important;
}
.semantic .ui.grid > [class*="three column"].row > .column {
  width: 33.33333333% !important;
}
.semantic .ui.grid > [class*="four column"].row > .column {
  width: 25% !important;
}
.semantic .ui.grid > [class*="five column"].row > .column {
  width: 20% !important;
}
.semantic .ui.grid > [class*="six column"].row > .column {
  width: 16.66666667% !important;
}
.semantic .ui.grid > [class*="seven column"].row > .column {
  width: 14.28571429% !important;
}
.semantic .ui.grid > [class*="eight column"].row > .column {
  width: 12.5% !important;
}
.semantic .ui.grid > [class*="nine column"].row > .column {
  width: 11.11111111% !important;
}
.semantic .ui.grid > [class*="ten column"].row > .column {
  width: 10% !important;
}
.semantic .ui.grid > [class*="eleven column"].row > .column {
  width: 9.09090909% !important;
}
.semantic .ui.grid > [class*="twelve column"].row > .column {
  width: 8.33333333% !important;
}
.semantic .ui.grid > [class*="thirteen column"].row > .column {
  width: 7.69230769% !important;
}
.semantic .ui.grid > [class*="fourteen column"].row > .column {
  width: 7.14285714% !important;
}
.semantic .ui.grid > [class*="fifteen column"].row > .column {
  width: 6.66666667% !important;
}
.semantic .ui.grid > [class*="sixteen column"].row > .column {
  width: 6.25% !important;
}
.semantic .ui.grid > .row > [class*="one wide"].column,
.semantic .ui.grid > .column.row > [class*="one wide"].column,
.semantic .ui.grid > [class*="one wide"].column,
.semantic .ui.column.grid > [class*="one wide"].column {
  width: 6.25% !important;
}
.semantic .ui.grid > .row > [class*="two wide"].column,
.semantic .ui.grid > .column.row > [class*="two wide"].column,
.semantic .ui.grid > [class*="two wide"].column,
.semantic .ui.column.grid > [class*="two wide"].column {
  width: 12.5% !important;
}
.semantic .ui.grid > .row > [class*="three wide"].column,
.semantic .ui.grid > .column.row > [class*="three wide"].column,
.semantic .ui.grid > [class*="three wide"].column,
.semantic .ui.column.grid > [class*="three wide"].column {
  width: 18.75% !important;
}
.semantic .ui.grid > .row > [class*="four wide"].column,
.semantic .ui.grid > .column.row > [class*="four wide"].column,
.semantic .ui.grid > [class*="four wide"].column,
.semantic .ui.column.grid > [class*="four wide"].column {
  width: 25% !important;
}
.semantic .ui.grid > .row > [class*="five wide"].column,
.semantic .ui.grid > .column.row > [class*="five wide"].column,
.semantic .ui.grid > [class*="five wide"].column,
.semantic .ui.column.grid > [class*="five wide"].column {
  width: 31.25% !important;
}
.semantic .ui.grid > .row > [class*="six wide"].column,
.semantic .ui.grid > .column.row > [class*="six wide"].column,
.semantic .ui.grid > [class*="six wide"].column,
.semantic .ui.column.grid > [class*="six wide"].column {
  width: 37.5% !important;
}
.semantic .ui.grid > .row > [class*="seven wide"].column,
.semantic .ui.grid > .column.row > [class*="seven wide"].column,
.semantic .ui.grid > [class*="seven wide"].column,
.semantic .ui.column.grid > [class*="seven wide"].column {
  width: 43.75% !important;
}
.semantic .ui.grid > .row > [class*="eight wide"].column,
.semantic .ui.grid > .column.row > [class*="eight wide"].column,
.semantic .ui.grid > [class*="eight wide"].column,
.semantic .ui.column.grid > [class*="eight wide"].column {
  width: 50% !important;
}
.semantic .ui.grid > .row > [class*="nine wide"].column,
.semantic .ui.grid > .column.row > [class*="nine wide"].column,
.semantic .ui.grid > [class*="nine wide"].column,
.semantic .ui.column.grid > [class*="nine wide"].column {
  width: 56.25% !important;
}
.semantic .ui.grid > .row > [class*="ten wide"].column,
.semantic .ui.grid > .column.row > [class*="ten wide"].column,
.semantic .ui.grid > [class*="ten wide"].column,
.semantic .ui.column.grid > [class*="ten wide"].column {
  width: 62.5% !important;
}
.semantic .ui.grid > .row > [class*="eleven wide"].column,
.semantic .ui.grid > .column.row > [class*="eleven wide"].column,
.semantic .ui.grid > [class*="eleven wide"].column,
.semantic .ui.column.grid > [class*="eleven wide"].column {
  width: 68.75% !important;
}
.semantic .ui.grid > .row > [class*="twelve wide"].column,
.semantic .ui.grid > .column.row > [class*="twelve wide"].column,
.semantic .ui.grid > [class*="twelve wide"].column,
.semantic .ui.column.grid > [class*="twelve wide"].column {
  width: 75% !important;
}
.semantic .ui.grid > .row > [class*="thirteen wide"].column,
.semantic .ui.grid > .column.row > [class*="thirteen wide"].column,
.semantic .ui.grid > [class*="thirteen wide"].column,
.semantic .ui.column.grid > [class*="thirteen wide"].column {
  width: 81.25% !important;
}
.semantic .ui.grid > .row > [class*="fourteen wide"].column,
.semantic .ui.grid > .column.row > [class*="fourteen wide"].column,
.semantic .ui.grid > [class*="fourteen wide"].column,
.semantic .ui.column.grid > [class*="fourteen wide"].column {
  width: 87.5% !important;
}
.semantic .ui.grid > .row > [class*="fifteen wide"].column,
.semantic .ui.grid > .column.row > [class*="fifteen wide"].column,
.semantic .ui.grid > [class*="fifteen wide"].column,
.semantic .ui.column.grid > [class*="fifteen wide"].column {
  width: 93.75% !important;
}
.semantic .ui.grid > .row > [class*="sixteen wide"].column,
.semantic .ui.grid > .column.row > [class*="sixteen wide"].column,
.semantic .ui.grid > [class*="sixteen wide"].column,
.semantic .ui.column.grid > [class*="sixteen wide"].column {
  width: 100% !important;
}
@media only screen and (min-width: 320px) and (max-width: 767px) {
  .semantic .ui.grid > .row > [class*="one wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="one wide mobile"].column,
  .semantic .ui.grid > [class*="one wide mobile"].column,
  .semantic .ui.column.grid > [class*="one wide mobile"].column {
    width: 6.25% !important;
  }
  .semantic .ui.grid > .row > [class*="two wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="two wide mobile"].column,
  .semantic .ui.grid > [class*="two wide mobile"].column,
  .semantic .ui.column.grid > [class*="two wide mobile"].column {
    width: 12.5% !important;
  }
  .semantic .ui.grid > .row > [class*="three wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="three wide mobile"].column,
  .semantic .ui.grid > [class*="three wide mobile"].column,
  .semantic .ui.column.grid > [class*="three wide mobile"].column {
    width: 18.75% !important;
  }
  .semantic .ui.grid > .row > [class*="four wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="four wide mobile"].column,
  .semantic .ui.grid > [class*="four wide mobile"].column,
  .semantic .ui.column.grid > [class*="four wide mobile"].column {
    width: 25% !important;
  }
  .semantic .ui.grid > .row > [class*="five wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="five wide mobile"].column,
  .semantic .ui.grid > [class*="five wide mobile"].column,
  .semantic .ui.column.grid > [class*="five wide mobile"].column {
    width: 31.25% !important;
  }
  .semantic .ui.grid > .row > [class*="six wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="six wide mobile"].column,
  .semantic .ui.grid > [class*="six wide mobile"].column,
  .semantic .ui.column.grid > [class*="six wide mobile"].column {
    width: 37.5% !important;
  }
  .semantic .ui.grid > .row > [class*="seven wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="seven wide mobile"].column,
  .semantic .ui.grid > [class*="seven wide mobile"].column,
  .semantic .ui.column.grid > [class*="seven wide mobile"].column {
    width: 43.75% !important;
  }
  .semantic .ui.grid > .row > [class*="eight wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="eight wide mobile"].column,
  .semantic .ui.grid > [class*="eight wide mobile"].column,
  .semantic .ui.column.grid > [class*="eight wide mobile"].column {
    width: 50% !important;
  }
  .semantic .ui.grid > .row > [class*="nine wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="nine wide mobile"].column,
  .semantic .ui.grid > [class*="nine wide mobile"].column,
  .semantic .ui.column.grid > [class*="nine wide mobile"].column {
    width: 56.25% !important;
  }
  .semantic .ui.grid > .row > [class*="ten wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="ten wide mobile"].column,
  .semantic .ui.grid > [class*="ten wide mobile"].column,
  .semantic .ui.column.grid > [class*="ten wide mobile"].column {
    width: 62.5% !important;
  }
  .semantic .ui.grid > .row > [class*="eleven wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="eleven wide mobile"].column,
  .semantic .ui.grid > [class*="eleven wide mobile"].column,
  .semantic .ui.column.grid > [class*="eleven wide mobile"].column {
    width: 68.75% !important;
  }
  .semantic .ui.grid > .row > [class*="twelve wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="twelve wide mobile"].column,
  .semantic .ui.grid > [class*="twelve wide mobile"].column,
  .semantic .ui.column.grid > [class*="twelve wide mobile"].column {
    width: 75% !important;
  }
  .semantic .ui.grid > .row > [class*="thirteen wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="thirteen wide mobile"].column,
  .semantic .ui.grid > [class*="thirteen wide mobile"].column,
  .semantic .ui.column.grid > [class*="thirteen wide mobile"].column {
    width: 81.25% !important;
  }
  .semantic .ui.grid > .row > [class*="fourteen wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="fourteen wide mobile"].column,
  .semantic .ui.grid > [class*="fourteen wide mobile"].column,
  .semantic .ui.column.grid > [class*="fourteen wide mobile"].column {
    width: 87.5% !important;
  }
  .semantic .ui.grid > .row > [class*="fifteen wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="fifteen wide mobile"].column,
  .semantic .ui.grid > [class*="fifteen wide mobile"].column,
  .semantic .ui.column.grid > [class*="fifteen wide mobile"].column {
    width: 93.75% !important;
  }
  .semantic .ui.grid > .row > [class*="sixteen wide mobile"].column,
  .semantic .ui.grid > .column.row > [class*="sixteen wide mobile"].column,
  .semantic .ui.grid > [class*="sixteen wide mobile"].column,
  .semantic .ui.column.grid > [class*="sixteen wide mobile"].column {
    width: 100% !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .semantic .ui.grid > .row > [class*="one wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="one wide tablet"].column,
  .semantic .ui.grid > [class*="one wide tablet"].column,
  .semantic .ui.column.grid > [class*="one wide tablet"].column {
    width: 6.25% !important;
  }
  .semantic .ui.grid > .row > [class*="two wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="two wide tablet"].column,
  .semantic .ui.grid > [class*="two wide tablet"].column,
  .semantic .ui.column.grid > [class*="two wide tablet"].column {
    width: 12.5% !important;
  }
  .semantic .ui.grid > .row > [class*="three wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="three wide tablet"].column,
  .semantic .ui.grid > [class*="three wide tablet"].column,
  .semantic .ui.column.grid > [class*="three wide tablet"].column {
    width: 18.75% !important;
  }
  .semantic .ui.grid > .row > [class*="four wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="four wide tablet"].column,
  .semantic .ui.grid > [class*="four wide tablet"].column,
  .semantic .ui.column.grid > [class*="four wide tablet"].column {
    width: 25% !important;
  }
  .semantic .ui.grid > .row > [class*="five wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="five wide tablet"].column,
  .semantic .ui.grid > [class*="five wide tablet"].column,
  .semantic .ui.column.grid > [class*="five wide tablet"].column {
    width: 31.25% !important;
  }
  .semantic .ui.grid > .row > [class*="six wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="six wide tablet"].column,
  .semantic .ui.grid > [class*="six wide tablet"].column,
  .semantic .ui.column.grid > [class*="six wide tablet"].column {
    width: 37.5% !important;
  }
  .semantic .ui.grid > .row > [class*="seven wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="seven wide tablet"].column,
  .semantic .ui.grid > [class*="seven wide tablet"].column,
  .semantic .ui.column.grid > [class*="seven wide tablet"].column {
    width: 43.75% !important;
  }
  .semantic .ui.grid > .row > [class*="eight wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="eight wide tablet"].column,
  .semantic .ui.grid > [class*="eight wide tablet"].column,
  .semantic .ui.column.grid > [class*="eight wide tablet"].column {
    width: 50% !important;
  }
  .semantic .ui.grid > .row > [class*="nine wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="nine wide tablet"].column,
  .semantic .ui.grid > [class*="nine wide tablet"].column,
  .semantic .ui.column.grid > [class*="nine wide tablet"].column {
    width: 56.25% !important;
  }
  .semantic .ui.grid > .row > [class*="ten wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="ten wide tablet"].column,
  .semantic .ui.grid > [class*="ten wide tablet"].column,
  .semantic .ui.column.grid > [class*="ten wide tablet"].column {
    width: 62.5% !important;
  }
  .semantic .ui.grid > .row > [class*="eleven wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="eleven wide tablet"].column,
  .semantic .ui.grid > [class*="eleven wide tablet"].column,
  .semantic .ui.column.grid > [class*="eleven wide tablet"].column {
    width: 68.75% !important;
  }
  .semantic .ui.grid > .row > [class*="twelve wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="twelve wide tablet"].column,
  .semantic .ui.grid > [class*="twelve wide tablet"].column,
  .semantic .ui.column.grid > [class*="twelve wide tablet"].column {
    width: 75% !important;
  }
  .semantic .ui.grid > .row > [class*="thirteen wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="thirteen wide tablet"].column,
  .semantic .ui.grid > [class*="thirteen wide tablet"].column,
  .semantic .ui.column.grid > [class*="thirteen wide tablet"].column {
    width: 81.25% !important;
  }
  .semantic .ui.grid > .row > [class*="fourteen wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="fourteen wide tablet"].column,
  .semantic .ui.grid > [class*="fourteen wide tablet"].column,
  .semantic .ui.column.grid > [class*="fourteen wide tablet"].column {
    width: 87.5% !important;
  }
  .semantic .ui.grid > .row > [class*="fifteen wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="fifteen wide tablet"].column,
  .semantic .ui.grid > [class*="fifteen wide tablet"].column,
  .semantic .ui.column.grid > [class*="fifteen wide tablet"].column {
    width: 93.75% !important;
  }
  .semantic .ui.grid > .row > [class*="sixteen wide tablet"].column,
  .semantic .ui.grid > .column.row > [class*="sixteen wide tablet"].column,
  .semantic .ui.grid > [class*="sixteen wide tablet"].column,
  .semantic .ui.column.grid > [class*="sixteen wide tablet"].column {
    width: 100% !important;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.grid > .row > [class*="one wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="one wide computer"].column,
  .semantic .ui.grid > [class*="one wide computer"].column,
  .semantic .ui.column.grid > [class*="one wide computer"].column {
    width: 6.25% !important;
  }
  .semantic .ui.grid > .row > [class*="two wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="two wide computer"].column,
  .semantic .ui.grid > [class*="two wide computer"].column,
  .semantic .ui.column.grid > [class*="two wide computer"].column {
    width: 12.5% !important;
  }
  .semantic .ui.grid > .row > [class*="three wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="three wide computer"].column,
  .semantic .ui.grid > [class*="three wide computer"].column,
  .semantic .ui.column.grid > [class*="three wide computer"].column {
    width: 18.75% !important;
  }
  .semantic .ui.grid > .row > [class*="four wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="four wide computer"].column,
  .semantic .ui.grid > [class*="four wide computer"].column,
  .semantic .ui.column.grid > [class*="four wide computer"].column {
    width: 25% !important;
  }
  .semantic .ui.grid > .row > [class*="five wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="five wide computer"].column,
  .semantic .ui.grid > [class*="five wide computer"].column,
  .semantic .ui.column.grid > [class*="five wide computer"].column {
    width: 31.25% !important;
  }
  .semantic .ui.grid > .row > [class*="six wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="six wide computer"].column,
  .semantic .ui.grid > [class*="six wide computer"].column,
  .semantic .ui.column.grid > [class*="six wide computer"].column {
    width: 37.5% !important;
  }
  .semantic .ui.grid > .row > [class*="seven wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="seven wide computer"].column,
  .semantic .ui.grid > [class*="seven wide computer"].column,
  .semantic .ui.column.grid > [class*="seven wide computer"].column {
    width: 43.75% !important;
  }
  .semantic .ui.grid > .row > [class*="eight wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="eight wide computer"].column,
  .semantic .ui.grid > [class*="eight wide computer"].column,
  .semantic .ui.column.grid > [class*="eight wide computer"].column {
    width: 50% !important;
  }
  .semantic .ui.grid > .row > [class*="nine wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="nine wide computer"].column,
  .semantic .ui.grid > [class*="nine wide computer"].column,
  .semantic .ui.column.grid > [class*="nine wide computer"].column {
    width: 56.25% !important;
  }
  .semantic .ui.grid > .row > [class*="ten wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="ten wide computer"].column,
  .semantic .ui.grid > [class*="ten wide computer"].column,
  .semantic .ui.column.grid > [class*="ten wide computer"].column {
    width: 62.5% !important;
  }
  .semantic .ui.grid > .row > [class*="eleven wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="eleven wide computer"].column,
  .semantic .ui.grid > [class*="eleven wide computer"].column,
  .semantic .ui.column.grid > [class*="eleven wide computer"].column {
    width: 68.75% !important;
  }
  .semantic .ui.grid > .row > [class*="twelve wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="twelve wide computer"].column,
  .semantic .ui.grid > [class*="twelve wide computer"].column,
  .semantic .ui.column.grid > [class*="twelve wide computer"].column {
    width: 75% !important;
  }
  .semantic .ui.grid > .row > [class*="thirteen wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="thirteen wide computer"].column,
  .semantic .ui.grid > [class*="thirteen wide computer"].column,
  .semantic .ui.column.grid > [class*="thirteen wide computer"].column {
    width: 81.25% !important;
  }
  .semantic .ui.grid > .row > [class*="fourteen wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="fourteen wide computer"].column,
  .semantic .ui.grid > [class*="fourteen wide computer"].column,
  .semantic .ui.column.grid > [class*="fourteen wide computer"].column {
    width: 87.5% !important;
  }
  .semantic .ui.grid > .row > [class*="fifteen wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="fifteen wide computer"].column,
  .semantic .ui.grid > [class*="fifteen wide computer"].column,
  .semantic .ui.column.grid > [class*="fifteen wide computer"].column {
    width: 93.75% !important;
  }
  .semantic .ui.grid > .row > [class*="sixteen wide computer"].column,
  .semantic .ui.grid > .column.row > [class*="sixteen wide computer"].column,
  .semantic .ui.grid > [class*="sixteen wide computer"].column,
  .semantic .ui.column.grid > [class*="sixteen wide computer"].column {
    width: 100% !important;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1919px) {
  .semantic .ui.grid > .row > [class*="one wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="one wide large screen"].column,
  .semantic .ui.grid > [class*="one wide large screen"].column,
  .semantic .ui.column.grid > [class*="one wide large screen"].column {
    width: 6.25% !important;
  }
  .semantic .ui.grid > .row > [class*="two wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="two wide large screen"].column,
  .semantic .ui.grid > [class*="two wide large screen"].column,
  .semantic .ui.column.grid > [class*="two wide large screen"].column {
    width: 12.5% !important;
  }
  .semantic .ui.grid > .row > [class*="three wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="three wide large screen"].column,
  .semantic .ui.grid > [class*="three wide large screen"].column,
  .semantic .ui.column.grid > [class*="three wide large screen"].column {
    width: 18.75% !important;
  }
  .semantic .ui.grid > .row > [class*="four wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="four wide large screen"].column,
  .semantic .ui.grid > [class*="four wide large screen"].column,
  .semantic .ui.column.grid > [class*="four wide large screen"].column {
    width: 25% !important;
  }
  .semantic .ui.grid > .row > [class*="five wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="five wide large screen"].column,
  .semantic .ui.grid > [class*="five wide large screen"].column,
  .semantic .ui.column.grid > [class*="five wide large screen"].column {
    width: 31.25% !important;
  }
  .semantic .ui.grid > .row > [class*="six wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="six wide large screen"].column,
  .semantic .ui.grid > [class*="six wide large screen"].column,
  .semantic .ui.column.grid > [class*="six wide large screen"].column {
    width: 37.5% !important;
  }
  .semantic .ui.grid > .row > [class*="seven wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="seven wide large screen"].column,
  .semantic .ui.grid > [class*="seven wide large screen"].column,
  .semantic .ui.column.grid > [class*="seven wide large screen"].column {
    width: 43.75% !important;
  }
  .semantic .ui.grid > .row > [class*="eight wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="eight wide large screen"].column,
  .semantic .ui.grid > [class*="eight wide large screen"].column,
  .semantic .ui.column.grid > [class*="eight wide large screen"].column {
    width: 50% !important;
  }
  .semantic .ui.grid > .row > [class*="nine wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="nine wide large screen"].column,
  .semantic .ui.grid > [class*="nine wide large screen"].column,
  .semantic .ui.column.grid > [class*="nine wide large screen"].column {
    width: 56.25% !important;
  }
  .semantic .ui.grid > .row > [class*="ten wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="ten wide large screen"].column,
  .semantic .ui.grid > [class*="ten wide large screen"].column,
  .semantic .ui.column.grid > [class*="ten wide large screen"].column {
    width: 62.5% !important;
  }
  .semantic .ui.grid > .row > [class*="eleven wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="eleven wide large screen"].column,
  .semantic .ui.grid > [class*="eleven wide large screen"].column,
  .semantic .ui.column.grid > [class*="eleven wide large screen"].column {
    width: 68.75% !important;
  }
  .semantic .ui.grid > .row > [class*="twelve wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="twelve wide large screen"].column,
  .semantic .ui.grid > [class*="twelve wide large screen"].column,
  .semantic .ui.column.grid > [class*="twelve wide large screen"].column {
    width: 75% !important;
  }
  .semantic .ui.grid > .row > [class*="thirteen wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="thirteen wide large screen"].column,
  .semantic .ui.grid > [class*="thirteen wide large screen"].column,
  .semantic .ui.column.grid > [class*="thirteen wide large screen"].column {
    width: 81.25% !important;
  }
  .semantic .ui.grid > .row > [class*="fourteen wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="fourteen wide large screen"].column,
  .semantic .ui.grid > [class*="fourteen wide large screen"].column,
  .semantic .ui.column.grid > [class*="fourteen wide large screen"].column {
    width: 87.5% !important;
  }
  .semantic .ui.grid > .row > [class*="fifteen wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="fifteen wide large screen"].column,
  .semantic .ui.grid > [class*="fifteen wide large screen"].column,
  .semantic .ui.column.grid > [class*="fifteen wide large screen"].column {
    width: 93.75% !important;
  }
  .semantic .ui.grid > .row > [class*="sixteen wide large screen"].column,
  .semantic .ui.grid > .column.row > [class*="sixteen wide large screen"].column,
  .semantic .ui.grid > [class*="sixteen wide large screen"].column,
  .semantic .ui.column.grid > [class*="sixteen wide large screen"].column {
    width: 100% !important;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.grid > .row > [class*="one wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="one wide widescreen"].column,
  .semantic .ui.grid > [class*="one wide widescreen"].column,
  .semantic .ui.column.grid > [class*="one wide widescreen"].column {
    width: 6.25% !important;
  }
  .semantic .ui.grid > .row > [class*="two wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="two wide widescreen"].column,
  .semantic .ui.grid > [class*="two wide widescreen"].column,
  .semantic .ui.column.grid > [class*="two wide widescreen"].column {
    width: 12.5% !important;
  }
  .semantic .ui.grid > .row > [class*="three wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="three wide widescreen"].column,
  .semantic .ui.grid > [class*="three wide widescreen"].column,
  .semantic .ui.column.grid > [class*="three wide widescreen"].column {
    width: 18.75% !important;
  }
  .semantic .ui.grid > .row > [class*="four wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="four wide widescreen"].column,
  .semantic .ui.grid > [class*="four wide widescreen"].column,
  .semantic .ui.column.grid > [class*="four wide widescreen"].column {
    width: 25% !important;
  }
  .semantic .ui.grid > .row > [class*="five wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="five wide widescreen"].column,
  .semantic .ui.grid > [class*="five wide widescreen"].column,
  .semantic .ui.column.grid > [class*="five wide widescreen"].column {
    width: 31.25% !important;
  }
  .semantic .ui.grid > .row > [class*="six wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="six wide widescreen"].column,
  .semantic .ui.grid > [class*="six wide widescreen"].column,
  .semantic .ui.column.grid > [class*="six wide widescreen"].column {
    width: 37.5% !important;
  }
  .semantic .ui.grid > .row > [class*="seven wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="seven wide widescreen"].column,
  .semantic .ui.grid > [class*="seven wide widescreen"].column,
  .semantic .ui.column.grid > [class*="seven wide widescreen"].column {
    width: 43.75% !important;
  }
  .semantic .ui.grid > .row > [class*="eight wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="eight wide widescreen"].column,
  .semantic .ui.grid > [class*="eight wide widescreen"].column,
  .semantic .ui.column.grid > [class*="eight wide widescreen"].column {
    width: 50% !important;
  }
  .semantic .ui.grid > .row > [class*="nine wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="nine wide widescreen"].column,
  .semantic .ui.grid > [class*="nine wide widescreen"].column,
  .semantic .ui.column.grid > [class*="nine wide widescreen"].column {
    width: 56.25% !important;
  }
  .semantic .ui.grid > .row > [class*="ten wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="ten wide widescreen"].column,
  .semantic .ui.grid > [class*="ten wide widescreen"].column,
  .semantic .ui.column.grid > [class*="ten wide widescreen"].column {
    width: 62.5% !important;
  }
  .semantic .ui.grid > .row > [class*="eleven wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="eleven wide widescreen"].column,
  .semantic .ui.grid > [class*="eleven wide widescreen"].column,
  .semantic .ui.column.grid > [class*="eleven wide widescreen"].column {
    width: 68.75% !important;
  }
  .semantic .ui.grid > .row > [class*="twelve wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="twelve wide widescreen"].column,
  .semantic .ui.grid > [class*="twelve wide widescreen"].column,
  .semantic .ui.column.grid > [class*="twelve wide widescreen"].column {
    width: 75% !important;
  }
  .semantic .ui.grid > .row > [class*="thirteen wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="thirteen wide widescreen"].column,
  .semantic .ui.grid > [class*="thirteen wide widescreen"].column,
  .semantic .ui.column.grid > [class*="thirteen wide widescreen"].column {
    width: 81.25% !important;
  }
  .semantic .ui.grid > .row > [class*="fourteen wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="fourteen wide widescreen"].column,
  .semantic .ui.grid > [class*="fourteen wide widescreen"].column,
  .semantic .ui.column.grid > [class*="fourteen wide widescreen"].column {
    width: 87.5% !important;
  }
  .semantic .ui.grid > .row > [class*="fifteen wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="fifteen wide widescreen"].column,
  .semantic .ui.grid > [class*="fifteen wide widescreen"].column,
  .semantic .ui.column.grid > [class*="fifteen wide widescreen"].column {
    width: 93.75% !important;
  }
  .semantic .ui.grid > .row > [class*="sixteen wide widescreen"].column,
  .semantic .ui.grid > .column.row > [class*="sixteen wide widescreen"].column,
  .semantic .ui.grid > [class*="sixteen wide widescreen"].column,
  .semantic .ui.column.grid > [class*="sixteen wide widescreen"].column {
    width: 100% !important;
  }
}
.semantic .ui.centered.grid,
.semantic .ui.centered.grid > .row,
.semantic .ui.grid > .centered.row {
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.semantic .ui.centered.grid > .column:not(.aligned):not(.row),
.semantic .ui.centered.grid > .row > .column:not(.aligned),
.semantic .ui.grid .centered.row > .column:not(.aligned) {
  text-align: left;
}
.semantic .ui.grid > .centered.column,
.semantic .ui.grid > .row > .centered.column {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.semantic .ui.relaxed.grid > .column:not(.row),
.semantic .ui.relaxed.grid > .row > .column,
.semantic .ui.grid > .relaxed.row > .column {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.semantic .ui[class*="very relaxed"].grid > .column:not(.row),
.semantic .ui[class*="very relaxed"].grid > .row > .column,
.semantic .ui.grid > [class*="very relaxed"].row > .column {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}
.semantic .ui.relaxed.grid .row + .ui.divider,
.semantic .ui.grid .relaxed.row + .ui.divider {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.semantic .ui[class*="very relaxed"].grid .row + .ui.divider,
.semantic .ui.grid [class*="very relaxed"].row + .ui.divider {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
.semantic .ui.padded.grid:not(.vertically):not(.horizontally) {
  margin: 0em !important;
}
.semantic [class*="horizontally padded"].ui.grid {
  margin-left: 0em !important;
  margin-right: 0em !important;
}
.semantic [class*="vertically padded"].ui.grid {
  margin-top: 0em !important;
  margin-bottom: 0em !important;
}
.semantic .ui.grid [class*="left floated"].column {
  float: left;
}
.semantic .ui.grid [class*="right floated"].column {
  float: right;
}
.semantic .ui.divided.grid:not([class*="vertically divided"]) > .column:not(.row),
.semantic .ui.divided.grid:not([class*="vertically divided"]) > .row > .column {
  box-shadow: -1px 0px 0px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui[class*="vertically divided"].grid > .column:not(.row),
.semantic .ui[class*="vertically divided"].grid > .row > .column {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-top: 0rem;
  padding-bottom: 0rem;
}
.semantic .ui[class*="vertically divided"].grid > .row {
  margin-top: 0em;
  margin-bottom: 0em;
  padding-top: 0em;
  padding-bottom: 0em;
}
.semantic .ui.divided.grid:not([class*="vertically divided"]) > .column:first-child,
.semantic .ui.divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
  box-shadow: none;
}
.semantic .ui.grid > .divided.row > .column {
  box-shadow: -1px 0px 0px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.grid > .divided.row > .column:first-child {
  box-shadow: none;
}
.semantic .ui[class*="vertically divided"].grid > .row {
  position: relative;
}
.semantic .ui[class*="vertically divided"].grid > .row:before {
  position: absolute;
  content: "";
  top: 0em;
  left: 0px;
  width: -webkit-calc(100% - 2rem );
  width: calc(100% - 2rem);
  height: 1px;
  margin: 0% 1rem;
  box-shadow: 0px -1px 0px 0px rgba(39, 41, 43, 0.15);
}
.semantic [class*="horizontally padded"].ui.divided.grid,
.semantic .ui.padded.divided.grid:not(.vertically):not(.horizontally) {
  width: 100%;
}
.semantic .ui[class*="vertically divided"].grid > .row:first-child:before {
  box-shadow: none;
}
.semantic .ui.inverted.divided.grid:not([class*="vertically divided"]) > .column:not(.row),
.semantic .ui.inverted.divided.grid:not([class*="vertically divided"]) > .row > .column {
  box-shadow: -1px 0px 0px 0px rgba(255, 255, 255, 0.2);
}
.semantic .ui.inverted.divided.grid:not([class*="vertically divided"]) > .column:not(.row):first-child,
.semantic .ui.inverted.divided.grid:not([class*="vertically divided"]) > .row > .column:first-child {
  box-shadow: none;
}
.semantic .ui.inverted[class*="vertically divided"].grid > .row:before {
  box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.2);
}
.semantic .ui.relaxed[class*="vertically divided"].grid > .row:before {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  width: -webkit-calc(100% - 3rem );
  width: calc(100% - 3rem);
}
.semantic .ui[class*="very relaxed"][class*="vertically divided"].grid > .row:before {
  margin-left: 5rem;
  margin-right: 5rem;
  width: -webkit-calc(100% - 5rem );
  width: calc(100% - 5rem);
}
.semantic .ui.celled.grid {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 1em 0em;
  box-shadow: 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.celled.grid > .row,
.semantic .ui.celled.grid > .column.row,
.semantic .ui.celled.grid > .column.row:first-child {
  display: table;
  table-layout: fixed;
  width: 100% !important;
  margin: 0em;
  padding: 0em;
  box-shadow: 0px -1px 0px 0px #d4d4d5;
}
.semantic .ui.celled.grid > .column:not(.row),
.semantic .ui.celled.grid > .row > .column {
  display: table-cell;
  box-shadow: -1px 0px 0px 0px #d4d4d5;
}
.semantic .ui.celled.grid > .column:first-child,
.semantic .ui.celled.grid > .row > .column:first-child {
  box-shadow: none;
}
.semantic .ui.celled.page.grid {
  box-shadow: none;
}
.semantic .ui.celled.grid > .column:not(.row),
.semantic .ui.celled.grid > .row > .column {
  padding: 0.75em;
}
.semantic .ui.relaxed.celled.grid > .column:not(.row),
.semantic .ui.relaxed.celled.grid > .row > .column {
  padding: 1em;
}
.semantic .ui[class*="very relaxed"].celled.grid > .column:not(.row),
.semantic .ui[class*="very relaxed"].celled.grid > .row > .column {
  padding: 2em;
}
.semantic .ui[class*="internally celled"].grid {
  box-shadow: none;
}
.semantic .ui[class*="internally celled"].grid > .row:first-child {
  box-shadow: none;
}
.semantic .ui[class*="internally celled"].grid > .row > .column:first-child {
  box-shadow: none;
}
.semantic .ui[class*="left aligned"].grid,
.semantic .ui[class*="left aligned"].grid > .row > .column,
.semantic .ui[class*="left aligned"].grid > .column,
.semantic .ui.grid [class*="left aligned"].column,
.semantic .ui.grid > [class*="left aligned"].row > .column {
  text-align: left;
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}
.semantic .ui.grid [class*="left aligned"].column {
  text-align: left !important;
}
.semantic .ui[class*="center aligned"].grid,
.semantic .ui[class*="center aligned"].grid > .row > .column,
.semantic .ui[class*="center aligned"].grid > .column,
.semantic .ui.grid > [class*="center aligned"].row > .column {
  text-align: center;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
}
.semantic .ui.grid [class*="center aligned"].column {
  text-align: center !important;
}
.semantic .ui[class*="right aligned"].grid,
.semantic .ui[class*="right aligned"].grid > .row > .column,
.semantic .ui[class*="right aligned"].grid > .column,
.semantic .ui.grid > [class*="right aligned"].row > .column {
  text-align: right;
  -webkit-box-align: end !important;
  -webkit-align-items: flex-end !important;
  -ms-flex-align: end !important;
  align-items: flex-end !important;
}
.semantic .ui.grid [class*="right aligned"].column {
  text-align: right !important;
}
.semantic .ui.justified.grid,
.semantic .ui.justified.grid > .row > .column,
.semantic .ui.justified.grid > .column,
.semantic .ui.grid .justified.column,
.semantic .ui.grid > .justified.row > .column {
  text-align: justify;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
.semantic .ui.grid .justified.column {
  text-align: justify !important;
  -webkit-hyphens: auto !important;
  -moz-hyphens: auto !important;
  -ms-hyphens: auto !important;
  hyphens: auto !important;
}
.semantic .ui[class*="top aligned"].grid,
.semantic .ui[class*="top aligned"].grid > .row > .column,
.semantic .ui[class*="top aligned"].grid > .column,
.semantic .ui.grid [class*="top aligned"].column,
.semantic .ui.grid > [class*="top aligned"].row > .column {
  vertical-align: top;
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
  -ms-flex-pack: start !important;
  justify-content: flex-start !important;
}
.semantic .ui.grid [class*="top aligned"].column {
  vertical-align: top !important;
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
  -ms-flex-pack: start !important;
  justify-content: flex-start !important;
}
.semantic .ui.stretched.grid > .row > .column,
.semantic .ui.stretched.grid > .column:not(.row),
.semantic .ui.grid .stretched.column,
.semantic .ui.grid > .stretched.row > .column {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.semantic .ui.stretched.grid > .row > .column > *,
.semantic .ui.stretched.grid > .column > *,
.semantic .ui.grid .stretched.column > *,
.semantic .ui.grid > .stretched.row > .column > * {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.semantic .ui[class*="middle aligned"].grid,
.semantic .ui[class*="middle aligned"].grid > .row > .column,
.semantic .ui[class*="middle aligned"].grid > .column,
.semantic .ui.grid > [class*="middle aligned"].row > .column {
  vertical-align: middle;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
}
.semantic .ui.grid [class*="middle aligned"].column {
  vertical-align: middle !important;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
}
.semantic .ui[class*="bottom aligned"].grid,
.semantic .ui[class*="bottom aligned"].grid > .row > .column,
.semantic .ui[class*="bottom aligned"].grid > .column,
.semantic .ui.grid > [class*="bottom aligned"].row > .column {
  vertical-align: bottom;
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
  -ms-flex-pack: end !important;
  justify-content: flex-end !important;
}
.semantic .ui.grid [class*="bottom aligned"].column {
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
  -ms-flex-pack: end !important;
  justify-content: flex-end !important;
  vertical-align: bottom !important;
}
.semantic .ui.grid > .white.row,
.semantic .ui.grid > .row > .white.column {
  background-color: #ffffff !important;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.grid > .row > .white.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .black.row,
.semantic .ui.grid > .row > .black.column {
  background-color: #1b1c1d !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .black.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .blue.row,
.semantic .ui.grid > .row > .blue.column {
  background-color: #3b83c0 !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .blue.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .green.row,
.semantic .ui.grid > .row > .green.column {
  background-color: #2db475 !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .green.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .orange.row,
.semantic .ui.grid > .row > .orange.column {
  background-color: #e07b53 !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .orange.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .pink.row,
.semantic .ui.grid .pink.column {
  background-color: #d9499a !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .pink.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .purple.row,
.semantic .ui.grid > .row > .purple.column {
  background-color: #564f8a !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .purple.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .red.row,
.semantic .ui.grid > .row > .red.column {
  background-color: #cc181e !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .red.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .teal.row,
.semantic .ui.grid > .row > .teal.column {
  background-color: #00b5ad !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .teal.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui.grid > .yellow.row,
.semantic .ui.grid > .row > .yellow.column {
  background-color: #f2c61f !important;
  color: #ffffff;
}
.semantic .ui.grid > .row > .yellow.column {
  margin-top: -1rem;
  margin-bottom: -1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.semantic .ui[class*="equal width"].grid {
  display: table;
  table-layout: fixed;
}
.semantic .ui[class*="equal width"].grid > .row,
.semantic .ui.grid > [class*="equal width"].row {
  display: table;
  table-layout: fixed;
  width: 100% !important;
}
.semantic .ui[class*="equal width"].grid > .column:not(.row),
.semantic .ui[class*="equal width"].grid > .row > .column,
.semantic .ui.grid > [class*="equal width"].row > .column {
  display: table-cell;
}
.semantic .ui[class*="equal width"].grid,
.semantic .ui[class*="equal width"].grid > .row,
.semantic .ui.grid > [class*="equal width"].row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.semantic .ui[class*="equal width"].grid > .column:not(.row),
.semantic .ui[class*="equal width"].grid > .row > .column,
.semantic .ui.grid > [class*="equal width"].row > .column {
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.semantic .ui[class*="equal height"].grid {
  display: table;
  table-layout: fixed;
}
.semantic .ui[class*="equal height"].grid > .row,
.semantic .ui.grid > [class*="equal height"].row {
  display: table;
  table-layout: fixed;
  width: 100% !important;
}
.semantic .ui[class*="equal height"].grid > .column:not(.row),
.semantic .ui[class*="equal height"].grid > .row > .column,
.semantic .ui.grid > [class*="equal height"].row > .column {
  display: table-cell;
}
.semantic .ui[class*="equal height"].grid,
.semantic .ui[class*="equal height"].grid > .row,
.semantic .ui.grid > [class*="equal height"].row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.semantic .ui[class*="equal height"].grid > .column:not(.row),
.semantic .ui[class*="equal height"].grid > .row > .column,
.semantic .ui.grid > [class*="equal height"].row > .column {
  display: block;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .semantic .ui.doubling.grid {
    width: 100% !important;
  }
  .semantic .ui.grid > .doubling.row,
  .semantic .ui.doubling.grid > .row {
    margin: 0em !important;
    padding: 0em !important;
  }
  .semantic .ui.grid > .doubling.row > .column,
  .semantic .ui.doubling.grid > .row > .column {
    display: inline-block !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    margin: 0em;
  }
  .semantic .ui[class*="two column"].doubling.grid > .row > .column,
  .semantic .ui[class*="two column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="two column"].doubling.row > .column {
    width: 100% !important;
  }
  .semantic .ui[class*="three column"].doubling.grid > .row > .column,
  .semantic .ui[class*="three column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="three column"].doubling.row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="four column"].doubling.grid > .row > .column,
  .semantic .ui[class*="four column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="four column"].doubling.row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="five column"].doubling.grid > .row > .column,
  .semantic .ui[class*="five column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="five column"].doubling.row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="six column"].doubling.grid > .row > .column,
  .semantic .ui[class*="six column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="six column"].doubling.row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="seven column"].doubling.grid > .row > .column,
  .semantic .ui[class*="seven column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="seven column"].doubling.row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="eight column"].doubling.grid > .row > .column,
  .semantic .ui[class*="eight column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="eight column"].doubling.row > .column {
    width: 25% !important;
  }
  .semantic .ui[class*="nine column"].doubling.grid > .row > .column,
  .semantic .ui[class*="nine column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="nine column"].doubling.row > .column {
    width: 25% !important;
  }
  .semantic .ui[class*="ten column"].doubling.grid > .row > .column,
  .semantic .ui[class*="ten column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="ten column"].doubling.row > .column {
    width: 20% !important;
  }
  .semantic .ui[class*="eleven column"].doubling.grid > .row > .column,
  .semantic .ui[class*="eleven column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="eleven column"].doubling.row > .column {
    width: 20% !important;
  }
  .semantic .ui[class*="twelve column"].doubling.grid > .row > .column,
  .semantic .ui[class*="twelve column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="twelve column"].doubling.row > .column {
    width: 16.66666667% !important;
  }
  .semantic .ui[class*="thirteen column"].doubling.grid > .row > .column,
  .semantic .ui[class*="thirteen column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="thirteen column"].doubling.row > .column {
    width: 16.66666667% !important;
  }
  .semantic .ui[class*="fourteen column"].doubling.grid > .row > .column,
  .semantic .ui[class*="fourteen column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="fourteen column"].doubling.row > .column {
    width: 14.28571429% !important;
  }
  .semantic .ui[class*="fifteen column"].doubling.grid > .row > .column,
  .semantic .ui[class*="fifteen column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="fifteen column"].doubling.row > .column {
    width: 14.28571429% !important;
  }
  .semantic .ui[class*="sixteen column"].doubling.grid > .row > .column,
  .semantic .ui[class*="sixteen column"].doubling.grid > .column,
  .semantic .ui.grid > [class*="sixteen column"].doubling.row > .column {
    width: 12.5% !important;
  }
}
@media only screen and (max-width: 767px) {
  .semantic .ui.grid > .doubling.row,
  .semantic .ui.doubling.grid > .row {
    display: block !important;
    margin: 0em !important;
    padding: 0em !important;
  }
  .semantic .ui.grid > .doubling.row > .column,
  .semantic .ui.doubling.grid > .row > .column {
    display: inline-block !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    margin: 0em !important;
  }
  .semantic .ui[class*="two column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="two column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="two column"].doubling:not(.stackable).row > .column {
    width: 100% !important;
  }
  .semantic .ui[class*="three column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="three column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="three column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="four column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="four column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="four column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="five column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="five column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="five column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="six column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="six column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="six column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="seven column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="seven column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="seven column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="eight column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="eight column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="eight column"].doubling:not(.stackable).row > .column {
    width: 50% !important;
  }
  .semantic .ui[class*="nine column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="nine column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="nine column"].doubling:not(.stackable).row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="ten column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="ten column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="ten column"].doubling:not(.stackable).row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="eleven column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="eleven column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="eleven column"].doubling:not(.stackable).row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="twelve column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="twelve column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="twelve column"].doubling:not(.stackable).row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="thirteen column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="thirteen column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="thirteen column"].doubling:not(.stackable).row > .column {
    width: 33.33333333% !important;
  }
  .semantic .ui[class*="fourteen column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="fourteen column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="fourteen column"].doubling:not(.stackable).row > .column {
    width: 25% !important;
  }
  .semantic .ui[class*="fifteen column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="fifteen column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="fifteen column"].doubling:not(.stackable).row > .column {
    width: 25% !important;
  }
  .semantic .ui[class*="sixteen column"].doubling:not(.stackable).grid > .row > .column,
  .semantic .ui[class*="sixteen column"].doubling:not(.stackable).grid > .column,
  .semantic .ui.grid > [class*="sixteen column"].doubling:not(.stackable).row > .column {
    width: 25% !important;
  }
}
@media only screen and (max-width: 767px) {
  .semantic {
    /* Don't pad inside segment or nested grid */
    /* Equal Height Stackable */
    /* Divided Stackable */
  }
  .semantic .ui.stackable.grid {
    display: block !important;
    width: auto;
    margin-left: 0em !important;
    margin-right: 0em !important;
    padding: 0em;
  }
  .semantic .ui.stackable.grid > .row > .wide.column,
  .semantic .ui.stackable.grid > .wide.column,
  .semantic .ui.stackable.grid > .column.grid > .column,
  .semantic .ui.stackable.grid > .column.row > .column,
  .semantic .ui.stackable.grid > .row > .column,
  .semantic .ui.stackable.grid > .column:not(.row) {
    display: block !important;
    width: auto !important;
    margin: 0em 0em !important;
    box-shadow: none !important;
    float: none !important;
    padding: 1rem 1rem !important;
  }
  .semantic .ui.stackable.grid > .row {
    display: block !important;
    margin: 0em;
    padding: 0em;
  }
  .semantic .ui.grid .ui.stackable.grid,
  .semantic .ui.segment:not(.vertical) .ui.stackable.page.grid {
    margin-left: -1rem !important;
    margin-right: -1rem !important;
  }
  .semantic .ui[class*="equal height"].stackable.page.grid {
    display: block !important;
  }
  .semantic .ui.stackable.divided.grid > .row:first-child > .column:first-child,
  .semantic .ui.stackable.celled.grid > .row:first-child > .column:first-child,
  .semantic .ui.stackable.divided.grid > .column:not(.row):first-child,
  .semantic .ui.stackable.celled.grid > .column:not(.row):first-child {
    border-top: none !important;
  }
  .semantic .ui.inverted.stackable.celled.grid > .column:not(.row),
  .semantic .ui.inverted.stackable.divided.grid > .column:not(.row),
  .semantic .ui.inverted.stackable.celled.grid > .row > .column,
  .semantic .ui.inverted.stackable.divided.grid > .row > .column {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }
  .semantic .ui.stackable.celled.grid > .column:not(.row),
  .semantic .ui.stackable.divided.grid > .column:not(.row),
  .semantic .ui.stackable.celled.grid > .row > .column,
  .semantic .ui.stackable.divided.grid > .row > .column {
    border-top: 1px solid rgba(39, 41, 43, 0.15);
    box-shadow: none !important;
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
}
@media only screen and (max-width: 767px) {
  .semantic .ui.tablet:not(.mobile).only.grid.grid.grid,
  .semantic .ui.grid.grid.grid > [class*="tablet only"].row:not(.mobile),
  .semantic .ui.grid.grid.grid > [class*="tablet only"].column:not(.mobile),
  .semantic .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.mobile) {
    display: none !important;
  }
  .semantic .ui[class*="computer only"].grid.grid.grid:not(.mobile),
  .semantic .ui.grid.grid.grid > [class*="computer only"].row:not(.mobile),
  .semantic .ui.grid.grid.grid > [class*="computer only"].column:not(.mobile),
  .semantic .ui.grid.grid.grid > .row > [class*="computer only"].column:not(.mobile) {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .semantic .ui[class*="mobile only"].grid.grid.grid:not(.tablet),
  .semantic .ui.grid.grid.grid > [class*="mobile only"].row:not(.tablet),
  .semantic .ui.grid.grid.grid > [class*="mobile only"].column:not(.tablet),
  .semantic .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.tablet) {
    display: none !important;
  }
  .semantic .ui[class*="computer only"].grid.grid.grid:not(.tablet),
  .semantic .ui.grid.grid.grid > [class*="computer only"].row:not(.tablet),
  .semantic .ui.grid.grid.grid > [class*="computer only"].column:not(.tablet),
  .semantic .ui.grid.grid.grid > .row > [class*="computer only"].column:not(.tablet) {
    display: none !important;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui[class*="mobile only"].grid.grid.grid:not(.computer),
  .semantic .ui.grid.grid.grid > [class*="mobile only"].row:not(.computer),
  .semantic .ui.grid.grid.grid > [class*="mobile only"].column:not(.computer),
  .semantic .ui.grid.grid.grid > .row > [class*="mobile only"].column:not(.computer) {
    display: none !important;
  }
  .semantic .ui[class*="tablet only"].grid.grid.grid:not(.computer),
  .semantic .ui.grid.grid.grid > [class*="tablet only"].row:not(.computer),
  .semantic .ui.grid.grid.grid > [class*="tablet only"].column:not(.computer),
  .semantic .ui.grid.grid.grid > .row > [class*="tablet only"].column:not(.computer) {
    display: none !important;
  }
}
.semantic .ui.grid .ui.segment.column,
.semantic .ui.page.grid.segment {
  background: #f0f0f0;
}
.semantic .ui.grid.segment > .column:not(.row) {
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 1em;
}
.semantic .ui.grid.segment > .column:not(.row):first-child {
  padding-right: 0;
}
.semantic .ui.menu {
  margin: 0 0;
  background: #ffffff;
  font-size: 0em;
  font-weight: normal;
  box-shadow: 2px solid #ffffff;
  border-radius: 0;
}
.semantic .ui.menu:after {
  content: "";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.semantic .ui.menu:first-child {
  margin-top: 0rem;
}
.semantic .ui.menu:last-child {
  margin-bottom: 0rem;
}
.semantic .ui.menu .menu {
  margin: 0em;
}
.semantic .ui.menu:not(.vertical) .menu {
  font-size: 0em;
}
.semantic .ui.menu .item {
  color: #1b6d47;
}
.semantic .ui.menu .item .item {
  color: rgba(0, 0, 0, 0.5);
}
.semantic .ui.menu .item .menu a.item:hover,
.semantic .ui.menu .item .menu .link.item:hover {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.menu .item {
  position: relative;
  display: inline-block;
  padding: 0.78571em 0.95em;
  border-top: 0em solid transparent;
  background: #cbeddd;
  vertical-align: middle;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: opacity 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  transition: opacity 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}
.semantic .ui.menu > .item:first-child {
  border-radius: 0 0px 0px 0;
}
.semantic .ui.menu:not(.vertical) .item.left,
.semantic .ui.menu:not(.vertical) .menu.left {
  float: left;
}
.semantic .ui.menu:not(.vertical) .item.right,
.semantic .ui.menu:not(.vertical) .menu.right {
  float: right;
}
.semantic .ui.menu .item:before {
  position: absolute;
  content: "";
  top: 0%;
  right: 0px;
  width: 2px;
  height: 100%;
  background: #ffffff;
}
.semantic .ui.menu > .right.menu:first-child {
  display: none;
}
.semantic .ui.menu .menu.right .item:before,
.semantic .ui.menu .item.right:before {
  right: auto;
  left: 0px;
}
.semantic .ui.menu .text.item > *,
.semantic .ui.menu .item > a:not(.ui),
.semantic .ui.menu .item > p:only-child {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
  line-height: 1.3;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.menu .item > p:first-child {
  margin-top: 0;
}
.semantic .ui.menu .item > p:last-child {
  margin-bottom: 0;
}
.semantic .ui.menu .item > i.icon {
  opacity: 0.75;
  float: none;
  margin: 0em 0.25em 0em 0em;
}
.semantic .ui.menu .item > i.dropdown.icon {
  float: right;
  margin-left: 1em;
}
.semantic .ui.menu:not(.vertical) .item > .button {
  position: relative;
  top: -0.05em;
  margin: -0.55em 0;
  padding-bottom: 0.55em;
  padding-top: 0.55em;
  font-size: 0.875em;
}
.semantic .ui.menu .item > .input {
  width: 100%;
}
.semantic .ui.menu:not(.vertical) .item > .input {
  position: relative;
  top: 0em;
  margin: -0.6em 0em;
}
.semantic .ui.menu .item > .input input {
  font-size: 1em;
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.semantic .ui.menu .item > .input .button,
.semantic .ui.menu .item > .input .label {
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.semantic .ui.small.menu .item > .input input {
  top: 0em;
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.semantic .ui.small.menu .item > .input .button,
.semantic .ui.small.menu .item > .input .label {
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.semantic .ui.large.menu .item > .input input {
  top: -0.125em;
  padding-bottom: 0.6em;
  padding-top: 0.6em;
}
.semantic .ui.large.menu .item > .input .button,
.semantic .ui.large.menu .item > .input .label {
  padding-top: 0.6em;
  padding-bottom: 0.6em;
}
.semantic .ui.menu .header.item,
.semantic .ui.vertical.menu .header.item {
  background: rgba(0, 0, 0, 0.04);
  margin: 0em;
  text-transform: normal;
  font-weight: bold;
}
.semantic .ui.menu .ui.dropdown.item.visible {
  background: rgba(0, 0, 0, 0.03);
  border-bottom-right-radius: 0em;
  border-bottom-left-radius: 0em;
}
.semantic .ui.menu .ui.dropdown.active {
  box-shadow: none;
}
.semantic .ui.menu .dropdown.item .menu {
  background: #ffffff;
  left: 0px;
  margin: 0px 0px 0px;
  min-width: -webkit-calc(100% - 1px);
  min-width: calc(100% - 1px);
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.08);
}
.semantic .ui.menu:not(.secondary) .pointing.dropdown.item .menu {
  margin-top: 0px;
  border-top-left-radius: 0em;
  border-top-right-radius: 0em;
}
.semantic .ui.menu .simple.dropdown.item .menu {
  margin: 0px !important;
}
.semantic .ui.secondary.menu > .menu > .active.dropdown.item {
  background-color: transparent;
}
.semantic .ui.secondary.menu .dropdown.item .menu {
  left: 0px;
  min-width: 100%;
}
.semantic .ui.item.menu .dropdown .menu .item {
  width: 100%;
}
.semantic .ui.menu .item > .label {
  background: rgba(0, 0, 0, 0.35);
  color: #ffffff;
  margin: -0.15em 0em -0.15em 0.5em;
  padding: 0.3em 0.8em;
  vertical-align: baseline;
}
.semantic .ui.menu .item > .floating.label {
  padding: 0.3em 0.8em;
}
.semantic .ui.menu .item > img:only-child {
  display: block;
  max-width: 100%;
  margin: 0em auto;
}
.semantic .ui.link.menu > .item:hover,
.semantic .ui.menu > .link.item:hover,
.semantic .ui.menu > a.item:hover,
.semantic .ui.link.menu .menu > .item:hover,
.semantic .ui.menu .menu > .link.item:hover,
.semantic .ui.menu .menu > a.item:hover {
  cursor: pointer;
  background: #2db475;
  color: #000000;
}
.semantic .ui.link.menu .item:active,
.semantic .ui.menu .link.item:active,
.semantic .ui.menu a.item:active {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.menu .active.item {
  background: rgba(0, 0, 0, 0.03);
  color: #000000;
  font-weight: normal;
  box-shadow: 0em 0px 0em inset;
}
.semantic .ui.menu .active.item > i.icon {
  opacity: 1;
}
.semantic .ui.vertical.menu .active.item {
  background: rgba(0, 0, 0, 0.03);
  border-radius: 0em;
  box-shadow: 0px 0em 0em inset;
}
.semantic .ui.vertical.menu > .active.item:first-child {
  border-radius: 0em 0 0em 0em;
}
.semantic .ui.vertical.menu > .active.item:last-child {
  border-radius: 0em 0em 0 0em;
}
.semantic .ui.vertical.menu > .active.item:only-child {
  border-radius: 0em 0 0 0em;
}
.semantic .ui.vertical.menu .active.item .menu .active.item {
  border-left: none;
}
.semantic .ui.vertical.menu .item .menu .active.item {
  background-color: transparent;
  box-shadow: none;
}
.semantic .ui.vertical.menu .active.item:hover,
.semantic .ui.menu .active.item:hover {
  background-color: #2db475;
}
.semantic .ui.menu .item.disabled,
.semantic .ui.menu .item.disabled:hover {
  cursor: default;
  color: rgba(40, 40, 40, 0.3);
  background-color: transparent !important;
}
.semantic .ui.vertical.menu {
  background: #ffffff;
}
.semantic .ui.vertical.menu .item {
  background: none;
  display: block;
  height: auto !important;
  border-top: none;
  border-left: 0em solid transparent;
  border-right: none;
}
.semantic .ui.vertical.menu > .item:first-child {
  border-radius: 0 0 0px 0px;
}
.semantic .ui.vertical.menu > .item:last-child {
  border-radius: 0px 0px 0 0;
}
.semantic .ui.vertical.menu .item > .label {
  float: right;
  text-align: center;
}
.semantic .ui.vertical.menu .item > i.icon {
  width: 1.18em;
  float: right;
  margin: 0em 0em 0em 0.5em;
}
.semantic .ui.vertical.menu .item > .label + i.icon {
  float: none;
  margin: 0em 0.5em 0em 0em;
}
.semantic .ui.vertical.menu .item:before {
  position: absolute;
  content: "";
  top: 0%;
  left: 0px;
  width: 100%;
  height: 2px;
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.1) 1.5em, rgba(0, 0, 0, 0.03) 100%);
  background: linear-gradient(to right, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.1) 1.5em, rgba(0, 0, 0, 0.03) 100%);
  height: 1px;
}
.semantic .ui.vertical.menu .item:first-child:before {
  background: none !important;
}
.semantic .ui.vertical.menu .dropdown.item > .icon {
  float: right;
  content: "\f0da";
  margin-left: 1em;
}
.semantic .ui.vertical.menu .active.dropdown.item {
  border-top-right-radius: 0em;
  border-bottom-right-radius: 0em;
}
.semantic .ui.vertical.menu .dropdown.item .menu {
  top: 0% !important;
  left: 100%;
  margin: 0px 0px 0px 0px;
  box-shadow: 0 1px 3px 0px rgba(0, 0, 0, 0.08);
  border-radius: 0em 0 0 0;
}
.semantic .ui.vertical.menu .dropdown.item .menu .item {
  font-size: 1rem;
}
.semantic .ui.vertical.menu .dropdown.item .menu .item i.icon {
  margin-right: 0em;
}
.semantic .ui.vertical.menu .dropdown.item.active {
  box-shadow: none;
}
.semantic .ui.vertical.menu .item:not(.dropdown) > .menu {
  margin: 0.5em -0.95em 0em;
}
.semantic .ui.vertical.menu .item:not(.dropdown) > .menu > .item {
  background: none;
  padding: 0.5rem 1.5rem;
  font-size: 0.875rem;
}
.semantic .ui.vertical.menu .item > .menu > .item:before {
  display: none;
}
.semantic .ui.tiered.menu > .menu > .item:hover {
  color: #000000;
}
.semantic .ui.tiered.menu .active.item {
  background: #fcfcfc;
}
.semantic .ui.tiered.menu > .menu .item.active:after {
  position: absolute;
  content: "";
  margin-top: -2px;
  top: 100%;
  left: 0px;
  width: 100%;
  height: 2px;
  background-color: #fcfcfc;
}
.semantic .ui.tiered.menu .sub.menu {
  background-color: #fcfcfc;
  border-radius: 0em 0em 0 0;
  border-top: 1px solid rgba(39, 41, 43, 0.15);
  box-shadow: none;
}
.semantic .ui.tiered.menu > .sub.menu > .item {
  color: rgba(0, 0, 0, 0.4);
  font-weight: normal;
  text-transform: normal;
  font-size: 0.875rem;
}
.semantic .ui.tiered.menu .sub.menu .item:before {
  background: none;
}
.semantic .ui.tiered.menu .sub.menu .item:hover {
  background: none transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.tiered.menu .sub.menu .active.item {
  padding-top: 0.78571em;
  background: none transparent;
  border-radius: 0;
  border-top: medium none;
  box-shadow: none;
  color: #000000 !important;
}
.semantic .ui.tiered.menu .sub.menu .active.item:after {
  display: none;
}
.semantic .ui.inverted.tiered.menu > .menu > .item {
  color: rgba(255, 255, 255, 0.5);
}
.semantic .ui.inverted.tiered.menu .sub.menu {
  background-color: rgba(0, 0, 0, 0.2);
}
.semantic .ui.inverted.tiered.menu .sub.menu .item {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.inverted.tiered.menu > .menu > .item:hover {
  color: #ffffff;
}
.semantic .ui.inverted.tiered.menu .active.item:after {
  display: none;
}
.semantic .ui.inverted.tiered.menu > .sub.menu > .active.item,
.semantic .ui.inverted.tiered.menu > .menu > .active.item {
  color: #ffffff !important;
  box-shadow: none;
}
.semantic .ui.pointing.tiered.menu > .menu > .item:after {
  display: none;
}
.semantic .ui.pointing.tiered.menu > .sub.menu > .item:after {
  display: block;
}
.semantic .ui.tabular.menu {
  background-color: transparent;
  border-radius: 0em;
  box-shadow: none !important;
  border-bottom: 1px solid #d4d4d5;
}
.semantic .ui.tabular.fluid.menu {
  width: -webkit-calc(100% + 2px ) !important;
  width: calc(100% + 2px) !important;
}
.semantic .ui.tabular.menu .item {
  background-color: transparent;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-top: 1px solid transparent;
  padding-left: 1.4em;
  padding-right: 1.4em;
  color: #1b6d47;
}
.semantic .ui.tabular.menu .item:before {
  display: none;
}
.semantic .ui.tabular.menu .item:hover {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.tabular.menu .active.item {
  position: relative;
  border-bottom: none;
  vertical-align: bottom;
  background-color: #ffffff;
  color: #000000;
  border-color: #d4d4d5;
  font-weight: bold;
  margin-bottom: -1px;
  box-shadow: none;
  border-radius: 5px 5px 0px 0px;
}
.semantic .ui.attached.tabular.menu {
  position: relative;
  z-index: 2;
}
.semantic .ui.tabular.menu + .bottom.attached.segment,
.semantic .ui.tabular.menu ~ .bottom.attached.segment + .bottom.attached.segment {
  border-top: none;
  margin: 0px;
}
.semantic .ui.pagination.menu {
  margin: 0em;
  display: inline-block;
  vertical-align: middle;
}
.semantic .ui.pagination.menu .item {
  min-width: 2em;
  text-align: center;
}
.semantic .ui.pagination.menu .icon.item i.icon {
  vertical-align: top;
}
.semantic .ui.pagination.menu.floated {
  display: block;
}
.semantic .ui.pagination.menu .active.item {
  border-top: none;
  padding-top: 0.78571em;
  background-color: #2db475;
  box-shadow: none;
}
.semantic .ui.secondary.menu {
  background: none;
  border-radius: 0em;
  box-shadow: none;
}
.semantic .ui.secondary.menu > .menu > .item,
.semantic .ui.secondary.menu > .item {
  box-shadow: none;
  border: none;
  height: auto !important;
  background: none;
  margin: 0em 0.25em;
  padding: 0.5em 0.8em;
  border-radius: 0.2857rem;
}
.semantic .ui.secondary.menu > .menu > .item:before,
.semantic .ui.secondary.menu > .item:before {
  display: none !important;
}
.semantic .ui.secondary.menu .item > .input input {
  background-color: transparent;
  border: none;
}
.semantic .ui.secondary.menu .link.item,
.semantic .ui.secondary.menu a.item {
  opacity: 0.8;
  -webkit-transition: none;
  transition: none;
}
.semantic .ui.secondary.menu .header.item {
  border-right: 0.1em solid rgba(0, 0, 0, 0.1);
  background: none transparent;
  border-radius: 0em;
}
.semantic .ui.secondary.menu .link.item:hover,
.semantic .ui.secondary.menu a.item:hover {
  opacity: 1;
}
.semantic .ui.secondary.menu > .menu > .active.item,
.semantic .ui.secondary.menu > .active.item {
  background: rgba(0, 0, 0, 0.05);
  opacity: 1;
  box-shadow: none;
}
.semantic .ui.secondary.vertical.menu > .active.item {
  border-radius: 0.2857rem;
}
.semantic .ui.secondary.inverted.menu .link.item,
.semantic .ui.secondary.inverted.menu a.item {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.secondary.inverted.menu .link.item:hover,
.semantic .ui.secondary.inverted.menu a.item:hover {
  color: #ffffff;
}
.semantic .ui.secondary.inverted.menu .active.item {
  background-color: rgba(255, 255, 255, 0.05);
}
.semantic .ui.secondary.item.menu > .item {
  margin: 0em;
}
.semantic .ui.secondary.attached.menu {
  box-shadow: none;
}
.semantic .ui.secondary.vertical.menu > .item {
  border: none;
  margin: 0em 0em 0.3em;
  border-radius: 0;
}
.semantic .ui.secondary.vertical.menu > .header.item {
  border-radius: 0em;
}
.semantic .ui.secondary.inverted.menu {
  background-color: transparent;
}
.semantic .ui.secondary.inverted.pointing.menu {
  border-bottom: 3px solid rgba(255, 255, 255, 0.1);
}
.semantic .ui.secondary.inverted.pointing.menu > .item {
  color: rgba(255, 255, 255, 0.7);
}
.semantic .ui.secondary.inverted.pointing.menu > .header.item {
  color: #FFFFFF !important;
}
.semantic .ui.secondary.inverted.pointing.menu > .menu > .item:hover,
.semantic .ui.secondary.inverted.pointing.menu > .item:hover {
  color: rgba(255, 255, 255, 0.85);
}
.semantic .ui.secondary.inverted.pointing.menu > .menu > .item:active,
.semantic .ui.secondary.inverted.pointing.menu > .item:active {
  border-color: rgba(255, 255, 255, 0.4);
}
.semantic .ui.secondary.inverted.pointing.menu > .menu > .item.active,
.semantic .ui.secondary.inverted.pointing.menu > .item.active {
  border-color: rgba(255, 255, 255, 0.8);
  color: #ffffff;
}
.semantic .ui.secondary.pointing.menu {
  border-bottom: 3px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.secondary.pointing.menu > .menu > .item,
.semantic .ui.secondary.pointing.menu > .item {
  margin: 0em 0em -3px;
  padding: 0.6em 0.95em;
  border-bottom: 3px solid transparent;
  border-radius: 0em;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.secondary.pointing.menu .header.item {
  margin-bottom: -3px;
  background-color: transparent !important;
  border-right-width: 0px !important;
  font-weight: bold !important;
  color: rgba(0, 0, 0, 0.85) !important;
}
.semantic .ui.secondary.pointing.menu .text.item {
  box-shadow: none !important;
}
.semantic .ui.secondary.pointing.menu > .menu > .item:after,
.semantic .ui.secondary.pointing.menu > .item:after {
  display: none;
}
.semantic .ui.secondary.pointing.menu > .menu > .link.item:hover,
.semantic .ui.secondary.pointing.menu > .link.item:hover,
.semantic .ui.secondary.pointing.menu > .menu > a.item:hover,
.semantic .ui.secondary.pointing.menu > a.item:hover {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.secondary.pointing.menu > .menu > .link.item:active,
.semantic .ui.secondary.pointing.menu > .link.item:active,
.semantic .ui.secondary.pointing.menu > .menu > a.item:active,
.semantic .ui.secondary.pointing.menu > a.item:active {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.2);
}
.semantic .ui.secondary.pointing.menu > .menu > .item.active,
.semantic .ui.secondary.pointing.menu > .item.active {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.4);
  box-shadow: none;
  color: #000000;
}
.semantic .ui.secondary.vertical.pointing.menu {
  border: none;
  border-right: 3px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.secondary.vertical.pointing.menu > .item {
  margin: 0em -3px 0em 0em;
  border-bottom: none;
  border-right: 3px solid transparent;
  border-radius: 0em;
}
.semantic .ui.secondary.vertical.pointing.menu > .item:hover {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.semantic .ui.secondary.vertical.pointing.menu > .item:active {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.2);
}
.semantic .ui.secondary.vertical.pointing.menu > .item.active {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.4);
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.secondary.inverted.vertical.pointing.menu {
  border-right: 3px solid rgba(255, 255, 255, 0.1);
  border-bottom: none;
}
.semantic .ui.text.menu {
  display: inline-block;
  background: none transparent;
  margin: 1rem -1rem;
  border-radius: 0px;
  box-shadow: none;
}
.semantic .ui.text.menu > .item {
  opacity: 0.8;
  margin: 0em 1em;
  padding: 0em;
  height: auto !important;
  border-radius: 0px;
  box-shadow: none;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.semantic .ui.text.menu > .item:before {
  display: none !important;
}
.semantic .ui.text.menu .header.item {
  background-color: transparent;
  opacity: 1;
  color: rgba(50, 50, 50, 0.8);
  font-size: 0.875rem;
  padding: 0em;
  text-transform: uppercase;
  font-weight: bold;
}
.semantic .ui.text.menu .text.item {
  opacity: 1;
  color: rgba(50, 50, 50, 0.8);
  font-weight: bold;
}
.semantic .ui.text.item.menu .item {
  margin: 0em;
}
.semantic .ui.vertical.text.menu {
  margin: 1rem 0em;
}
.semantic .ui.vertical.text.menu:first-child {
  margin-top: 0rem;
}
.semantic .ui.vertical.text.menu:last-child {
  margin-bottom: 0rem;
}
.semantic .ui.vertical.text.menu .item {
  float: left;
  clear: left;
  margin: 0.5em 0em;
}
.semantic .ui.vertical.text.menu .item > i.icon {
  float: none;
  margin: 0em 0.78571em 0em 0em;
}
.semantic .ui.vertical.text.menu .header.item {
  margin: 0.8em 0em;
}
.semantic .ui.text.menu .item:hover {
  opacity: 1;
  background-color: transparent;
}
.semantic .ui.text.menu .active.item {
  background-color: transparent;
  padding: 0em;
  border: none;
  opacity: 1;
  font-weight: bold;
  box-shadow: none;
}
.semantic .ui.text.pointing.menu .active.item:after {
  box-shadow: none;
}
.semantic .ui.text.attached.menu {
  box-shadow: none;
}
.semantic .ui.inverted.text.menu,
.semantic .ui.inverted.text.menu .item,
.semantic .ui.inverted.text.menu .item:hover,
.semantic .ui.inverted.text.menu .item.active {
  background-color: transparent;
}
.semantic .ui.fluid.text.menu {
  margin-left: 0em;
  margin-right: 0em;
}
.semantic .ui.icon.menu,
.semantic .ui.vertical.icon.menu {
  width: auto;
  display: inline-block;
  height: auto;
}
.semantic .ui.icon.menu > .item {
  height: auto;
  text-align: center;
  color: rgba(0, 0, 0, 0.6);
}
.semantic .ui.icon.menu > .item > .icon {
  display: block;
  float: none !important;
  margin: 0em auto !important;
  opacity: 1;
}
.semantic .ui.icon.menu .icon:before {
  opacity: 1;
}
.semantic .ui.menu .icon.item .icon {
  margin: 0em;
}
.semantic .ui.vertical.icon.menu {
  float: none;
}
.semantic .ui.inverted.icon.menu .item {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.inverted.icon.menu .icon {
  color: #ffffff;
}
.semantic .ui.labeled.icon.menu {
  text-align: center;
}
.semantic .ui.fluid.labeled.icon.menu > .item {
  min-width: 0em;
}
.semantic .ui.labeled.icon.menu > .item {
  min-width: 6em;
}
.semantic .ui.labeled.icon.menu > .item > .icon {
  display: block;
  font-size: 1.5em !important;
  margin: 0em auto 0.5em !important;
}
.semantic .ui.menu .blue.active.item,
.semantic .ui.blue.menu .active.item {
  border-color: #3b83c0 !important;
  color: #3b83c0 !important;
}
.semantic .ui.menu .green.active.item,
.semantic .ui.green.menu .active.item {
  border-color: #2db475 !important;
  color: #2db475 !important;
}
.semantic .ui.menu .orange.active.item,
.semantic .ui.orange.menu .active.item {
  border-color: #e07b53 !important;
  color: #e07b53 !important;
}
.semantic .ui.menu .pink.active.item,
.semantic .ui.pink.menu .active.item {
  border-color: #d9499a !important;
  color: #d9499a !important;
}
.semantic .ui.menu .purple.active.item,
.semantic .ui.purple.menu .active.item {
  border-color: #564f8a !important;
  color: #564f8a !important;
}
.semantic .ui.menu .red.active.item,
.semantic .ui.red.menu .active.item {
  border-color: #cc181e !important;
  color: #cc181e !important;
}
.semantic .ui.menu .teal.active.item,
.semantic .ui.teal.menu .active.item {
  border-color: #00b5ad !important;
  color: #00b5ad !important;
}
.semantic .ui.menu .yellow.active.item,
.semantic .ui.yellow.menu .active.item {
  border-color: #f2c61f !important;
  color: #f2c61f !important;
}
.semantic .ui.inverted.menu {
  background: #1b1c1d;
  box-shadow: none;
}
.semantic .ui.inverted.menu .header.item {
  margin: 0em;
  background: rgba(0, 0, 0, 0.3);
  box-shadow: none;
}
.semantic .ui.inverted.menu .item,
.semantic .ui.inverted.menu .item > a:not(.ui) {
  color: #ffffff;
}
.semantic .ui.inverted.menu .item:not(.dropdown).menu {
  background: transparent;
}
.semantic .ui.inverted.menu .item .item,
.semantic .ui.inverted.menu .item .item > a:not(.ui) {
  color: rgba(255, 255, 255, 0.5);
}
.semantic .ui.inverted.menu .dropdown .menu .item {
  color: rgba(0, 0, 0, 0.8) !important;
  -webkit-transition: none;
  transition: none;
}
.semantic .ui.inverted.menu .dropdown .menu .item:hover {
  background: rgba(0, 0, 0, 0.05) !important;
  color: rgba(0, 0, 0, 0.85) !important;
}
.semantic .ui.inverted.menu .item.disabled,
.semantic .ui.inverted.menu .item.disabled:hover {
  color: rgba(225, 225, 225, 0.3);
}
.semantic .ui.inverted.menu .item:before {
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%);
  background: linear-gradient(rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%);
}
.semantic .ui.vertical.inverted.menu .item:before {
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%);
}
.semantic .ui.link.inverted.menu .item:hover,
.semantic .ui.inverted.menu .link.item:hover,
.semantic .ui.inverted.menu a.item:hover,
.semantic .ui.inverted.menu .dropdown.item:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.semantic .ui.inverted.menu .item .menu a.item:hover,
.semantic .ui.inverted.menu .item .menu .link.item:hover {
  background: transparent;
  color: #ffffff;
}
.semantic .ui.inverted.menu a.item:active,
.semantic .ui.inverted.menu .dropdown.item:active,
.semantic .ui.inverted.menu .link.item:active,
.semantic .ui.inverted.menu a.item:active {
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
}
.semantic .ui.inverted.menu .active.item {
  box-shadow: none !important;
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff !important;
}
.semantic .ui.inverted.vertical.menu .item .menu .active.item {
  background: transparent;
  color: #ffffff;
}
.semantic .ui.inverted.pointing.menu .active.item:after {
  background: #5B5B5B;
  box-shadow: none;
}
.semantic .ui.inverted.pointing.menu .active.item:hover:after {
  background: #4A4A4A;
}
.semantic .ui.selection.menu > .item {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.selection.menu > .item:hover {
  color: rgba(0, 0, 0, 0.6);
}
.semantic .ui.selection.menu > .item.active {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.inverted.selection.menu > .item {
  color: rgba(255, 255, 255, 0.4);
}
.semantic .ui.inverted.selection.menu > .item:hover {
  color: rgba(255, 255, 255, 0.9);
}
.semantic .ui.inverted.selection.menu > .item.active {
  color: #FFFFFF;
}
.semantic .ui.floated.menu {
  float: left;
  margin: 0rem 0.5rem 0rem 0rem;
}
.semantic .ui.right.floated.menu {
  float: right;
  margin: 0rem 0rem 0rem 0.5rem;
}
.semantic .ui.grey.menu {
  background-color: #fafafa;
}
.semantic .ui.inverted.blue.menu {
  background-color: #3b83c0;
}
.semantic .ui.inverted.blue.pointing.menu .active.item:after {
  background-color: #3b83c0;
}
.semantic .ui.inverted.green.menu {
  background-color: #2db475;
}
.semantic .ui.inverted.green.pointing.menu .active.item:after {
  background-color: #2db475;
}
.semantic .ui.inverted.orange.menu {
  background-color: #e07b53;
}
.semantic .ui.inverted.orange.pointing.menu .active.item:after {
  background-color: #e07b53;
}
.semantic .ui.inverted.pink.menu {
  background-color: #d9499a;
}
.semantic .ui.inverted.pink.pointing.menu .active.item:after {
  background-color: #d9499a;
}
.semantic .ui.inverted.purple.menu {
  background-color: #564f8a;
}
.semantic .ui.inverted.purple.pointing.menu .active.item:after {
  background-color: #564f8a;
}
.semantic .ui.inverted.red.menu {
  background-color: #cc181e;
}
.semantic .ui.inverted.red.pointing.menu .active.item:after {
  background-color: #cc181e;
}
.semantic .ui.inverted.teal.menu {
  background-color: #00b5ad;
}
.semantic .ui.inverted.teal.pointing.menu .active.item:after {
  background-color: #00b5ad;
}
.semantic .ui.inverted.yellow.menu {
  background-color: #f2c61f;
}
.semantic .ui.inverted.yellow.pointing.menu .active.item:after {
  background-color: #f2c61f;
}
.semantic .ui.fitted.menu .item,
.semantic .ui.fitted.menu .item .menu .item,
.semantic .ui.menu .fitted.item {
  padding: 0em;
}
.semantic .ui.horizontally.fitted.menu .item,
.semantic .ui.horizontally.fitted.menu .item .menu .item,
.semantic .ui.menu .horizontally.fitted.item {
  padding-top: 0.78571em;
  padding-bottom: 0.78571em;
}
.semantic .ui.vertically.fitted.menu .item,
.semantic .ui.vertically.fitted.menu .item .menu .item,
.semantic .ui.menu .vertically.fitted.item {
  padding-left: 0.95em;
  padding-right: 0.95em;
}
.semantic .ui.borderless.menu .item:before,
.semantic .ui.borderless.menu .item .menu .item:before,
.semantic .ui.menu .borderless.item:before {
  background: none !important;
}
.semantic .ui.compact.menu {
  display: inline-block;
  margin: 0em;
  vertical-align: middle;
}
.semantic .ui.compact.vertical.menu {
  width: auto !important;
}
.semantic .ui.compact.vertical.menu .item:last-child::before {
  display: block;
}
.semantic .ui.menu.fluid,
.semantic .ui.vertical.menu.fluid {
  display: block;
  width: 100% !important;
}
.semantic .ui.item.menu,
.semantic .ui.item.menu .item {
  width: 100%;
  padding-left: 0px !important;
  padding-right: 0px !important;
  text-align: center;
}
.semantic .ui.menu.two.item .item {
  width: 50%;
}
.semantic .ui.menu.three.item .item {
  width: 33.333%;
}
.semantic .ui.menu.four.item .item {
  width: 25%;
}
.semantic .ui.menu.five.item .item {
  width: 20%;
}
.semantic .ui.menu.six.item .item {
  width: 16.666%;
}
.semantic .ui.menu.seven.item .item {
  width: 14.285%;
}
.semantic .ui.menu.eight.item .item {
  width: 12.5%;
}
.semantic .ui.menu.nine.item .item {
  width: 11.11%;
}
.semantic .ui.menu.ten.item .item {
  width: 10%;
}
.semantic .ui.menu.eleven.item .item {
  width: 9.09%;
}
.semantic .ui.menu.twelve.item .item {
  width: 8.333%;
}
.semantic .ui.menu.fixed {
  position: fixed;
  z-index: 101;
  margin: 0em;
  border: none;
  width: 100%;
}
.semantic .ui.menu.fixed,
.semantic .ui.menu.fixed .item:first-child,
.semantic .ui.menu.fixed .item:last-child {
  border-radius: 0px !important;
}
.semantic .ui.fixed.menu,
.semantic .ui.top.fixed.menu {
  top: 0px;
  left: 0px;
  right: auto;
  bottom: auto;
}
.semantic .ui.right.fixed.menu {
  top: 0px;
  right: 0px;
  left: auto;
  bottom: auto;
  width: auto;
  height: 100%;
}
.semantic .ui.bottom.fixed.menu {
  bottom: 0px;
  left: 0px;
  top: auto;
  right: auto;
}
.semantic .ui.left.fixed.menu {
  top: 0px;
  left: 0px;
  right: auto;
  bottom: auto;
  width: auto;
  height: 100%;
}
.semantic .ui.fixed.menu + .ui.grid {
  padding-top: 2.75rem;
}
.semantic .ui.pointing.menu .active.item:after {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  margin: 0em;
  background: none;
  width: 0.6em;
  height: 0.6em;
  border: none;
  border-bottom: 1px solid #d4d4d5;
  border-right: 1px solid #d4d4d5;
  z-index: 11;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.semantic .ui.pointing.menu .active.item .menu .active.item:after {
  display: none;
}
.semantic .ui.vertical.pointing.menu .active.item:after {
  position: absolute;
  top: 50%;
  right: 0%;
  bottom: auto;
  left: auto;
  -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
  -ms-transform: translateX(50%) translateY(-50%) rotate(45deg);
  transform: translateX(50%) translateY(-50%) rotate(45deg);
  margin: 0em -1px 0em 0em;
  border: none;
  border-top: 1px solid #d4d4d5;
  border-right: 1px solid #d4d4d5;
}
.semantic .ui.pointing.menu .active.item:hover:after {
  background-color: #fafafa;
}
.semantic .ui.pointing.menu .active.item:after {
  background-color: #f7f7f7;
}
.semantic .ui.vertical.pointing.menu .item:hover:after {
  background-color: #fafafa;
}
.semantic .ui.vertical.pointing.menu .active.item:after {
  background-color: #f7f7f7;
}
.semantic .ui.vertical.pointing.menu .menu .active.item:after {
  background-color: #ffffff;
}
.semantic .ui.menu.attached {
  margin: 0rem;
  border-radius: 0px;
  /* avoid rgba multiplying */
  box-shadow: 0px 0px 0px 1px #dddddd;
}
.semantic .ui.top.attached.menu {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.menu.bottom.attached {
  border-radius: 0em 0em 0 0;
}
.semantic .ui.small.menu .item {
  font-size: 0.875rem;
}
.semantic .ui.small.vertical.menu {
  width: 13rem;
}
.semantic .ui.menu .item {
  font-size: 1rem;
}
.semantic .ui.vertical.menu {
  width: 15rem;
}
.semantic .ui.large.menu .item {
  font-size: 1.125rem;
}
.semantic .ui.large.menu .item .item {
  font-size: 0.875rem;
}
.semantic .ui.large.menu .dropdown .item {
  font-size: 1rem;
}
.semantic .ui.large.vertical.menu {
  width: 18rem;
}
.semantic .ui.menu {
  z-index: 2;
}
.semantic .ui.menu .item {
  color: #1b6d47;
  text-transform: uppercase;
}
.semantic .ui.sidebar.menu .item {
  color: #858686;
}
.semantic .ui.menu .capitalized.item {
  text-transform: capitalize;
}
.semantic nav.ui.menu .item {
  min-width: 2em;
  text-align: center;
  padding: 1.5em 0;
}
.semantic nav.ui.inverted.menu .item {
  padding: 0.78571em 0.95em;
}
.semantic nav.ui.menu .active.item {
  border-top: none;
  background-color: #2db475;
  box-shadow: none;
}
.semantic nav.ui.inverted.menu {
  text-align: center;
}
.semantic .ui.inverted.menu .item,
.semantic .ui.inverted.menu .item > a:not(.ui) {
  background: none;
}
.semantic a.brand.item.left.aligned {
  max-width: 10.8em;
  padding: 0.25em;
}
.semantic .pvr {
  max-height: 100vh;
}
.semantic #main-menu {
  font-weight: 700;
}
.semantic .ui.pagination.menu {
  background: #f0f0f0;
  width: 100%;
  text-align: center;
}
.semantic .ui.pagination.menu .item:before {
  display: none;
}
.semantic .ui.grid.segment:first-child {
  margin-top: 0;
}
.semantic .ui.pagination.menu .item {
  background: #f0f0f0;
  padding: 1em;
  font-size: 0.9rem;
}
.semantic .ui.pagination.menu .item.active {
  color: #1b1c1d;
}
.semantic .ui.pagination.menu .item:hover {
  color: #1b1c1d;
}
.semantic .ui.link.menu > .item:hover,
.semantic .ui.menu > .link.item:hover,
.semantic .ui.menu > a.item:hover,
.semantic .ui.link.menu .menu > .item:hover,
.semantic .ui.menu .menu > .link.item:hover,
.semantic .ui.menu .menu > a.item:hover {
  cursor: pointer;
  background: #2db475;
  color: #000000;
}
.semantic .ui.message {
  position: relative;
  min-height: 1em;
  margin: 1em 0em;
  background: #efefef;
  padding: 1em 1.5em;
  line-height: 1.3;
  color: rgba(0, 0, 0, 0.8);
  -webkit-transition: opacity 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  transition: opacity 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  border-radius: 0;
  box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset, 0px 0px 0px 0px transparent;
}
.semantic .ui.message:first-child {
  margin-top: 0em;
}
.semantic .ui.message:last-child {
  margin-bottom: 0em;
}
.semantic .ui.message .header {
  display: block;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-weight: bold;
  margin: 0em 0em 0.5rem 0em;
}
.semantic .ui.message .header:not(.ui) {
  font-size: 1.1em;
}
.semantic .ui.message p {
  opacity: 0.85;
  margin: 0.75em 0em;
}
.semantic .ui.message p:first-child {
  margin-top: 0em;
}
.semantic .ui.message p:last-child {
  margin-bottom: 0em;
}
.semantic .ui.message .header + p {
  margin-top: 0.25em;
}
.semantic .ui.message ul.list {
  opacity: 0.85;
  list-style-position: inside;
  margin: 0.5em 0em 0em;
  padding: 0em;
}
.semantic .ui.message ul.list:first-child {
  margin-top: 0em;
}
.semantic .ui.message ul.list:last-child {
  margin-bottom: 0em;
}
.semantic .ui.message ul.list li {
  position: relative;
  list-style-type: none;
  margin: 0em 0em 0.3em 1em;
  padding: 0em;
}
.semantic .ui.message ul.list li:before {
  position: absolute;
  content: "•";
  left: -1em;
  height: 100%;
  vertical-align: baseline;
}
.semantic .ui.message ul.list li:last-child {
  margin-bottom: 0em;
}
.semantic .ui.message > .icon {
  margin-right: 0.6em;
}
.semantic .ui.message > .close.icon {
  cursor: pointer;
  position: absolute;
  margin: 0em;
  top: 1.15em;
  right: 0.5em;
  opacity: 0.7;
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}
.semantic .ui.message > .close.icon:hover {
  opacity: 1;
}
.semantic .ui.message > :first-child {
  margin-top: 0em;
}
.semantic .ui.message > :last-child {
  margin-bottom: 0em;
}
.semantic .ui.visible.visible.visible.visible.message {
  display: block;
}
.semantic .ui.icon.visible.visible.visible.visible.message {
  display: table;
}
.semantic .ui.hidden.hidden.hidden.hidden.message {
  display: none;
}
.semantic .ui.compact.message {
  display: inline-block;
}
.semantic .ui.attached.message {
  margin-bottom: -1px;
  border-radius: 0 0 0em 0em;
  box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset;
  margin-left: -1px;
  margin-right: -1px;
}
.semantic .ui.attached + .ui.attached.message:not(.top):not(.bottom) {
  margin-top: -1px;
  border-radius: 0em;
}
.semantic .ui.bottom.attached.message {
  margin-top: -1px;
  border-radius: 0em 0em 0 0;
  box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.bottom.attached.message:not(:last-child) {
  margin-bottom: 1em;
}
.semantic .ui.attached.icon.message {
  display: block;
  width: auto;
}
.semantic .ui.icon.message {
  display: table;
  width: 100%;
}
.semantic .ui.icon.message > .icon:not(.close) {
  display: table-cell;
  width: auto;
  vertical-align: middle;
  font-size: 3em;
  opacity: 0.8;
}
.semantic .ui.icon.message > .content {
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}
.semantic .ui.icon.message .icon:not(.close) + .content {
  padding-left: 1.5rem;
}
.semantic .ui.icon.message .circular.icon {
  width: 1em;
}
.semantic .ui.icon.message .circular.icon + .content {
  width: auto;
  padding-left: 2em;
}
.semantic .ui.floating.message {
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.15), 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset;
}
.semantic .ui.black.message {
  background-color: #1b1c1d;
  color: #ffffff;
}
.semantic .ui.positive.message {
  background-color: #eeffe7;
  color: #3c763d;
}
.semantic .ui.positive.message,
.semantic .ui.attached.positive.message {
  box-shadow: 0px 0px 0px 1px #b7caa7 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.positive.message .header {
  color: #356e36;
}
.semantic .ui.negative.message {
  background-color: #fff0f0;
  color: #a94442;
}
.semantic .ui.negative.message,
.semantic .ui.attached.negative.message {
  box-shadow: 0px 0px 0px 1px #dbb1b1 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.negative.message .header {
  color: #912d2b;
}
.semantic .ui.info.message {
  background-color: #e9faff;
  color: #337b92;
}
.semantic .ui.info.message,
.semantic .ui.attached.info.message {
  box-shadow: 0px 0px 0px 1px #aad6df inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.info.message .header {
  color: #297187;
}
.semantic .ui.warning.message {
  background-color: #fffbe6;
  color: #876a38;
}
.semantic .ui.warning.message,
.semantic .ui.attached.warning.message {
  box-shadow: 0px 0px 0px 1px #d9caab inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.warning.message .header {
  color: #825c01;
}
.semantic .ui.error.message {
  background-color: #fff0f0;
  color: #a94442;
}
.semantic .ui.error.message,
.semantic .ui.attached.error.message {
  box-shadow: 0px 0px 0px 1px #dbb1b1 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.error.message .header {
  color: #912d2b;
}
.semantic .ui.success.message {
  background-color: #eeffe7;
  color: #3c763d;
}
.semantic .ui.success.message,
.semantic .ui.attached.success.message {
  box-shadow: 0px 0px 0px 1px #b7caa7 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.semantic .ui.success.message .header {
  color: #356e36;
}
.semantic .ui.inverted.message,
.semantic .ui.black.message {
  background-color: #1b1c1d;
  color: #ffffff;
}
.semantic .ui.blue.message {
  background-color: #dff0ff;
  color: #3b83c0;
}
.semantic .ui.blue.message .header {
  color: #3576ac;
}
.semantic .ui.green.message {
  background-color: #ebffed;
  color: #1ebc30;
}
.semantic .ui.green.message .header {
  color: #1aa62a;
}
.semantic .ui.orange.message {
  background-color: #ffedde;
  color: #e07b53;
}
.semantic .ui.orange.message .header {
  color: #dc6a3d;
}
.semantic .ui.pink.message {
  background-color: #ffe3fb;
  color: #d9499a;
}
.semantic .ui.pink.message .header {
  color: #d5348e;
}
.semantic .ui.purple.message {
  background-color: #eae7ff;
  color: #564f8a;
}
.semantic .ui.purple.message .header {
  color: #4c467a;
}
.semantic .ui.red.message {
  background-color: #ffe8e6;
  color: #cc181e;
}
.semantic .ui.red.message .header {
  color: #b5151b;
}
.semantic .ui.teal.message {
  background-color: #e9ffff;
  color: #10a3a3;
}
.semantic .ui.teal.message .header {
  color: #0e8c8c;
}
.semantic .ui.yellow.message {
  background-color: #fff8db;
  color: #b58105;
}
.semantic .ui.yellow.message .header {
  color: #9c6f04;
}
.semantic .ui.small.message {
  font-size: 0.92857143em;
}
.semantic .ui.message {
  font-size: 1em;
}
.semantic .ui.large.message {
  font-size: 1.14285714em;
}
.semantic .ui.huge.message {
  font-size: 1.42857143em;
}
.semantic .ui.massive.message {
  font-size: 1.71428571em;
}
.semantic .ui.table {
  width: 100%;
  background: #ffffff;
  margin: 1em 0em;
  border: 1px solid #d0d0d0;
  box-shadow: none;
  border-radius: 0;
  color: rgba(0, 0, 0, 0.8);
  border-collapse: separate;
  border-spacing: 0px;
}
.semantic .ui.table:first-child {
  margin-top: 0em;
}
.semantic .ui.table:last-child {
  margin-bottom: 0em;
}
.semantic .ui.table th,
.semantic .ui.table td {
  -webkit-transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.semantic .ui.table thead {
  box-shadow: none;
}
.semantic .ui.table thead th {
  cursor: auto;
  background: #f0f0f0;
  text-align: left;
  color: rgba(0, 0, 0, 0.8);
  padding: 0.7em 0.8em;
  vertical-align: middle;
  font-style: none;
  font-weight: bold;
  text-transform: none;
  border-bottom: 1px solid #d4d4d5;
  border-left: none;
}
.semantic .ui.table thead tr > th:first-child {
  border-left: none;
}
.semantic .ui.table thead tr:first-child > th:first-child {
  border-radius: 0 0em 0em 0em;
}
.semantic .ui.table thead tr:first-child > th:last-child {
  border-radius: 0em 0 0em 0em;
}
.semantic .ui.table thead tr:first-child > th:only-child {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.table tfoot {
  box-shadow: none;
}
.semantic .ui.table tfoot th {
  cursor: auto;
  border-top: 1px solid #d4d4d5;
  background: #ffffff;
  text-align: left;
  color: rgba(0, 0, 0, 0.8);
  padding: 0.7em 0.8em;
  vertical-align: middle;
  font-style: normal;
  font-weight: normal;
  text-transform: none;
}
.semantic .ui.table tfoot tr > th:first-child {
  border-left: none;
}
.semantic .ui.table tfoot tr:first-child > th:first-child {
  border-radius: 0em 0em 0em 0;
}
.semantic .ui.table tfoot tr:first-child > th:last-child {
  border-radius: 0em 0em 0 0em;
}
.semantic .ui.table tfoot tr:first-child > th:only-child {
  border-radius: 0em 0em 0 0;
}
.semantic .ui.table tr td {
  border-top: 1px solid #d4d4d5;
}
.semantic .ui.table tr:first-child td {
  border-top: none;
}
.semantic .ui.table td {
  padding: 0.7em 0.8em;
  text-align: left;
  vertical-align: middle;
}
.semantic .ui.table > .icon {
  vertical-align: baseline;
}
.semantic .ui.table > .icon:only-child {
  margin: 0em;
}
.semantic .ui.table.segment {
  padding: 0em;
}
.semantic .ui.table.segment:after {
  display: none;
}
.semantic .ui.table.segment.stacked:after {
  display: block;
}
@media only screen and (max-width: 767px) {
  .semantic {
    /* Clear BG Colors */
    /* Definition Table */
  }
  .semantic .ui.table:not(.unstackable) {
    width: 100%;
  }
  .semantic .ui.table:not(.unstackable) tbody,
  .semantic .ui.table:not(.unstackable) tr,
  .semantic .ui.table:not(.unstackable) tr > th,
  .semantic .ui.table:not(.unstackable) tr > td {
    width: auto !important;
    display: block !important;
  }
  .semantic .ui.table:not(.unstackable) {
    padding: 0em;
  }
  .semantic .ui.table:not(.unstackable) thead {
    display: block;
  }
  .semantic .ui.table:not(.unstackable) tfoot {
    display: block;
  }
  .semantic .ui.table:not(.unstackable) tr > th,
  .semantic .ui.table:not(.unstackable) tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em;
    box-shadow: none !important;
  }
  .semantic .ui.table:not(.unstackable) th:first-child,
  .semantic .ui.table:not(.unstackable) td:first-child {
    font-weight: bold;
    padding-top: 1em;
  }
  .semantic .ui.table:not(.unstackable) th:last-child,
  .semantic .ui.table:not(.unstackable) td:last-child {
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
    padding-bottom: 1em;
  }
  .semantic .ui.table:not(.unstackable) tr > td.warning,
  .semantic .ui.table:not(.unstackable) tr > td.error,
  .semantic .ui.table:not(.unstackable) tr > td.active,
  .semantic .ui.table:not(.unstackable) tr > td.positive,
  .semantic .ui.table:not(.unstackable) tr > td.negative {
    background-color: transparent !important;
  }
  .semantic .ui.definition.table:not(.unstackable) thead th:first-child {
    box-shadow: none !important;
  }
  .semantic .ui.definition.table:not(.unstackable) tr td:first-child {
    padding-bottom: 1em;
  }
  .semantic .ui.definition.table:not(.unstackable) tr td:nth-child(n+2) {
    padding-top: 1em;
  }
}
.semantic .ui.table th .image,
.semantic .ui.table th .image img,
.semantic .ui.table td .image,
.semantic .ui.table td .image img {
  max-width: none;
}
.semantic .ui.structured.table {
  border-collapse: collapse;
}
.semantic .ui.structured.table thead th {
  border-left: none;
  border-right: none;
}
.semantic .ui.structured.sortable.table thead th {
  border-left: 1px solid #d0d0d0;
  border-right: 1px solid #d0d0d0;
}
.semantic .ui.structured.basic.table th {
  border-left: none;
  border-right: none;
}
.semantic .ui.structured.celled.table tr th,
.semantic .ui.structured.celled.table tr td {
  border-left: 1px solid #d4d4d5;
  border-right: 1px solid #d4d4d5;
}
.semantic .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;
}
.semantic .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;
}
.semantic .ui.celled.definition.table thead:not(.full-width) th:first-child {
  box-shadow: 0px -1px 0px 1px #ffffff;
}
.semantic .ui.celled.definition.table tfoot:not(.full-width) th:first-child {
  box-shadow: 0px 1px 0px 1px #ffffff;
}
.semantic .ui.definition.table tr td:first-child {
  background: rgba(0, 0, 0, 0.03);
  font-weight: bold;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.definition.table thead:not(.full-width) th:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.definition.table tfoot:not(.full-width) th:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.definition.table td:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.table tr.positive,
.semantic .ui.table td.positive {
  box-shadow: 0px 0px 0px #b7caa7 inset;
}
.semantic .ui.table tr.positive td,
.semantic .ui.table td.positive {
  background: #eeffe7 !important;
  color: #3c763d !important;
}
.semantic .ui.celled.table tr.positive:hover td,
.semantic .ui.celled.table tr:hover td.positive {
  background: #e3ffd8 !important;
  color: #376c38 !important;
}
.semantic .ui.table tr.negative,
.semantic .ui.table td.negative {
  box-shadow: 0px 0px 0px #dbb1b1 inset;
}
.semantic .ui.table tr.negative td,
.semantic .ui.table td.negative {
  background: #fff0f0 !important;
  color: #cd2929 !important;
}
.semantic .ui.celled.table tr.negative:hover td,
.semantic .ui.celled.table tr:hover td.negative {
  background: #ffe1e1 !important;
  color: #c02626 !important;
}
.semantic .ui.table tr.error,
.semantic .ui.table td.error {
  box-shadow: 0px 0px 0px #dbb1b1 inset;
}
.semantic .ui.table tr.error td,
.semantic .ui.table td.error {
  background: #fff0f0 !important;
  color: #cd2929 !important;
}
.semantic .ui.celled.table tr.error:hover td,
.semantic .ui.celled.table tr:hover td.error {
  background: #ffe1e1 !important;
  color: #c02626 !important;
}
.semantic .ui.table tr.warning,
.semantic .ui.table td.warning {
  box-shadow: 0px 0px 0px #d9caab inset;
}
.semantic .ui.table tr.warning td,
.semantic .ui.table td.warning {
  background: #fffbe6 !important;
  color: #7d6c00 !important;
}
.semantic .ui.celled.table tr.warning:hover td,
.semantic .ui.celled.table tr:hover td.warning {
  background: #fff9d7 !important;
  color: #6e5f00 !important;
}
.semantic .ui.table tr.active,
.semantic .ui.table td.active {
  box-shadow: 0px 0px 0px rgba(50, 50, 50, 0.9) inset;
}
.semantic .ui.table tr.active td,
.semantic .ui.table td.active {
  background: #e0e0e0 !important;
  color: rgba(50, 50, 50, 0.9) !important;
}
.semantic .ui.celled.table tr.active:hover td,
.semantic .ui.celled.table tr:hover td.active {
  background: #e0e0e0 !important;
  color: rgba(50, 50, 50, 0.9) !important;
}
.semantic .ui.table tr.disabled td,
.semantic .ui.table tr td.disabled,
.semantic .ui.table tr.disabled:hover td,
.semantic .ui.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(40, 40, 40, 0.3);
}
@media only screen and (max-width: 991px) {
  .semantic {
    /* Clear BG Colors */
    /* Definition Table */
  }
  .semantic .ui[class*="tablet stackable"].table,
  .semantic .ui[class*="tablet stackable"].table tbody,
  .semantic .ui[class*="tablet stackable"].table tr,
  .semantic .ui[class*="tablet stackable"].table tr > th,
  .semantic .ui[class*="tablet stackable"].table tr > td {
    width: 100% !important;
    display: block !important;
  }
  .semantic .ui[class*="tablet stackable"].table {
    padding: 0em;
  }
  .semantic .ui[class*="tablet stackable"].table thead {
    display: block;
  }
  .semantic .ui[class*="tablet stackable"].table tfoot {
    display: block;
  }
  .semantic .ui[class*="tablet stackable"].table tr > th,
  .semantic .ui[class*="tablet stackable"].table tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em;
    box-shadow: none !important;
  }
  .semantic .ui[class*="tablet stackable"].table th:first-child,
  .semantic .ui[class*="tablet stackable"].table td:first-child {
    font-weight: bold;
    padding-top: 1em;
  }
  .semantic .ui[class*="tablet stackable"].table th:last-child,
  .semantic .ui[class*="tablet stackable"].table td:last-child {
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
    padding-bottom: 1em;
  }
  .semantic .ui[class*="tablet stackable"].table tr > td.warning,
  .semantic .ui[class*="tablet stackable"].table tr > td.error,
  .semantic .ui[class*="tablet stackable"].table tr > td.active,
  .semantic .ui[class*="tablet stackable"].table tr > td.positive,
  .semantic .ui[class*="tablet stackable"].table tr > td.negative {
    background-color: transparent !important;
  }
  .semantic .ui.definition[class*="tablet stackable"].table thead th:first-child {
    box-shadow: none !important;
  }
  .semantic .ui.definition[class*="tablet stackable"].table tr td:first-child {
    padding-bottom: 1em;
  }
  .semantic .ui.definition[class*="tablet stackable"].table tr td:nth-child(n+2) {
    padding-top: 1em;
  }
}
.semantic .ui.table[class*="left aligned"],
.semantic .ui.table [class*="left aligned"] {
  text-align: left;
}
.semantic .ui.table[class*="center aligned"],
.semantic .ui.table [class*="center aligned"] {
  text-align: center;
}
.semantic .ui.table[class*="right aligned"],
.semantic .ui.table [class*="right aligned"] {
  text-align: right;
}
.semantic .ui.table th.collapsing,
.semantic .ui.table td.collapsing {
  width: 1px;
  white-space: nowrap;
}
.semantic .ui.attached.table {
  width: -webkit-calc(100% + 2px );
  width: calc(100% + 2px);
  margin: 0em -1px;
  border-radius: 0px;
  box-shadow: none;
}
.semantic .ui[class*="top attached"].table {
  margin-top: 1em 0em;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.table[class*="top attached"]:first-child {
  margin-top: 0em;
}
.semantic .ui.table[class*="bottom attached"] {
  margin-top: 0em;
  margin-bottom: 1em 0em;
  border-radius: 0em 0em 0 0;
}
.semantic .ui.table[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}
.semantic .ui.striped.table > tr:nth-child(2n),
.semantic .ui.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 50, 0.03);
}
.semantic .ui.inverted.striped.table > tr:nth-child(2n),
.semantic .ui.inverted.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(255, 255, 255, 0.06);
}
.semantic .ui.black.table {
  border-top: 0.2em solid #1b1c1d;
}
.semantic .ui.blue.table {
  border-top: 0.2em solid #3b83c0;
}
.semantic .ui.green.table {
  border-top: 0.2em solid #2db475;
}
.semantic .ui.orange.table {
  border-top: 0.2em solid #e07b53;
}
.semantic .ui.pink.table {
  border-top: 0.2em solid #d9499a;
}
.semantic .ui.purple.table {
  border-top: 0.2em solid #564f8a;
}
.semantic .ui.red.table {
  border-top: 0.2em solid #cc181e;
}
.semantic .ui.teal.table {
  border-top: 0.2em solid #00b5ad;
}
.semantic .ui.yellow.table {
  border-top: 0.2em solid #f2c61f;
}
.semantic .ui.inverted.table,
.semantic .ui.inverted.black.table {
  background-color: #1b1c1d !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.blue.table {
  background-color: #3b83c0 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.green.table {
  background-color: #2db475 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.orange.table {
  background-color: #e07b53 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.pink.table {
  background-color: #d9499a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.purple.table {
  background-color: #564f8a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.red.table {
  background-color: #cc181e !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.teal.table {
  background-color: #00b5ad !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.yellow.table {
  background-color: #f2c61f !important;
  color: #ffffff !important;
}
.semantic .ui.one.column.table td {
  width: 100%;
}
.semantic .ui.two.column.table td {
  width: 50%;
}
.semantic .ui.three.column.table td {
  width: 33.33333333%;
}
.semantic .ui.four.column.table td {
  width: 25%;
}
.semantic .ui.five.column.table td {
  width: 20%;
}
.semantic .ui.six.column.table td {
  width: 16.66666667%;
}
.semantic .ui.seven.column.table td {
  width: 14.28571429%;
}
.semantic .ui.eight.column.table td {
  width: 12.5%;
}
.semantic .ui.nine.column.table td {
  width: 11.11111111%;
}
.semantic .ui.ten.column.table td {
  width: 10%;
}
.semantic .ui.eleven.column.table td {
  width: 9.09090909%;
}
.semantic .ui.twelve.column.table td {
  width: 8.33333333%;
}
.semantic .ui.thirteen.column.table td {
  width: 7.69230769%;
}
.semantic .ui.fourteen.column.table td {
  width: 7.14285714%;
}
.semantic .ui.fifteen.column.table td {
  width: 6.66666667%;
}
.semantic .ui.sixteen.column.table td {
  width: 6.25%;
}
.semantic .ui.table th.one.wide,
.semantic .ui.table td.one.wide {
  width: 6.25%;
}
.semantic .ui.table th.two.wide,
.semantic .ui.table td.two.wide {
  width: 12.5%;
}
.semantic .ui.table th.three.wide,
.semantic .ui.table td.three.wide {
  width: 18.75%;
}
.semantic .ui.table th.four.wide,
.semantic .ui.table td.four.wide {
  width: 25%;
}
.semantic .ui.table th.five.wide,
.semantic .ui.table td.five.wide {
  width: 31.25%;
}
.semantic .ui.table th.six.wide,
.semantic .ui.table td.six.wide {
  width: 37.5%;
}
.semantic .ui.table th.seven.wide,
.semantic .ui.table td.seven.wide {
  width: 43.75%;
}
.semantic .ui.table th.eight.wide,
.semantic .ui.table td.eight.wide {
  width: 50%;
}
.semantic .ui.table th.nine.wide,
.semantic .ui.table td.nine.wide {
  width: 56.25%;
}
.semantic .ui.table th.ten.wide,
.semantic .ui.table td.ten.wide {
  width: 62.5%;
}
.semantic .ui.table th.eleven.wide,
.semantic .ui.table td.eleven.wide {
  width: 68.75%;
}
.semantic .ui.table th.twelve.wide,
.semantic .ui.table td.twelve.wide {
  width: 75%;
}
.semantic .ui.table th.thirteen.wide,
.semantic .ui.table td.thirteen.wide {
  width: 81.25%;
}
.semantic .ui.table th.fourteen.wide,
.semantic .ui.table td.fourteen.wide {
  width: 87.5%;
}
.semantic .ui.table th.fifteen.wide,
.semantic .ui.table td.fifteen.wide {
  width: 93.75%;
}
.semantic .ui.table th.sixteen.wide,
.semantic .ui.table td.sixteen.wide {
  width: 100%;
}
.semantic .ui.sortable.table thead th {
  cursor: pointer;
  white-space: nowrap;
  border-left: 1px solid #d0d0d0;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th:first-child {
  border-left: none;
}
.semantic .ui.sortable.table thead th.sorted,
.semantic .ui.sortable.table thead th.sorted:hover {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.semantic .ui.sortable.table thead th:after {
  display: inline-block;
  content: "";
  width: 1em;
  height: 1em;
  opacity: 0.8;
  margin: 0em 0em 0em 0.5em;
  font-family: "Icons";
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
}
.semantic .ui.sortable.table thead th.ascending:after {
  content: "\f0d7";
}
.semantic .ui.sortable.table thead th.descending:after {
  content: "\f0d8";
}
.semantic .ui.sortable.table th.disabled:hover {
  cursor: auto;
  color: rgba(40, 40, 40, 0.3);
}
.semantic .ui.sortable.table thead th:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th.sorted {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th.sorted:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.sortable.table thead th.sorted {
  background: rgba(255, 255, 255, 0.07) -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: rgba(255, 255, 255, 0.07) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}
.semantic .ui.inverted.sortable.table thead th:hover {
  background: rgba(255, 255, 255, 0.05) -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: rgba(255, 255, 255, 0.05) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}
.semantic .ui.inverted.sortable.table thead th {
  border-left-color: transparent;
  border-right-color: transparent;
}
.semantic .ui.inverted.table {
  background: #333333;
  color: #ffffff;
  border: none;
}
.semantic .ui.inverted.table th {
  background-color: rgba(0, 0, 0, 0.15);
  border-color: rgba(0, 0, 0, 0.2) !important;
  color: rgba(255, 255, 255, 0.9);
}
.semantic .ui.inverted.table tr td {
  border-color: rgba(0, 0, 0, 0.2) !important;
}
.semantic .ui.inverted.table tr.disabled td,
.semantic .ui.inverted.table tr td.disabled,
.semantic .ui.inverted.table tr.disabled:hover td,
.semantic .ui.inverted.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(225, 225, 225, 0.3);
}
.semantic .ui.inverted.definition.table tfoot:not(.full-width) th:first-child,
.semantic .ui.inverted.definition.table thead:not(.full-width) th:first-child {
  background: #ffffff;
}
.semantic .ui.inverted.definition.table tr td:first-child {
  background: rgba(255, 255, 255, 0.02);
  color: #ffffff;
}
.semantic .ui.collapsing.table {
  width: auto;
}
.semantic .ui.basic.table {
  background: transparent;
  border: 1px solid #d0d0d0;
  box-shadow: none;
}
.semantic .ui.basic.table thead,
.semantic .ui.basic.table tfoot {
  box-shadow: none;
}
.semantic .ui.basic.table th {
  background: transparent;
  border-left: none;
}
.semantic .ui.basic.table tbody tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.basic.table td {
  background: transparent;
}
.semantic .ui.basic.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 0, 0.05) !important;
}
.semantic .ui[class*="very basic"].table {
  border: none;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td {
  padding: 0.7em 0.8em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th:first-child,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td:first-child {
  padding-left: 0em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th:last-child,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td:last-child {
  padding-right: 0em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) thead tr:first-child th {
  padding-top: 0em;
}
.semantic .ui.celled.table tr th,
.semantic .ui.celled.table tr td {
  border-left: 1px solid #d4d4d5;
}
.semantic .ui.celled.table tr th:first-child,
.semantic .ui.celled.table tr td:first-child {
  border-left: none;
}
.semantic .ui.padded.table th {
  padding-left: 1em;
  padding-right: 1em;
}
.semantic .ui.padded.table th,
.semantic .ui.padded.table td {
  padding: 1em 1em;
}
.semantic .ui[class*="very padded"].table th {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
.semantic .ui[class*="very padded"].table td {
  padding: 1.5em 1.5em;
}
.semantic .ui.compact.table th {
  padding-left: 0.7em;
  padding-right: 0.7em;
}
.semantic .ui.compact.table td {
  padding: 0.5em 0.7em;
}
.semantic .ui[class*="very compact"].table th {
  padding-left: 0.6em;
  padding-right: 0.6em;
}
.semantic .ui[class*="very compact"].table td {
  padding: 0.4em 0.6em;
}
.semantic .ui.small.table {
  font-size: 0.9em;
}
.semantic .ui.table {
  font-size: 1em;
}
.semantic .ui.large.table {
  font-size: 1.1em;
}
.semantic .ui.basic.table {
  border: 0px solid #d0d0d0;
  box-shadow: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody th {
  border-bottom: none;
  border-top: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody tr {
  border-bottom: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody td {
  border-top: none;
  border-right: 3px solid #fff;
}
.semantic .ui.basic.table thead th {
  border-bottom: none;
  border-right: none;
  border-left: none;
}
.semantic .ui.ad {
  display: block;
  overflow: hidden;
  margin: 1em 0em;
}
.semantic .ui.ad:first-child {
  margin: 0em;
}
.semantic .ui.ad:last-child {
  margin: 0em;
}
.semantic .ui.ad iframe {
  margin: 0em;
  padding: 0em;
  border: none;
  overflow: hidden;
}
.semantic .ui.leaderboard.ad {
  width: 728px;
  height: 90px;
}
.semantic .ui[class*="medium rectangle"].ad {
  width: 300px;
  height: 250px;
}
.semantic .ui[class*="large rectangle"].ad {
  width: 336px;
  height: 280px;
}
.semantic .ui[class*="half page"].ad {
  width: 300px;
  height: 600px;
}
.semantic .ui.square.ad {
  width: 250px;
  height: 250px;
}
.semantic .ui[class*="small square"].ad {
  width: 200px;
  height: 200px;
}
.semantic .ui[class*="small rectangle"].ad {
  width: 180px;
  height: 150px;
}
.semantic .ui[class*="vertical rectangle"].ad {
  width: 240px;
  height: 400px;
}
.semantic .ui.button.ad {
  width: 120px;
  height: 90px;
}
.semantic .ui[class*="square button"].ad {
  width: 125px;
  height: 125px;
}
.semantic .ui[class*="small button"].ad {
  width: 120px;
  height: 60px;
}
.semantic .ui.skyscraper.ad {
  width: 120px;
  height: 600px;
}
.semantic .ui[class*="wide skyscraper"].ad {
  width: 160px;
}
.semantic .ui.banner.ad {
  width: 468px;
  height: 60px;
}
.semantic .ui[class*="vertical banner"].ad {
  width: 120px;
  height: 240px;
}
.semantic .ui[class*="top banner"].ad {
  width: 930px;
  height: 180px;
}
.semantic .ui[class*="half banner"].ad {
  width: 234px;
  height: 60px;
}
.semantic .ui[class*="large leaderboard"].ad {
  width: 970px;
  height: 90px;
}
.semantic .ui.billboard.ad {
  width: 970px;
  height: 250px;
}
.semantic .ui.panorama.ad {
  width: 980px;
  height: 120px;
}
.semantic .ui.netboard.ad {
  width: 580px;
  height: 400px;
}
.semantic .ui[class*="large mobile banner"].ad {
  width: 320px;
  height: 100px;
}
.semantic .ui[class*="mobile leaderboard"].ad {
  width: 320px;
  height: 50px;
}
.semantic .ui.mobile.ad {
  display: none;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.mobile.ad {
    display: block;
  }
}
.semantic .ui.centered.ad {
  margin-left: auto;
  margin-right: auto;
}
.semantic .ui.test.ad {
  position: relative;
  background: #333333;
}
.semantic .ui.test.ad:after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  text-align: center;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  content: "Ad";
  color: #ffffff;
  font-size: 1em;
  font-weight: bold;
}
.semantic .ui.mobile.test.ad:after {
  font-size: 0.85714em;
}
.semantic .ui.test.ad[data-text]:after {
  content: attr(data-text);
}
.semantic .ui.cards > .card,
.semantic .ui.card {
  max-width: 100%;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 290px;
  min-height: 0px;
  background: #ffffff;
  padding: 0em;
  border: none;
  border-radius: 0;
  box-shadow: 0px 3px 0px 0px #d4d4d5, 0px 0px 0px 1px #d4d4d5;
  -webkit-transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  z-index: "";
}
.semantic .ui.card {
  margin: 1em 0em;
}
.semantic .ui.cards > .card a,
.semantic .ui.card a {
  cursor: pointer;
}
.semantic .ui.card:first-child {
  margin-top: 0em;
}
.semantic .ui.card:last-child {
  margin-bottom: 0em;
}
.semantic .ui.cards {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -0.875em -0.5em;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.semantic .ui.cards > .card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0.875em 0.5em;
  float: none;
}
.semantic .ui.cards:after,
.semantic .ui.card:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.cards ~ .ui.cards {
  margin-top: 0.875em;
}
.semantic .ui.cards > .card > :first-child,
.semantic .ui.card > :first-child {
  border-radius: 0 0 0em 0em !important;
}
.semantic .ui.cards > .card > :last-child,
.semantic .ui.card > :last-child {
  border-radius: 0em 0em 0 0 !important;
}
.semantic .ui.cards > .card > .image,
.semantic .ui.card > .image {
  display: block;
  position: relative;
  padding: 0em;
  background: rgba(0, 0, 0, 0.05);
}
.semantic .ui.cards > .card > .image > img,
.semantic .ui.card > .image > img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0 0 0em 0em;
  border: none;
}
.semantic .ui.cards > .card > .image:only-child > img,
.semantic .ui.card > .image:only-child > img {
  border-radius: 0;
}
.semantic .ui.cards > .card > .content,
.semantic .ui.card > .content {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  background: none;
  margin: 0em;
  padding: 1em 1em;
  box-shadow: none;
  font-size: 1em;
  border: none;
  border-radius: 0em;
}
.semantic .ui.cards > .card > .content:after,
.semantic .ui.card > .content:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.cards > .card > .content > .header,
.semantic .ui.card > .content > .header {
  display: block;
  margin: 0em;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.cards > .card > .content > .header:not(.ui),
.semantic .ui.card > .content > .header:not(.ui) {
  font-weight: bold;
  font-size: 1.2em;
  margin-top: -0.165em;
  line-height: 1.33em;
}
.semantic .ui.cards > .card > .content > .meta + .description,
.semantic .ui.cards > .card > .content > .header + .description,
.semantic .ui.card > .content > .meta + .description,
.semantic .ui.card > .content > .header + .description {
  margin-top: 0.5em;
}
.semantic .ui.cards > .card [class*="left floated"],
.semantic .ui.card [class*="left floated"] {
  float: left;
}
.semantic .ui.cards > .card [class*="right floated"],
.semantic .ui.card [class*="right floated"] {
  float: right;
}
.semantic .ui.cards > .card [class*="left aligned"],
.semantic .ui.card [class*="left aligned"] {
  text-align: left;
}
.semantic .ui.cards > .card [class*="center aligned"],
.semantic .ui.card [class*="center aligned"] {
  text-align: center;
}
.semantic .ui.cards > .card [class*="right aligned"],
.semantic .ui.card [class*="right aligned"] {
  text-align: right;
}
.semantic .ui.cards > .card .content img,
.semantic .ui.card .content img {
  display: inline-block;
  vertical-align: middle;
  width: auto;
}
.semantic .ui.cards > .card img.avatar,
.semantic .ui.cards > .card .avatar img,
.semantic .ui.card img.avatar,
.semantic .ui.card .avatar img {
  width: 2.5em;
  height: 2.5em;
  border-radius: 500rem;
}
.semantic .ui.cards > .card > .content > .description,
.semantic .ui.card > .content > .description {
  clear: both;
  color: rgba(0, 0, 0, 0.5);
}
.semantic .ui.cards > .card > .content p,
.semantic .ui.card > .content p {
  margin: 0em 0em 0.5em;
}
.semantic .ui.cards > .card > .content p:last-child,
.semantic .ui.card > .content p:last-child {
  margin-bottom: 0em;
}
.semantic .ui.cards > .card .meta,
.semantic .ui.card .meta {
  font-size: 0.9em;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.cards > .card .meta *,
.semantic .ui.card .meta * {
  margin-right: 0.3em;
}
.semantic .ui.cards > .card .meta :last-child,
.semantic .ui.card .meta :last-child {
  margin-right: 0em;
}
.semantic .ui.cards > .card .meta [class*="right floated"],
.semantic .ui.card .meta [class*="right floated"] {
  margin-right: 0em;
  margin-left: 0.3em;
}
.semantic .ui.cards > .card > .content a:not(.ui),
.semantic .ui.card > .content a:not(.ui) {
  color: "";
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.cards > .card > .content a:not(.ui):hover,
.semantic .ui.card > .content a:not(.ui):hover {
  color: "";
}
.semantic .ui.cards > .card > .content > a.header,
.semantic .ui.card > .content > a.header {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.cards > .card > .content > a.header:hover,
.semantic .ui.card > .content > a.header:hover {
  color: #00b2f3;
}
.semantic .ui.cards > .card .meta > a:not(.ui),
.semantic .ui.card .meta > a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.cards > .card .meta > a:not(.ui):hover,
.semantic .ui.card .meta > a:not(.ui):hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.cards > .card > .buttons:last-child,
.semantic .ui.card > .buttons:last-child,
.semantic .ui.cards > .card > .button:last-child,
.semantic .ui.card > .button:last-child {
  margin: 0em 0em -1px;
  width: 100%;
}
.semantic .ui.cards > .card .dimmer,
.semantic .ui.card .dimmer {
  background-color: "";
  z-index: 10;
}
.semantic .ui.cards > .card > .content .star.icon,
.semantic .ui.card > .content .star.icon {
  cursor: pointer;
  opacity: 0.75;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.cards > .card > .content .star.icon:hover,
.semantic .ui.card > .content .star.icon:hover {
  opacity: 1;
  color: #ffb70a;
}
.semantic .ui.cards > .card > .content .active.star.icon,
.semantic .ui.card > .content .active.star.icon {
  color: #ffe623;
}
.semantic .ui.cards > .card > .content .like.icon,
.semantic .ui.card > .content .like.icon {
  cursor: pointer;
  opacity: 0.75;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.cards > .card > .content .like.icon:hover,
.semantic .ui.card > .content .like.icon:hover {
  opacity: 1;
  color: #ff2733;
}
.semantic .ui.cards > .card > .content .active.like.icon,
.semantic .ui.card > .content .active.like.icon {
  color: #ff2733;
}
.semantic .ui.cards > .card > .extra,
.semantic .ui.card > .extra {
  max-width: 100%;
  min-height: 0em !important;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  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;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
}
.semantic .ui.cards > .card > .extra a:not(.ui),
.semantic .ui.card > .extra a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.cards > .card > .extra a:not(.ui):hover,
.semantic .ui.card > .extra a:not(.ui):hover {
  color: #00b2f3;
}
.semantic .ui.fluid.card {
  width: 100%;
  max-width: 9999px;
}
.semantic .ui.cards a.card:hover,
.semantic .ui.link.cards .card:hover,
.semantic a.ui.card:hover,
.semantic .ui.link.card:hover {
  cursor: pointer;
  z-index: 5;
  background: "";
  border: none;
  box-shadow: 0px 3px 0px 0px #bebebf, 0px 0px 0px 1px rgba(39, 41, 43, 0.3);
}
.semantic .ui.black.cards > .card,
.semantic .ui.cards > .black.card,
.semantic .ui.black.card {
  box-shadow: 0px 3px 0px 0px #1b1c1d, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.blue.cards > .card,
.semantic .ui.cards > .blue.card,
.semantic .ui.blue.card {
  box-shadow: 0px 3px 0px 0px #3b83c0, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.green.cards > .card,
.semantic .ui.cards > .green.card,
.semantic .ui.green.card {
  box-shadow: 0px 3px 0px 0px #2db475, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.orange.cards > .card,
.semantic .ui.cards > .orange.card,
.semantic .ui.orange.card {
  box-shadow: 0px 3px 0px 0px #e07b53, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.pink.cards > .card,
.semantic .ui.cards > .pink.card,
.semantic .ui.pink.card {
  box-shadow: 0px 3px 0px 0px #d9499a, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.purple.cards > .card,
.semantic .ui.cards > .purple.card,
.semantic .ui.purple.card {
  box-shadow: 0px 3px 0px 0px #564f8a, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.red.cards > .card,
.semantic .ui.cards > .red.card,
.semantic .ui.red.card {
  box-shadow: 0px 3px 0px 0px #cc181e, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.teal.cards > .card,
.semantic .ui.cards > .teal.card,
.semantic .ui.teal.card {
  box-shadow: 0px 3px 0px 0px #00b5ad, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.yellow.cards > .card,
.semantic .ui.cards > .yellow.card,
.semantic .ui.yellow.card {
  box-shadow: 0px 3px 0px 0px #f2c61f, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.black.cards > .card:hover,
.semantic .ui.cards > .black.card:hover,
.semantic .ui.black.card:hover {
  box-shadow: 0px 3px 0px 0px #1b1c1d, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.blue.cards > .card:hover,
.semantic .ui.cards > .blue.card:hover,
.semantic .ui.blue.card:hover {
  box-shadow: 0px 3px 0px 0px #458ac6, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.green.cards > .card:hover,
.semantic .ui.cards > .green.card:hover,
.semantic .ui.green.card:hover {
  box-shadow: 0px 3px 0px 0px #30c07d, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.orange.cards > .card:hover,
.semantic .ui.cards > .orange.card:hover,
.semantic .ui.orange.card:hover {
  box-shadow: 0px 3px 0px 0px #e28560, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.pink.cards > .card:hover,
.semantic .ui.cards > .pink.card:hover,
.semantic .ui.pink.card:hover {
  box-shadow: 0px 3px 0px 0px #dc56a1, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.purple.cards > .card:hover,
.semantic .ui.cards > .purple.card:hover,
.semantic .ui.purple.card:hover {
  box-shadow: 0px 3px 0px 0px #5c5594, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.red.cards > .card:hover,
.semantic .ui.cards > .red.card:hover,
.semantic .ui.red.card:hover {
  box-shadow: 0px 3px 0px 0px #da1a20, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.teal.cards > .card:hover,
.semantic .ui.cards > .teal.card:hover,
.semantic .ui.teal.card:hover {
  box-shadow: 0px 3px 0px 0px #00c4bc, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.yellow.cards > .card:hover,
.semantic .ui.cards > .yellow.card:hover,
.semantic .ui.yellow.card:hover {
  box-shadow: 0px 3px 0px 0px #f3ca2d, 0px 0px 0px 1px #d4d4d5;
}
.semantic .ui.one.cards {
  margin-left: 0em;
  margin-right: 0em;
}
.semantic .ui.one.cards > .card {
  width: 100%;
}
.semantic .ui.two.cards {
  margin-left: -1em;
  margin-right: -1em;
}
.semantic .ui.two.cards > .card {
  width: -webkit-calc( 50% - 2em );
  width: calc(50% - 2em);
  margin-left: 1em;
  margin-right: 1em;
}
.semantic .ui.two.cards > .card:nth-child(2n+1) {
  clear: left;
}
.semantic .ui.three.cards {
  margin-left: -1em;
  margin-right: -1em;
}
.semantic .ui.three.cards > .card {
  width: -webkit-calc( 33.33333333% - 2em );
  width: calc(33.33333333% - 2em);
  margin-left: 1em;
  margin-right: 1em;
}
.semantic .ui.three.cards > .card:nth-child(3n+1) {
  clear: left;
}
.semantic .ui.four.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}
.semantic .ui.four.cards > .card {
  width: -webkit-calc( 25% - 1.5em );
  width: calc(25% - 1.5em);
  margin-left: 0.75em;
  margin-right: 0.75em;
}
.semantic .ui.four.cards > .card:nth-child(4n+1) {
  clear: left;
}
.semantic .ui.five.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}
.semantic .ui.five.cards > .card {
  width: -webkit-calc( 20% - 1.5em );
  width: calc(20% - 1.5em);
  margin-left: 0.75em;
  margin-right: 0.75em;
}
.semantic .ui.five.cards > .card:nth-child(5n+1) {
  clear: left;
}
.semantic .ui.six.cards {
  margin-left: -0.75em;
  margin-right: -0.75em;
}
.semantic .ui.six.cards > .card {
  width: -webkit-calc( 16.66666667% - 1.5em );
  width: calc(16.66666667% - 1.5em);
  margin-left: 0.75em;
  margin-right: 0.75em;
}
.semantic .ui.six.cards > .card:nth-child(6n+1) {
  clear: left;
}
.semantic .ui.seven.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.semantic .ui.seven.cards > .card {
  width: -webkit-calc( 14.28571429% - 1em );
  width: calc(14.28571429% - 1em);
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.semantic .ui.seven.cards > .card:nth-child(7n+1) {
  clear: left;
}
.semantic .ui.eight.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.semantic .ui.eight.cards > .card {
  width: -webkit-calc( 12.5% - 1em );
  width: calc(12.5% - 1em);
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 11px;
}
.semantic .ui.eight.cards > .card:nth-child(8n+1) {
  clear: left;
}
.semantic .ui.nine.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.semantic .ui.nine.cards > .card {
  width: -webkit-calc( 11.11111111% - 1em );
  width: calc(11.11111111% - 1em);
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 10px;
}
.semantic .ui.nine.cards > .card:nth-child(9n+1) {
  clear: left;
}
.semantic .ui.ten.cards {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.semantic .ui.ten.cards > .card {
  width: -webkit-calc( 10% - 1em );
  width: calc(10% - 1em);
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.semantic .ui.ten.cards > .card:nth-child(10n+1) {
  clear: left;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.two.doubling.cards {
    margin-left: 0em;
    margin-right: 0em;
  }
  .semantic .ui.two.doubling.cards .card {
    width: 100%;
    margin-left: 0em;
    margin-right: 0em;
  }
  .semantic .ui.three.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.three.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.four.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.four.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.five.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.five.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.six.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.six.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.seven.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.seven.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.eight.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.eight.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.nine.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.nine.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.ten.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.ten.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .semantic .ui.two.doubling.cards {
    margin-left: 0em;
    margin-right: 0em;
  }
  .semantic .ui.two.doubling.cards .card {
    width: 100%;
    margin-left: 0em;
    margin-right: 0em;
  }
  .semantic .ui.three.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.three.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.four.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.four.doubling.cards .card {
    width: -webkit-calc( 50% - 2em );
    width: calc(50% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.five.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.five.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.six.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.six.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.eight.doubling.cards {
    margin-left: -1em;
    margin-right: -1em;
  }
  .semantic .ui.eight.doubling.cards .card {
    width: -webkit-calc( 33.33333333% - 2em );
    width: calc(33.33333333% - 2em);
    margin-left: 1em;
    margin-right: 1em;
  }
  .semantic .ui.eight.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }
  .semantic .ui.eight.doubling.cards .card {
    width: -webkit-calc( 25% - 1.5em );
    width: calc(25% - 1.5em);
    margin-left: 0.75em;
    margin-right: 0.75em;
  }
  .semantic .ui.nine.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }
  .semantic .ui.nine.doubling.cards .card {
    width: -webkit-calc( 25% - 1.5em );
    width: calc(25% - 1.5em);
    margin-left: 0.75em;
    margin-right: 0.75em;
  }
  .semantic .ui.ten.doubling.cards {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }
  .semantic .ui.ten.doubling.cards .card {
    width: -webkit-calc( 20% - 1.5em );
    width: calc(20% - 1.5em);
    margin-left: 0.75em;
    margin-right: 0.75em;
  }
}
@media only screen and (max-width: 767px) {
  .semantic .ui.stackable.cards {
    display: block !important;
  }
  .semantic .ui.stackable.cards .card:first-child {
    margin-top: 0em !important;
  }
  .semantic .ui.stackable.cards > .card {
    display: block !important;
    height: auto !important;
    margin: 1em 1em;
    padding: 0 !important;
    width: -webkit-calc( 100% - 2em ) !important;
    width: calc(100% - 2em) !important;
  }
}
.semantic .ui.cards > .card {
  font-size: 1em;
}
.semantic .ui.comments {
  margin: 1.5em 0em;
  max-width: 650px;
}
.semantic .ui.comments:first-child {
  margin-top: 0em;
}
.semantic .ui.comments:last-child {
  margin-bottom: 0em;
}
.semantic .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;
}
.semantic .ui.comments .comment:first-child {
  margin-top: 0em;
  padding-top: 0em;
}
.semantic .ui.comments .comment .comments {
  margin: 0em 0em 0.5em 0.5em;
  padding: 1em 0em 1em 1em;
}
.semantic .ui.comments .comment .comments:before {
  position: absolute;
  top: 0px;
  left: 0px;
}
.semantic .ui.comments .comment .comments .comment {
  border: none;
  border-top: none;
  background: none;
}
.semantic .ui.comments .comment .avatar {
  display: block;
  width: 2.5em;
  height: auto;
  float: left;
  margin: 0.2em 0em 0em;
}
.semantic .ui.comments .comment img.avatar,
.semantic .ui.comments .comment .avatar img {
  display: block;
  margin: 0em auto;
  width: 100%;
  height: 100%;
  border-radius: 0.25rem;
}
.semantic .ui.comments .comment > .content {
  display: block;
}
.semantic .ui.comments .comment > .avatar ~ .content {
  margin-left: 3.5em;
}
.semantic .ui.comments .comment .author {
  font-size: 1em;
  color: rgba(0, 0, 0, 0.8);
  font-weight: bold;
}
.semantic .ui.comments .comment a.author {
  cursor: pointer;
}
.semantic .ui.comments .comment a.author:hover {
  color: #00b2f3;
}
.semantic .ui.comments .comment .metadata {
  display: inline-block;
  margin-left: 0.5em;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.875em;
}
.semantic .ui.comments .comment .metadata > * {
  display: inline-block;
  margin: 0em 0.5em 0em 0em;
}
.semantic .ui.comments .comment .metadata > :last-child {
  margin-right: 0em;
}
.semantic .ui.comments .comment .text {
  margin: 0.25em 0em 0.5em;
  font-size: 1em;
  word-wrap: break-word;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1.3;
}
.semantic .ui.comments .comment .actions {
  font-size: 0.875em;
}
.semantic .ui.comments .comment .actions a {
  cursor: pointer;
  display: inline-block;
  margin: 0em 0.75em 0em 0em;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.comments .comment .actions a:last-child {
  margin-right: 0em;
}
.semantic .ui.comments .comment .actions a.active,
.semantic .ui.comments .comment .actions a:hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.comments > .reply.form {
  margin-top: 1em;
}
.semantic .ui.comments .comment .reply.form {
  width: 100%;
  margin-top: 1em;
}
.semantic .ui.comments .reply.form textarea {
  font-size: 1em;
  height: 12em;
}
.semantic .ui.collapsed.comments,
.semantic .ui.comments .collapsed.comments,
.semantic .ui.comments .collapsed.comment {
  display: none;
}
.semantic .ui.threaded.comments .comment .comments {
  margin: -1.5em 0 -1em 1.25em;
  padding: 3em 0em 2em 2.25em;
  box-shadow: -1px 0px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.minimal.comments .comment .actions {
  opacity: 0;
  position: absolute;
  top: 0px;
  right: 0px;
  left: auto;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.semantic .ui.minimal.comments .comment > .content:hover > .actions {
  opacity: 1;
}
.semantic .ui.small.comments {
  font-size: 0.9em;
}
.semantic .ui.comments {
  font-size: 1em;
}
.semantic .ui.large.comments {
  font-size: 1.1em;
}
.semantic .ui.huge.comments {
  font-size: 1.2em;
}
.semantic .ui.feed {
  margin: 1em 0em;
}
.semantic .ui.feed:first-child {
  margin-top: 0em;
}
.semantic .ui.feed:last-child {
  margin-top: 0em;
}
.semantic .ui.feed > .event {
  display: table;
  width: 100%;
  padding: 0.5rem 0em;
  margin: 0em;
  background: none;
  border-top: none;
}
.semantic .ui.feed > .event:first-child {
  border-top: 0px;
  padding-top: 0em;
}
.semantic .ui.feed > .event:last-child {
  padding-bottom: 0em;
}
.semantic .ui.feed > .event > .label {
  display: table-cell;
  width: 2.5em;
  height: 2.5em;
  vertical-align: top;
  text-align: left;
}
.semantic .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);
}
.semantic .ui.feed > .event > .label img {
  width: 100%;
  height: auto;
  border-radius: 500rem;
}
.semantic .ui.feed > .event > .label + .content {
  padding: 0.5em 0em 0.5em 1.25em;
}
.semantic .ui.feed > .event > .content {
  display: table-cell;
  vertical-align: top;
  text-align: left;
  word-wrap: break-word;
}
.semantic .ui.feed > .event:last-child > .content {
  padding-bottom: 0em;
}
.semantic .ui.feed > .event > .content a {
  cursor: pointer;
}
.semantic .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);
}
.semantic .ui.feed > .event > .content .summary {
  margin: 0em;
  font-size: 1em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.feed > .event > .content .summary img {
  display: inline-block;
  width: auto;
  height: 2em;
  margin: -0.25em 0.25em 0em 0em;
  border-radius: 0.25em;
  vertical-align: middle;
}
.semantic .ui.feed > .event > .content .user {
  display: inline-block;
  font-weight: bold;
  margin-right: 0em;
  vertical-align: baseline;
}
.semantic .ui.feed > .event > .content .user img {
  margin: -0.25em 0.25em 0em 0em;
  width: auto;
  height: 2em;
  vertical-align: middle;
}
.semantic .ui.feed > .event > .content .summary > .date {
  display: inline-block;
  float: none;
  font-weight: normal;
  font-size: 0.875em;
  font-style: normal;
  margin: 0em 0em 0em 0.5em;
  padding: 0em;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.feed > .event > .content .extra {
  margin: 0.5em 0em 0em;
  background: none;
  padding: 0em;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.feed > .event > .content .extra.images img {
  display: inline-block;
  margin: 0em 0.25em 0em 0em;
  width: 6em;
}
.semantic .ui.feed > .event > .content .extra.text {
  padding: 0.5em 1em;
  border-left: 3px solid rgba(0, 0, 0, 0.2);
  font-size: 1em;
  max-width: 500px;
  line-height: 1.33;
}
.semantic .ui.feed > .event > .content .meta {
  display: inline-block;
  font-size: 0.875em;
  margin: 0.5em 0em 0em;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0em;
  color: rgba(0, 0, 0, 0.6);
}
.semantic .ui.feed > .event > .content .meta > * {
  position: relative;
  margin-left: 0.75em;
}
.semantic .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;
}
.semantic .ui.feed > .event > .content .meta .like {
  color: "";
  -webkit-transition: 0.2s color ease;
  transition: 0.2s color ease;
}
.semantic .ui.feed > .event > .content .meta .like:hover .icon {
  color: #ff2733;
}
.semantic .ui.feed > .event > .content .meta .active.like .icon {
  color: #ef404a;
}
.semantic .ui.feed > .event > .content .meta > :first-child {
  margin-left: 0em;
}
.semantic .ui.feed > .event > .content .meta > :first-child::after {
  display: none;
}
.semantic .ui.feed > .event > .content .meta a,
.semantic .ui.feed > .event > .content .meta > .icon {
  cursor: pointer;
  opacity: 1;
  color: rgba(0, 0, 0, 0.5);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.feed > .event > .content .meta a:hover,
.semantic .ui.feed > .event > .content .meta a:hover .icon,
.semantic .ui.feed > .event > .content .meta > .icon:hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.small.feed {
  font-size: 0.9em;
}
.semantic .ui.feed {
  font-size: 1em;
}
.semantic .ui.large.feed {
  font-size: 1.1em;
}
.semantic .ui.items > .item {
  table-layout: fixed;
  display: table;
  margin: 1em 0em;
  width: 100%;
  min-height: 0px;
  background: transparent;
  padding: 0em;
  border: none;
  border-radius: 0;
  box-shadow: none;
  -webkit-transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  z-index: "";
}
.semantic .ui.items > .item a {
  cursor: pointer;
}
.semantic .ui.items {
  margin: 1em 0;
}
.semantic .ui.items:first-child {
  margin-top: 0em !important;
}
.semantic .ui.items:last-child {
  margin-bottom: 0em !important;
}
.semantic .ui.items > .item {
  min-width: 100%;
}
.semantic .ui.items > .item:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.items > .item:first-child {
  margin-top: 0em;
}
.semantic .ui.items > .item:last-child {
  margin-bottom: 0em;
}
.semantic .ui.items > .item > .image {
  position: relative;
  display: table-cell;
  float: none;
  margin: 0em;
  padding: 0em;
  max-height: "";
  vertical-align: top;
}
.semantic .ui.items > .item > .image > img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.125rem;
  border: none;
}
.semantic .ui.items > .item > .image:only-child > img {
  border-radius: 0;
}
.semantic .ui.items > .item > .content {
  display: block;
  background: none;
  margin: 0em;
  padding: 0em;
  box-shadow: none;
  font-size: 1em;
  border: none;
  border-radius: 0em;
}
.semantic .ui.items > .item > .content:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.items > .item > .image + .content {
  width: 100%;
  display: table-cell;
  margin-left: 0em;
  vertical-align: top;
  padding-left: 1.5em;
}
.semantic .ui.items > .item > .content > .header {
  display: block;
  margin: -0.165em 0em 0em;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.items > .item > .content > .header:not(.ui) {
  font-size: 1.2em;
}
.semantic .ui.items > .item [class*="left floated"] {
  float: left;
}
.semantic .ui.items > .item [class*="right floated"] {
  float: right;
}
.semantic .ui.items > .item .content img {
  vertical-align: middle;
  width: "";
}
.semantic .ui.items > .item img.avatar,
.semantic .ui.items > .item .avatar img {
  width: "";
  height: "";
  border-radius: 500rem;
}
.semantic .ui.items > .item > .content > .description {
  margin-top: 0.6em;
  max-width: 550px;
  font-size: 1em;
  line-height: 1.33;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.items > .item > .content p {
  margin: 0em 0em 0.5em;
}
.semantic .ui.items > .item > .content p:last-child {
  margin-bottom: 0em;
}
.semantic .ui.items > .item .meta {
  font-size: 1em;
  line-height: 1em;
  color: rgba(0, 0, 0, 0.6);
}
.semantic .ui.items > .item .meta * {
  margin-right: 0.3em;
}
.semantic .ui.items > .item .meta :last-child {
  margin-right: 0em;
}
.semantic .ui.items > .item .meta [class*="right floated"] {
  margin-right: 0em;
  margin-left: 0.3em;
}
.semantic .ui.items > .item > .content a:not(.ui) {
  color: "";
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.items > .item > .content a:not(.ui):hover {
  color: "";
}
.semantic .ui.items > .item > .content > a.header {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.items > .item > .content > a.header:hover {
  color: #00b2f3;
}
.semantic .ui.items > .item .meta > a:not(.ui) {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.items > .item .meta > a:not(.ui):hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.items > .item > .content .favorite.icon {
  cursor: pointer;
  opacity: 0.75;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.items > .item > .content .favorite.icon:hover {
  opacity: 1;
  color: #ffb70a;
}
.semantic .ui.items > .item > .content .active.favorite.icon {
  color: #ffe623;
}
.semantic .ui.items > .item > .content .like.icon {
  cursor: pointer;
  opacity: 0.75;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.items > .item > .content .like.icon:hover {
  opacity: 1;
  color: #ff2733;
}
.semantic .ui.items > .item > .content .active.like.icon {
  color: #ff2733;
}
.semantic .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;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  border-top: none;
}
.semantic .ui.items > .item .extra > * {
  margin: 0.25rem 0.5rem 0.25rem 0em;
}
.semantic .ui.items > .item .extra > [class*="right floated"] {
  margin: 0.25rem 0em 0.25rem 0.5rem;
}
.semantic .ui.items > .item .extra:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.items > .item > .image:not(.ui) {
  width: 175px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .semantic .ui.items > .item {
    margin: 1em 0em;
  }
  .semantic .ui.items > .item > .image:not(.ui) {
    width: 150px;
  }
  .semantic .ui.items > .item > .image + .content {
    display: block;
    padding: 0em 0em 0em 1em;
  }
}
@media only screen and (max-width: 767px) {
  .semantic .ui.items > .item {
    margin: 2em 0em;
  }
  .semantic .ui.items > .item > .image {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .semantic .ui.items > .item > .image,
  .semantic .ui.items > .item > .image > img {
    max-width: 100% !important;
    width: auto !important;
    max-height: 250px !important;
  }
  .semantic .ui.items > .item > .image + .content {
    display: block;
    padding: 1.5em 0em 0em;
  }
}
.semantic .ui.items > .item > .image + [class*="top aligned"].content {
  vertical-align: top;
}
.semantic .ui.items > .item > .image + [class*="middle aligned"].content {
  vertical-align: middle;
}
.semantic .ui.items > .item > .image + [class*="bottom aligned"].content {
  vertical-align: bottom;
}
.semantic .ui.relaxed.items > .item {
  margin: 1.5em 0em;
}
.semantic .ui[class*="very relaxed"].items > .item {
  margin: 2em 0em;
}
.semantic .ui.divided.items > .item {
  border-top: 1px solid rgba(39, 41, 43, 0.15);
  margin: 0em;
  padding: 1em 0em;
}
.semantic .ui.divided.items > .item:first-child {
  border-top: none;
  margin-top: 0em !important;
  padding-top: 0em !important;
}
.semantic .ui.divided.items > .item:last-child {
  margin-bottom: 0em !important;
  padding-bottom: 0em !important;
}
.semantic .ui.relaxed.divided.items > .item {
  margin: 0em;
  padding: 1.5em 0em;
}
.semantic .ui[class*="very relaxed"].divided.items > .item {
  margin: 0em;
  padding: 2em 0em;
}
.semantic .ui.items a.item:hover,
.semantic .ui.link.items > .item:hover {
  cursor: pointer;
}
.semantic .ui.items a.item:hover .content .header,
.semantic .ui.link.items > .item:hover .content .header {
  color: #00b2f3;
}
.semantic .ui.items > .item {
  font-size: 1em;
}
.semantic .ui.statistic {
  display: inline-block;
  margin: 1em 0em;
  max-width: 175px;
}
.semantic .ui.statistic + .ui.statistic {
  margin: 0em 0em 0em 1em;
}
.semantic .ui.statistic:first-child {
  margin-top: 0em;
}
.semantic .ui.statistic:last-child {
  margin-bottom: 0em;
}
.semantic .ui.statistics > .statistic {
  display: block;
  float: left;
  margin: 0em 1em 2em;
  max-width: 175px;
}
.semantic .ui.statistics {
  display: block;
  margin: 1em -1em;
}
.semantic .ui.statistics:after {
  display: block;
  content: " ";
  height: 0px;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.semantic .ui.statistics:first-child {
  margin-top: 0em;
}
.semantic .ui.statistics:last-child {
  margin-bottom: 0em;
}
.semantic .ui.statistics .statistic > .value,
.semantic .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;
}
.semantic .ui.statistics .statistic > .label,
.semantic .ui.statistic > .label {
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.4);
  text-transform: none;
  text-align: center;
}
.semantic .ui.statistics .statistic > .label ~ .value,
.semantic .ui.statistic > .label ~ .value {
  margin-top: 0rem;
}
.semantic .ui.statistics .statistic > .value ~ .label,
.semantic .ui.statistic > .value ~ .label {
  margin-top: 0.25rem;
}
.semantic .ui.statistics .statistic > .value .icon,
.semantic .ui.statistic > .value .icon {
  opacity: 1;
  width: auto;
  margin: 0em;
}
.semantic .ui.statistics .statistic > .text.value,
.semantic .ui.statistic > .text.value {
  line-height: 1em;
  min-height: 2em;
  text-align: center;
}
.semantic .ui.statistics .statistic > .text.value + .label,
.semantic .ui.statistic > .text.value + .label {
  text-align: center;
}
.semantic .ui.statistics .statistic > .value img,
.semantic .ui.statistic > .value img {
  max-height: 3rem;
  vertical-align: baseline;
}
.semantic .ui.horizontal.statistics,
.semantic .ui.horizontal.statistic {
  display: block;
  margin: 0em;
  max-width: 9999px;
}
.semantic .ui.horizontal.statistics .statistic {
  float: none;
  margin: 1em 0em;
  max-width: 9999px;
}
.semantic .ui.horizontal.statistic > .text.value,
.semantic .ui.horizontal.statistics > .statistic > .text.value {
  min-height: 0em !important;
}
.semantic .ui.horizontal.statistics .statistic > .value .icon,
.semantic .ui.horizontal.statistic > .value .icon {
  width: 1.18em;
}
.semantic .ui.horizontal.statistics .statistic > .value,
.semantic .ui.horizontal.statistic > .value {
  display: inline-block;
  vertical-align: middle;
}
.semantic .ui.horizontal.statistics .statistic > .label,
.semantic .ui.horizontal.statistic > .label {
  display: inline-block;
  vertical-align: middle;
  margin: 0em 0em 0em 0.75em;
}
.semantic .ui.blue.statistics .statistic > .value,
.semantic .ui.statistics .blue.statistic > .value,
.semantic .ui.blue.statistic > .value {
  color: #3b83c0;
}
.semantic .ui.green.statistics .statistic > .value,
.semantic .ui.statistics .green.statistic > .value,
.semantic .ui.green.statistic > .value {
  color: #2db475;
}
.semantic .ui.orange.statistics .statistic > .value,
.semantic .ui.statistics .orange.statistic > .value,
.semantic .ui.orange.statistic > .value {
  color: #e07b53;
}
.semantic .ui.pink.statistics .statistic > .value,
.semantic .ui.statistics .pink.statistic > .value,
.semantic .ui.pink.statistic > .value {
  color: #d9499a;
}
.semantic .ui.purple.statistics .statistic > .value,
.semantic .ui.statistics .purple.statistic > .value,
.semantic .ui.purple.statistic > .value {
  color: #564f8a;
}
.semantic .ui.red.statistics .statistic > .value,
.semantic .ui.statistics .red.statistic > .value,
.semantic .ui.red.statistic > .value {
  color: #cc181e;
}
.semantic .ui.teal.statistics .statistic > .value,
.semantic .ui.statistics .teal.statistic > .value,
.semantic .ui.teal.statistic > .value {
  color: #00b5ad;
}
.semantic .ui.yellow.statistics .statistic > .value,
.semantic .ui.statistics .yellow.statistic > .value,
.semantic .ui.yellow.statistic > .value {
  color: #f2c61f;
}
.semantic .ui[class*="left floated"].statistic {
  float: left;
  margin: 0em 2em 1em 0em;
}
.semantic .ui[class*="right floated"].statistic {
  float: right;
  margin: 0em 0em 1em 2em;
}
.semantic .ui.floated.statistic:last-child {
  margin-bottom: 0em;
}
.semantic .ui.inverted.statistic .value {
  color: #ffffff;
}
.semantic .ui.inverted.statistic .label {
  color: rgba(255, 255, 255, 0.8);
}
.semantic .ui.inverted.blue.statistics .statistic > .value,
.semantic .ui.statistics .inverted.blue.statistic > .value,
.semantic .ui.inverted.blue.statistic > .value {
  color: #54c8ff;
}
.semantic .ui.inverted.green.statistics .statistic > .value,
.semantic .ui.statistics .inverted.green.statistic > .value,
.semantic .ui.inverted.green.statistic > .value {
  color: #cbeddd;
}
.semantic .ui.inverted.orange.statistics .statistic > .value,
.semantic .ui.statistics .inverted.orange.statistic > .value,
.semantic .ui.inverted.orange.statistic > .value {
  color: #ff851b;
}
.semantic .ui.inverted.pink.statistics .statistic > .value,
.semantic .ui.statistics .inverted.pink.statistic > .value,
.semantic .ui.inverted.pink.statistic > .value {
  color: #ff8edf;
}
.semantic .ui.inverted.purple.statistics .statistic > .value,
.semantic .ui.statistics .inverted.purple.statistic > .value,
.semantic .ui.inverted.purple.statistic > .value {
  color: #cdc6ff;
}
.semantic .ui.inverted.red.statistics .statistic > .value,
.semantic .ui.statistics .inverted.red.statistic > .value,
.semantic .ui.inverted.red.statistic > .value {
  color: #ff695e;
}
.semantic .ui.inverted.teal.statistics .statistic > .value,
.semantic .ui.statistics .inverted.teal.statistic > .value,
.semantic .ui.inverted.teal.statistic > .value {
  color: #6dffff;
}
.semantic .ui.inverted.yellow.statistics .statistic > .value,
.semantic .ui.statistics .inverted.yellow.statistic > .value,
.semantic .ui.inverted.yellow.statistic > .value {
  color: #ffe21f;
}
.semantic .ui.mini.statistics .statistic > .value,
.semantic .ui.mini.statistic > .value {
  font-size: 1.5rem;
}
.semantic .ui.mini.horizontal.statistics .statistic > .value,
.semantic .ui.mini.horizontal.statistic > .value {
  font-size: 1.5rem;
}
.semantic .ui.mini.statistics .statistic > .text.value,
.semantic .ui.mini.statistic > .text.value {
  font-size: 1rem;
}
.semantic .ui.tiny.statistics .statistic > .value,
.semantic .ui.tiny.statistic > .value {
  font-size: 2rem;
}
.semantic .ui.tiny.horizontal.statistics .statistic > .value,
.semantic .ui.tiny.horizontal.statistic > .value {
  font-size: 2rem;
}
.semantic .ui.tiny.statistics .statistic > .text.value,
.semantic .ui.tiny.statistic > .text.value {
  font-size: 1rem;
}
.semantic .ui.small.statistics .statistic > .value,
.semantic .ui.small.statistic > .value {
  font-size: 3rem;
}
.semantic .ui.small.horizontal.statistics .statistic > .value,
.semantic .ui.small.horizontal.statistic > .value {
  font-size: 2rem;
}
.semantic .ui.small.statistics .statistic > .text.value,
.semantic .ui.small.statistic > .text.value {
  font-size: 1.5rem;
}
.semantic .ui.statistics .statistic > .value,
.semantic .ui.statistic > .value {
  font-size: 4rem;
}
.semantic .ui.horizontal.statistics .statistic > .value,
.semantic .ui.horizontal.statistic > .value {
  font-size: 3rem;
}
.semantic .ui.statistics .statistic > .text.value,
.semantic .ui.statistic > .text.value {
  font-size: 2rem;
}
.semantic .ui.large.statistics .statistic > .value,
.semantic .ui.large.statistic > .value {
  font-size: 5rem;
}
.semantic .ui.large.horizontal.statistics .statistic > .value,
.semantic .ui.large.horizontal.statistic > .value {
  font-size: 4rem;
}
.semantic .ui.large.statistics .statistic > .text.value,
.semantic .ui.large.statistic > .text.value {
  font-size: 2.5rem;
}
.semantic .ui.huge.statistics .statistic > .value,
.semantic .ui.huge.statistic > .value {
  font-size: 6rem;
}
.semantic .ui.huge.horizontal.statistics .statistic > .value,
.semantic .ui.huge.horizontal.statistic > .value {
  font-size: 5rem;
}
.semantic .ui.huge.statistics .statistic > .text.value,
.semantic .ui.huge.statistic > .text.value {
  font-size: 2.5rem;
}
.semantic .ui.accordion,
.semantic .ui.accordion .accordion {
  max-width: 100%;
  font-size: 1em;
}
.semantic .ui.accordion .accordion {
  margin: 1em 0em 0em;
  padding: 0em;
}
.semantic .ui.accordion .title,
.semantic .ui.accordion .accordion .title {
  cursor: pointer;
}
.semantic .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.8);
}
.semantic .ui.accordion .title ~ .content,
.semantic .ui.accordion .accordion .title ~ .content {
  display: none;
}
.semantic .ui.accordion:not(.styled) .title ~ .content:not(.ui),
.semantic .ui.accordion:not(.styled) .accordion .title ~ .content:not(.ui) {
  margin: 0em;
  padding: 0.5em 0em 1em;
}
.semantic .ui.accordion:not(.styled) .title ~ .content:not(.ui):last-child {
  padding-bottom: 0em;
}
.semantic .ui.accordion .title .dropdown.icon,
.semantic .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;
  -webkit-transition: -webkit-transform 0.2s ease, opacity 0.2s ease;
  transition: transform 0.2s ease, opacity 0.2s ease;
  vertical-align: baseline;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.semantic .ui.accordion.menu .item .title {
  display: block;
  padding: 0em;
}
.semantic .ui.accordion.menu .item .title > .dropdown.icon {
  float: right;
  margin: 0.165em 0em 0em 1em;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.semantic .ui.accordion .ui.header .dropdown.icon {
  font-size: 1em;
  margin: 0em 0.25rem 0em 0rem;
}
.semantic .ui.accordion .active.title .dropdown.icon,
.semantic .ui.accordion .accordion .active.title .dropdown.icon {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.semantic .ui.accordion.menu .item .active.title > .dropdown.icon {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.semantic .ui.styled.accordion {
  width: 600px;
}
.semantic .ui.styled.accordion,
.semantic .ui.styled.accordion .accordion {
  border-radius: 0.2857rem;
  background: #ffffff;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05), 0px 0px 0px 1px rgba(39, 41, 43, 0.15);
}
.semantic .ui.styled.accordion .title,
.semantic .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(39, 41, 43, 0.15);
  -webkit-transition: background 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, color 0.2s ease;
}
.semantic .ui.styled.accordion > .title:first-child,
.semantic .ui.styled.accordion .accordion .title:first-child {
  border-top: none;
}
.semantic .ui.styled.accordion .content,
.semantic .ui.styled.accordion .accordion .content {
  margin: 0em;
  padding: 0.5em 1em 1.5em;
}
.semantic .ui.styled.accordion .accordion .content {
  padding: 0em;
  padding: 0.5em 1em 1.5em;
}
.semantic .ui.styled.accordion .title:hover,
.semantic .ui.styled.accordion .active.title,
.semantic .ui.styled.accordion .accordion .title:hover,
.semantic .ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.styled.accordion .accordion .title:hover,
.semantic .ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.styled.accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.styled.accordion .accordion .active.title {
  background: transparent;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.accordion .active.content,
.semantic .ui.accordion .accordion .active.content {
  display: block;
}
.semantic .ui.fluid.accordion,
.semantic .ui.fluid.accordion .accordion {
  width: 100%;
}
.semantic .ui.inverted.accordion .title:not(.ui) {
  color: #ffffff;
}
@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;
}
.semantic .ui.accordion .title .dropdown.icon,
.semantic .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;
}
.semantic .ui.accordion .title .dropdown.icon:before,
.semantic .ui.accordion .accordion .title .dropdown.icon:before {
  content: "\f0da";
}
.semantic .ui.accordion .title:not(.ui) {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.8em;
  color: rgba(0, 0, 0, 0.5);
}
.semantic .ui.accordion .dropdown.icon {
  outline: none;
}
.semantic .ui.checkbox {
  position: relative;
  display: inline-block;
  min-height: 17px;
  font-size: 1rem;
  line-height: 15px;
  min-width: 17px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  outline: none;
  vertical-align: middle;
}
.semantic .ui.checkbox input[type=checkbox],
.semantic .ui.checkbox input[type=radio] {
  position: absolute;
  top: 0px;
  left: 0px;
  opacity: 0 !important;
  outline: none;
  z-index: -1;
}
.semantic .ui.checkbox .box,
.semantic .ui.checkbox label {
  display: block;
  cursor: pointer;
  padding-left: 1.75em;
  outline: none;
}
.semantic .ui.checkbox label {
  font-size: 1em;
}
.semantic .ui.checkbox .box:before,
.semantic .ui.checkbox label:before {
  position: absolute;
  line-height: 1;
  width: 17px;
  height: 17px;
  top: 0em;
  left: 0em;
  content: "";
  background: #ffffff;
  border-radius: 0.25em;
  -webkit-transition: background-color 0.3s ease, border 0.3s ease, box-shadow 0.3s ease;
  transition: background-color 0.3s ease, border 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid #d4d4d5;
}
.semantic .ui.checkbox .box:after,
.semantic .ui.checkbox label:after {
  position: absolute;
  top: 0px;
  left: 0px;
  line-height: 17px;
  width: 17px;
  height: 17px;
  text-align: center;
  opacity: 0;
  color: rgba(0, 0, 0, 0.8);
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
.semantic .ui.checkbox label,
.semantic .ui.checkbox + label {
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.semantic .ui.checkbox + label {
  vertical-align: middle;
}
.semantic .ui.checkbox .box:hover::before,
.semantic .ui.checkbox label:hover::before {
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.3);
}
.semantic .ui.checkbox label:hover,
.semantic .ui.checkbox + label:hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.checkbox .box:active::before,
.semantic .ui.checkbox label:active::before {
  background: #f5f5f5;
  border: 1px solid 1px solid rgba(39, 41, 43, 0.3);
}
.semantic .ui.checkbox input[type=checkbox]:active ~ label,
.semantic .ui.checkbox input[type=radio]:active ~ label {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.checkbox input[type=checkbox]:focus ~ .box:before,
.semantic .ui.checkbox input[type=checkbox]:focus ~ label:before,
.semantic .ui.checkbox input[type=radio]:focus ~ .box:before,
.semantic .ui.checkbox input[type=radio]:focus ~ label:before {
  background: #f5f5f5;
  border: 1px solid 1px solid rgba(39, 41, 43, 0.3);
}
.semantic .ui.checkbox input[type=checkbox]:focus ~ label,
.semantic .ui.checkbox input[type=radio]:focus ~ label {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.checkbox input[type=checkbox]:checked ~ .box:after,
.semantic .ui.checkbox input[type=checkbox]:checked ~ label:after,
.semantic .ui.checkbox input[type=radio]:checked ~ .box:after,
.semantic .ui.checkbox input[type=radio]:checked ~ label:after {
  opacity: 1;
}
.semantic .ui.read-only.checkbox,
.semantic .ui.read-only.checkbox label {
  cursor: default;
}
.semantic .ui.disabled.checkbox .box:after,
.semantic .ui.disabled.checkbox label,
.semantic .ui.checkbox input[type=checkbox][disabled] ~ .box:after,
.semantic .ui.checkbox input[type=checkbox][disabled] ~ label,
.semantic .ui.checkbox input[type=radio][disabled] ~ .box:after,
.semantic .ui.checkbox input[type=radio][disabled] ~ label {
  cursor: default;
  opacity: 0.5;
  color: #000000;
}
.semantic .ui.radio.checkbox {
  min-height: 14px;
}
.semantic .ui.radio.checkbox .box:before,
.semantic .ui.radio.checkbox label:before {
  width: 14px;
  height: 14px;
  border-radius: 500rem;
  top: 1px;
  left: 0px;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.semantic .ui.radio.checkbox .box:after,
.semantic .ui.radio.checkbox label:after {
  border: none;
  width: 14px;
  height: 14px;
  line-height: 14px;
  top: 1px;
  left: 0px;
  font-size: 9px;
}
.semantic .ui.radio.checkbox .box:after,
.semantic .ui.radio.checkbox label:after {
  width: 14px;
  height: 14px;
  border-radius: 500rem;
  -webkit-transform: scale(0.42857143);
  -ms-transform: scale(0.42857143);
  transform: scale(0.42857143);
  background-color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.slider.checkbox {
  cursor: pointer;
  min-height: 1.25rem;
}
.semantic .ui.slider.checkbox .box,
.semantic .ui.slider.checkbox label {
  padding-left: 4.5rem;
  line-height: 1rem;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.slider.checkbox .box:before,
.semantic .ui.slider.checkbox label:before {
  cursor: pointer;
  display: block;
  position: absolute;
  content: "";
  top: 0.4rem;
  left: 0em;
  z-index: 1;
  border: none !important;
  background-color: rgba(0, 0, 0, 0.05);
  width: 3.5rem;
  height: 0.25rem;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  border-radius: 500rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.semantic .ui.slider.checkbox .box:after,
.semantic .ui.slider.checkbox label:after {
  background: #ffffff -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: #ffffff linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  position: absolute;
  content: "";
  opacity: 1;
  z-index: 2;
  border: none;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05), 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset;
  width: 1.5rem;
  height: 1.5rem;
  top: -0.25rem;
  left: 0em;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  border-radius: 500rem;
  -webkit-transition: left 0.3s ease 0s;
  transition: left 0.3s ease 0s;
}
.semantic .ui.slider.checkbox input[type=checkbox]:focus ~ .box:before,
.semantic .ui.slider.checkbox input[type=checkbox]:focus ~ label:before,
.semantic .ui.slider.checkbox input[type=radio]:focus ~ .box:before,
.semantic .ui.slider.checkbox input[type=radio]:focus ~ label:before {
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
}
.semantic .ui.slider.checkbox .box:hover,
.semantic .ui.slider.checkbox label:hover {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.slider.checkbox .box:hover::before,
.semantic .ui.slider.checkbox label:hover::before {
  background: rgba(0, 0, 0, 0.1);
}
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ .box,
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ label,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ .box,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ label {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ .box:before,
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ label:before,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ .box:before,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ label:before {
  background-color: rgba(0, 0, 0, 0.1);
}
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ .box:after,
.semantic .ui.slider.checkbox input[type=checkbox]:checked ~ label:after,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ .box:after,
.semantic .ui.slider.checkbox input[type=radio]:checked ~ label:after {
  left: 2rem;
}
.semantic .ui.toggle.checkbox {
  cursor: pointer;
  min-height: 1.5rem;
}
.semantic .ui.toggle.checkbox .box,
.semantic .ui.toggle.checkbox label {
  min-height: 1.5rem;
  padding-left: 4.5rem;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.toggle.checkbox label {
  padding-top: 0.15em;
}
.semantic .ui.toggle.checkbox .box:before,
.semantic .ui.toggle.checkbox label:before {
  cursor: pointer;
  display: block;
  position: absolute;
  content: "";
  top: 0rem;
  z-index: 1;
  border: none;
  background-color: rgba(0, 0, 0, 0.05);
  width: 3.5rem;
  height: 1.5rem;
  border-radius: 500rem;
}
.semantic .ui.toggle.checkbox .box:after,
.semantic .ui.toggle.checkbox label:after {
  background: #ffffff -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: #ffffff linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  position: absolute;
  content: "";
  opacity: 1;
  z-index: 2;
  border: none;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05), 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset;
  width: 1.5rem;
  height: 1.5rem;
  top: 0rem;
  left: 0em;
  border-radius: 500rem;
  -webkit-transition: background 0.3s ease 0s, left 0.3s ease 0s;
  transition: background 0.3s ease 0s, left 0.3s ease 0s;
}
.semantic .ui.toggle.checkbox input[type=checkbox] ~ .box:after,
.semantic .ui.toggle.checkbox input[type=checkbox] ~ label:after,
.semantic .ui.toggle.checkbox input[type=radio] ~ .box:after,
.semantic .ui.toggle.checkbox input[type=radio] ~ label:after {
  left: -0.05rem;
}
.semantic .ui.toggle.checkbox input[type=checkbox]:focus ~ .box:before,
.semantic .ui.toggle.checkbox input[type=checkbox]:focus ~ label:before,
.semantic .ui.toggle.checkbox input[type=radio]:focus ~ .box:before,
.semantic .ui.toggle.checkbox input[type=radio]:focus ~ label:before {
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
}
.semantic .ui.toggle.checkbox .box:hover::before,
.semantic .ui.toggle.checkbox label:hover::before {
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
}
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ .box,
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ label,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ .box,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ label {
  color: #2db475;
}
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ .box:before,
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ label:before,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ .box:before,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ label:before {
  background-color: #2db475;
}
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ .box:after,
.semantic .ui.toggle.checkbox input[type=checkbox]:checked ~ label:after,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ .box:after,
.semantic .ui.toggle.checkbox input[type=radio]:checked ~ label:after {
  left: 2.05rem;
}
.semantic .ui.fitted.checkbox .box,
.semantic .ui.fitted.checkbox label {
  padding-left: 0em !important;
}
.semantic .ui.fitted.toggle.checkbox,
.semantic .ui.fitted.toggle.checkbox {
  width: 3.5rem;
}
.semantic .ui.fitted.slider.checkbox,
.semantic .ui.fitted.slider.checkbox {
  width: 3.5rem;
}
@font-face {
  font-family: "Checkbox";
  src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAAOAIAAAwBgT1MvMj3hSQEAAADsAAAAVmNtYXDQEhm3AAABRAAAAUpjdnQgBkn/lAAABuwAAAAcZnBnbYoKeDsAAAcIAAAJkWdhc3AAAAAQAAAG5AAAAAhnbHlm32cEdgAAApAAAAC2aGVhZAErPHsAAANIAAAANmhoZWEHUwNNAAADgAAAACRobXR4CykAAAAAA6QAAAAMbG9jYQA4AFsAAAOwAAAACG1heHAApgm8AAADuAAAACBuYW1lzJ0aHAAAA9gAAALNcG9zdK69QJgAAAaoAAAAO3ByZXCSoZr/AAAQnAAAAFYAAQO4AZAABQAIAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA6ADoAQNS/2oAWgMLAE8AAAABAAAAAAAAAAAAAwAAAAMAAAAcAAEAAAAAAEQAAwABAAAAHAAEACgAAAAGAAQAAQACAADoAf//AAAAAOgA//8AABgBAAEAAAAAAAAAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAADpAKYABUAHEAZDwEAAQFCAAIBAmoAAQABagAAAGEUFxQDEisBFAcBBiInASY0PwE2Mh8BATYyHwEWA6QP/iAQLBD+6g8PTBAsEKQBbhAsEEwPAhYWEP4gDw8BFhAsEEwQEKUBbxAQTBAAAAH//f+xA18DCwAMABJADwABAQpDAAAACwBEFRMCESsBFA4BIi4CPgEyHgEDWXLG6MhuBnq89Lp+AV51xHR0xOrEdHTEAAAAAAEAAAABAADDeRpdXw889QALA+gAAAAAzzWYjQAAAADPNWBN//3/sQOkAwsAAAAIAAIAAAAAAAAAAQAAA1L/agBaA+gAAP/3A6QAAQAAAAAAAAAAAAAAAAAAAAMD6AAAA+gAAANZAAAAAAAAADgAWwABAAAAAwAWAAEAAAAAAAIABgATAG4AAAAtCZEAAAAAAAAAEgDeAAEAAAAAAAAANQAAAAEAAAAAAAEACAA1AAEAAAAAAAIABwA9AAEAAAAAAAMACABEAAEAAAAAAAQACABMAAEAAAAAAAUACwBUAAEAAAAAAAYACABfAAEAAAAAAAoAKwBnAAEAAAAAAAsAEwCSAAMAAQQJAAAAagClAAMAAQQJAAEAEAEPAAMAAQQJAAIADgEfAAMAAQQJAAMAEAEtAAMAAQQJAAQAEAE9AAMAAQQJAAUAFgFNAAMAAQQJAAYAEAFjAAMAAQQJAAoAVgFzAAMAAQQJAAsAJgHJQ29weXJpZ2h0IChDKSAyMDE0IGJ5IG9yaWdpbmFsIGF1dGhvcnMgQCBmb250ZWxsby5jb21mb250ZWxsb1JlZ3VsYXJmb250ZWxsb2ZvbnRlbGxvVmVyc2lvbiAxLjBmb250ZWxsb0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAbwBwAHkAcgBpAGcAaAB0ACAAKABDACkAIAAyADAAMQA0ACAAYgB5ACAAbwByAGkAZwBpAG4AYQBsACAAYQB1AHQAaABvAHIAcwAgAEAAIABmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQBmAG8AbgB0AGUAbABsAG8AUgBlAGcAdQBsAGEAcgBmAG8AbgB0AGUAbABsAG8AZgBvAG4AdABlAGwAbABvAFYAZQByAHMAaQBvAG4AIAAxAC4AMABmAG8AbgB0AGUAbABsAG8ARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAQIBAwljaGVja21hcmsGY2lyY2xlAAAAAAEAAf//AA8AAAAAAAAAAAAAAAAAAAAAADIAMgML/7EDC/+xsAAssCBgZi2wASwgZCCwwFCwBCZasARFW1ghIyEbilggsFBQWCGwQFkbILA4UFghsDhZWSCwCkVhZLAoUFghsApFILAwUFghsDBZGyCwwFBYIGYgiophILAKUFhgGyCwIFBYIbAKYBsgsDZQWCGwNmAbYFlZWRuwACtZWSOwAFBYZVlZLbACLCBFILAEJWFkILAFQ1BYsAUjQrAGI0IbISFZsAFgLbADLCMhIyEgZLEFYkIgsAYjQrIKAAIqISCwBkMgiiCKsAArsTAFJYpRWGBQG2FSWVgjWSEgsEBTWLAAKxshsEBZI7AAUFhlWS2wBCywB0MrsgACAENgQi2wBSywByNCIyCwACNCYbCAYrABYLAEKi2wBiwgIEUgsAJFY7ABRWJgRLABYC2wBywgIEUgsAArI7ECBCVgIEWKI2EgZCCwIFBYIbAAG7AwUFiwIBuwQFlZI7AAUFhlWbADJSNhRESwAWAtsAgssQUFRbABYUQtsAkssAFgICCwCUNKsABQWCCwCSNCWbAKQ0qwAFJYILAKI0JZLbAKLCC4BABiILgEAGOKI2GwC0NgIIpgILALI0IjLbALLEtUWLEHAURZJLANZSN4LbAMLEtRWEtTWLEHAURZGyFZJLATZSN4LbANLLEADENVWLEMDEOwAWFCsAorWbAAQ7ACJUKxCQIlQrEKAiVCsAEWIyCwAyVQWLEBAENgsAQlQoqKIIojYbAJKiEjsAFhIIojYbAJKiEbsQEAQ2CwAiVCsAIlYbAJKiFZsAlDR7AKQ0dgsIBiILACRWOwAUViYLEAABMjRLABQ7AAPrIBAQFDYEItsA4ssQAFRVRYALAMI0IgYLABYbUNDQEACwBCQopgsQ0FK7BtKxsiWS2wDyyxAA4rLbAQLLEBDistsBEssQIOKy2wEiyxAw4rLbATLLEEDistsBQssQUOKy2wFSyxBg4rLbAWLLEHDistsBcssQgOKy2wGCyxCQ4rLbAZLLAIK7EABUVUWACwDCNCIGCwAWG1DQ0BAAsAQkKKYLENBSuwbSsbIlktsBossQAZKy2wGyyxARkrLbAcLLECGSstsB0ssQMZKy2wHiyxBBkrLbAfLLEFGSstsCAssQYZKy2wISyxBxkrLbAiLLEIGSstsCMssQkZKy2wJCwgPLABYC2wJSwgYLANYCBDI7ABYEOwAiVhsAFgsCQqIS2wJiywJSuwJSotsCcsICBHICCwAkVjsAFFYmAjYTgjIIpVWCBHICCwAkVjsAFFYmAjYTgbIVktsCgssQAFRVRYALABFrAnKrABFTAbIlktsCkssAgrsQAFRVRYALABFrAnKrABFTAbIlktsCosIDWwAWAtsCssALADRWOwAUVisAArsAJFY7ABRWKwACuwABa0AAAAAABEPiM4sSoBFSotsCwsIDwgRyCwAkVjsAFFYmCwAENhOC2wLSwuFzwtsC4sIDwgRyCwAkVjsAFFYmCwAENhsAFDYzgtsC8ssQIAFiUgLiBHsAAjQrACJUmKikcjRyNhIFhiGyFZsAEjQrIuAQEVFCotsDAssAAWsAQlsAQlRyNHI2GwBkUrZYouIyAgPIo4LbAxLLAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjILAIQyCKI0cjRyNhI0ZgsARDsIBiYCCwACsgiophILACQ2BkI7ADQ2FkUFiwAkNhG7ADQ2BZsAMlsIBiYSMgILAEJiNGYTgbI7AIQ0awAiWwCENHI0cjYWAgsARDsIBiYCMgsAArI7AEQ2CwACuwBSVhsAUlsIBisAQmYSCwBCVgZCOwAyVgZFBYIRsjIVkjICCwBCYjRmE4WS2wMiywABYgICCwBSYgLkcjRyNhIzw4LbAzLLAAFiCwCCNCICAgRiNHsAArI2E4LbA0LLAAFrADJbACJUcjRyNhsABUWC4gPCMhG7ACJbACJUcjRyNhILAFJbAEJUcjRyNhsAYlsAUlSbACJWGwAUVjIyBYYhshWWOwAUViYCMuIyAgPIo4IyFZLbA1LLAAFiCwCEMgLkcjRyNhIGCwIGBmsIBiIyAgPIo4LbA2LCMgLkawAiVGUlggPFkusSYBFCstsDcsIyAuRrACJUZQWCA8WS6xJgEUKy2wOCwjIC5GsAIlRlJYIDxZIyAuRrACJUZQWCA8WS6xJgEUKy2wOSywMCsjIC5GsAIlRlJYIDxZLrEmARQrLbA6LLAxK4ogIDywBCNCijgjIC5GsAIlRlJYIDxZLrEmARQrsARDLrAmKy2wOyywABawBCWwBCYgLkcjRyNhsAZFKyMgPCAuIzixJgEUKy2wPCyxCAQlQrAAFrAEJbAEJSAuRyNHI2EgsAQjQrAGRSsgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjIEewBEOwgGJgILAAKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwgGJhsAIlRmE4IyA8IzgbISAgRiNHsAArI2E4IVmxJgEUKy2wPSywMCsusSYBFCstsD4ssDErISMgIDywBCNCIzixJgEUK7AEQy6wJistsD8ssAAVIEewACNCsgABARUUEy6wLCotsEAssAAVIEewACNCsgABARUUEy6wLCotsEEssQABFBOwLSotsEIssC8qLbBDLLAAFkUjIC4gRoojYTixJgEUKy2wRCywCCNCsEMrLbBFLLIAADwrLbBGLLIAATwrLbBHLLIBADwrLbBILLIBATwrLbBJLLIAAD0rLbBKLLIAAT0rLbBLLLIBAD0rLbBMLLIBAT0rLbBNLLIAADkrLbBOLLIAATkrLbBPLLIBADkrLbBQLLIBATkrLbBRLLIAADsrLbBSLLIAATsrLbBTLLIBADsrLbBULLIBATsrLbBVLLIAAD4rLbBWLLIAAT4rLbBXLLIBAD4rLbBYLLIBAT4rLbBZLLIAADorLbBaLLIAATorLbBbLLIBADorLbBcLLIBATorLbBdLLAyKy6xJgEUKy2wXiywMiuwNistsF8ssDIrsDcrLbBgLLAAFrAyK7A4Ky2wYSywMysusSYBFCstsGIssDMrsDYrLbBjLLAzK7A3Ky2wZCywMyuwOCstsGUssDQrLrEmARQrLbBmLLA0K7A2Ky2wZyywNCuwNystsGgssDQrsDgrLbBpLLA1Ky6xJgEUKy2waiywNSuwNistsGsssDUrsDcrLbBsLLA1K7A4Ky2wbSwrsAhlsAMkUHiwARUwLQAAAEu4AMhSWLEBAY5ZuQgACABjILABI0SwAyNwsgQoCUVSRLIKAgcqsQYBRLEkAYhRWLBAiFixBgNEsSYBiFFYuAQAiFixBgFEWVlZWbgB/4WwBI2xBQBEAAA=") 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");
}
.semantic .ui.checkbox label:before,
.semantic .ui.checkbox .box:before,
.semantic .ui.checkbox label:after,
.semantic .ui.checkbox .box:after {
  font-family: "Checkbox";
}
.semantic .ui.checkbox label:after,
.semantic .ui.checkbox .box:after {
  content: "\e800";
}
.semantic .dimmable {
  position: relative;
}
.semantic .ui.dimmer {
  display: none;
  position: absolute;
  top: 0em !important;
  left: 0em !important;
  width: 100%;
  height: 100%;
  text-align: center;
  vertical-align: middle;
  background: 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;
  -webkit-transition: background-color 0.5s linear;
  transition: background-color 0.5s linear;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  will-change: opacity;
  z-index: 1000;
}
.semantic .ui.dimmer > .content {
  width: 100%;
  height: 100%;
  display: table;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}
.semantic .ui.dimmer > .content > div {
  display: table-cell;
  vertical-align: middle;
  color: #ffffff;
}
.semantic .ui.segment > .ui.dimmer {
  border-radius: inherit !important;
}
.semantic .animating.dimmable:not(body),
.semantic .dimmed.dimmable:not(body) {
  overflow: hidden;
}
.semantic .dimmed.dimmable > .ui.animating.dimmer,
.semantic .dimmed.dimmable > .ui.visible.dimmer,
.semantic .ui.active.dimmer {
  display: block;
  opacity: 1;
}
.semantic .ui.disabled.dimmer {
  width: 0 !important;
  height: 0 !important;
}
.semantic .ui.page.dimmer {
  position: fixed;
  -webkit-transform-style: "";
  transform-style: "";
  -webkit-perspective: 2000px;
  perspective: 2000px;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}
.semantic body.animating.in.dimmable,
.semantic body.dimmed.dimmable {
  overflow: hidden;
}
.semantic body.dimmable > .dimmer {
  position: fixed;
}
.semantic .ui.dimmer > .top.aligned.content > * {
  vertical-align: top;
}
.semantic .ui.dimmer > .bottom.aligned.content > * {
  vertical-align: bottom;
}
.semantic .ui.inverted.dimmer {
  background: rgba(255, 255, 255, 0.85);
}
.semantic .ui.inverted.dimmer > .content > * {
  color: #ffffff;
}
.semantic .ui.simple.dimmer {
  display: block;
  overflow: hidden;
  opacity: 1;
  width: 0%;
  height: 0%;
  z-index: -100;
  background-color: rgba(0, 0, 0, 0);
}
.semantic .dimmed.dimmable > .ui.simple.dimmer {
  overflow: visible;
  opacity: 1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.85);
  z-index: 1;
}
.semantic .ui.simple.inverted.dimmer {
  background: rgba(255, 255, 255, 0);
}
.semantic .dimmed.dimmable > .ui.simple.inverted.dimmer {
  background: rgba(255, 255, 255, 0.85);
}
.semantic .ui.dropdown {
  cursor: pointer;
  position: relative;
  display: inline-block;
  line-height: 1em;
  tap-highlight-color: rgba(0, 0, 0, 0);
  outline: none;
  text-align: left;
  -webkit-transition: border-radius 0.1s ease, width 0.2s ease;
  transition: border-radius 0.1s ease, width 0.2s ease;
}
.semantic .ui.dropdown .menu {
  cursor: auto;
  position: absolute;
  display: none;
  outline: none;
  top: 100%;
  margin: 0em 0em;
  padding: 0em 0em;
  background: #ffffff;
  min-width: 100%;
  white-space: nowrap;
  font-size: 1rem;
  text-shadow: none;
  text-align: left;
  box-shadow: 0px 1px 4px 0px rgba(39, 41, 43, 0.15);
  border: 1px solid rgba(39, 41, 43, 0.15);
  border-radius: 0em 0em 0 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  z-index: 11;
  will-change: transform, opacity;
}
.semantic .ui.dropdown > input:not(.search):first-child,
.semantic .ui.dropdown > select {
  display: none !important;
}
.semantic .ui.dropdown > .dropdown.icon {
  width: auto;
  margin: 0em 0em 0em 1em;
}
.semantic .ui.dropdown .menu > .item .dropdown.icon {
  width: auto;
  float: right;
  margin: 0em 0em 0em 1em;
}
.semantic .ui.dropdown .menu > .item .dropdown.icon + .text {
  margin-right: 1em;
}
.semantic .ui.dropdown > .text {
  display: inline-block;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.semantic .ui.dropdown .menu > .item {
  position: relative;
  cursor: pointer;
  display: block;
  border: none;
  height: auto;
  border-top: none;
  line-height: 1em;
  color: rgba(0, 0, 0, 0.8);
  padding: 0.71428571em 1.14285714em !important;
  font-size: 1rem;
  text-transform: none;
  font-weight: normal;
  box-shadow: none;
  -webkit-touch-callout: none;
}
.semantic .ui.dropdown .menu > .item:first-child {
  border-top-width: 0px;
}
.semantic .ui.dropdown > .text > [class*="right floated"],
.semantic .ui.dropdown .menu .item > [class*="right floated"] {
  float: right !important;
  margin-right: 0em !important;
  margin-left: 1em !important;
}
.semantic .ui.dropdown > .text > [class*="left floated"],
.semantic .ui.dropdown .menu .item > [class*="left floated"] {
  float: left !important;
  margin-left: 0em !important;
  margin-right: 1em !important;
}
.semantic .ui.dropdown .menu .item > .icon.floated,
.semantic .ui.dropdown .menu .item > .flag.floated,
.semantic .ui.dropdown .menu .item > .image.floated,
.semantic .ui.dropdown .menu .item > img.floated {
  margin-top: 0em;
}
.semantic .ui.dropdown .menu > .header {
  margin: 1rem 0rem 0.75rem;
  padding: 0em 1.14285714em;
  color: rgba(0, 0, 0, 0.85);
  font-size: 0.8em;
  font-weight: bold;
  text-transform: uppercase;
}
.semantic .ui.dropdown .menu > .divider {
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  height: 0em;
  margin: 0.5em 0em;
}
.semantic .ui.dropdown .menu > .input {
  margin: 0.75rem 1.14285714em;
  min-width: 200px;
}
.semantic .ui.dropdown .menu > .header + .input {
  margin-top: 0em;
}
.semantic .ui.dropdown .menu > .input:not(.transparent) input {
  padding: 0.5em 1em;
}
.semantic .ui.dropdown .menu > .input:not(.transparent) .button,
.semantic .ui.dropdown .menu > .input:not(.transparent) .icon,
.semantic .ui.dropdown .menu > .input:not(.transparent) .label {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.semantic .ui.dropdown > .text > .description,
.semantic .ui.dropdown .menu > .item > .description {
  margin: 0em 0em 0em 1em;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.dropdown .menu .menu {
  top: 0% !important;
  left: 100% !important;
  right: auto !important;
  margin: 0em 0em 0em -0.5em !important;
  border-radius: 0em 0 0 0em !important;
  z-index: 21 !important;
}
.semantic .ui.dropdown .menu .menu:after {
  display: none;
}
.semantic .ui.dropdown > .text > .icon,
.semantic .ui.dropdown > .text > .label,
.semantic .ui.dropdown > .text > .flag,
.semantic .ui.dropdown > .text > img,
.semantic .ui.dropdown > .text > .image {
  margin-top: 0em;
}
.semantic .ui.dropdown .menu > .item > .icon,
.semantic .ui.dropdown .menu > .item > .label,
.semantic .ui.dropdown .menu > .item > .flag,
.semantic .ui.dropdown .menu > .item > .image,
.semantic .ui.dropdown .menu > .item > img {
  margin-top: 0em;
}
.semantic .ui.dropdown > .text > .icon,
.semantic .ui.dropdown > .text > .label,
.semantic .ui.dropdown > .text > .flag,
.semantic .ui.dropdown > .text > img,
.semantic .ui.dropdown > .text > .image,
.semantic .ui.dropdown .menu > .item > .icon,
.semantic .ui.dropdown .menu > .item > .label,
.semantic .ui.dropdown .menu > .item > .flag,
.semantic .ui.dropdown .menu > .item > .image,
.semantic .ui.dropdown .menu > .item > img {
  margin-left: 0em;
  float: none;
  margin-right: 0.75em;
}
.semantic .ui.dropdown > .text > img,
.semantic .ui.dropdown > .text > .image,
.semantic .ui.dropdown .menu > .item > .image,
.semantic .ui.dropdown .menu > .item > img {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  max-height: 2.5em;
}
.semantic .ui.dropdown .ui.menu > .item:before,
.semantic .ui.menu .ui.dropdown .menu > .item:before {
  display: none;
}
.semantic .ui.menu .ui.dropdown .menu .active.item {
  border-left: none;
}
.semantic .ui.menu .right.menu .dropdown:last-child .menu,
.semantic .ui.menu .right.dropdown.item .menu,
.semantic .ui.buttons > .ui.dropdown:last-child .menu {
  left: auto;
  right: 0em;
}
.semantic .ui.dropdown.icon.button > .dropdown.icon {
  margin: 0em;
}
.semantic .ui.dropdown.button:not(.pointing):not(.floating).active,
.semantic .ui.dropdown.button:not(.pointing):not(.floating).visible {
  border-bottom-left-radius: 0em;
  border-bottom-right-radius: 0em;
}
.semantic .ui.selection.dropdown {
  cursor: pointer;
  word-wrap: break-word;
  white-space: normal;
  outline: 0;
  -webkit-transform: rotateZ(0deg);
  transform: rotateZ(0deg);
  min-width: 100px;
  background: #ffffff;
  display: inline-block;
  padding: 0.8em 1.1em;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: none;
  border: 1px solid rgba(39, 41, 43, 0.15);
  border-radius: 0;
  -webkit-transition: border-radius 0.1s ease, width 0.2s ease, box-shadow 0.2s ease, border 0.2s ease;
  transition: border-radius 0.1s ease, width 0.2s ease, box-shadow 0.2s ease, border 0.2s ease;
}
.semantic .ui.selection.dropdown.visible,
.semantic .ui.selection.dropdown.active {
  z-index: 10;
}
.semantic select.ui.dropdown {
  height: 38px;
  padding: 0.5em;
  border: 1px solid rgba(39, 41, 43, 0.15);
  visibility: visible;
}
.semantic .ui.selection.dropdown > .text {
  margin-right: 2em;
}
.semantic .ui.selection.dropdown > .search.icon,
.semantic .ui.selection.dropdown > .delete.icon,
.semantic .ui.selection.dropdown > .dropdown.icon {
  cursor: pointer;
  position: absolute;
  top: auto;
  width: auto;
  margin: -0.8em;
  padding: 0.8em;
  right: 1.1em;
  opacity: 0.8;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.semantic .ui.compact.selection.dropdown {
  min-width: 0px;
}
.semantic .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;
  margin: 0px -1px;
  min-width: -webkit-calc(100% + 2px );
  min-width: calc(100% + 2px);
  outline: none;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  -webkit-transition: box-shadow 0.2s ease, border 0.2s ease;
  transition: box-shadow 0.2s ease, border 0.2s ease;
}
.semantic .ui.selection.dropdown .menu:after,
.semantic .ui.selection.dropdown .menu:before {
  display: none;
}
@media all and (-ms-high-contrast: none) {
  .semantic .ui.selection.dropdown .menu {
    min-width: -webkit-calc(100% - 15px );
    min-width: calc(100% - 15px);
  }
}
@media only screen and (max-width: 767px) {
  .semantic .ui.selection.dropdown .menu {
    max-height: 7.49991429em;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.selection.dropdown .menu {
    max-height: 9.99988571em;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.selection.dropdown .menu {
    max-height: 14.99982857em;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.selection.dropdown .menu {
    max-height: 19.99977143em;
  }
}
.semantic .ui.selection.dropdown .menu > .item {
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  padding-left: 1.1em !important;
  /* Add in spacing for scroll bar */
  padding-right: -webkit-calc( 1.1em + 1em) !important;
  padding-right: 2.1em !important;
  white-space: normal;
  word-wrap: normal;
}
.semantic .ui.selection.dropdown:hover {
  border-color: rgba(39, 41, 43, 0.3);
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.05);
}
.semantic .ui.selection.dropdown.disabled,
.semantic .ui.selection.dropdown.disabled:hover {
  cursor: default;
  box-shadow: none;
  color: rgba(0, 0, 0, 0.8);
  border: 1px solid rgba(39, 41, 43, 0.15);
  opacity: 0.3 !important;
}
.semantic .ui.selection.dropdown.visible {
  border-color: rgba(39, 41, 43, 0.3);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.08);
}
.semantic .ui.selection.visible.dropdown .menu {
  border-color: rgba(39, 41, 43, 0.3);
  box-shadow: 0px 2px 6px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.selection.visible.dropdown:hover {
  border-color: rgba(39, 41, 43, 0.3);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.08);
}
.semantic .ui.selection.visible.dropdown .menu {
  border-color: rgba(39, 41, 43, 0.3);
  box-shadow: 0px 2px 6px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.selection.active.dropdown > .text:not(.default),
.semantic .ui.selection.visible.dropdown > .text:not(.default) {
  font-weight: normal;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.active.selection.dropdown > .dropdown.icon,
.semantic .ui.visible.selection.dropdown > .dropdown.icon {
  opacity: 1;
  z-index: 3;
}
.semantic .ui.active.selection.dropdown,
.semantic .ui.visible.selection.dropdown {
  border-bottom-left-radius: 0em !important;
  border-bottom-right-radius: 0em !important;
}
.semantic .ui.search.dropdown {
  min-width: "";
}
.semantic .ui.search.dropdown > input.search {
  background: none transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0em !important;
  cursor: pointer;
  top: 0em;
  left: 0em;
  width: 100%;
  outline: none;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  padding: inherit;
}
.semantic .ui.search.dropdown > input.search {
  position: absolute;
  z-index: 2;
}
.semantic .ui.search.dropdown > .text {
  cursor: text;
  position: relative;
  z-index: 3;
}
.semantic .ui.search.selection.dropdown > input.search {
  line-height: 1.2142em;
  padding: 0.6929em 1.1em;
}
.semantic .ui.search.dropdown.active > input.search,
.semantic .ui.search.dropdown.visible > input.search {
  cursor: auto;
}
.semantic .ui.search.dropdown.active > .text,
.semantic .ui.search.dropdown.visible > .text {
  pointer-events: none;
}
.semantic .ui.active.search.dropdown > input.search:focus + .text {
  color: rgba(0, 0, 0, 0.4) !important;
}
.semantic .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) {
  .semantic .ui.search.dropdown .menu {
    max-height: 7.49991429em;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.search.dropdown .menu {
    max-height: 9.99988571em;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.search.dropdown .menu {
    max-height: 14.99982857em;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.search.dropdown .menu {
    max-height: 19.99977143em;
  }
}
.semantic .ui.inline.dropdown {
  cursor: pointer;
  display: inline-block;
  color: inherit;
}
.semantic .ui.inline.dropdown .dropdown.icon {
  margin: 0em 0.5em 0em 0.25em;
  vertical-align: top;
}
.semantic .ui.inline.dropdown > .text {
  font-weight: bold;
}
.semantic .ui.inline.dropdown .menu {
  cursor: auto;
  margin-top: 0.25em;
  border-radius: 0;
}
.semantic .ui.dropdown .menu > .item:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
  z-index: 13;
}
.semantic .ui.dropdown .menu .active.item {
  background: transparent;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: none;
  z-index: 12;
}
.semantic .ui.dropdown > .default.text,
.semantic .ui.default.dropdown > .text {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.dropdown:hover > .default.text,
.semantic .ui.default.dropdown:hover > .text {
  color: rgba(140, 140, 140, 0.7);
}
.semantic .ui.loading.dropdown > .text {
  -webkit-transition: none;
  transition: none;
}
.semantic .ui.dropdown > .loading.menu {
  display: block;
  visibility: hidden;
  z-index: -1;
}
.semantic .ui.dropdown.selected,
.semantic .ui.dropdown .menu .selected.item {
  background: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.dropdown > .filtered.text {
  visibility: hidden;
}
.semantic .ui.dropdown .filtered.item {
  display: none !important;
}
.semantic .ui.dropdown.error,
.semantic .ui.dropdown.error > .text,
.semantic .ui.dropdown.error > .default.text {
  color: #a94442;
}
.semantic .ui.selection.dropdown.error {
  background: #fff0f0;
  border-color: #dbb1b1;
}
.semantic .ui.selection.dropdown.error:hover {
  border-color: #dbb1b1;
}
.semantic .ui.dropdown.error > .menu,
.semantic .ui.dropdown.error > .menu .menu {
  border-color: #dbb1b1;
}
.semantic .ui.dropdown.error > .menu > .item {
  color: #d95c5c;
}
.semantic .ui.dropdown.error > .menu > .item:hover {
  background-color: #fff2f2;
}
.semantic .ui.dropdown.error > .menu .active.item {
  background-color: #fdcfcf;
}
.semantic .ui.disabled.dropdown {
  cursor: default;
  pointer-events: none;
  opacity: 0.3;
}
.semantic .ui.dropdown .menu {
  left: 0px;
}
.semantic .ui.dropdown .right.menu > .menu,
.semantic .ui.dropdown .menu .right.menu {
  left: 100% !important;
  right: auto !important;
}
.semantic .ui.dropdown > .left.menu .menu,
.semantic .ui.dropdown .menu .left.menu {
  left: auto !important;
  right: 100% !important;
}
.semantic .ui.dropdown .item .left.dropdown.icon,
.semantic .ui.dropdown .left.menu .item .dropdown.icon {
  width: auto;
  float: left;
  margin: 0em 0.75em 0em 0em;
}
.semantic .ui.dropdown .item .left.dropdown.icon,
.semantic .ui.dropdown .left.menu .item .dropdown.icon {
  width: auto;
  float: left;
  margin: 0em 0.75em 0em 0em;
}
.semantic .ui.dropdown .item .left.dropdown.icon + .text,
.semantic .ui.dropdown .left.menu .item .dropdown.icon + .text {
  margin-left: 1em;
}
.semantic .ui.upward.dropdown > .menu {
  top: auto;
  bottom: 100%;
  box-shadow: 0px 0px 4px 0px rgba(39, 41, 43, 0.15);
  border-radius: 0 0 0em 0em;
}
.semantic .ui.simple.upward.active.dropdown,
.semantic .ui.simple.upward.dropdown:hover {
  border-radius: 0 0 0em 0em !important;
}
.semantic .ui.upward.dropdown.button:not(.pointing):not(.floating).active,
.semantic .ui.upward.dropdown.button:not(.pointing):not(.floating).visible {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.upward.selection.dropdown .menu {
  border-top-width: 1px !important;
  border-bottom-width: 0px !important;
}
.semantic .ui.upward.selection.dropdown:hover {
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.05);
}
.semantic .ui.upward.selection.visible.dropdown:hover {
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.05);
}
.semantic .ui.active.upward.selection.dropdown,
.semantic .ui.visible.upward.selection.dropdown {
  border-radius: 0em 0em 0 0 !important;
}
.semantic .ui.upward.selection.dropdown.visible {
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.08);
}
.semantic .ui.upward.selection.visible.dropdown:hover .menu {
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.08);
}
.semantic .ui.simple.dropdown .menu:before,
.semantic .ui.simple.dropdown .menu:after {
  display: none;
}
.semantic .ui.simple.dropdown .menu {
  position: absolute;
  display: block;
  overflow: hidden;
  top: -9999px !important;
  opacity: 0;
  width: 0;
  height: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.semantic .ui.simple.active.dropdown,
.semantic .ui.simple.dropdown:hover {
  border-bottom-left-radius: 0em !important;
  border-bottom-right-radius: 0em !important;
}
.semantic .ui.simple.active.dropdown > .menu,
.semantic .ui.simple.dropdown:hover > .menu {
  overflow: visible;
  width: auto;
  height: auto;
  top: 100% !important;
  opacity: 1;
}
.semantic .ui.simple.dropdown > .menu > .item:active > .menu,
.semantic .ui.simple.dropdown:hover > .menu > .item:hover > .menu {
  overflow: visible;
  width: auto;
  height: auto;
  top: 0% !important;
  left: 100% !important;
  opacity: 1;
}
.semantic .ui.simple.disabled.dropdown:hover .menu {
  display: none;
  height: 0px;
  width: 0px;
  overflow: hidden;
}
.semantic .ui.simple.visible.dropdown > .menu {
  display: block;
}
.semantic .ui.fluid.dropdown {
  display: block;
  width: 100%;
  min-width: 0em;
}
.semantic .ui.fluid.dropdown > .dropdown.icon {
  float: right;
}
.semantic .ui.floating.dropdown .menu {
  left: 0;
  right: auto;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
  border-radius: 0;
}
.semantic .ui.floating.dropdown > .menu {
  margin-top: 0.5em !important;
}
.semantic .ui.pointing.dropdown > .menu {
  top: 100%;
  margin-top: 0.75em;
  border-radius: 0;
}
.semantic .ui.pointing.dropdown > .menu:after {
  display: block;
  position: absolute;
  pointer-events: none;
  content: "";
  visibility: visible;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 0.5em;
  height: 0.5em;
  box-shadow: -1px -1px 0px 1px rgba(0, 0, 0, 0.1);
  background: #ffffff;
  z-index: 2;
}
.semantic .ui.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: 50%;
  margin: 0em 0em 0em -0.25em;
}
.semantic .ui.top.left.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  left: 0%;
  right: auto;
  margin: 1em 0em 0em;
}
.semantic .ui.top.left.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  left: 0%;
  right: auto;
  margin: 1em 0em 0em;
}
.semantic .ui.top.left.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: 1em;
  right: auto;
  margin: 0em;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.semantic .ui.top.right.pointing.dropdown > .menu {
  top: 100%;
  bottom: auto;
  right: 0%;
  left: auto;
  margin: 1em 0em 0em;
}
.semantic .ui.top.right.pointing.dropdown > .menu:after {
  top: -0.25em;
  left: auto;
  right: 1em;
  margin: 0em;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.semantic .ui.left.pointing.dropdown > .menu {
  top: 0%;
  left: 100%;
  right: auto;
  margin: 0em 0em 0em 1em;
}
.semantic .ui.left.pointing.dropdown > .menu:after {
  top: 1em;
  left: -0.25em;
  margin: 0em 0em 0em 0em;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.semantic .ui.right.pointing.dropdown > .menu {
  top: 0%;
  left: auto;
  right: 100%;
  margin: 0em 1em 0em 0em;
}
.semantic .ui.right.pointing.dropdown > .menu:after {
  top: 1em;
  left: auto;
  right: -0.25em;
  margin: 0em 0em 0em 0em;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}
.semantic .ui.bottom.pointing.dropdown > .menu {
  top: auto;
  bottom: 100%;
  left: 0%;
  right: auto;
  margin: 0em 0em 1em;
}
.semantic .ui.bottom.pointing.dropdown > .menu:after {
  top: auto;
  bottom: -0.25em;
  right: auto;
  margin: 0em;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.semantic .ui.bottom.pointing.dropdown > .menu .menu {
  top: auto !important;
  bottom: 0px !important;
}
.semantic .ui.bottom.left.pointing.dropdown > .menu {
  left: 0%;
  right: auto;
}
.semantic .ui.bottom.left.pointing.dropdown > .menu:after {
  left: 1em;
  right: auto;
}
.semantic .ui.bottom.right.pointing.dropdown > .menu {
  right: 0%;
  left: auto;
}
.semantic .ui.bottom.right.pointing.dropdown > .menu:after {
  left: auto;
  right: 1em;
}
@font-face {
  font-family: "Dropdown";
  src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfuIIAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zjo82LgAAAFwAAABVGhlYWQAQ88bAAACxAAAADZoaGVhAwcB6QAAAvwAAAAkaG10eAS4ABIAAAMgAAAAIGxvY2EBNgDeAAADQAAAABJtYXhwAAoAFgAAA1QAAAAgbmFtZVcZpu4AAAN0AAABRXBvc3QAAwAAAAAEvAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDX//3//wAB/+MPLQADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAIABJQElABMAABM0NzY3BTYXFhUUDwEGJwYvASY1AAUGBwEACAUGBoAFCAcGgAUBEgcGBQEBAQcECQYHfwYBAQZ/BwYAAQAAAG4BJQESABMAADc0PwE2MzIfARYVFAcGIyEiJyY1AAWABgcIBYAGBgUI/wAHBgWABwaABQWABgcHBgUFBgcAAAABABIASQC3AW4AEwAANzQ/ATYXNhcWHQEUBwYnBi8BJjUSBoAFCAcFBgYFBwgFgAbbBwZ/BwEBBwQJ/wgEBwEBB38GBgAAAAABAAAASQClAW4AEwAANxE0NzYzMh8BFhUUDwEGIyInJjUABQYHCAWABgaABQgHBgVbAQAIBQYGgAUIBwWABgYFBwAAAAEAAAABAADZuaKOXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAAAAACgAUAB4AQgBkAIgAqgAAAAEAAAAIABQAAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAOAAAAAQAAAAAAAgAOAEcAAQAAAAAAAwAOACQAAQAAAAAABAAOAFUAAQAAAAAABQAWAA4AAQAAAAAABgAHADIAAQAAAAAACgA0AGMAAwABBAkAAQAOAAAAAwABBAkAAgAOAEcAAwABBAkAAwAOACQAAwABBAkABAAOAFUAAwABBAkABQAWAA4AAwABBAkABgAOADkAAwABBAkACgA0AGMAaQBjAG8AbQBvAG8AbgBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbQBvAG8Abmljb21vb24AaQBjAG8AbQBvAG8AbgBSAGUAZwB1AGwAYQByAGkAYwBvAG0AbwBvAG4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=") format("truetype"), url("data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAAVwAAoAAAAABSgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAdkAAAHZLDXE/09TLzIAAALQAAAAYAAAAGAIIweQY21hcAAAAzAAAABMAAAATA9+4ghnYXNwAAADfAAAAAgAAAAIAAAAEGhlYWQAAAOEAAAANgAAADYAQ88baGhlYQAAA7wAAAAkAAAAJAMHAelobXR4AAAD4AAAACAAAAAgBLgAEm1heHAAAAQAAAAABgAAAAYACFAAbmFtZQAABAgAAAFFAAABRVcZpu5wb3N0AAAFUAAAACAAAAAgAAMAAAEABAQAAQEBCGljb21vb24AAQIAAQA6+BwC+BsD+BgEHgoAGVP/i4seCgAZU/+LiwwHi2v4lPh0BR0AAACIDx0AAACNER0AAAAJHQAAAdASAAkBAQgPERMWGyAlKmljb21vb25pY29tb29udTB1MXUyMHVGMEQ3dUYwRDh1RjBEOXVGMERBAAACAYkABgAIAgABAAQABwAKAA0AVgCfAOgBL/yUDvyUDvyUDvuUDvtvi/emFYuQjZCOjo+Pj42Qiwj3lIsFkIuQiY6Hj4iNhouGi4aJh4eHCPsU+xQFiIiGiYaLhouHjYeOCPsU9xQFiI+Jj4uQCA77b4v3FBWLkI2Pjo8I9xT3FAWPjo+NkIuQi5CJjogI9xT7FAWPh42Hi4aLhomHh4eIiIaJhosI+5SLBYaLh42HjoiPiY+LkAgO+92d928Vi5CNkI+OCPcU9xQFjo+QjZCLkIuPiY6Hj4iNhouGCIv7lAWLhomHh4iIh4eJhouGi4aNiI8I+xT3FAWHjomPi5AIDvvdi+YVi/eUBYuQjZCOjo+Pj42Qi5CLkImOhwj3FPsUBY+IjYaLhouGiYeHiAj7FPsUBYiHhomGi4aLh42Hj4iOiY+LkAgO+JQU+JQViwwKAAAAAAMCAAGQAAUAAAFMAWYAAABHAUwBZgAAAPUAGQCEAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAA8NoB4P/g/+AB4AAgAAAAAQAAAAAAAAAAAAAAIAAAAAAAAgAAAAMAAAAUAAMAAQAAABQABAA4AAAACgAIAAIAAgABACDw2v/9//8AAAAAACDw1//9//8AAf/jDy0AAwABAAAAAAAAAAAAAAABAAH//wAPAAEAAAABAAA5emozXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAUAAACAAAAAAADgCuAAEAAAAAAAEADgAAAAEAAAAAAAIADgBHAAEAAAAAAAMADgAkAAEAAAAAAAQADgBVAAEAAAAAAAUAFgAOAAEAAAAAAAYABwAyAAEAAAAAAAoANABjAAMAAQQJAAEADgAAAAMAAQQJAAIADgBHAAMAAQQJAAMADgAkAAMAAQQJAAQADgBVAAMAAQQJAAUAFgAOAAMAAQQJAAYADgA5AAMAAQQJAAoANABjAGkAYwBvAG0AbwBvAG4AVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG0AbwBvAG5pY29tb29uAGkAYwBvAG0AbwBvAG4AUgBlAGcAdQBsAGEAcgBpAGMAbwBtAG8AbwBuAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA") format("woff");
  font-weight: normal;
  font-style: normal;
}
.semantic .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;
}
.semantic .ui.dropdown > .dropdown.icon {
  width: auto;
}
.semantic .ui.dropdown > .dropdown.icon:before {
  content: "\f0d7";
}
.semantic .ui.dropdown .menu .item .dropdown.icon:before {
  content: "\f0da";
}
.semantic .ui.dropdown .item .left.dropdown.icon:before,
.semantic .ui.dropdown .left.menu .item .dropdown.icon:before {
  content: "\f0d9";
}
.semantic .ui.upward.dropdown > .dropdown.icon:before {
  content: "\f0d8";
}
.semantic .ui.vertical.menu .dropdown.item > .dropdown.icon:before {
  content: "\f0da";
}
.semantic .ui.product.accordion .ui.dropdown .default.text {
  line-height: 1.25em;
  z-index: 9999;
}
.semantic .ui.product.accordion .ui.selection.dropdown > .text {
  line-height: 1.25em;
  z-index: 9999;
}
.semantic .ui.modal {
  display: none;
  position: fixed;
  z-index: 1001;
  top: 50%;
  left: 50%;
  text-align: left;
  width: 90%;
  margin-left: -45%;
  background: #e2e2e2;
  border: none;
  box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.3);
  border-radius: 0;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
  will-change: top, left, margin, transform, opacity;
}
.semantic .ui.modal > :first-child:not(.icon),
.semantic .ui.modal > .icon:first-child + * {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.semantic .ui.modal > :last-child {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.semantic .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;
}
.semantic .ui.modal > .close:hover {
  opacity: 1;
}
.semantic .ui.modal > .header {
  display: block;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)) #ffffff;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.05)) #ffffff;
  margin: 0em;
  padding: 1.2rem 2rem;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05);
  font-size: 1.6em;
  line-height: 1.3em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.85);
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.modal > .content {
  display: table;
  table-layout: fixed;
  width: 100%;
  font-size: 1em;
  line-height: 1.4;
  padding: 2rem;
  background: #e2e2e2;
}
.semantic .ui.modal > .content > .image {
  display: table-cell;
  width: "";
  vertical-align: top;
}
.semantic .ui.modal > .content > .image[class*="top aligned"] {
  vertical-align: top;
}
.semantic .ui.modal > .content > .image[class*="middle aligned"] {
  vertical-align: middle;
}
.semantic .ui.modal > .content > .description {
  display: table-cell;
  vertical-align: top;
}
.semantic .ui.modal > .content > .icon + .description,
.semantic .ui.modal > .content > .image + .description {
  min-width: "";
  width: 80%;
  padding-left: 2em;
}
.semantic .ui.modal > .content > .image > i.icon {
  font-size: 8rem;
  margin: 0em;
  opacity: 1;
  width: auto;
}
.semantic .ui.modal .actions {
  background: #efefef;
  padding: 1rem 2rem;
  border-top: 1px solid rgba(39, 41, 43, 0.15);
  text-align: right;
}
.semantic .ui.modal .actions > .button {
  margin-left: 0.75em;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.modal {
    width: 95%;
    margin: 0em 0em 0em -47.5%;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.modal {
    width: 88%;
    margin: 0em 0em 0em -44%;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.modal {
    width: 74%;
    margin: 0em 0em 0em -37%;
  }
}
@media only screen and (min-width: 1400px) {
  .semantic .ui.modal {
    width: 56%;
    margin: 0em 0em 0em -28%;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.modal {
    width: 42%;
    margin: 0em 0em 0em -21%;
  }
}
@media only screen and (max-width: 992px) {
  .semantic .ui.modal > .header {
    padding-right: 2.25rem;
  }
  .semantic .ui.modal > .close {
    top: 0.905rem;
    right: 1rem;
    color: rgba(0, 0, 0, 0.8);
  }
}
@media only screen and (max-width: 767px) {
  .semantic {
    /*rtl:ignore*/
    /*rtl:ignore*/
    /* Let Buttons Stack */
  }
  .semantic .ui.modal > .header {
    padding: 0.75rem 1rem !important;
    padding-right: 2.25rem !important;
  }
  .semantic .ui.modal > .content {
    display: block;
    padding: 1rem !important;
  }
  .semantic .ui.modal > .close {
    top: 0.5rem !important;
    right: 0.5rem !important;
  }
  .semantic .ui.modal .content > .image {
    display: block;
    max-width: 100%;
    margin: 0em auto !important;
    text-align: center;
    padding: 0rem 0rem 1rem !important;
  }
  .semantic .ui.modal > .content > .image > i.icon {
    font-size: 5rem;
    text-align: center;
  }
  .semantic .ui.modal .content > .description {
    display: block;
    width: 100% !important;
    margin: 0em !important;
    padding: 1rem 0rem !important;
    box-shadow: none;
  }
  .semantic .ui.modal > .actions {
    padding: 1rem 1rem 0rem !important;
  }
  .semantic .ui.modal .actions > .buttons,
  .semantic .ui.modal .actions > .button {
    margin-bottom: 1rem;
  }
}
.semantic .ui.basic.modal {
  background-color: transparent;
  border: none;
  border-radius: 0em;
  box-shadow: 0px 0px 0px 0px;
  color: #ffffff;
}
.semantic .ui.basic.modal > .header,
.semantic .ui.basic.modal > .content,
.semantic .ui.basic.modal > .actions {
  background-color: transparent;
}
.semantic .ui.basic.modal > .header {
  color: #ffffff;
}
.semantic .ui.basic.modal > .close {
  top: 1rem;
  right: 1.5rem;
}
@media only screen and (max-width: 992px) {
  .semantic .ui.basic.modal > .close {
    color: #ffffff;
  }
}
.semantic .scrolling.dimmable.dimmed {
  overflow: hidden;
}
.semantic .scrolling.dimmable.dimmed > .dimmer {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.semantic .scrolling.dimmable > .dimmer {
  position: fixed;
}
.semantic .ui.scrolling.modal {
  position: static;
  margin: 3.5rem auto !important;
}
@media only screen and (max-width: 992px) {
  .semantic .ui.scrolling.modal {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}
.semantic .ui.active.modal {
  display: block;
}
.semantic .ui.fullscreen.modal {
  width: 95% !important;
  left: 2.5% !important;
  margin: 1em auto;
}
.semantic .ui.fullscreen.scrolling.modal {
  left: 0em !important;
}
.semantic .ui.fullscreen.modal > .header {
  padding-right: 2.25rem;
}
.semantic .ui.fullscreen.modal > .close {
  top: 0.905rem;
  right: 1rem;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.modal {
  font-size: 1rem;
}
.semantic .ui.small.modal > .header {
  font-size: 1.3em;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.small.modal {
    width: 95%;
    margin: 0em 0em 0em -47.5%;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.small.modal {
    width: 52.8%;
    margin: 0em 0em 0em -26.4%;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.small.modal {
    width: 44.4%;
    margin: 0em 0em 0em -22.2%;
  }
}
@media only screen and (min-width: 1400px) {
  .semantic .ui.small.modal {
    width: 33.6%;
    margin: 0em 0em 0em -16.8%;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.small.modal {
    width: 25.2%;
    margin: 0em 0em 0em -12.6%;
  }
}
.semantic .ui.large.modal > .header {
  font-size: 1.6em;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.large.modal {
    width: 95%;
    margin: 0em 0em 0em -47.5%;
  }
}
@media only screen and (min-width: 768px) {
  .semantic .ui.large.modal {
    width: 88%;
    margin: 0em 0em 0em -44%;
  }
}
@media only screen and (min-width: 992px) {
  .semantic .ui.large.modal {
    width: 88.8%;
    margin: 0em 0em 0em -44.4%;
  }
}
@media only screen and (min-width: 1400px) {
  .semantic .ui.large.modal {
    width: 67.2%;
    margin: 0em 0em 0em -33.6%;
  }
}
@media only screen and (min-width: 1920px) {
  .semantic .ui.large.modal {
    width: 50.4%;
    margin: 0em 0em 0em -25.2%;
  }
}
.semantic .new-pvr.large.modal {
  font-size: 0.9rem;
}
.semantic .ui.new-pvr.modal .form .field textarea {
  height: 8em;
  margin-bottom: 1em;
}
.semantic .ui.modal .form input {
  text-transform: uppercase;
}
.semantic .ui.help.modal {
  padding: 1em;
}
.semantic .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.8);
  border-radius: 0em 0em 0 0;
  -webkit-transition: 0.2s background ease;
  transition: 0.2s background ease;
}
.semantic a.ui.nag {
  cursor: pointer;
}
.semantic .ui.nag > .title {
  display: inline-block;
  margin: 0em 0.5em;
  color: #ffffff;
}
.semantic .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;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.semantic .ui.nag:hover {
  background: #555555;
  opacity: 1;
}
.semantic .ui.nag .close:hover {
  opacity: 1;
}
.semantic .ui.overlay.nag {
  position: absolute;
  display: block;
}
.semantic .ui.fixed.nag {
  position: fixed;
}
.semantic .ui.bottom.nags,
.semantic .ui.bottom.nag {
  border-radius: 0 0 0em 0em;
  top: auto;
  bottom: 0em;
}
.semantic .ui.inverted.nags .nag,
.semantic .ui.inverted.nag {
  background-color: #f0f0f0;
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.inverted.nags .nag .close,
.semantic .ui.inverted.nags .nag .title,
.semantic .ui.inverted.nag .close,
.semantic .ui.inverted.nag .title {
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.nags .nag {
  border-radius: 0em !important;
}
.semantic .ui.nags .nag:last-child {
  border-radius: 0em 0em 0 0;
}
.semantic .ui.bottom.nags .nag:last-child {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.popup {
  display: none;
  position: absolute;
  top: 0px;
  right: 0px;
  /* Fixes content being squished when inline (moz only) */
  min-width: -moz-max-content;
  z-index: 1900;
  border: 1px solid #cccccc;
  max-width: 250px;
  background-color: #ffffff;
  padding: 0.833em 1em;
  font-weight: normal;
  font-style: normal;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.semantic .ui.popup > .header {
  padding: 0em;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 1.125em;
  line-height: 1.2;
  font-weight: bold;
}
.semantic .ui.popup > .header + .content {
  padding-top: 0.5em;
}
.semantic .ui.popup:before {
  position: absolute;
  content: "";
  width: 0.75em;
  height: 0.75em;
  background: #ffffff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  box-shadow: 1px 1px 0px 0px #b3b3b3;
}
.semantic .ui.popup {
  margin: 0em;
}
.semantic .ui.popup.bottom {
  margin: 0.75em 0em 0em;
}
.semantic .ui.popup.top {
  margin: 0em 0em 0.75em;
}
.semantic .ui.popup.left.center {
  margin: 0em 0.75em 0em 0em;
}
.semantic .ui.popup.right.center {
  margin: 0em 0em 0em 0.75em;
}
.semantic .ui.bottom.center.popup:before {
  margin-left: -0.325em;
  top: -0.325em;
  left: 50%;
  right: auto;
  bottom: auto;
  box-shadow: -1px -1px 0px 0px #b3b3b3;
}
.semantic .ui.bottom.left.popup {
  margin-left: 0em;
}
.semantic .ui.bottom.left.popup:before {
  top: -0.325em;
  left: 1em;
  right: auto;
  bottom: auto;
  margin-left: 0em;
  box-shadow: -1px -1px 0px 0px #b3b3b3;
}
.semantic .ui.bottom.right.popup {
  margin-right: 0em;
}
.semantic .ui.bottom.right.popup:before {
  top: -0.325em;
  right: 1em;
  bottom: auto;
  left: auto;
  margin-left: 0em;
  box-shadow: -1px -1px 0px 0px #b3b3b3;
}
.semantic .ui.top.center.popup:before {
  top: auto;
  right: auto;
  bottom: -0.325em;
  left: 50%;
  margin-left: -0.325em;
}
.semantic .ui.top.left.popup {
  margin-left: 0em;
}
.semantic .ui.top.left.popup:before {
  bottom: -0.325em;
  left: 1em;
  top: auto;
  right: auto;
  margin-left: 0em;
}
.semantic .ui.top.right.popup {
  margin-right: 0em;
}
.semantic .ui.top.right.popup:before {
  bottom: -0.325em;
  right: 1em;
  top: auto;
  left: auto;
  margin-left: 0em;
}
.semantic .ui.left.center.popup:before {
  top: 50%;
  right: -0.325em;
  bottom: auto;
  left: auto;
  margin-top: -0.325em;
  box-shadow: 1px -1px 0px 0px #b3b3b3;
}
.semantic .ui.right.center.popup:before {
  top: 50%;
  left: -0.325em;
  bottom: auto;
  right: auto;
  margin-top: -0.325em;
  box-shadow: -1px 1px 0px 0px #b3b3b3;
}
.semantic .ui.popup > .ui.grid:not(.padded) {
  width: -webkit-calc(100% + 1.75rem);
  width: calc(100% + 1.75rem);
  margin: -0.7rem -0.875rem;
}
.semantic .ui.loading.popup {
  display: block;
  visibility: hidden;
  z-index: -1;
}
.semantic .ui.animating.popup,
.semantic .ui.visible.popup {
  display: block;
}
.semantic .ui.basic.popup:before {
  display: none;
}
.semantic .ui.wide.popup {
  max-width: 350px;
}
.semantic .ui[class*="very wide"].popup {
  max-width: 550px;
}
.semantic .ui.fluid.popup {
  width: 100%;
  max-width: none;
}
.semantic .ui.inverted.popup {
  background: #1b1c1d;
  color: #ffffff;
  border: none;
  box-shadow: none;
}
.semantic .ui.inverted.popup .header {
  background-color: none;
  color: #ffffff;
}
.semantic .ui.inverted.popup:before {
  background-color: #1b1c1d;
  box-shadow: none !important;
}
.semantic .ui.flowing.popup {
  max-width: none;
}
.semantic .ui.small.popup {
  font-size: 0.785714rem;
}
.semantic .ui.popup {
  font-size: 0.85714rem;
}
.semantic .ui.large.popup {
  font-size: 1rem;
}
.semantic .ui.huge.popup {
  font-size: 1.14285rem;
}
.semantic .ui.progress {
  position: relative;
  display: block;
  max-width: 100%;
  border: 1px solid rgba(39, 41, 43, 0.15);
  margin: 1em 0em 2.5em;
  box-shadow: none;
  background: rgba(0, 0, 0, 0.03);
  padding: 0.2857em;
  border-radius: 0;
}
.semantic .ui.progress:first-child {
  margin: 0em 0em 2.5em;
}
.semantic .ui.progress:last-child {
  margin: 0em 0em 1.5em;
}
.semantic .ui.indicating.progress .bar[style*="width: 1"],
.semantic .ui.indicating.progress .bar[style*="width: 2"] {
  background-color: #d95c5c;
}
.semantic .ui.indicating.progress .bar[style*="width: 3"] {
  background-color: #d9a65c;
}
.semantic .ui.indicating.progress .bar[style*="width: 4"],
.semantic .ui.indicating.progress .bar[style*="width: 5"] {
  background-color: #e6bb48;
}
.semantic .ui.indicating.progress .bar[style*="width: 6"] {
  background-color: #ddc928;
}
.semantic .ui.indicating.progress .bar[style*="width: 7"],
.semantic .ui.indicating.progress .bar[style*="width: 8"] {
  background-color: #b4d95c;
}
.semantic .ui.indicating.progress .bar[style*="width: 9"],
.semantic .ui.indicating.progress .bar[style*="width: 100"] {
  background-color: #66da81;
}
.semantic .ui.indicating.progress[data-percent^="1"] .label,
.semantic .ui.indicating.progress[data-percent^="2"] .label {
  color: #d95c5c;
}
.semantic .ui.indicating.progress[data-percent^="3"] .label {
  color: #d9a65c;
}
.semantic .ui.indicating.progress[data-percent^="4"] .label,
.semantic .ui.indicating.progress[data-percent^="5"] .label {
  color: #e6bb48;
}
.semantic .ui.indicating.progress[data-percent^="6"] .label {
  color: #ddc928;
}
.semantic .ui.indicating.progress[data-percent^="7"] .label,
.semantic .ui.indicating.progress[data-percent^="8"] .label {
  color: #b4d95c;
}
.semantic .ui.indicating.progress[data-percent^="9"] .label,
.semantic .ui.indicating.progress[data-percent^="100"] .label {
  color: #66da81;
}
.semantic .ui.indicating.progress .bar[style^="width: 1%"],
.semantic .ui.indicating.progress .bar[style^="width: 2%"],
.semantic .ui.indicating.progress .bar[style^="width: 3%"],
.semantic .ui.indicating.progress .bar[style^="width: 4%"],
.semantic .ui.indicating.progress .bar[style^="width: 5%"],
.semantic .ui.indicating.progress .bar[style^="width: 6%"],
.semantic .ui.indicating.progress .bar[style^="width: 7%"],
.semantic .ui.indicating.progress .bar[style^="width: 8%"],
.semantic .ui.indicating.progress .bar[style^="width: 9%"] {
  background-color: #d95c5c;
}
.semantic .ui.indicating.progress[data-percent="1"] .label,
.semantic .ui.indicating.progress[data-percent="2"] .label,
.semantic .ui.indicating.progress[data-percent="3"] .label,
.semantic .ui.indicating.progress[data-percent="4"] .label,
.semantic .ui.indicating.progress[data-percent="5"] .label,
.semantic .ui.indicating.progress[data-percent="6"] .label,
.semantic .ui.indicating.progress[data-percent="7"] .label,
.semantic .ui.indicating.progress[data-percent="8"] .label,
.semantic .ui.indicating.progress[data-percent="9"] .label {
  color: #d95c5c;
}
.semantic .ui.indicating.progress.success .label {
  color: #356e36;
}
.semantic .ui.progress .bar {
  display: block;
  line-height: 1;
  position: relative;
  width: 0%;
  min-width: 2em;
  background: #888888;
  border-radius: 0;
  -webkit-transition: width 0.3s ease, background-color 0.3s ease;
  transition: width 0.3s ease, background-color 0.3s ease;
}
.semantic .ui.progress .bar > .progress {
  white-space: nowrap;
  position: absolute;
  width: auto;
  font-size: 0.9em;
  top: 50%;
  right: 0.5em;
  left: auto;
  bottom: auto;
  color: rgba(255, 255, 255, 0.8);
  text-shadow: none;
  margin-top: -0.5em;
  font-weight: bold;
  text-align: left;
}
.semantic .ui.progress > .label {
  position: absolute;
  width: 100%;
  font-size: 1em;
  top: 100%;
  right: auto;
  left: 0%;
  bottom: auto;
  color: rgba(0, 0, 0, 0.8);
  font-weight: bold;
  text-shadow: none;
  margin-top: 0.2em;
  text-align: center;
  -webkit-transition: color 0.4s ease;
  transition: color 0.4s ease;
}
.semantic .ui.progress.success .bar {
  background-color: #2db475 !important;
}
.semantic .ui.progress.success .bar,
.semantic .ui.progress.success .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}
.semantic .ui.progress.success > .label {
  color: #356e36;
}
.semantic .ui.progress.warning .bar {
  background-color: #f2c037 !important;
}
.semantic .ui.progress.warning .bar,
.semantic .ui.progress.warning .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}
.semantic .ui.progress.warning > .label {
  color: #825c01;
}
.semantic .ui.progress.error .bar {
  background-color: #cc181e !important;
}
.semantic .ui.progress.error .bar,
.semantic .ui.progress.error .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}
.semantic .ui.progress.error > .label {
  color: #912d2b;
}
.semantic .ui.active.progress .bar {
  position: relative;
  min-width: 2em;
}
.semantic .ui.active.progress .bar::after {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: #ffffff;
  border-radius: 0;
  -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%;
  }
}
.semantic .ui.disabled.progress {
  opacity: 0.35;
}
.semantic .ui.disabled.progress .bar,
.semantic .ui.disabled.progress .bar::after {
  -webkit-animation: none !important;
  animation: none !important;
}
.semantic .ui.inverted.progress {
  background: rgba(255, 255, 255, 0.05);
  border: none;
}
.semantic .ui.inverted.progress .bar {
  background: #888888;
}
.semantic .ui.inverted.progress .bar > .progress {
  color: #fafafa;
}
.semantic .ui.inverted.progress > .label {
  color: #ffffff;
}
.semantic .ui.inverted.progress.success > .label {
  color: #2db475;
}
.semantic .ui.inverted.progress.warning > .label {
  color: #f2c037;
}
.semantic .ui.inverted.progress.error > .label {
  color: #cc181e;
}
.semantic .ui.progress.attached {
  background: transparent;
  position: relative;
  border: none;
  margin: 0em;
}
.semantic .ui.progress.attached,
.semantic .ui.progress.attached .bar {
  display: block;
  height: 0.2rem;
  padding: 0px;
  overflow: hidden;
  border-radius: 0em 0em 0 0;
}
.semantic .ui.progress.attached .bar {
  border-radius: 0em;
}
.semantic .ui.progress.top.attached,
.semantic .ui.progress.top.attached .bar {
  top: 0px;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.progress.top.attached .bar {
  border-radius: 0em;
}
.semantic .ui.segment > .ui.attached.progress,
.semantic .ui.card > .ui.attached.progress {
  position: absolute;
  top: auto;
  left: 0;
  bottom: 100%;
  width: 100%;
}
.semantic .ui.segment > .ui.bottom.attached.progress,
.semantic .ui.card > .ui.bottom.attached.progress {
  top: 100%;
  bottom: auto;
}
.semantic .ui.black.progress .bar {
  background-color: #1b1c1d;
}
.semantic .ui.blue.progress .bar {
  background-color: #3b83c0;
}
.semantic .ui.green.progress .bar {
  background-color: #2db475;
}
.semantic .ui.orange.progress .bar {
  background-color: #e07b53;
}
.semantic .ui.pink.progress .bar {
  background-color: #d9499a;
}
.semantic .ui.purple.progress .bar {
  background-color: #564f8a;
}
.semantic .ui.red.progress .bar {
  background-color: #cc181e;
}
.semantic .ui.teal.progress .bar {
  background-color: #00b5ad;
}
.semantic .ui.yellow.progress .bar {
  background-color: #f2c61f;
}
.semantic .ui.black.inverted.progress .bar {
  background-color: #333333;
}
.semantic .ui.blue.inverted.progress .bar {
  background-color: #54c8ff;
}
.semantic .ui.green.inverted.progress .bar {
  background-color: #cbeddd;
}
.semantic .ui.orange.inverted.progress .bar {
  background-color: #ff851b;
}
.semantic .ui.pink.inverted.progress .bar {
  background-color: #ff8edf;
}
.semantic .ui.purple.inverted.progress .bar {
  background-color: #cdc6ff;
}
.semantic .ui.red.inverted.progress .bar {
  background-color: #ff695e;
}
.semantic .ui.teal.inverted.progress .bar {
  background-color: #6dffff;
}
.semantic .ui.yellow.inverted.progress .bar {
  background-color: #ffe21f;
}
.semantic .ui.tiny.progress {
  font-size: 0.85714286rem;
}
.semantic .ui.tiny.progress .bar {
  height: 0.5em;
}
.semantic .ui.small.progress {
  font-size: 0.92857143rem;
}
.semantic .ui.small.progress .bar {
  height: 1em;
}
.semantic .ui.progress {
  font-size: 1rem;
}
.semantic .ui.progress .bar {
  height: 1.75em;
}
.semantic .ui.large.progress {
  font-size: 1.14285714rem;
}
.semantic .ui.large.progress .bar {
  height: 2.5em;
}
.semantic .ui.big.progress {
  font-size: 1.28571429rem;
}
.semantic .ui.big.progress .bar {
  height: 3.5em;
}
.semantic .ui.rating {
  display: inline-block;
  vertical-align: middle;
}
.semantic .ui.rating:last-child {
  margin-right: 0em;
}
.semantic .ui.rating:before {
  display: block;
  content: "";
  visibility: hidden;
  clear: both;
  height: 0;
}
.semantic .ui.rating .icon {
  cursor: pointer;
  margin: 0em;
  width: 1.1em;
  height: auto;
  text-align: center;
  padding: 0em;
  font-weight: normal;
  font-style: normal;
}
.semantic .ui.star.rating .icon {
  width: 1.1em;
  color: rgba(0, 0, 0, 0.15);
}
.semantic .ui.star.rating .active.icon {
  color: #ffe623 !important;
  text-shadow: 0px -1px 0px #cfa300, -1px 0px 0px #cfa300, 0px 1px 0px #cfa300, 1px 0px 0px #cfa300;
}
.semantic .ui.star.rating .icon.selected,
.semantic .ui.star.rating .icon.selected.active {
  color: #ffb70a !important;
}
.semantic .ui.star.rating.partial {
  position: relative;
  z-index: 1;
}
.semantic .ui.star.rating.partial:before {
  position: absolute;
  z-index: -1;
}
.semantic .ui.heart.rating .icon {
  width: 1.25em;
  color: rgba(0, 0, 0, 0.15);
}
.semantic .ui.heart.rating .active.icon {
  color: #ff2733 !important;
  text-shadow: 0px -1px 0px #9e0000, -1px 0px 0px #9e0000, 0px 1px 0px #9e0000, 1px 0px 0px #9e0000;
}
.semantic .ui.heart.rating .icon.selected,
.semantic .ui.heart.rating .icon.selected.active {
  color: #ff2733 !important;
}
.semantic .ui.rating .icon {
  color: rgba(0, 0, 0, 0.15);
}
.semantic .ui.rating .active.icon {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.rating .icon.selected,
.semantic .ui.rating .icon.selected.active {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.disabled.rating .icon {
  cursor: default;
}
.semantic .ui.rating.selected .active.icon {
  opacity: 0.5;
}
.semantic .ui.rating.selected .icon.selected,
.semantic .ui.rating .icon.selected {
  opacity: 1;
}
.semantic .ui.mini.rating .icon {
  font-size: 0.7rem;
}
.semantic .ui.tiny.rating .icon {
  font-size: 0.8rem;
}
.semantic .ui.small.rating .icon {
  font-size: 0.875rem;
}
.semantic .ui.rating .icon {
  font-size: 1rem;
}
.semantic .ui.large.rating .icon {
  font-size: 1.1rem;
}
.semantic .ui.huge.rating .icon {
  font-size: 1.5rem;
}
.semantic .ui.massive.rating .icon {
  font-size: 2rem;
}
@font-face {
  font-family: "Rating";
  src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjCBsAAAC8AAAAYGNtYXCj2pm8AAABHAAAAKRnYXNwAAAAEAAAAcAAAAAIZ2x5ZlJbXMYAAAHIAAARnGhlYWQBGAe5AAATZAAAADZoaGVhA+IB/QAAE5wAAAAkaG10eCzgAEMAABPAAAAAcGxvY2EwXCxOAAAUMAAAADptYXhwACIAnAAAFGwAAAAgbmFtZfC1n04AABSMAAABPHBvc3QAAwAAAAAVyAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADxZQHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEAJAAAAAgACAABAAAAAEAIOYF8AbwDfAj8C7wbvBw8Irwl/Cc8SPxZf/9//8AAAAAACDmAPAE8AzwI/Au8G7wcPCH8JfwnPEj8WT//f//AAH/4xoEEAYQAQ/sD+IPow+iD4wPgA98DvYOtgADAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAIAAP/tAgAB0wAKABUAAAEvAQ8BFwc3Fyc3BQc3Jz8BHwEHFycCALFPT7GAHp6eHoD/AHAWW304OH1bFnABGRqgoBp8sFNTsHyyOnxYEnFxElh8OgAAAAACAAD/7QIAAdMACgASAAABLwEPARcHNxcnNwUxER8BBxcnAgCxT0+xgB6enh6A/wA4fVsWcAEZGqCgGnywU1OwfLIBHXESWHw6AAAAAQAA/+0CAAHTAAoAAAEvAQ8BFwc3Fyc3AgCxT0+xgB6enh6AARkaoKAafLBTU7B8AAAAAAEAAAAAAgABwAArAAABFA4CBzEHDgMjIi4CLwEuAzU0PgIzMh4CFz4DMzIeAhUCAAcMEgugBgwMDAYGDAwMBqALEgwHFyg2HhAfGxkKChkbHxAeNigXAS0QHxsZCqAGCwkGBQkLBqAKGRsfEB42KBcHDBILCxIMBxcoNh4AAAAAAgAAAAACAAHAACsAWAAAATQuAiMiDgIHLgMjIg4CFRQeAhcxFx4DMzI+Aj8BPgM1DwEiFCIGMTAmIjQjJy4DNTQ+AjMyHgIfATc+AzMyHgIVFA4CBwIAFyg2HhAfGxkKChkbHxAeNigXBwwSC6AGDAwMBgYMDAwGoAsSDAdbogEBAQEBAaIGCgcEDRceEQkREA4GLy8GDhARCREeFw0EBwoGAS0eNigXBwwSCwsSDAcXKDYeEB8bGQqgBgsJBgUJCwagChkbHxA+ogEBAQGiBg4QEQkRHhcNBAcKBjQ0BgoHBA0XHhEJERAOBgABAAAAAAIAAcAAMQAAARQOAgcxBw4DIyIuAi8BLgM1ND4CMzIeAhcHFwc3Jzc+AzMyHgIVAgAHDBILoAYMDAwGBgwMDAagCxIMBxcoNh4KFRMSCC9wQLBwJwUJCgkFHjYoFwEtEB8bGQqgBgsJBgUJCwagChkbHxAeNigXAwUIBUtAoMBAOwECAQEXKDYeAAABAAAAAAIAAbcAKgAAEzQ3NjMyFxYXFhcWFzY3Njc2NzYzMhcWFRQPAQYjIi8BJicmJyYnJicmNQAkJUARExIQEAsMCgoMCxAQEhMRQCUkQbIGBwcGsgMFBQsKCQkGBwExPyMkBgYLCgkKCgoKCQoLBgYkIz8/QawFBawCBgUNDg4OFRQTAAAAAQAAAA0B2wHSACYAABM0PwI2FzYfAhYVFA8BFxQVFAcGByYvAQcGByYnJjU0PwEnJjUAEI9BBQkIBkCPEAdoGQMDBgUGgIEGBQYDAwEYaAcBIwsCFoEMAQEMgRYCCwYIZJABBQUFAwEBAkVFAgEBAwUFAwOQZAkFAAAAAAIAAAANAdsB0gAkAC4AABM0PwI2FzYfAhYVFA8BFxQVFAcmLwEHBgcmJyY1ND8BJyY1HwEHNxcnNy8BBwAQj0EFCQgGQI8QB2gZDAUGgIEGBQYDAwEYaAc/WBVsaxRXeDY2ASMLAhaBDAEBDIEWAgsGCGSQAQUNAQECRUUCAQEDBQUDA5BkCQURVXg4OHhVEW5uAAABACMAKQHdAXwAGgAANzQ/ATYXNh8BNzYXNh8BFhUUDwEGByYvASY1IwgmCAwLCFS8CAsMCCYICPUIDAsIjgjSCwkmCQEBCVS7CQEBCSYJCg0H9gcBAQePBwwAAAEAHwAfAXMBcwAsAAA3ND8BJyY1ND8BNjMyHwE3NjMyHwEWFRQPARcWFRQPAQYjIi8BBwYjIi8BJjUfCFRUCAgnCAwLCFRUCAwLCCcICFRUCAgnCAsMCFRUCAsMCCcIYgsIVFQIDAsIJwgIVFQICCcICwwIVFQICwwIJwgIVFQICCcIDAAAAAACAAAAJQFJAbcAHwArAAA3NTQ3NjsBNTQ3NjMyFxYdATMyFxYdARQHBiMhIicmNTczNTQnJiMiBwYdAQAICAsKJSY1NCYmCQsICAgIC/7tCwgIW5MWFR4fFRZApQsICDc0JiYmJjQ3CAgLpQsICAgIC8A3HhYVFRYeNwAAAQAAAAcBbgG3ACEAADcRNDc2NzYzITIXFhcWFREUBwYHBiMiLwEHBiMiJyYnJjUABgUKBgYBLAYGCgUGBgUKBQcOCn5+Cg4GBgoFBicBcAoICAMDAwMICAr+kAoICAQCCXl5CQIECAgKAAAAAwAAACUCAAFuABgAMQBKAAA3NDc2NzYzMhcWFxYVFAcGBwYjIicmJyY1MxYXFjMyNzY3JicWFRQHBiMiJyY1NDcGBzcUFxYzMjc2NTQ3NjMyNzY1NCcmIyIHBhUABihDREtLREMoBgYoQ0RLS0RDKAYlJjk5Q0M5OSYrQREmJTU1JSYRQSuEBAQGBgQEEREZBgQEBAQGJBkayQoKQSgoKChBCgoKCkEoJycoQQoKOiMjIyM6RCEeIjUmJSUmNSIeIUQlBgQEBAQGGBIRBAQGBgQEGhojAAAABQAAAAkCAAGJACwAOABRAGgAcAAANzQ3Njc2MzIXNzYzMhcWFxYXFhcWFxYVFDEGBwYPAQYjIicmNTQ3JicmJyY1MxYXNyYnJjU0NwYHNxQXFjMyNzY1NDc2MzI3NjU0JyYjIgcGFRc3Njc2NyYnNxYXFhcWFRQHBgcGBwYjPwEWFRQHBgcABitBQU0ZGhADBQEEBAUFBAUEBQEEHjw8Hg4DBQQiBQ0pIyIZBiUvSxYZDg4RQSuEBAQGBgQEEREZBgQEBAQGJBkaVxU9MzQiIDASGxkZEAYGCxQrODk/LlACFxYlyQsJQycnBRwEAgEDAwIDAwIBAwUCNmxsNhkFFAMFBBUTHh8nCQtKISgSHBsfIh4hRCUGBAQEBAYYEhEEBAYGBAQaGiPJJQUiIjYzISASGhkbCgoKChIXMRsbUZANCyghIA8AAAMAAAAAAbcB2wA5AEoAlAAANzU0NzY7ATY3Njc2NzY3Njc2MzIXFhcWFRQHMzIXFhUUBxYVFAcUFRQHFgcGKwEiJyYnJisBIicmNTcUFxYzMjc2NTQnJiMiBwYVFzMyFxYXFhcWFxYXFhcWOwEyNTQnNjc2NTQnNjU0JyYnNjc2NTQnJisBNDc2NTQnJiMGBwYHBgcGBwYHBgcGBwYHBgcGBwYrARUACwoQTgodEQ4GBAMFBgwLDxgTEwoKDjMdFhYOAgoRARkZKCUbGxsjIQZSEAoLJQUFCAcGBQUGBwgFBUkJBAUFBAQHBwMDBwcCPCUjNwIJBQUFDwMDBAkGBgsLDmUODgoJGwgDAwYFDAYQAQUGAwQGBgYFBgUGBgQJSbcPCwsGJhUPCBERExMMCgkJFBQhGxwWFR4ZFQoKFhMGBh0WKBcXBgcMDAoLDxIHBQYGBQcIBQYGBQgSAQEBAQICAQEDAgEULwgIBQoLCgsJDhQHCQkEAQ0NCg8LCxAdHREcDQ4IEBETEw0GFAEHBwUECAgFBQUFAgO3AAADAAD/2wG3AbcAPABNAJkAADc1NDc2OwEyNzY3NjsBMhcWBxUWFRQVFhUUBxYVFAcGKwEWFRQHBgcGIyInJicmJyYnJicmJyYnIyInJjU3FBcWMzI3NjU0JyYjIgcGFRczMhcWFxYXFhcWFxYXFhcWFxYXFhcWFzI3NjU0JyY1MzI3NjU0JyYjNjc2NTQnNjU0JyYnNjU0JyYrASIHIgcGBwYHBgcGIwYrARUACwoQUgYhJRsbHiAoGRkBEQoCDhYWHTMOCgoTExgPCwoFBgIBBAMFDhEdCk4QCgslBQUIBwYFBQYHCAUFSQkEBgYFBgUGBgYEAwYFARAGDAUGAwMIGwkKDg5lDgsLBgYJBAMDDwUFBQkCDg4ZJSU8AgcHAwMHBwQEBQUECbe3DwsKDAwHBhcWJwIWHQYGExYKChUZHhYVHRoiExQJCgsJDg4MDAwNBg4WJQcLCw+kBwUGBgUHCAUGBgUIpAMCBQYFBQcIBAUHBwITBwwTExERBw0OHBEdHRALCw8KDQ0FCQkHFA4JCwoLCgUICBgMCxUDAgEBAgMBAQG3AAAAAQAAAA0A7gHSABQAABM0PwI2FxEHBgcmJyY1ND8BJyY1ABCPQQUJgQYFBgMDARhoBwEjCwIWgQwB/oNFAgEBAwUFAwOQZAkFAAAAAAIAAAAAAgABtwAqAFkAABM0NzYzMhcWFxYXFhc2NzY3Njc2MzIXFhUUDwEGIyIvASYnJicmJyYnJjUzFB8BNzY1NCcmJyYnJicmIyIHBgcGBwYHBiMiJyYnJicmJyYjIgcGBwYHBgcGFQAkJUARExIQEAsMCgoMCxAQEhMRQCUkQbIGBwcGsgMFBQsKCQkGByU1pqY1BgYJCg4NDg0PDhIRDg8KCgcFCQkFBwoKDw4REg4PDQ4NDgoJBgYBMT8jJAYGCwoJCgoKCgkKCwYGJCM/P0GsBQWsAgYFDQ4ODhUUEzA1oJ82MBcSEgoLBgcCAgcHCwsKCQgHBwgJCgsLBwcCAgcGCwoSEhcAAAACAAAABwFuAbcAIQAoAAA3ETQ3Njc2MyEyFxYXFhURFAcGBwYjIi8BBwYjIicmJyY1PwEfAREhEQAGBQoGBgEsBgYKBQYGBQoFBw4Kfn4KDgYGCgUGJZIZef7cJwFwCggIAwMDAwgICv6QCggIBAIJeXkJAgQICAoIjRl0AWP+nQAAAAABAAAAJQHbAbcAMgAANzU0NzY7ATU0NzYzMhcWHQEUBwYrASInJj0BNCcmIyIHBh0BMzIXFh0BFAcGIyEiJyY1AAgIC8AmJjQ1JiUFBQgSCAUFFhUfHhUWHAsICAgIC/7tCwgIQKULCAg3NSUmJiU1SQgFBgYFCEkeFhUVFh43CAgLpQsICAgICwAAAAIAAQANAdsB0gAiAC0AABM2PwI2MzIfAhYXFg8BFxYHBiMiLwEHBiMiJyY/AScmNx8CLwE/AS8CEwEDDJBABggJBUGODgIDCmcYAgQCCAMIf4IFBgYEAgEZaQgC7hBbEgINSnkILgEBJggCFYILC4IVAggICWWPCgUFA0REAwUFCo9lCQipCTBmEw1HEhFc/u0AAAADAAAAAAHJAbcAFAAlAHkAADc1NDc2OwEyFxYdARQHBisBIicmNTcUFxYzMjc2NTQnJiMiBwYVFzU0NzYzNjc2NzY3Njc2NzY3Njc2NzY3NjMyFxYXFhcWFxYXFhUUFRQHBgcGBxQHBgcGBzMyFxYVFAcWFRYHFgcGBxYHBgcjIicmJyYnJiciJyY1AAUGB1MHBQYGBQdTBwYFJQUFCAcGBQUGBwgFBWQFBQgGDw8OFAkFBAQBAQMCAQIEBAYFBw4KCgcHBQQCAwEBAgMDAgYCAgIBAU8XEBAQBQEOBQUECwMREiYlExYXDAwWJAoHBQY3twcGBQUGB7cIBQUFBQgkBwYFBQYHCAUGBgUIJLcHBQYBEBATGQkFCQgGBQwLBgcICQUGAwMFBAcHBgYICQQEBwsLCwYGCgIDBAMCBBEQFhkSDAoVEhAREAsgFBUBBAUEBAcMAQUFCAAAAAADAAD/2wHJAZIAFAAlAHkAADcUFxYXNxY3Nj0BNCcmBycGBwYdATc0NzY3FhcWFRQHBicGJyY1FzU0NzY3Fjc2NzY3NjcXNhcWBxYXFgcWBxQHFhUUBwYHJxYXFhcWFRYXFhcWFRQVFAcGBwYHBgcGBwYnBicmJyYnJicmJyYnJicmJyYnJiciJyY1AAUGB1MHBQYGBQdTBwYFJQUFCAcGBQUGBwgFBWQGBQcKJBYMDBcWEyUmEhEDCwQFBQ4BBRAQEBdPAQECAgIGAgMDAgEBAwIEBQcHCgoOBwUGBAQCAQIDAQEEBAUJFA4PDwYIBQWlBwYFAQEBBwQJtQkEBwEBAQUGB7eTBwYEAQEEBgcJBAYBAQYECZS4BwYEAgENBwUCBgMBAQEXEyEJEhAREBcIDhAaFhEPAQEFAgQCBQELBQcKDAkIBAUHCgUGBwgDBgIEAQEHBQkIBwUMCwcECgcGCRoREQ8CBgQIAAAAAQAAAAEAAJth57dfDzz1AAsCAAAAAADP/GODAAAAAM/8Y4MAAP/bAgAB2wAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAACAAABAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAdwAAAHcAAACAAAjAZMAHwFJAAABbgAAAgAAAAIAAAACAAAAAgAAAAEAAAACAAAAAW4AAAHcAAAB3AABAdwAAAHcAAAAAAAAAAoAFAAeAEoAcACKAMoBQAGIAcwCCgJUAoICxgMEAzoDpgRKBRgF7AYSBpgG2gcgB2oIGAjOAAAAAQAAABwAmgAFAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAwAAAABAAAAAAACAA4AQAABAAAAAAADAAwAIgABAAAAAAAEAAwATgABAAAAAAAFABYADAABAAAAAAAGAAYALgABAAAAAAAKADQAWgADAAEECQABAAwAAAADAAEECQACAA4AQAADAAEECQADAAwAIgADAAEECQAEAAwATgADAAEECQAFABYADAADAAEECQAGAAwANAADAAEECQAKADQAWgByAGEAdABpAG4AZwBWAGUAcgBzAGkAbwBuACAAMQAuADAAcgBhAHQAaQBuAGdyYXRpbmcAcgBhAHQAaQBuAGcAUgBlAGcAdQBsAGEAcgByAGEAdABpAG4AZwBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==") format("truetype"), url("data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AABcUAAoAAAAAFswAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAEuEAABLho6TvIE9TLzIAABPYAAAAYAAAAGAIIwgbY21hcAAAFDgAAACkAAAApKPambxnYXNwAAAU3AAAAAgAAAAIAAAAEGhlYWQAABTkAAAANgAAADYBGAe5aGhlYQAAFRwAAAAkAAAAJAPiAf1obXR4AAAVQAAAAHAAAABwLOAAQ21heHAAABWwAAAABgAAAAYAHFAAbmFtZQAAFbgAAAE8AAABPPC1n05wb3N0AAAW9AAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLZviU+HQFHQAAAP0PHQAAAQIRHQAAAAkdAAAS2BIAHQEBBw0PERQZHiMoLTI3PEFGS1BVWl9kaW5zeH2Ch4xyYXRpbmdyYXRpbmd1MHUxdTIwdUU2MDB1RTYwMXVFNjAydUU2MDN1RTYwNHVFNjA1dUYwMDR1RjAwNXVGMDA2dUYwMEN1RjAwRHVGMDIzdUYwMkV1RjA2RXVGMDcwdUYwODd1RjA4OHVGMDg5dUYwOEF1RjA5N3VGMDlDdUYxMjN1RjE2NHVGMTY1AAACAYkAGgAcAgABAAQABwAKAA0AVgCWAL0BAgGMAeQCbwLwA4cD5QR0BQMFdgZgB8MJkQtxC7oM2Q1jDggOmRAYEZr8lA78lA78lA77lA74lPetFftFpTz3NDz7NPtFcfcU+xBt+0T3Mt73Mjht90T3FPcQBfuU+0YV+wRRofcQMOP3EZ3D9wXD+wX3EXkwM6H7EPsExQUO+JT3rRX7RaU89zQ8+zT7RXH3FPsQbftE9zLe9zI4bfdE9xT3EAX7lPtGFYuLi/exw/sF9xF5MDOh+xD7BMUFDviU960V+0WlPPc0PPs0+0Vx9xT7EG37RPcy3vcyOG33RPcU9xAFDviU98EVi2B4ZG5wCIuL+zT7NAV7e3t7e4t7i3ube5sI+zT3NAVupniyi7aL3M3N3Iu2i7J4pm6mqLKetovci81JizoIDviU98EVi9xJzTqLYItkeHBucKhknmCLOotJSYs6i2CeZKhwCIuL9zT7NAWbe5t7m4ubi5ubm5sI9zT3NAWopp6yi7YIME0V+zb7NgWKioqKiouKi4qMiowI+zb3NgV6m4Ghi6OLubCwuYuji6GBm3oIule6vwWbnKGVo4u5i7Bmi12Lc4F1ensIDviU98EVi2B4ZG5wCIuL+zT7NAV7e3t7e4t7i3ube5sI+zT3NAVupniyi7aL3M3N3Iuni6WDoX4IXED3BEtL+zT3RPdU+wTLssYFl46YjZiL3IvNSYs6CA6L98UVi7WXrKOio6Otl7aLlouXiZiHl4eWhZaEloSUhZKFk4SShZKEkpKSkZOSkpGUkZaSCJaSlpGXj5iPl42Wi7aLrX+jc6N0l2qLYYthdWBgYAj7RvtABYeIh4mGi4aLh42Hjgj7RvdABYmNiY2Hj4iOhpGDlISUhZWFlIWVhpaHmYaYiZiLmAgOZ4v3txWLkpCPlo0I9yOgzPcWBY6SkI+Ri5CLkIePhAjL+xb3I3YFlomQh4uEi4aJh4aGCCMmpPsjBYuKi4mLiIuHioiJiImIiIqHi4iLh4yHjQj7FM/7FUcFh4mHioiLh4uIjImOiY6KjouPi4yLjYyOCKP3IyPwBYaQiZCLjwgOZ4v3txWLkpCPlo0I9yOgzPcWBY6SkI+Ri5CLkIePhAjL+xb3I3YFlomQh4uEi4aJh4aGCCMmpPsjBYuKi4mLiIuCh4aDi4iLh4yHjQj7FM/7FUcFh4mHioiLh4uIjImOiY6KjouPi4yLjYyOCKP3IyPwBYaQiZCLjwjKeRXjN3b7DfcAxPZSd/cN4t/7DJ1V9wFV+wEFDq73ZhWLk42RkZEIsbIFkZCRjpOLkouSiJCGCN8291D3UAWQkJKOkouTi5GIkYYIsWQFkYaNhIuEi4OJhYWFCPuJ+4kFhYWFiYOLhIuEjYaRCPsi9yIFhZCJkouSCA77AartFYuSjpKQkAjf3zffBYaQiJKLk4uSjpKQkAiysgWRkJGOk4uSi5KIkIYI3zff3wWQkJKOk4uSi5KIkIYIsmQFkIaOhIuEi4OIhIaGCDc33zcFkIaOhIuEi4OIhYaFCGRkBYaGhIiEi4OLhI6GkAg33zc3BYaGhIiEi4OLhY6FkAhksgWGkYiRi5MIDvtLi8sVi/c5BYuSjpKQkJCQko6SiwiVi4vCBYuul6mkpKSkqpiui66LqX6kcqRymG2LaAiLVJSLBZKLkoiQhpCGjoSLhAiL+zkFi4OIhYaGhoWEiYSLCPuniwWEi4SNhpGGkIiRi5MI5vdUFfcni4vCBYufhJx8mn2ZepJ3i3aLeoR9fX18g3qLdwiLVAUO+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;
}
.semantic .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;
}
.semantic .ui.rating .icon:before {
  content: "\f006";
}
.semantic .ui.rating .active.icon:before {
  content: "\f005";
}
.semantic .ui.star.rating .icon:before {
  content: "\f005";
}
.semantic .ui.star.rating .active.icon:before {
  content: "\f005";
}
.semantic .ui.star.rating .partial.icon:before {
  content: "\f006";
}
.semantic .ui.star.rating .partial.icon {
  content: "\f005";
}
.semantic .ui.heart.rating .icon:before {
  content: "\f004";
}
.semantic .ui.heart.rating .active.icon:before {
  content: "\f004";
}
.semantic .ui.search {
  position: relative;
}
.semantic .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.2;
  padding: 0.68571em 1em;
  font-size: 1em;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  color: rgba(0, 0, 0, 0.8);
  box-shadow: 0em 0em 0em 0em transparent inset;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.search .prompt {
  border-radius: 500rem;
}
.semantic .ui.search .prompt ~ .search.icon {
  cursor: pointer;
}
.semantic .ui.search > .results {
  display: none;
  position: absolute;
  top: 100%;
  left: 0%;
  background: #ffffff;
  margin-top: 0.5em;
  width: 16em;
  border-radius: 0.25em;
  box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.2);
  z-index: 998;
}
.semantic .ui.search > .results .result {
  cursor: pointer;
  display: block;
  overflow: hidden;
  font-size: 1em;
  padding: 0.5em 1em;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1.33;
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
}
.semantic .ui.search > .results .result:last-child {
  border-bottom: none;
}
.semantic .ui.search > .results .result .image {
  float: right;
  overflow: hidden;
  background: none;
  width: 5em;
  height: 3em;
  border-radius: 0.25em;
}
.semantic .ui.search > .results .result .image img {
  display: block;
  width: auto;
  height: 100%;
}
.semantic .ui.search > .results .result .image + .content {
  margin: 0em 6em 0em 0em;
}
.semantic .ui.search > .results .result .title {
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-weight: bold;
  font-size: 1em;
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.search > .results .result .description {
  margin-top: 0em;
  font-size: 0.9285em;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui.search > .results .result .price {
  float: right;
  color: #2db475;
}
.semantic .ui.search > .results > .message {
  padding: 1em 1em;
}
.semantic .ui.search > .results > .message .header {
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 1.1428em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.search > .results > .message .description {
  margin-top: 0.25rem;
  font-size: 1em;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.search > .results > .action {
  display: block;
  border-top: none;
  background: #f0f0f0;
  padding: 0.5em 1em;
  color: rgba(0, 0, 0, 0.8);
  font-weight: bold;
  text-align: center;
}
.semantic .ui.loading.search .input > .icon:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  border-radius: 500rem;
  border: 0.2em solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.loading.search .input > .icon:after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -0.64285em 0em 0em -0.64285em;
  width: 1.2857em;
  height: 1.2857em;
  -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: #aaaaaa transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}
.semantic .ui.search > .results .result:hover,
.semantic .ui.category.search > .results .category .result:hover {
  background: #fafafa;
}
.semantic .ui.search .action:hover {
  background: #e0e0e0;
}
.semantic .ui.search > .results .category.active {
  background: #f0f0f0;
}
.semantic .ui.search > .results .category.active > .name {
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.search > .results .result.active,
.semantic .ui.category.search > .results .category .result.active {
  position: relative;
  border-left-color: transparent;
  background: #f0f0f0;
  box-shadow: 3px 0px 3px 0px rgba(39, 41, 43, 0.15);
}
.semantic .ui.search > .results .result.active .title {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.search > .results .result.active .description {
  color: rgba(0, 0, 0, 0.85);
}
.semantic .ui.category.search .results {
  width: 28em;
}
.semantic .ui.category.search > .results .category {
  background: #f0f0f0;
  box-shadow: none;
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
  -webkit-transition: background 0.2s ease, border-color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.category.search > .results .category:last-child {
  border-bottom: none;
}
.semantic .ui.category.search > .results .category .result {
  background: #ffffff;
  margin-left: 100px;
  border-left: 1px solid rgba(39, 41, 43, 0.15);
  border-bottom: 1px solid rgba(39, 41, 43, 0.15);
  -webkit-transition: background 0.2s ease, border-color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.category.search > .results .category .result:last-child {
  border-bottom: none;
}
.semantic .ui.category.search > .results .category > .name {
  width: 100px;
  background: #f0f0f0;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 1em;
  float: 1em;
  float: left;
  padding: 0.4em 1em;
  font-weight: bold;
  color: rgba(0, 0, 0, 0.4);
}
.semantic .ui[class*="left aligned"].search > .results {
  right: auto;
  left: 0%;
}
.semantic .ui[class*="right aligned"].search > .results {
  right: 0%;
  left: auto;
}
.semantic .ui.fluid.search .results {
  width: 100%;
}
.semantic .ui.search {
  font-size: 1em;
}
.semantic .ui.large.search {
  font-size: 1.1em;
}
.semantic .ui.shape {
  position: relative;
  display: inline-block;
  -webkit-perspective: 2000px;
  perspective: 2000px;
}
.semantic .ui.shape .sides {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.semantic .ui.shape .side {
  opacity: 1;
  width: 100%;
  margin: 0em !important;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.semantic .ui.shape .side {
  display: none;
}
.semantic .ui.shape .side > * {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}
.semantic .ui.cube.shape .side {
  min-width: 15em;
  height: 15em;
  padding: 2em;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3);
}
.semantic .ui.cube.shape .side > .content {
  width: 100%;
  height: 100%;
  display: table;
  text-align: center;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}
.semantic .ui.cube.shape .side > .content > div {
  display: table-cell;
  vertical-align: middle;
  font-size: 2em;
}
.semantic .ui.text.shape.animating .sides {
  position: static;
}
.semantic .ui.text.shape .side {
  white-space: nowrap;
}
.semantic .ui.text.shape .side > * {
  white-space: normal;
}
.semantic .ui.loading.shape {
  position: absolute;
  top: -9999px;
  left: -9999px;
}
.semantic .ui.shape .animating.side {
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 100;
}
.semantic .ui.shape .hidden.side {
  opacity: 0.4;
}
.semantic .ui.shape.animating {
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}
.semantic .ui.shape.animating .sides {
  position: absolute;
}
.semantic .ui.shape.animating .sides {
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}
.semantic .ui.shape.animating .side {
  -webkit-transition: opacity 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out;
}
.semantic .ui.shape .active.side {
  display: block;
}
.semantic .ui.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: none;
  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;
  border-radius: 0em !important;
  margin: 0em !important;
  overflow-y: auto !important;
  z-index: 102;
}
.semantic .ui.sidebar > * {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: rotateZ(0deg);
  transform: rotateZ(0deg);
}
.semantic .ui.left.sidebar {
  right: auto;
  left: 0px;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.semantic .ui.right.sidebar {
  right: 0px !important;
  left: auto !important;
  -webkit-transform: translate3d(100%, 0%, 0);
  transform: translate3d(100%, 0%, 0);
}
.semantic .ui.top.sidebar,
.semantic .ui.bottom.sidebar {
  width: 100% !important;
  height: auto !important;
  overflow-y: visible !important;
}
.semantic .ui.top.sidebar {
  top: 0px !important;
  bottom: auto !important;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}
.semantic .ui.bottom.sidebar {
  top: auto !important;
  bottom: 0px !important;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}
.semantic .pushable {
  height: 100%;
  overflow-x: hidden;
  padding: 0em !important;
}
.semantic body.pushable {
  background: #333333 !important;
}
.semantic .pushable:not(body) {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.semantic .pushable:not(body) > .ui.sidebar,
.semantic .pushable:not(body) > .fixed,
.semantic .pushable:not(body) > .pusher:after {
  position: absolute;
}
.semantic .pushable > .fixed {
  position: fixed;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  will-change: transform;
  z-index: 101;
}
.semantic .pushable > .pusher {
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  min-height: 100%;
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  z-index: 2;
}
.semantic body.pushable > .pusher {
  background: #f7f7f7;
}
.semantic .pushable > .pusher {
  background: inherit;
}
.semantic .pushable > .pusher:after {
  position: fixed;
  top: 0px;
  right: 0px;
  content: "";
  background-color: rgba(0, 0, 0, 0.4);
  width: 0px;
  height: 0px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: -webkit-transform 500ms, opacity 500ms;
  transition: transform 500ms, opacity 500ms;
  will-change: opacity;
  z-index: 1000;
}
.semantic .ui.sidebar.menu .item {
  border-radius: 0em !important;
}
.semantic .pushable > .pusher.dimmed:after {
  width: 100% !important;
  height: 100% !important;
  opacity: 1 !important;
}
.semantic .ui.animating.sidebar {
  visibility: visible;
}
.semantic .ui.visible.sidebar {
  visibility: visible;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.semantic .ui.left.visible.sidebar,
.semantic .ui.right.visible.sidebar {
  box-shadow: 0px 0px 20px rgba(39, 41, 43, 0.15);
}
.semantic .ui.top.visible.sidebar,
.semantic .ui.bottom.visible.sidebar {
  box-shadow: 0px 0px 20px rgba(39, 41, 43, 0.15);
}
.semantic .ui.visible.left.sidebar ~ .fixed,
.semantic .ui.visible.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(260px, 0, 0);
  transform: translate3d(260px, 0, 0);
}
.semantic .ui.visible.right.sidebar ~ .fixed,
.semantic .ui.visible.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-260px, 0, 0);
  transform: translate3d(-260px, 0, 0);
}
.semantic .ui.visible.top.sidebar ~ .fixed,
.semantic .ui.visible.top.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, 36px, 0);
  transform: translate3d(0, 36px, 0);
}
.semantic .ui.visible.bottom.sidebar ~ .fixed,
.semantic .ui.visible.bottom.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, -36px, 0);
  transform: translate3d(0, -36px, 0);
}
.semantic .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .fixed,
.semantic .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher,
.semantic .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .fixed,
.semantic .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.semantic html.ios {
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
.semantic .ui[class*="very thin"].left.sidebar,
.semantic .ui[class*="very thin"].right.sidebar {
  width: 60px;
}
.semantic .ui.thin.left.sidebar,
.semantic .ui.thin.right.sidebar {
  width: 150px;
}
.semantic .ui.left.sidebar,
.semantic .ui.right.sidebar {
  width: 260px;
}
.semantic .ui.wide.left.sidebar,
.semantic .ui.wide.right.sidebar {
  width: 350px;
}
.semantic .ui[class*="very wide"].left.sidebar,
.semantic .ui[class*="very wide"].right.sidebar {
  width: 475px;
}
.semantic .ui.visible[class*="very thin"].left.sidebar ~ .fixed,
.semantic .ui.visible[class*="very thin"].left.sidebar ~ .pusher {
  -webkit-transform: translate3d(60px, 0, 0);
  transform: translate3d(60px, 0, 0);
}
.semantic .ui.visible.thin.left.sidebar ~ .fixed,
.semantic .ui.visible.thin.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(150px, 0, 0);
  transform: translate3d(150px, 0, 0);
}
.semantic .ui.visible.wide.left.sidebar ~ .fixed,
.semantic .ui.visible.wide.left.sidebar ~ .pusher {
  -webkit-transform: translate3d(350px, 0, 0);
  transform: translate3d(350px, 0, 0);
}
.semantic .ui.visible[class*="very wide"].left.sidebar ~ .fixed,
.semantic .ui.visible[class*="very wide"].left.sidebar ~ .pusher {
  -webkit-transform: translate3d(475px, 0, 0);
  transform: translate3d(475px, 0, 0);
}
.semantic .ui.visible[class*="very thin"].right.sidebar ~ .fixed,
.semantic .ui.visible[class*="very thin"].right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-60px, 0, 0);
  transform: translate3d(-60px, 0, 0);
}
.semantic .ui.visible.thin.right.sidebar ~ .fixed,
.semantic .ui.visible.thin.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-150px, 0, 0);
  transform: translate3d(-150px, 0, 0);
}
.semantic .ui.visible.wide.right.sidebar ~ .fixed,
.semantic .ui.visible.wide.right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-350px, 0, 0);
  transform: translate3d(-350px, 0, 0);
}
.semantic .ui.visible[class*="very wide"].right.sidebar ~ .fixed,
.semantic .ui.visible[class*="very wide"].right.sidebar ~ .pusher {
  -webkit-transform: translate3d(-475px, 0, 0);
  transform: translate3d(-475px, 0, 0);
}
.semantic .ui.overlay.sidebar {
  z-index: 102;
}
.semantic .ui.left.overlay.sidebar {
  -webkit-transform: translate3d(-100%, 0%, 0);
  transform: translate3d(-100%, 0%, 0);
}
.semantic .ui.right.overlay.sidebar {
  -webkit-transform: translate3d(100%, 0%, 0);
  transform: translate3d(100%, 0%, 0);
}
.semantic .ui.top.overlay.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}
.semantic .ui.bottom.overlay.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}
.semantic .animating.ui.overlay.sidebar,
.semantic .ui.visible.overlay.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
}
.semantic .ui.visible.left.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}
.semantic .ui.visible.right.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}
.semantic .ui.visible.top.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}
.semantic .ui.visible.bottom.overlay.sidebar {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}
.semantic .ui.visible.overlay.sidebar ~ .fixed,
.semantic .ui.visible.overlay.sidebar ~ .pusher {
  -webkit-transform: none !important;
  -ms-transform: none !important;
  transform: none !important;
}
.semantic .ui.push.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  z-index: 102;
}
.semantic .ui.left.push.sidebar {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.semantic .ui.right.push.sidebar {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}
.semantic .ui.top.push.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}
.semantic .ui.bottom.push.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}
.semantic .ui.visible.push.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}
.semantic .ui.uncover.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 1;
}
.semantic .ui.visible.uncover.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
}
.semantic .ui.slide.along.sidebar {
  z-index: 1;
}
.semantic .ui.left.slide.along.sidebar {
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
}
.semantic .ui.right.slide.along.sidebar {
  -webkit-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
}
.semantic .ui.top.slide.along.sidebar {
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
}
.semantic .ui.bottom.slide.along.sidebar {
  -webkit-transform: translate3d(0%, 50%, 0);
  transform: translate3d(0%, 50%, 0);
}
.semantic .ui.animating.slide.along.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
}
.semantic .ui.visible.slide.along.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}
.semantic .ui.slide.out.sidebar {
  z-index: 1;
}
.semantic .ui.left.slide.out.sidebar {
  -webkit-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
}
.semantic .ui.right.slide.out.sidebar {
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
}
.semantic .ui.top.slide.out.sidebar {
  -webkit-transform: translate3d(0%, 50%, 0);
  transform: translate3d(0%, 50%, 0);
}
.semantic .ui.bottom.slide.out.sidebar {
  -webkit-transform: translate3d(0%, -50%, 0);
  transform: translate3d(0%, -50%, 0);
}
.semantic .ui.animating.slide.out.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
}
.semantic .ui.visible.slide.out.sidebar {
  -webkit-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}
.semantic .ui.scale.down.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  z-index: 102;
}
.semantic .ui.left.scale.down.sidebar {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.semantic .ui.right.scale.down.sidebar {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}
.semantic .ui.top.scale.down.sidebar {
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
}
.semantic .ui.bottom.scale.down.sidebar {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
}
.semantic .ui.scale.down.left.sidebar ~ .pusher {
  -webkit-transform-origin: 75% 50%;
  -ms-transform-origin: 75% 50%;
  transform-origin: 75% 50%;
}
.semantic .ui.scale.down.right.sidebar ~ .pusher {
  -webkit-transform-origin: 25% 50%;
  -ms-transform-origin: 25% 50%;
  transform-origin: 25% 50%;
}
.semantic .ui.scale.down.top.sidebar ~ .pusher {
  -webkit-transform-origin: 50% 75%;
  -ms-transform-origin: 50% 75%;
  transform-origin: 50% 75%;
}
.semantic .ui.scale.down.bottom.sidebar ~ .pusher {
  -webkit-transform-origin: 50% 25%;
  -ms-transform-origin: 50% 25%;
  transform-origin: 50% 25%;
}
.semantic .ui.animating.scale.down > .visible.ui.sidebar {
  -webkit-transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
}
.semantic .ui.visible.scale.down.sidebar ~ .pusher,
.semantic .ui.animating.scale.down.sidebar ~ .pusher {
  display: block !important;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.semantic .ui.visible.scale.down.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.semantic .ui.visible.scale.down.sidebar ~ .pusher {
  -webkit-transform: scale(0.75);
  -ms-transform: scale(0.75);
  transform: scale(0.75);
}
.semantic .ui.sticky {
  position: static;
  -webkit-transition: width 0.2s ease, height 0.2s ease, top 0.2s ease, bottom 0.2s ease;
  transition: width 0.2s ease, height 0.2s ease, top 0.2s ease, bottom 0.2s ease;
  z-index: 800;
}
.semantic .ui.sticky.bound {
  position: absolute;
  left: auto;
  right: auto;
}
.semantic .ui.sticky.fixed {
  position: fixed;
  left: auto;
  right: auto;
}
.semantic .ui.sticky.bound.top,
.semantic .ui.sticky.fixed.top {
  top: 0px;
  bottom: auto;
}
.semantic .ui.sticky.bound.bottom,
.semantic .ui.sticky.fixed.bottom {
  top: auto;
  bottom: 0px;
}
.semantic .ui.native.sticky {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -ms-sticky;
  position: -o-sticky;
  position: sticky;
}
.semantic .ui.tab {
  display: none;
}
.semantic .ui.tab.active,
.semantic .ui.tab.open {
  display: block;
}
.semantic .ui.tab.loading {
  position: relative;
  overflow: hidden;
  display: block;
  min-height: 250px;
}
.semantic .ui.tab.loading * {
  position: relative !important;
  left: -10000px !important;
}
.semantic .ui.tab.loading:before,
.semantic .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);
}
.semantic .ui.tab.loading:after,
.semantic .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: #aaaaaa transparent transparent;
  border-style: solid;
  border-width: 0.2em;
  box-shadow: 0px 0px 0px 1px transparent;
}
.semantic .ui.table {
  width: 100%;
  background: #ffffff;
  margin: 1em 0em;
  border: 1px solid #d0d0d0;
  box-shadow: none;
  border-radius: 0;
  color: rgba(0, 0, 0, 0.8);
  border-collapse: separate;
  border-spacing: 0px;
}
.semantic .ui.table:first-child {
  margin-top: 0em;
}
.semantic .ui.table:last-child {
  margin-bottom: 0em;
}
.semantic .ui.table th,
.semantic .ui.table td {
  -webkit-transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.semantic .ui.table thead {
  box-shadow: none;
}
.semantic .ui.table thead th {
  cursor: auto;
  background: #f0f0f0;
  text-align: left;
  color: rgba(0, 0, 0, 0.8);
  padding: 0.7em 0.8em;
  vertical-align: middle;
  font-style: none;
  font-weight: bold;
  text-transform: none;
  border-bottom: 1px solid #d4d4d5;
  border-left: none;
}
.semantic .ui.table thead tr > th:first-child {
  border-left: none;
}
.semantic .ui.table thead tr:first-child > th:first-child {
  border-radius: 0 0em 0em 0em;
}
.semantic .ui.table thead tr:first-child > th:last-child {
  border-radius: 0em 0 0em 0em;
}
.semantic .ui.table thead tr:first-child > th:only-child {
  border-radius: 0 0 0em 0em;
}
.semantic .ui.table tfoot {
  box-shadow: none;
}
.semantic .ui.table tfoot th {
  cursor: auto;
  border-top: 1px solid #d4d4d5;
  background: #ffffff;
  text-align: left;
  color: rgba(0, 0, 0, 0.8);
  padding: 0.7em 0.8em;
  vertical-align: middle;
  font-style: normal;
  font-weight: normal;
  text-transform: none;
}
.semantic .ui.table tfoot tr > th:first-child {
  border-left: none;
}
.semantic .ui.table tfoot tr:first-child > th:first-child {
  border-radius: 0em 0em 0em 0;
}
.semantic .ui.table tfoot tr:first-child > th:last-child {
  border-radius: 0em 0em 0 0em;
}
.semantic .ui.table tfoot tr:first-child > th:only-child {
  border-radius: 0em 0em 0 0;
}
.semantic .ui.table tr td {
  border-top: 1px solid #d4d4d5;
}
.semantic .ui.table tr:first-child td {
  border-top: none;
}
.semantic .ui.table td {
  padding: 0.7em 0.8em;
  text-align: left;
  vertical-align: middle;
}
.semantic .ui.table > .icon {
  vertical-align: baseline;
}
.semantic .ui.table > .icon:only-child {
  margin: 0em;
}
.semantic .ui.table.segment {
  padding: 0em;
}
.semantic .ui.table.segment:after {
  display: none;
}
.semantic .ui.table.segment.stacked:after {
  display: block;
}
@media only screen and (max-width: 767px) {
  .semantic {
    /* Clear BG Colors */
    /* Definition Table */
  }
  .semantic .ui.table:not(.unstackable) {
    width: 100%;
  }
  .semantic .ui.table:not(.unstackable) tbody,
  .semantic .ui.table:not(.unstackable) tr,
  .semantic .ui.table:not(.unstackable) tr > th,
  .semantic .ui.table:not(.unstackable) tr > td {
    width: auto !important;
    display: block !important;
  }
  .semantic .ui.table:not(.unstackable) {
    padding: 0em;
  }
  .semantic .ui.table:not(.unstackable) thead {
    display: block;
  }
  .semantic .ui.table:not(.unstackable) tfoot {
    display: block;
  }
  .semantic .ui.table:not(.unstackable) tr > th,
  .semantic .ui.table:not(.unstackable) tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em;
    box-shadow: none !important;
  }
  .semantic .ui.table:not(.unstackable) th:first-child,
  .semantic .ui.table:not(.unstackable) td:first-child {
    font-weight: bold;
    padding-top: 1em;
  }
  .semantic .ui.table:not(.unstackable) th:last-child,
  .semantic .ui.table:not(.unstackable) td:last-child {
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
    padding-bottom: 1em;
  }
  .semantic .ui.table:not(.unstackable) tr > td.warning,
  .semantic .ui.table:not(.unstackable) tr > td.error,
  .semantic .ui.table:not(.unstackable) tr > td.active,
  .semantic .ui.table:not(.unstackable) tr > td.positive,
  .semantic .ui.table:not(.unstackable) tr > td.negative {
    background-color: transparent !important;
  }
  .semantic .ui.definition.table:not(.unstackable) thead th:first-child {
    box-shadow: none !important;
  }
  .semantic .ui.definition.table:not(.unstackable) tr td:first-child {
    padding-bottom: 1em;
  }
  .semantic .ui.definition.table:not(.unstackable) tr td:nth-child(n+2) {
    padding-top: 1em;
  }
}
.semantic .ui.table th .image,
.semantic .ui.table th .image img,
.semantic .ui.table td .image,
.semantic .ui.table td .image img {
  max-width: none;
}
.semantic .ui.structured.table {
  border-collapse: collapse;
}
.semantic .ui.structured.table thead th {
  border-left: none;
  border-right: none;
}
.semantic .ui.structured.sortable.table thead th {
  border-left: 1px solid #d0d0d0;
  border-right: 1px solid #d0d0d0;
}
.semantic .ui.structured.basic.table th {
  border-left: none;
  border-right: none;
}
.semantic .ui.structured.celled.table tr th,
.semantic .ui.structured.celled.table tr td {
  border-left: 1px solid #d4d4d5;
  border-right: 1px solid #d4d4d5;
}
.semantic .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;
}
.semantic .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;
}
.semantic .ui.celled.definition.table thead:not(.full-width) th:first-child {
  box-shadow: 0px -1px 0px 1px #ffffff;
}
.semantic .ui.celled.definition.table tfoot:not(.full-width) th:first-child {
  box-shadow: 0px 1px 0px 1px #ffffff;
}
.semantic .ui.definition.table tr td:first-child {
  background: rgba(0, 0, 0, 0.03);
  font-weight: bold;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.definition.table thead:not(.full-width) th:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.definition.table tfoot:not(.full-width) th:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.definition.table td:nth-child(2) {
  border-left: 1px solid #d0d0d0;
}
.semantic .ui.table tr.positive,
.semantic .ui.table td.positive {
  box-shadow: 0px 0px 0px #b7caa7 inset;
}
.semantic .ui.table tr.positive td,
.semantic .ui.table td.positive {
  background: #eeffe7 !important;
  color: #3c763d !important;
}
.semantic .ui.celled.table tr.positive:hover td,
.semantic .ui.celled.table tr:hover td.positive {
  background: #e3ffd8 !important;
  color: #376c38 !important;
}
.semantic .ui.table tr.negative,
.semantic .ui.table td.negative {
  box-shadow: 0px 0px 0px #dbb1b1 inset;
}
.semantic .ui.table tr.negative td,
.semantic .ui.table td.negative {
  background: #fff0f0 !important;
  color: #cd2929 !important;
}
.semantic .ui.celled.table tr.negative:hover td,
.semantic .ui.celled.table tr:hover td.negative {
  background: #ffe1e1 !important;
  color: #c02626 !important;
}
.semantic .ui.table tr.error,
.semantic .ui.table td.error {
  box-shadow: 0px 0px 0px #dbb1b1 inset;
}
.semantic .ui.table tr.error td,
.semantic .ui.table td.error {
  background: #fff0f0 !important;
  color: #cd2929 !important;
}
.semantic .ui.celled.table tr.error:hover td,
.semantic .ui.celled.table tr:hover td.error {
  background: #ffe1e1 !important;
  color: #c02626 !important;
}
.semantic .ui.table tr.warning,
.semantic .ui.table td.warning {
  box-shadow: 0px 0px 0px #d9caab inset;
}
.semantic .ui.table tr.warning td,
.semantic .ui.table td.warning {
  background: #fffbe6 !important;
  color: #7d6c00 !important;
}
.semantic .ui.celled.table tr.warning:hover td,
.semantic .ui.celled.table tr:hover td.warning {
  background: #fff9d7 !important;
  color: #6e5f00 !important;
}
.semantic .ui.table tr.active,
.semantic .ui.table td.active {
  box-shadow: 0px 0px 0px rgba(50, 50, 50, 0.9) inset;
}
.semantic .ui.table tr.active td,
.semantic .ui.table td.active {
  background: #e0e0e0 !important;
  color: rgba(50, 50, 50, 0.9) !important;
}
.semantic .ui.celled.table tr.active:hover td,
.semantic .ui.celled.table tr:hover td.active {
  background: #e0e0e0 !important;
  color: rgba(50, 50, 50, 0.9) !important;
}
.semantic .ui.table tr.disabled td,
.semantic .ui.table tr td.disabled,
.semantic .ui.table tr.disabled:hover td,
.semantic .ui.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(40, 40, 40, 0.3);
}
@media only screen and (max-width: 991px) {
  .semantic {
    /* Clear BG Colors */
    /* Definition Table */
  }
  .semantic .ui[class*="tablet stackable"].table,
  .semantic .ui[class*="tablet stackable"].table tbody,
  .semantic .ui[class*="tablet stackable"].table tr,
  .semantic .ui[class*="tablet stackable"].table tr > th,
  .semantic .ui[class*="tablet stackable"].table tr > td {
    width: 100% !important;
    display: block !important;
  }
  .semantic .ui[class*="tablet stackable"].table {
    padding: 0em;
  }
  .semantic .ui[class*="tablet stackable"].table thead {
    display: block;
  }
  .semantic .ui[class*="tablet stackable"].table tfoot {
    display: block;
  }
  .semantic .ui[class*="tablet stackable"].table tr > th,
  .semantic .ui[class*="tablet stackable"].table tr > td {
    background: none;
    border: none !important;
    padding: 0.25em 0.75em;
    box-shadow: none !important;
  }
  .semantic .ui[class*="tablet stackable"].table th:first-child,
  .semantic .ui[class*="tablet stackable"].table td:first-child {
    font-weight: bold;
    padding-top: 1em;
  }
  .semantic .ui[class*="tablet stackable"].table th:last-child,
  .semantic .ui[class*="tablet stackable"].table td:last-child {
    box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important;
    padding-bottom: 1em;
  }
  .semantic .ui[class*="tablet stackable"].table tr > td.warning,
  .semantic .ui[class*="tablet stackable"].table tr > td.error,
  .semantic .ui[class*="tablet stackable"].table tr > td.active,
  .semantic .ui[class*="tablet stackable"].table tr > td.positive,
  .semantic .ui[class*="tablet stackable"].table tr > td.negative {
    background-color: transparent !important;
  }
  .semantic .ui.definition[class*="tablet stackable"].table thead th:first-child {
    box-shadow: none !important;
  }
  .semantic .ui.definition[class*="tablet stackable"].table tr td:first-child {
    padding-bottom: 1em;
  }
  .semantic .ui.definition[class*="tablet stackable"].table tr td:nth-child(n+2) {
    padding-top: 1em;
  }
}
.semantic .ui.table[class*="left aligned"],
.semantic .ui.table [class*="left aligned"] {
  text-align: left;
}
.semantic .ui.table[class*="center aligned"],
.semantic .ui.table [class*="center aligned"] {
  text-align: center;
}
.semantic .ui.table[class*="right aligned"],
.semantic .ui.table [class*="right aligned"] {
  text-align: right;
}
.semantic .ui.table th.collapsing,
.semantic .ui.table td.collapsing {
  width: 1px;
  white-space: nowrap;
}
.semantic .ui.attached.table {
  width: -webkit-calc(100% + 2px );
  width: calc(100% + 2px);
  margin: 0em -1px;
  border-radius: 0px;
  box-shadow: none;
}
.semantic .ui[class*="top attached"].table {
  margin-top: 1em 0em;
  border-radius: 0 0 0em 0em;
}
.semantic .ui.table[class*="top attached"]:first-child {
  margin-top: 0em;
}
.semantic .ui.table[class*="bottom attached"] {
  margin-top: 0em;
  margin-bottom: 1em 0em;
  border-radius: 0em 0em 0 0;
}
.semantic .ui.table[class*="bottom attached"]:last-child {
  margin-bottom: 0em;
}
.semantic .ui.striped.table > tr:nth-child(2n),
.semantic .ui.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 50, 0.03);
}
.semantic .ui.inverted.striped.table > tr:nth-child(2n),
.semantic .ui.inverted.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(255, 255, 255, 0.06);
}
.semantic .ui.black.table {
  border-top: 0.2em solid #1b1c1d;
}
.semantic .ui.blue.table {
  border-top: 0.2em solid #3b83c0;
}
.semantic .ui.green.table {
  border-top: 0.2em solid #2db475;
}
.semantic .ui.orange.table {
  border-top: 0.2em solid #e07b53;
}
.semantic .ui.pink.table {
  border-top: 0.2em solid #d9499a;
}
.semantic .ui.purple.table {
  border-top: 0.2em solid #564f8a;
}
.semantic .ui.red.table {
  border-top: 0.2em solid #cc181e;
}
.semantic .ui.teal.table {
  border-top: 0.2em solid #00b5ad;
}
.semantic .ui.yellow.table {
  border-top: 0.2em solid #f2c61f;
}
.semantic .ui.inverted.table,
.semantic .ui.inverted.black.table {
  background-color: #1b1c1d !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.blue.table {
  background-color: #3b83c0 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.green.table {
  background-color: #2db475 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.orange.table {
  background-color: #e07b53 !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.pink.table {
  background-color: #d9499a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.purple.table {
  background-color: #564f8a !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.red.table {
  background-color: #cc181e !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.teal.table {
  background-color: #00b5ad !important;
  color: #ffffff !important;
}
.semantic .ui.inverted.yellow.table {
  background-color: #f2c61f !important;
  color: #ffffff !important;
}
.semantic .ui.one.column.table td {
  width: 100%;
}
.semantic .ui.two.column.table td {
  width: 50%;
}
.semantic .ui.three.column.table td {
  width: 33.33333333%;
}
.semantic .ui.four.column.table td {
  width: 25%;
}
.semantic .ui.five.column.table td {
  width: 20%;
}
.semantic .ui.six.column.table td {
  width: 16.66666667%;
}
.semantic .ui.seven.column.table td {
  width: 14.28571429%;
}
.semantic .ui.eight.column.table td {
  width: 12.5%;
}
.semantic .ui.nine.column.table td {
  width: 11.11111111%;
}
.semantic .ui.ten.column.table td {
  width: 10%;
}
.semantic .ui.eleven.column.table td {
  width: 9.09090909%;
}
.semantic .ui.twelve.column.table td {
  width: 8.33333333%;
}
.semantic .ui.thirteen.column.table td {
  width: 7.69230769%;
}
.semantic .ui.fourteen.column.table td {
  width: 7.14285714%;
}
.semantic .ui.fifteen.column.table td {
  width: 6.66666667%;
}
.semantic .ui.sixteen.column.table td {
  width: 6.25%;
}
.semantic .ui.table th.one.wide,
.semantic .ui.table td.one.wide {
  width: 6.25%;
}
.semantic .ui.table th.two.wide,
.semantic .ui.table td.two.wide {
  width: 12.5%;
}
.semantic .ui.table th.three.wide,
.semantic .ui.table td.three.wide {
  width: 18.75%;
}
.semantic .ui.table th.four.wide,
.semantic .ui.table td.four.wide {
  width: 25%;
}
.semantic .ui.table th.five.wide,
.semantic .ui.table td.five.wide {
  width: 31.25%;
}
.semantic .ui.table th.six.wide,
.semantic .ui.table td.six.wide {
  width: 37.5%;
}
.semantic .ui.table th.seven.wide,
.semantic .ui.table td.seven.wide {
  width: 43.75%;
}
.semantic .ui.table th.eight.wide,
.semantic .ui.table td.eight.wide {
  width: 50%;
}
.semantic .ui.table th.nine.wide,
.semantic .ui.table td.nine.wide {
  width: 56.25%;
}
.semantic .ui.table th.ten.wide,
.semantic .ui.table td.ten.wide {
  width: 62.5%;
}
.semantic .ui.table th.eleven.wide,
.semantic .ui.table td.eleven.wide {
  width: 68.75%;
}
.semantic .ui.table th.twelve.wide,
.semantic .ui.table td.twelve.wide {
  width: 75%;
}
.semantic .ui.table th.thirteen.wide,
.semantic .ui.table td.thirteen.wide {
  width: 81.25%;
}
.semantic .ui.table th.fourteen.wide,
.semantic .ui.table td.fourteen.wide {
  width: 87.5%;
}
.semantic .ui.table th.fifteen.wide,
.semantic .ui.table td.fifteen.wide {
  width: 93.75%;
}
.semantic .ui.table th.sixteen.wide,
.semantic .ui.table td.sixteen.wide {
  width: 100%;
}
.semantic .ui.sortable.table thead th {
  cursor: pointer;
  white-space: nowrap;
  border-left: 1px solid #d0d0d0;
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th:first-child {
  border-left: none;
}
.semantic .ui.sortable.table thead th.sorted,
.semantic .ui.sortable.table thead th.sorted:hover {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.semantic .ui.sortable.table thead th:after {
  display: inline-block;
  content: "";
  width: 1em;
  height: 1em;
  opacity: 0.8;
  margin: 0em 0em 0em 0.5em;
  font-family: "Icons";
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
}
.semantic .ui.sortable.table thead th.ascending:after {
  content: "\f0d7";
}
.semantic .ui.sortable.table thead th.descending:after {
  content: "\f0d8";
}
.semantic .ui.sortable.table th.disabled:hover {
  cursor: auto;
  color: rgba(40, 40, 40, 0.3);
}
.semantic .ui.sortable.table thead th:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th.sorted {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.sortable.table thead th.sorted:hover {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
}
.semantic .ui.inverted.sortable.table thead th.sorted {
  background: rgba(255, 255, 255, 0.07) -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: rgba(255, 255, 255, 0.07) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}
.semantic .ui.inverted.sortable.table thead th:hover {
  background: rgba(255, 255, 255, 0.05) -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  background: rgba(255, 255, 255, 0.05) linear-gradient(transparent, rgba(0, 0, 0, 0.05));
  color: #ffffff;
}
.semantic .ui.inverted.sortable.table thead th {
  border-left-color: transparent;
  border-right-color: transparent;
}
.semantic .ui.inverted.table {
  background: #333333;
  color: #ffffff;
  border: none;
}
.semantic .ui.inverted.table th {
  background-color: rgba(0, 0, 0, 0.15);
  border-color: rgba(0, 0, 0, 0.2) !important;
  color: rgba(255, 255, 255, 0.9);
}
.semantic .ui.inverted.table tr td {
  border-color: rgba(0, 0, 0, 0.2) !important;
}
.semantic .ui.inverted.table tr.disabled td,
.semantic .ui.inverted.table tr td.disabled,
.semantic .ui.inverted.table tr.disabled:hover td,
.semantic .ui.inverted.table tr:hover td.disabled {
  pointer-events: none;
  color: rgba(225, 225, 225, 0.3);
}
.semantic .ui.inverted.definition.table tfoot:not(.full-width) th:first-child,
.semantic .ui.inverted.definition.table thead:not(.full-width) th:first-child {
  background: #ffffff;
}
.semantic .ui.inverted.definition.table tr td:first-child {
  background: rgba(255, 255, 255, 0.02);
  color: #ffffff;
}
.semantic .ui.collapsing.table {
  width: auto;
}
.semantic .ui.basic.table {
  background: transparent;
  border: 1px solid #d0d0d0;
  box-shadow: none;
}
.semantic .ui.basic.table thead,
.semantic .ui.basic.table tfoot {
  box-shadow: none;
}
.semantic .ui.basic.table th {
  background: transparent;
  border-left: none;
}
.semantic .ui.basic.table tbody tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.semantic .ui.basic.table td {
  background: transparent;
}
.semantic .ui.basic.striped.table tbody tr:nth-child(2n) {
  background-color: rgba(0, 0, 0, 0.05) !important;
}
.semantic .ui[class*="very basic"].table {
  border: none;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td {
  padding: 0.7em 0.8em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th:first-child,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td:first-child {
  padding-left: 0em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) th:last-child,
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) td:last-child {
  padding-right: 0em;
}
.semantic .ui[class*="very basic"].table:not(.sortable):not(.striped) thead tr:first-child th {
  padding-top: 0em;
}
.semantic .ui.celled.table tr th,
.semantic .ui.celled.table tr td {
  border-left: 1px solid #d4d4d5;
}
.semantic .ui.celled.table tr th:first-child,
.semantic .ui.celled.table tr td:first-child {
  border-left: none;
}
.semantic .ui.padded.table th {
  padding-left: 1em;
  padding-right: 1em;
}
.semantic .ui.padded.table th,
.semantic .ui.padded.table td {
  padding: 1em 1em;
}
.semantic .ui[class*="very padded"].table th {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
.semantic .ui[class*="very padded"].table td {
  padding: 1.5em 1.5em;
}
.semantic .ui.compact.table th {
  padding-left: 0.7em;
  padding-right: 0.7em;
}
.semantic .ui.compact.table td {
  padding: 0.5em 0.7em;
}
.semantic .ui[class*="very compact"].table th {
  padding-left: 0.6em;
  padding-right: 0.6em;
}
.semantic .ui[class*="very compact"].table td {
  padding: 0.4em 0.6em;
}
.semantic .ui.small.table {
  font-size: 0.9em;
}
.semantic .ui.table {
  font-size: 1em;
}
.semantic .ui.large.table {
  font-size: 1.1em;
}
.semantic .ui.basic.table {
  border: 0px solid #d0d0d0;
  box-shadow: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody th {
  border-bottom: none;
  border-top: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody tr {
  border-bottom: none;
  border-collapse: collapse;
}
.semantic .ui.basic.table tbody td {
  border-top: none;
  border-right: 3px solid #fff;
}
.semantic .ui.basic.table thead th {
  border-bottom: none;
  border-right: none;
  border-left: none;
}
.semantic .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;
}
.semantic .animating.transition {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  visibility: visible !important;
}
.semantic .loading.transition {
  position: absolute;
  top: -99999px;
  left: -99999px;
}
.semantic .hidden.transition {
  display: none;
  visibility: hidden;
}
.semantic .visible.transition {
  display: block !important;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.semantic .disabled.transition {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
.semantic .looping.transition {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
.semantic .transition.browse {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}
.semantic .transition.browse.in {
  -webkit-animation-name: browseIn;
  animation-name: browseIn;
}
.semantic .transition.browse.out,
.semantic .transition.browse.left.out {
  -webkit-animation-name: browseOutLeft;
  animation-name: browseOutLeft;
}
.semantic .transition.browse.right.out {
  -webkit-animation-name: browseOutRight;
  animation-name: browseOutRight;
}
@-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;
  }
}
@-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;
  }
}
.semantic .drop.transition {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
  -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);
}
.semantic .drop.transition.in {
  -webkit-animation-name: dropIn;
  animation-name: dropIn;
}
.semantic .drop.transition.out {
  -webkit-animation-name: dropOut;
  animation-name: dropOut;
}
@-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);
  }
}
.semantic .transition.fade.in {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}
.semantic .transition[class*="fade up"].in {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
.semantic .transition[class*="fade down"].in {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
.semantic .transition[class*="fade left"].in {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
.semantic .transition[class*="fade right"].in {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
.semantic .transition.fade.out {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}
.semantic .transition[class*="fade up"].out {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}
.semantic .transition[class*="fade down"].out {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}
.semantic .transition[class*="fade left"].out {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}
.semantic .transition[class*="fade right"].out {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}
@-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%);
  }
}
@-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(10%);
    transform: translateY(10%);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(10%);
    transform: translateY(10%);
  }
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(10%);
    transform: translateX(10%);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(10%);
    transform: translateX(10%);
  }
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%);
  }
}
.semantic .flip.transition.in,
.semantic .flip.transition.out {
  -webkit-animation-duration: 600ms;
  animation-duration: 600ms;
  -webkit-perspective: 2000px;
  perspective: 2000px;
}
.semantic .horizontal.flip.transition.in {
  -webkit-animation-name: horizontalFlipIn;
  animation-name: horizontalFlipIn;
}
.semantic .horizontal.flip.transition.out {
  -webkit-animation-name: horizontalFlipOut;
  animation-name: horizontalFlipOut;
}
.semantic .vertical.flip.transition.in {
  -webkit-animation-name: verticalFlipIn;
  animation-name: verticalFlipIn;
}
.semantic .vertical.flip.transition.out {
  -webkit-animation-name: verticalFlipOut;
  animation-name: verticalFlipOut;
}
@-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;
  }
}
@-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;
  }
}
.semantic .scale.transition.in {
  -webkit-animation-name: scaleIn;
  animation-name: scaleIn;
}
.semantic .scale.transition.out {
  -webkit-animation-name: scaleOut;
  animation-name: scaleOut;
}
@-webkit-keyframes scaleIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes scaleIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes scaleOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
}
@keyframes scaleOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
}
.semantic .transition.fly {
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.semantic .transition.fly.in {
  -webkit-animation-name: flyIn;
  animation-name: flyIn;
}
.semantic .transition[class*="fly up"].in {
  -webkit-animation-name: flyInUp;
  animation-name: flyInUp;
}
.semantic .transition[class*="fly down"].in {
  -webkit-animation-name: flyInDown;
  animation-name: flyInDown;
}
.semantic .transition[class*="fly left"].in {
  -webkit-animation-name: flyInLeft;
  animation-name: flyInLeft;
}
.semantic .transition[class*="fly right"].in {
  -webkit-animation-name: flyInRight;
  animation-name: flyInRight;
}
.semantic .transition.fly.out {
  -webkit-animation-name: flyOut;
  animation-name: flyOut;
}
.semantic .transition[class*="fly up"].out {
  -webkit-animation-name: flyOutUp;
  animation-name: flyOutUp;
}
.semantic .transition[class*="fly down"].out {
  -webkit-animation-name: flyOutDown;
  animation-name: flyOutDown;
}
.semantic .transition[class*="fly left"].out {
  -webkit-animation-name: flyOutLeft;
  animation-name: flyOutLeft;
}
.semantic .transition[class*="fly right"].out {
  -webkit-animation-name: flyOutRight;
  animation-name: flyOutRight;
}
@-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;
  }
}
@-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);
  }
}
.semantic .transition.slide.in,
.semantic .transition[class*="slide down"].in {
  -webkit-animation-name: slideInY;
  animation-name: slideInY;
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
}
.semantic .transition[class*="slide up"].in {
  -webkit-animation-name: slideInY;
  animation-name: slideInY;
  -webkit-transform-origin: bottom center;
  -ms-transform-origin: bottom center;
  transform-origin: bottom center;
}
.semantic .transition[class*="slide left"].in {
  -webkit-animation-name: slideInX;
  animation-name: slideInX;
  -webkit-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}
.semantic .transition[class*="slide right"].in {
  -webkit-animation-name: slideInX;
  animation-name: slideInX;
  -webkit-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}
.semantic .transition.slide.out,
.semantic .transition[class*="slide down"].out {
  -webkit-animation-name: slideOutY;
  animation-name: slideOutY;
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
}
.semantic .transition[class*="slide up"].out {
  -webkit-animation-name: slideOutY;
  animation-name: slideOutY;
  -webkit-transform-origin: bottom center;
  -ms-transform-origin: bottom center;
  transform-origin: bottom center;
}
.semantic .transition[class*="slide left"].out {
  -webkit-animation-name: slideOutX;
  animation-name: slideOutX;
  -webkit-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}
.semantic .transition[class*="slide right"].out {
  -webkit-animation-name: slideOutX;
  animation-name: slideOutX;
  -webkit-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}
@-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);
  }
}
@-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);
  }
}
.semantic .transition.swing {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}
.semantic .transition[class*="swing down"].in {
  -webkit-animation-name: swingInX;
  animation-name: swingInX;
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
}
.semantic .transition[class*="swing up"].in {
  -webkit-animation-name: swingInX;
  animation-name: swingInX;
  -webkit-transform-origin: bottom center;
  -ms-transform-origin: bottom center;
  transform-origin: bottom center;
}
.semantic .transition[class*="swing left"].in {
  -webkit-animation-name: swingInY;
  animation-name: swingInY;
  -webkit-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}
.semantic .transition[class*="swing right"].in {
  -webkit-animation-name: swingInY;
  animation-name: swingInY;
  -webkit-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}
.semantic .transition.swing.out,
.semantic .transition[class*="swing down"].out {
  -webkit-animation-name: swingOutX;
  animation-name: swingOutX;
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
}
.semantic .transition[class*="swing up"].out {
  -webkit-animation-name: swingOutX;
  animation-name: swingOutX;
  -webkit-transform-origin: bottom center;
  -ms-transform-origin: bottom center;
  transform-origin: bottom center;
}
.semantic .transition[class*="swing left"].out {
  -webkit-animation-name: swingOutY;
  animation-name: swingOutY;
  -webkit-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}
.semantic .transition[class*="swing right"].out {
  -webkit-animation-name: swingOutY;
  animation-name: swingOutY;
  -webkit-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}
@-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);
  }
}
@-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;
  }
}
.semantic .flash.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: flash;
  animation-name: flash;
}
.semantic .shake.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: shake;
  animation-name: shake;
}
.semantic .bounce.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: bounce;
  animation-name: bounce;
}
.semantic .tada.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: tada;
  animation-name: tada;
}
.semantic .pulse.transition {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
  -webkit-animation-name: pulse;
  animation-name: pulse;
}
.semantic .jiggle.transition {
  -webkit-animation-duration: 750ms;
  animation-duration: 750ms;
  -webkit-animation-name: jiggle;
  animation-name: jiggle;
}
@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-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);
  }
}
@-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);
  }
}
@-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);
  }
}
@-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;
  }
}
@-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);
  }
}
.semantic .ui.product.accordion .transition.visible {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.semantic .ui.video {
  background-color: #dddddd;
  position: relative;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0px;
  overflow: hidden;
}
.semantic .ui.video .placeholder {
  background-color: #333333;
}
.semantic .ui.video .play {
  cursor: pointer;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 10;
  width: 100%;
  height: 100%;
  opacity: 0.8;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.semantic .ui.video .play.icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 11;
  background: rgba(0, 0, 0, 0.3);
  width: 8rem;
  height: 8rem;
  line-height: 8rem;
  border-radius: 500rem;
  color: #ffffff;
  font-size: 8rem;
  text-shadow: none;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
.semantic .ui.video .placeholder {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  width: 100%;
  height: 100%;
}
.semantic .ui.video .embed iframe,
.semantic .ui.video .embed embed,
.semantic .ui.video .embed object {
  position: absolute;
  border: none;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  margin: 0em;
  padding: 0em;
}
.semantic .ui.video .play:hover {
  opacity: 1;
}
.semantic .ui.video.active .play,
.semantic .ui.video.active .placeholder {
  display: none;
}
.semantic .ui.video.active .embed {
  display: inline;
}
.semantic .ui.form {
  position: relative;
  max-width: 100%;
}
.semantic .ui.form > p {
  margin: 1em 0em;
}
.semantic .ui.form .fields .field,
.semantic .ui.form .field {
  clear: both;
  margin: 0em 0em 1em;
}
.semantic .ui.form .fields:last-child,
.semantic .ui.form .field:last-child {
  margin-bottom: 0em;
}
.semantic .ui.form .field > label {
  display: block;
  margin: 0em 0em 0.2857rem 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form .grouped.fields > label {
  margin: 0em 0em 0.2857rem 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form .inline.fields > label {
  display: inline-block;
  vertical-align: middle;
  margin: 0em 1em 0em 0em;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.9285em;
  font-weight: bold;
  text-transform: none;
}
.semantic .ui.form textarea,
.semantic .ui.form input:not([type]),
.semantic .ui.form input[type=date],
.semantic .ui.form input[type=datetime-local],
.semantic .ui.form input[type=email],
.semantic .ui.form input[type=number],
.semantic .ui.form input[type=password],
.semantic .ui.form input[type=search],
.semantic .ui.form input[type=tel],
.semantic .ui.form input[type=time],
.semantic .ui.form input[type=text],
.semantic .ui.form input[type=url],
.semantic .ui.form .ui.input {
  width: 100%;
  vertical-align: top;
}
.semantic .ui.form input:not([type]),
.semantic .ui.form input[type=date],
.semantic .ui.form input[type=datetime-local],
.semantic .ui.form input[type=email],
.semantic .ui.form input[type=number],
.semantic .ui.form input[type=password],
.semantic .ui.form input[type=search],
.semantic .ui.form input[type=tel],
.semantic .ui.form input[type=time],
.semantic .ui.form input[type=text],
.semantic .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.2142em;
  padding: 0.67861em 1em;
  font-size: 1em;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.textarea,
.semantic .ui.form textarea {
  margin: 0em;
  -webkit-appearance: none;
  tap-highlight-color: rgba(255, 255, 255, 0);
  padding: 0.78571em 1em;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  outline: none;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  font-size: 1em;
  height: 12em;
  min-height: 8em;
  max-height: 24em;
  line-height: 1.2857;
  resize: vertical;
}
.semantic .ui.form textarea,
.semantic .ui.form input[type=checkbox] {
  vertical-align: top;
}
.semantic .ui.form input.attached {
  width: auto;
}
.semantic .ui.form select {
  display: block;
  height: auto;
  width: 100%;
  background: #ffffff;
  border: 1px solid rgba(39, 41, 43, 0.15);
  border-radius: 0.2857rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  padding: 0.62em 1em;
  color: rgba(0, 0, 0, 0.8);
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.semantic .ui.form .field > .selection.dropdown {
  width: 100%;
}
.semantic .ui.form .field > .selection.dropdown > .dropdown.icon {
  float: right;
}
.semantic .ui.form .inline.field > .selection.dropdown {
  width: auto;
}
.semantic .ui.form .inline.field > .selection.dropdown > .dropdown.icon {
  float: none;
}
.semantic .ui.form .divider {
  clear: both;
  margin: 1em 0em;
}
.semantic .ui.form .success.message,
.semantic .ui.form .warning.message,
.semantic .ui.form .error.message {
  display: none;
}
.semantic .ui.form .message:first-child {
  margin-top: 0px;
}
.semantic .ui.form .field .prompt.label {
  white-space: nowrap;
}
.semantic .ui.form .inline.field .prompt {
  margin: -0.5em 0em -0.5em 1em;
}
.semantic .ui.form .inline.field .prompt:before {
  margin-top: -0.3em;
  bottom: auto;
  right: auto;
  top: 50%;
  left: 0em;
}
.semantic .ui.form ::-webkit-input-placeholder {
  color: rgba(140, 140, 140, 0.8);
}
.semantic .ui.form ::-moz-placeholder {
  color: rgba(140, 140, 140, 0.8);
}
.semantic .ui.form :focus::-webkit-input-placeholder {
  color: rgba(89, 89, 89, 0.8);
}
.semantic .ui.form :focus::-moz-placeholder {
  color: rgba(89, 89, 89, 0.8);
}
.semantic .ui.form .error ::-webkit-input-placeholder {
  color: #e73036;
}
.semantic .ui.form .error ::-moz-placeholder {
  color: #e73036;
}
.semantic .ui.form .error :focus::-webkit-input-placeholder {
  color: #e31b21;
}
.semantic .ui.form .error :focus::-moz-placeholder {
  color: #e31b21;
}
.semantic .ui.form input:not([type]):focus,
.semantic .ui.form input[type=date]:focus,
.semantic .ui.form input[type=datetime-local]:focus,
.semantic .ui.form input[type=email]:focus,
.semantic .ui.form input[type=number]:focus,
.semantic .ui.form input[type=password]:focus,
.semantic .ui.form input[type=search]:focus,
.semantic .ui.form input[type=tel]:focus,
.semantic .ui.form input[type=time]:focus,
.semantic .ui.form input[type=text]:focus,
.semantic .ui.form input[type=url]:focus {
  color: rgba(0, 0, 0, 0.85);
  border-color: rgba(39, 41, 43, 0.3);
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  background: #ffffff;
  box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset;
}
.semantic .ui.form textarea:focus {
  color: rgba(0, 0, 0, 0.85);
  border-color: rgba(39, 41, 43, 0.3);
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  background: #ffffff;
  box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset;
  -webkit-appearance: none;
}
.semantic .ui.form.success .success.message {
  display: block;
}
.semantic .ui.form.warning .warning.message {
  display: block;
}
.semantic .ui.form.error .error.message {
  display: block;
}
.semantic .ui.form .fields.error .field label,
.semantic .ui.form .field.error label,
.semantic .ui.form .fields.error .field .input,
.semantic .ui.form .field.error .input {
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .corner.label,
.semantic .ui.form .field.error .corner.label {
  border-color: #cc181e;
  color: #ffffff;
}
.semantic .ui.form .fields.error .field textarea,
.semantic .ui.form .fields.error .field select,
.semantic .ui.form .fields.error .field input:not([type]),
.semantic .ui.form .fields.error .field input[type=date],
.semantic .ui.form .fields.error .field input[type=datetime-local],
.semantic .ui.form .fields.error .field input[type=email],
.semantic .ui.form .fields.error .field input[type=number],
.semantic .ui.form .fields.error .field input[type=password],
.semantic .ui.form .fields.error .field input[type=search],
.semantic .ui.form .fields.error .field input[type=tel],
.semantic .ui.form .fields.error .field input[type=time],
.semantic .ui.form .fields.error .field input[type=text],
.semantic .ui.form .fields.error .field input[type=url],
.semantic .ui.form .field.error textarea,
.semantic .ui.form .field.error select,
.semantic .ui.form .field.error input:not([type]),
.semantic .ui.form .field.error input[type=date],
.semantic .ui.form .field.error input[type=datetime-local],
.semantic .ui.form .field.error input[type=email],
.semantic .ui.form .field.error input[type=number],
.semantic .ui.form .field.error input[type=password],
.semantic .ui.form .field.error input[type=search],
.semantic .ui.form .field.error input[type=tel],
.semantic .ui.form .field.error input[type=time],
.semantic .ui.form .field.error input[type=text],
.semantic .ui.form .field.error input[type=url] {
  background: #fff0f0;
  border-color: #dbb1b1;
  color: #cc181e;
  border-radius: 0em 0.2857rem 0.2857rem 0em;
  box-shadow: 2px 0em 0em 0em #cc181e inset;
}
.semantic .ui.form .field.error textarea:focus,
.semantic .ui.form .field.error select:focus,
.semantic .ui.form .field.error input:not([type]):focus,
.semantic .ui.form .field.error input[type=date]:focus,
.semantic .ui.form .field.error input[type=datetime-local]:focus,
.semantic .ui.form .field.error input[type=email]:focus,
.semantic .ui.form .field.error input[type=number]:focus,
.semantic .ui.form .field.error input[type=password]:focus,
.semantic .ui.form .field.error input[type=search]:focus,
.semantic .ui.form .field.error input[type=tel]:focus,
.semantic .ui.form .field.error input[type=time]:focus,
.semantic .ui.form .field.error input[type=text]:focus,
.semantic .ui.form .field.error input[type=url]:focus {
  background: #fff0f0;
  border-color: #dbb1b1;
  color: #da1a20;
  -webkit-appearance: none;
  box-shadow: 2px 0em 0em 0em #da1a20 inset;
}
.semantic .ui.form .field.error select {
  -webkit-appearance: menulist-button;
}
.semantic .ui.form .fields.error .field .ui.dropdown,
.semantic .ui.form .fields.error .field .ui.dropdown .item,
.semantic .ui.form .field.error .ui.dropdown,
.semantic .ui.form .field.error .ui.dropdown .text,
.semantic .ui.form .field.error .ui.dropdown .item {
  background: #fff0f0;
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .ui.dropdown,
.semantic .ui.form .field.error .ui.dropdown {
  border-color: #dbb1b1 !important;
}
.semantic .ui.form .fields.error .field .ui.dropdown:hover,
.semantic .ui.form .field.error .ui.dropdown:hover {
  border-color: #dbb1b1 !important;
}
.semantic .ui.form .fields.error .field .ui.dropdown:hover .menu,
.semantic .ui.form .field.error .ui.dropdown:hover .menu {
  border-color: #dbb1b1;
}
.semantic .ui.form .fields.error .field .ui.dropdown .menu .item:hover,
.semantic .ui.form .field.error .ui.dropdown .menu .item:hover {
  background-color: #fbe7e7;
}
.semantic .ui.form .fields.error .field .ui.dropdown .menu .active.item,
.semantic .ui.form .field.error .ui.dropdown .menu .active.item {
  background-color: #fdcfcf !important;
}
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) label,
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box {
  color: #cc181e;
}
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,
.semantic .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,
.semantic .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before {
  background: #fff0f0;
  border-color: #dbb1b1;
}
.semantic .ui.form .fields.error .field .checkbox label:after,
.semantic .ui.form .field.error .checkbox label:after,
.semantic .ui.form .fields.error .field .checkbox .box:after,
.semantic .ui.form .field.error .checkbox .box:after {
  color: #cc181e;
}
.semantic .ui.form .field :disabled,
.semantic .ui.form .field.disabled {
  opacity: 0.5;
}
.semantic .ui.form .field.disabled label {
  opacity: 0.5;
}
.semantic .ui.form .field.disabled :disabled {
  opacity: 1;
}
.semantic .ui.loading.form {
  position: relative;
  cursor: default;
  point-events: none;
  text-shadow: none !important;
  color: transparent !important;
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
  z-index: 100;
}
.semantic .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;
}
.semantic .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: #aaaaaa 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);
  }
}
.semantic .ui.form .required.fields > .field > label:after,
.semantic .ui.form .required.field > label:after,
.semantic .ui.form .required.fields > .field > .checkbox:after,
.semantic .ui.form .required.field > .checkbox:after {
  margin: -0.2em 0em 0em 0.2em;
  content: "*";
  color: #cc181e;
}
.semantic .ui.form .required.fields > .field > label:after,
.semantic .ui.form .required.field > label:after {
  display: inline-block;
  vertical-align: top;
}
.semantic .ui.form .required.fields > .field > .checkbox:after,
.semantic .ui.form .required.field > .checkbox:after {
  position: absolute;
  top: 0%;
  left: 100%;
}
.semantic .ui.inverted.form label,
.semantic .ui.form .inverted.segment label,
.semantic .ui.form .inverted.segment .ui.checkbox label,
.semantic .ui.form .inverted.segment .ui.checkbox .box,
.semantic .ui.inverted.form .ui.checkbox label,
.semantic .ui.inverted.form .ui.checkbox .box {
  color: #ffffff;
}
.semantic .ui.form .grouped.fields {
  margin: 0em 0em 1em;
}
.semantic .ui.form .grouped.fields:last-child {
  margin-bottom: 0em;
}
.semantic .ui.form .grouped.fields > label {
  font-size: 0.9285em;
}
.semantic .ui.form .grouped.fields .field {
  display: block;
  float: none;
  margin: 0.5em 0em;
  padding: 0em;
}
.semantic .ui.form .fields {
  clear: both;
}
.semantic .ui.form .fields:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.semantic .ui.form .fields > .field {
  clear: none;
  float: left;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.semantic .ui.form .fields > .field:first-child {
  border-left: none;
  box-shadow: none;
}
.semantic .ui.form .two.fields > .fields,
.semantic .ui.form .two.fields > .field {
  width: 50%;
}
.semantic .ui.form .three.fields > .fields,
.semantic .ui.form .three.fields > .field {
  width: 33.33333333%;
}
.semantic .ui.form .four.fields > .fields,
.semantic .ui.form .four.fields > .field {
  width: 25%;
}
.semantic .ui.form .five.fields > .fields,
.semantic .ui.form .five.fields > .field {
  width: 20%;
}
.semantic .ui.form .six.fields > .fields,
.semantic .ui.form .six.fields > .field {
  width: 16.66666667%;
}
.semantic .ui.form .seven.fields > .fields,
.semantic .ui.form .seven.fields > .field {
  width: 14.28571429%;
}
.semantic .ui.form .eight.fields > .fields,
.semantic .ui.form .eight.fields > .field {
  width: 12.5%;
}
.semantic .ui.form .nine.fields > .fields,
.semantic .ui.form .nine.fields > .field {
  width: 11.11111111%;
}
.semantic .ui.form .ten.fields > .fields,
.semantic .ui.form .ten.fields > .field {
  width: 10%;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.form .two.fields > .fields,
  .semantic .ui.form .two.fields > .field,
  .semantic .ui.form .three.fields > .fields,
  .semantic .ui.form .three.fields > .field,
  .semantic .ui.form .four.fields > .fields,
  .semantic .ui.form .four.fields > .field,
  .semantic .ui.form .five.fields > .fields,
  .semantic .ui.form .five.fields > .field,
  .semantic .ui.form .six.fields > .fields,
  .semantic .ui.form .six.fields > .field,
  .semantic .ui.form .seven.fields > .fields,
  .semantic .ui.form .seven.fields > .field,
  .semantic .ui.form .eight.fields > .fields,
  .semantic .ui.form .eight.fields > .field,
  .semantic .ui.form .nine.fields > .fields,
  .semantic .ui.form .nine.fields > .field,
  .semantic .ui.form .ten.fields > .fields,
  .semantic .ui.form .ten.fields > .field {
    width: 100% !important;
    margin: 0em 0em 1em;
    padding-left: 0%;
    padding-right: 0%;
  }
}
.semantic .ui.form .fields .field:first-child {
  padding-left: 0%;
}
.semantic .ui.form .fields .field:last-child {
  padding-right: 0%;
}
.semantic .ui.form .fields .wide.field {
  width: 6.25%;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.semantic .ui.form .fields .wide.field:first-child {
  padding-left: 0%;
}
.semantic .ui.form .fields .wide.field:last-child {
  padding-right: 0%;
}
.semantic .ui.form .one.wide.field {
  width: 6.25% !important;
}
.semantic .ui.form .two.wide.field {
  width: 12.5% !important;
}
.semantic .ui.form .three.wide.field {
  width: 18.75% !important;
}
.semantic .ui.form .four.wide.field {
  width: 25% !important;
}
.semantic .ui.form .five.wide.field {
  width: 31.25% !important;
}
.semantic .ui.form .six.wide.field {
  width: 37.5% !important;
}
.semantic .ui.form .seven.wide.field {
  width: 43.75% !important;
}
.semantic .ui.form .eight.wide.field {
  width: 50% !important;
}
.semantic .ui.form .nine.wide.field {
  width: 56.25% !important;
}
.semantic .ui.form .ten.wide.field {
  width: 62.5% !important;
}
.semantic .ui.form .eleven.wide.field {
  width: 68.75% !important;
}
.semantic .ui.form .twelve.wide.field {
  width: 75% !important;
}
.semantic .ui.form .thirteen.wide.field {
  width: 81.25% !important;
}
.semantic .ui.form .fourteen.wide.field {
  width: 87.5% !important;
}
.semantic .ui.form .fifteen.wide.field {
  width: 93.75% !important;
}
.semantic .ui.form .sixteen.wide.field {
  width: 100% !important;
}
@media only screen and (max-width: 767px) {
  .semantic .ui.form .two.fields > .fields,
  .semantic .ui.form .two.fields > .field,
  .semantic .ui.form .three.fields > .fields,
  .semantic .ui.form .three.fields > .field,
  .semantic .ui.form .four.fields > .fields,
  .semantic .ui.form .four.fields > .field,
  .semantic .ui.form .five.fields > .fields,
  .semantic .ui.form .five.fields > .field,
  .semantic .ui.form .fields > .two.wide.field,
  .semantic .ui.form .fields > .three.wide.field,
  .semantic .ui.form .fields > .four.wide.field,
  .semantic .ui.form .fields > .five.wide.field,
  .semantic .ui.form .fields > .six.wide.field,
  .semantic .ui.form .fields > .seven.wide.field,
  .semantic .ui.form .fields > .eight.wide.field,
  .semantic .ui.form .fields > .nine.wide.field,
  .semantic .ui.form .fields > .ten.wide.field,
  .semantic .ui.form .fields > .eleven.wide.field,
  .semantic .ui.form .fields > .twelve.wide.field,
  .semantic .ui.form .fields > .thirteen.wide.field,
  .semantic .ui.form .fields > .fourteen.wide.field,
  .semantic .ui.form .fields > .fifteen.wide.field,
  .semantic .ui.form .fields > .sixteen.wide.field {
    width: 100% !important;
    margin: 0em 0em 1em;
    padding-left: 0%;
    padding-right: 0%;
  }
}
.semantic .ui.form .inline.fields {
  margin: 0em 0em 1em;
}
.semantic .ui.form .inline.fields .field {
  display: inline-block;
  float: none;
  margin: 0em 1em 0em 0em;
  padding: 0em;
}
.semantic .ui.form .inline.fields .field > label,
.semantic .ui.form .inline.fields .field > p,
.semantic .ui.form .inline.fields .field > input,
.semantic .ui.form .inline.fields .field > .ui.input,
.semantic .ui.form .inline.field > label,
.semantic .ui.form .inline.field > p,
.semantic .ui.form .inline.field > input,
.semantic .ui.form .inline.field > .ui.input {
  display: inline-block;
  width: auto;
  margin-top: 0em;
  margin-bottom: 0em;
  vertical-align: middle;
  font-size: 0.9285em;
}
.semantic .ui.form .inline.fields .field > input,
.semantic .ui.form .inline.fields .field > .ui.input,
.semantic .ui.form .inline.field > input,
.semantic .ui.form .inline.field > .ui.input {
  font-size: 0.9285em;
}
.semantic .ui.form .inline.fields .field > .ui.checkbox label {
  padding-left: 1.75em;
}
.semantic .ui.form .inline.fields .field > :first-child,
.semantic .ui.form .inline.field > :first-child {
  margin: 0em 0.2857rem 0em 0em;
}
.semantic .ui.form .inline.fields .field > :only-child,
.semantic .ui.form .inline.field > :only-child {
  margin: 0em;
}
.semantic .ui.small.form {
  font-size: 0.875em;
}
.semantic .ui.form {
  font-size: auto;
}
.semantic .ui.large.form {
  font-size: 1.125em;
}
.semantic .ui.huge.form {
  font-size: 1.2em;
}
.semantic .ui.form .fields .field,
.semantic .ui.form .field {
  text-transform: uppercase;
}
.semantic .ui.modal ::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal :-moz-placeholder {
  /* Firefox 18- */
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal ::-moz-placeholder {
  /* Firefox 19+ */
  color: rgba(0, 0, 0, 0.8) !important;
}
.semantic .ui.modal :-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.8) !important;
}

/**
 * selectize.css (v0.12.0)
 * Copyright (c) 2013–2015 Brian Reavis & contributors
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
 * file except in compliance with the License. You may obtain a copy of the License at:
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under
 * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
 * ANY KIND, either express or implied. See the License for the specific language
 * governing permissions and limitations under the License.
 *
 * @author Brian Reavis <brian@thirdroute.com>
 */
.selectize-control.plugin-remove_button [data-value] {
  position: relative;
  padding-right: 24px !important;
}

.selectize-control.plugin-remove_button [data-value] .remove {
  z-index: 1;
  /* fixes ie bug (see #392) */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 17px;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  color: inherit;
  text-decoration: none;
  vertical-align: middle;
  display: inline-block;
  padding: 2px 0 0 0;
  border-left: 1px solid #d0d0d0;
  -webkit-border-radius: 0 2px 2px 0;
  -moz-border-radius: 0 2px 2px 0;
  border-radius: 0 2px 2px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.selectize-control.plugin-remove_button [data-value] .remove:hover {
  background: rgba(0, 0, 0, 0.05);
}

.selectize-control.plugin-remove_button [data-value].active .remove {
  border-left-color: #cacaca;
}

.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover {
  background: none;
}

.selectize-control.plugin-remove_button .disabled [data-value] .remove {
  border-left-color: #ffffff;
}

.selectize-control {
  position: relative;
}

.selectize-dropdown,
.selectize-input,
.selectize-input input {
  color: #303030;
  font-family: inherit;
  font-size: 13px;
  line-height: 18px;
  -webkit-font-smoothing: inherit;
}

.selectize-input,
.selectize-control.single .selectize-input.input-active {
  background: #ffffff;
  cursor: text;
  display: inline-block;
}

.selectize-input {
  border: 1px solid #d0d0d0;
  padding: 8px 8px;
  display: inline-block;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 1;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.selectize-control.multi .selectize-input.has-items {
  padding: 6px 8px 3px;
}

.selectize-input.full {
  background-color: #ffffff;
}

.selectize-input.disabled,
.selectize-input.disabled * {
  cursor: default !important;
}

.selectize-input.focus {
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
}

.selectize-input.dropdown-active {
  -webkit-border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  border-radius: 3px 3px 0 0;
}

.selectize-input > * {
  vertical-align: baseline;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
}

.selectize-control.multi .selectize-input > div {
  cursor: pointer;
  margin: 0 3px 3px 0;
  padding: 2px 6px;
  background: #f2f2f2;
  color: #303030;
  border: 0 solid #d0d0d0;
  font-weight: 700;
}

.selectize-control.multi .selectize-input > div.active {
  background: #2DB475;
  color: #fff;
  border: 0 solid #cacaca;
  font-weight: 700;
  border-radius: 2px;
}

.selectize-control.multi .selectize-input.disabled > div,
.selectize-control.multi .selectize-input.disabled > div.active {
  color: #7d7d7d;
  background: #ffffff;
  border: 0 solid #ffffff;
}

.selectize-input > input {
  display: inline-block !important;
  padding: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  max-width: 100% !important;
  margin: 0 2px 0 0 !important;
  text-indent: 0 !important;
  border: 0 none !important;
  background: none !important;
  line-height: inherit !important;
  -webkit-user-select: auto !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.selectize-input > input::-ms-clear {
  display: none;
}

.selectize-input > input:focus {
  outline: none !important;
}

.selectize-input::after {
  content: " ";
  display: block;
  clear: left;
}

.selectize-input.dropdown-active::before {
  content: " ";
  display: block;
  position: absolute;
  background: #f0f0f0;
  height: 1px;
  bottom: 0;
  left: 0;
  right: 0;
}

.selectize-dropdown {
  position: absolute;
  z-index: 10;
  border: 1px solid #d0d0d0;
  background: #ffffff;
  margin: -1px 0 0 0;
  border-top: 0 none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  -webkit-border-radius: 0 0 3px 3px;
  -moz-border-radius: 0 0 3px 3px;
  border-radius: 0 0 3px 3px;
}

.selectize-dropdown [data-selectable] {
  cursor: pointer;
  overflow: hidden;
}

.selectize-dropdown [data-selectable] .highlight {
  background: rgba(125, 168, 208, 0.2);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
}

.selectize-dropdown [data-selectable],
.selectize-dropdown .optgroup-header {
  padding: 5px 8px;
}

.selectize-dropdown .optgroup:first-child .optgroup-header {
  border-top: 0 none;
}

.selectize-dropdown .optgroup-header {
  color: #303030;
  background: #ffffff;
  cursor: default;
}

.selectize-dropdown .active {
  background-color: #f5fafd;
  color: #495c68;
}

.selectize-dropdown .active.create {
  color: #495c68;
}

.selectize-dropdown .create {
  color: rgba(48, 48, 48, 0.5);
}

.selectize-dropdown-content {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 200px;
}

.selectize-control.single .selectize-input,
.selectize-control.single .selectize-input input {
  cursor: pointer;
}

.selectize-control.single .selectize-input.input-active,
.selectize-control.single .selectize-input.input-active input {
  cursor: text;
}

.selectize-control.single .selectize-input:after {
  content: " ";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #808080 transparent transparent transparent;
}

.selectize-control.single .selectize-input.dropdown-active:after {
  margin-top: -4px;
  border-width: 0 5px 5px 5px;
  border-color: transparent transparent #808080 transparent;
}

.selectize-control.rtl.single .selectize-input:after {
  left: 15px;
  right: auto;
}

.selectize-control.rtl .selectize-input > input {
  margin: 0 4px 0 -2px !important;
}

.selectize-control .selectize-input.disabled {
  opacity: 0.5;
  background-color: #fafafa;
}

/* ==========================================================================
   $BASE-PICKER
   ========================================================================== */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
.picker {
  font-size: 16px;
  text-align: left;
  line-height: 1.2;
  color: #000000;
  position: absolute;
  z-index: 10000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/**
 * The picker input element.
 */
.picker__input {
  cursor: default;
}

/**
 * When the picker is opened, the input element is “activated”.
 */
.picker__input.picker__input--active {
  border-color: #0089ec;
}

/**
 * The holder is the only “scrollable” top-level container element.
 */
.picker__holder {
  width: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/*!
 * Classic picker styling for pickadate.js
 * Demo: http://amsul.github.io/pickadate.js
 */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
.picker {
  width: 100%;
}

/**
 * The holder is the base of the picker.
 */
.picker__holder {
  position: absolute;
  background: #ffffff;
  border: 1px solid #aaaaaa;
  border-top-width: 0;
  border-bottom-width: 0;
  border-radius: 0 0 5px 5px;
  box-sizing: border-box;
  min-width: 176px;
  max-width: 466px;
  max-height: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  -webkit-transform: translateY(-1em) perspective(600px) rotateX(10deg);
  transform: translateY(-1em) perspective(600px) rotateX(10deg);
  transition: -webkit-transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s 0.15s, border-width 0s 0.15s;
  transition: transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s 0.15s, border-width 0s 0.15s;
}

/**
 * The frame and wrap work together to ensure that
 * clicks within the picker don’t reach the holder.
 */
.picker__frame {
  padding: 1px;
}

.picker__wrap {
  margin: -1px;
}

/**
 * When the picker opens...
 */
.picker--opened .picker__holder {
  max-height: 25em;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
  border-top-width: 1px;
  border-bottom-width: 1px;
  -webkit-transform: translateY(0) perspective(600px) rotateX(0);
  transform: translateY(0) perspective(600px) rotateX(0);
  transition: -webkit-transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s, border-width 0s;
  transition: transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s, border-width 0s;
  box-shadow: 0 6px 18px 1px rgba(0, 0, 0, 0.12);
}

/* ==========================================================================
   $BASE-DATE-PICKER
   ========================================================================== */
/**
 * The picker box.
 */
.picker__box {
  padding: 0 1em;
}

/**
 * The header containing the month and year stuff.
 */
.picker__header {
  text-align: center;
  position: relative;
  margin-top: 0.75em;
}

/**
 * The month and year labels.
 */
.picker__month,
.picker__year {
  font-weight: 500;
  display: inline-block;
  margin-left: 0.25em;
  margin-right: 0.25em;
}

.picker__year {
  color: #999999;
  font-size: 0.8em;
  font-style: italic;
}

/**
 * The month and year selectors.
 */
.picker__select--month,
.picker__select--year {
  border: 1px solid #b7b7b7;
  height: 2em;
  padding: 0.5em;
  margin-left: 0.25em;
  margin-right: 0.25em;
}

@media (min-width: 24.5em) {
  .picker__select--month,
  .picker__select--year {
    margin-top: -0.5em;
  }
}
.picker__select--month {
  width: 35%;
}

.picker__select--year {
  width: 22.5%;
}

.picker__select--month:focus,
.picker__select--year:focus {
  border-color: #0089ec;
}

/**
 * The month navigation buttons.
 */
.picker__nav--prev,
.picker__nav--next {
  position: absolute;
  padding: 0.5em 1.25em;
  width: 1em;
  height: 1em;
  box-sizing: content-box;
  top: -0.25em;
}

@media (min-width: 24.5em) {
  .picker__nav--prev,
  .picker__nav--next {
    top: -0.33em;
  }
}
.picker__nav--prev {
  left: -1em;
  padding-right: 1.25em;
}

@media (min-width: 24.5em) {
  .picker__nav--prev {
    padding-right: 1.5em;
  }
}
.picker__nav--next {
  right: -1em;
  padding-left: 1.25em;
}

@media (min-width: 24.5em) {
  .picker__nav--next {
    padding-left: 1.5em;
  }
}
.picker__nav--prev:before,
.picker__nav--next:before {
  content: " ";
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-right: 0.75em solid #000000;
  width: 0;
  height: 0;
  display: block;
  margin: 0 auto;
}

.picker__nav--next:before {
  border-right: 0;
  border-left: 0.75em solid #000000;
}

.picker__nav--prev:hover,
.picker__nav--next:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}

.picker__nav--disabled,
.picker__nav--disabled:hover,
.picker__nav--disabled:before,
.picker__nav--disabled:before:hover {
  cursor: default;
  background: none;
  border-right-color: #f5f5f5;
  border-left-color: #f5f5f5;
}

/**
 * The calendar table of dates
 */
.picker__table {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-size: inherit;
  width: 100%;
  margin-top: 0.75em;
  margin-bottom: 0.5em;
}

@media (min-height: 33.875em) {
  .picker__table {
    margin-bottom: 0.75em;
  }
}
.picker__table td {
  margin: 0;
  padding: 0;
}

/**
 * The weekday labels
 */
.picker__weekday {
  width: 14.285714286%;
  font-size: 0.75em;
  padding-bottom: 0.25em;
  color: #999999;
  font-weight: 500;
  /* Increase the spacing a tad */
}

@media (min-height: 33.875em) {
  .picker__weekday {
    padding-bottom: 0.5em;
  }
}
/**
 * The days on the calendar
 */
.picker__day {
  padding: 0.3125em 0;
  font-weight: 200;
  border: 1px solid transparent;
}

.picker__day--today {
  position: relative;
}

.picker__day--today:before {
  content: " ";
  position: absolute;
  top: 2px;
  right: 2px;
  width: 0;
  height: 0;
  border-top: 0.5em solid #0059bc;
  border-left: 0.5em solid transparent;
}

.picker__day--disabled:before {
  border-top-color: #aaaaaa;
}

.picker__day--outfocus {
  color: #dddddd;
}

.picker__day--infocus:hover,
.picker__day--outfocus:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}

.picker__day--highlighted {
  border-color: #0089ec;
}

.picker__day--highlighted:hover,
.picker--focused .picker__day--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background: #0089ec;
  color: #ffffff;
}

.picker__day--disabled,
.picker__day--disabled:hover,
.picker--focused .picker__day--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}

.picker__day--highlighted.picker__day--disabled,
.picker__day--highlighted.picker__day--disabled:hover {
  background: #bbbbbb;
}

/**
 * The footer containing the "today", "clear", and "close" buttons.
 */
.picker__footer {
  text-align: center;
}

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  border: 1px solid #ffffff;
  background: #ffffff;
  font-size: 0.8em;
  padding: 0.66em 0;
  font-weight: bold;
  width: 33%;
  display: inline-block;
  vertical-align: bottom;
}

.picker__button--today:hover,
.picker__button--clear:hover,
.picker__button--close:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-bottom-color: #b1dcfb;
}

.picker__button--today:focus,
.picker__button--clear:focus,
.picker__button--close:focus {
  background: #b1dcfb;
  border-color: #0089ec;
  outline: none;
}

.picker__button--today:before,
.picker__button--clear:before,
.picker__button--close:before {
  position: relative;
  display: inline-block;
  height: 0;
}

.picker__button--today:before,
.picker__button--clear:before {
  content: " ";
  margin-right: 0.45em;
}

.picker__button--today:before {
  top: -0.05em;
  width: 0;
  border-top: 0.66em solid #0059bc;
  border-left: 0.66em solid transparent;
}

.picker__button--clear:before {
  top: -0.25em;
  width: 0.66em;
  border-top: 3px solid #ee2200;
}

.picker__button--close:before {
  content: "×";
  top: -0.1em;
  vertical-align: top;
  font-size: 1.1em;
  margin-right: 0.35em;
  color: #777777;
}

.picker__button--today[disabled],
.picker__button--today[disabled]:hover {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}

.picker__button--today[disabled]:before {
  border-top-color: #aaaaaa;
}

/* ==========================================================================
   $CLASSIC-DATE-PICKER
   ========================================================================== */
.pvr-tile.active i.green.icon {
  color: #f0f0f0 !important;
}

.ui.header .icon:only-child {
  margin-top: -4px;
}

.ui.modal .form input {
  text-transform: none !important;
}

/* Pickadate fix */
.picker__select--year {
  min-width: 4.5em;
}

/* CSS Document */
#TCALightBox_bg {
  box-sizing: border-box;
  background-color: #000;
  position: fixed;
  z-index: 10000;
  width: 100%;
  height: 100%;
  display: none;
  opacity: 0.4;
  filter: alpha(opacity=40);
  top: 0px;
}

.TCALightBox_fg {
  background-color: #FFFFFF;
  position: fixed;
  border: none;
  overflow: auto;
  z-index: 10001;
  -moz-box-shadow: 2px 2px 8px #000;
  -webkit-box-shadow: 2px 2px 8px #000;
  box-shadow: 2px 2px 8px #000;
  top: 0;
  left: 0;
  width: 1px;
  height: 1px;
  -moz-border-radius: 10px 10px 10px 10px;
  -webkit-border-radius: 10px 10px 10px 10px;
  -khtml-border-radius: 10px 10px 10px 10px;
  border-radius: 10px 10px 10px 10px;
  behavior: url(/PIE/PIE.htc);
}

#TCALightBox_fg_inner {
  display: inline-block;
  min-width: 100%;
  height: auto;
}

.TCALightBox_fgi {
  width: 100%;
  height: 100%;
  border: none;
}

.TCALightBox_loading {
  background-image: url("/images/loading_animation.gif");
  background-repeat: no-repeat;
  background-position: center;
}

.TCALightBox_fg iframe {
  border: 0px none;
  text-align: center;
}

.TCALightBox_close {
  top: 0;
  left: 0;
  position: fixed;
  border: none;
  width: 30px;
  height: 29px;
  z-index: 10002;
  cursor: pointer;
  background-image: url("/images/close.png");
  opacity: 0.5;
  filter: alpha(opacity=50);
}

html,
body {
  margin: 0;
  padding: 0;
  height: 100vh;
  width: 100vw;
  font-family: "Lato", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.8);
  background-color: #fff;
  animation: fadeIn 0.5s ease-in-out forwards;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
html body .navigation {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-weight: 400;
}
html body .navigation a {
  cursor: pointer;
  text-decoration: none;
}
html body .navigation .item {
  transition: background-color 0.3s, margin 0.3s, width 1s;
  line-height: 1em;
}
html body #top-dup-pvrs {
  color: white;
}
html body #top-dup-pvrs #dup-pvr-message {
  display: inline-block;
  text-align: center;
  font-size: 0.8em;
  cursor: pointer;
}
html body #top-dup-pvrs #dup-pvr-message span {
  display: inline-block;
  margin: 2px;
  padding: 2px;
  border-radius: 0.5em;
  color: white;
}
html body #top-dup-pvrs #dup-pvr-message span.red {
  background-color: red;
  padding: 2px;
  margin-right: 6px;
}
html body #top-dup-pvrs #dup-pvr-message span.green {
  background-color: green;
  padding: 2px;
  margin-right: 6px;
}
html body #top-nav .item {
  background-color: #1b1c1d;
  color: white;
  border: 1px solid #333;
}
html body #top-nav .item:hover {
  background-color: #333;
}
html body #main-nav .item {
  color: #1b6d47;
  background-color: #cbeddd;
  border: 1px solid white;
}
html body #main-nav .item.active {
  background-color: #2db475;
}
@media only screen and (min-width: 701px) {
  html body #top-nav, html body #main-nav {
    display: flex;
    flex-wrap: nowrap;
    align-content: stretch;
  }
  html body #top-nav .item, html body #main-nav .item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-grow: 1;
    text-align: center;
    line-height: 1em;
  }
  html body #top-nav {
    font-size: 14px;
  }
  html body #top-nav .item {
    padding: 0.5em 2px;
  }
  html body #main-nav {
    font-size: 16px;
  }
  html body #main-nav .item {
    text-transform: none;
    padding: 1em 2px;
  }
  html body #main-nav .item:hover, html body #main-nav .item.active {
    background-color: #2db475;
    margin: 0 5px;
  }
}
@media only screen and (max-height: 500px) {
  html body #top-nav .item, html body #main-nav .item {
    padding: 0.25em 2px;
  }
}
html body #slide-out {
  top: unset;
  bottom: unset;
  height: 100%;
  background-color: #ccc;
  z-index: 1000;
  overflow: visible;
  overflow-x: visible;
  overflow-y: auto;
}
html body #slide-out a.item {
  cursor: pointer;
}
html body #slide-out .item {
  font-weight: 400;
  display: block;
  padding: 0.5em;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 16px;
  transition: background-color 0.3s;
  text-align: left;
}
html body #slide-out .item:hover, html body #slide-out .item.active {
  background-color: #cbeddd !important;
  transition: background-color 0.6s;
}
html body #slide-out .left-nav .item {
  background-color: white;
  color: #555;
  border: 1px solid #ccc;
}
html body .slide-out-handle {
  cursor: pointer;
  z-index: 1000;
}
html body .slide-out-handle.desktop-only {
  display: block;
  height: 100%;
  width: 30px;
  margin: 0;
  padding: 0;
  background-color: black;
  transition: opacity 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
html body .slide-out-handle.desktop-only:before {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: white;
  font-style: normal;
  font-size: 1.5em;
}
html body .slide-out-handle.desktop-only:hover {
  opacity: 0.7;
}
html body .mobile-top-nav {
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  font-size: 30px;
  height: 2em;
  background-color: #111;
  font-size: 30px;
}
html body .mobile-top-nav .slide-out-handle,
html body .mobile-top-nav .back-arrow {
  width: 2em;
  height: 2em;
  display: flex;
  align-items: center;
  justify-content: center;
}
html body .mobile-top-nav .slide-out-handle:before,
html body .mobile-top-nav .back-arrow:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #eee;
  font-style: normal;
}
html body .mobile-top-nav .slide-out-handle:before {
  content: "\f0c9";
}
html body .mobile-top-nav .back-arrow:before {
  content: "\f060";
}
html body .mobile-top-nav svg {
  height: 1em;
  margin: 0.5em;
}
html body .mobile-top-nav svg path.st0 {
  fill: #009845;
}
html body.view-right .mobile-top-nav .slide-out-handle {
  display: none;
}
html body:not(.view-right) .mobile-top-nav .back-arrow {
  display: none;
}
html body.pushed .mobile-top-nav .slide-out-handle:before {
  content: "\f00d" !important;
}
html body.pushed .navigation .slide-out-handle:before {
  content: "\f060";
}
html body .angular-list .scrolly {
  background-color: white;
}
html body .angular-list .pvr-pair {
  overflow: hidden;
  text-align: center;
}
html body .angular-list .pvr-pair .red .header, html body .angular-list .pvr-pair .red .top {
  color: #b42d2d;
}
html body .angular-list .pvr-pair .split {
  display: flex;
}
html body .angular-list .pvr-pair .split > div {
  width: 50%;
}
html body .angular-list .pvr-pair .tile {
  border-radius: 0;
  margin: 0;
}
html body .angular-list .pvr-pair .tile:first-child {
  border-radius: 0;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
  border-left: 2px solid black;
}
html body .angular-list .pvr-pair .tile:nth-child(2) {
  border-radius: 0;
  border-top-right-radius: 1em;
  border-bottom-right-radius: 1em;
  border-right: 2px solid black;
}
html body .angular-list .pvr-pair .customer-pair {
  border-bottom-left-radius: 0.5em;
  margin: 0 1em;
  padding: 2px;
  background-color: #ddd;
  border: 2px solid black;
  border-bottom: 0;
  border-radius: 0.5em 0.5em 0 0;
  color: #2db475;
}
html body .angular-list .pvr-pair .customer-pair.red {
  color: #b42d2d;
}
html body .angular-list .pvr-pair .product-pair {
  margin: 0 1em;
}
html body .angular-list .pvr-pair .product-pair .top {
  background-color: #ddd;
  border-left: 2px solid black;
  border-right: 2px solid black;
}
html body .angular-list .pvr-pair .product-pair .product {
  padding: 2px;
  margin: 0;
  background-color: #ddd;
  margin-bottom: 2px;
  width: calc(50% - 1px);
}
html body .angular-list .pvr-pair .product-pair .product:first-child {
  margin-right: 1px;
  border-left: 2px solid black;
}
html body .angular-list .pvr-pair .product-pair .product:last-child {
  margin-left: 1px;
  border-right: 2px solid black;
}
html body .angular-list .pvr-pair .product-pair:last-child {
  padding-bottom: 1em;
}
html body .angular-list .pvr-pair .product-pair:last-child .product:first-child {
  border-bottom-left-radius: 0.5em;
  border-bottom: 2px solid black;
}
html body .angular-list .pvr-pair .product-pair:last-child .product:last-child {
  border-bottom-right-radius: 0.5em;
  border-bottom: 2px solid black;
}
html body .angular-list .header, html body .angular-list .top {
  color: #2db475;
  transition: color 0.3s;
  font-weight: bold;
}
html body .angular-list .tile {
  background-color: #f0f0f0;
  transition: background-color 0.3s, border-color 0.3s;
  cursor: pointer;
  padding: 0 1em;
  border: 2px solid;
  border-color: white;
  margin: 1px;
  border-radius: 0.5em;
}
html body .angular-list .tile.pvr-tile {
  flex-direction: column;
}
html body .angular-list .tile .top {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: space-between;
}
html body .angular-list .tile .bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
html body .angular-list .tile .top, html body .angular-list .tile .bottom {
  padding: 1em 0;
}
html body .angular-list .tile .right {
  padding: 1em 0;
}
@media only screen and (min-width: 701px) {
  html body .angular-list .tile {
    display: flex;
  }
  html body .angular-list .tile > .left {
    width: 60%;
    padding-right: 1em;
  }
  html body .angular-list .tile > .right {
    width: 40%;
  }
}
@media only screen and (max-width: 700px) {
  html body .angular-list .tile > .left {
    padding-bottom: 1em;
  }
}
html body .angular-list .tile:hover {
  background-color: #ddd;
  border-color: #ccc;
}
html body .angular-list .tile.active {
  background-color: #2db475;
  position: relative;
}
html body .angular-list .tile.active .top, html body .angular-list .tile.active .header {
  color: #fff !important;
}
html body .angular-list .tile.active.loading:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, #cbeddd 50%, transparent 50%), linear-gradient(90deg, #cbeddd 50%, transparent 50%), linear-gradient(0deg, #cbeddd 50%, transparent 50%), linear-gradient(0deg, #cbeddd 50%, transparent 50%);
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
  background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px;
  animation: border-dance 8s infinite linear;
}
@keyframes border-dance {
  0% {
    background-position: 0 0, 100% 100%, 0 100%, 100% 0;
  }
  100% {
    background-position: 100% 0, 0 100%, 0 0, 100% 100%;
  }
}
html body.app {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.angular-list .head {
  font-size: 0.8rem;
  background-color: #F0f0f0;
}
.angular-list .head #pvr-pag {
  display: flex;
  justify-content: center;
}
.angular-list .head #pvr-pag #openpages {
  display: flex;
  align-content: stretch;
  justify-content: center;
  overflow-y: auto;
  width: auto;
}
.angular-list .head #pvr-pag .item {
  padding: 4px 0;
  margin: 1px;
  border-radius: 3px;
  min-width: initial;
  color: #333;
  min-width: 2em;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.3s;
  position: relative;
}
.angular-list .head #pvr-pag .item > i {
  transition: opacity 0.3s;
}
.angular-list .head #pvr-pag .item.active {
  background-color: #2db475;
}
.angular-list .head #pvr-pag .item:hover {
  background-color: #2db475;
}
.angular-list .head #pvr-pag .item:hover .number {
  opacity: 1;
}
.angular-list .head #pvr-pag .item:hover > i {
  opacity: 0;
}
.angular-list .head #pvr-pag .item .number {
  position: absolute;
  opacity: 0;
  transition: opacity 0.3s;
  left: 0;
  right: 0;
}
.angular-list .head #sort-filter .order-filters {
  display: flex;
  justify-content: center;
  font-size: inherit;
}
.angular-list .head #sort-filter .order-filters > * {
  position: relative;
  display: inline-block;
  background-color: black;
  color: white;
  padding: 2px;
  margin: 1px;
  border: none;
  border-radius: 3px;
  box-sizing: border-box;
  cursor: pointer;
}
.angular-list .head #sort-filter .order-filters > *.green {
  background-color: #2db475;
}
.angular-list .head #sort-filter .order-filters > *.label {
  margin-right: 5px;
  background-color: #555;
}
.angular-list .head #sort-filter .order-filters > *.pointing {
  z-index: 1;
  position: relative;
}
.angular-list .head #sort-filter .order-filters > *.pointing:after {
  position: absolute;
  z-index: -1;
  content: "";
  right: 0;
  top: 50%;
  -webkit-transform: rotate(45deg) translate(0, -50%);
  -ms-transform: rotate(45deg) translate(0, -50%);
  transform: rotate(45deg) translate(0, -50%);
  background-image: none;
  width: 0.6em;
  height: 0.6em;
  background-color: inherit;
}

.expand-handle {
  position: absolute;
  top: 0;
  left: 0;
  height: 30px;
  width: 30px;
  z-index: 1000;
  cursor: pointer;
}
@media only screen and (max-width: 700px) {
  .expand-handle {
    display: none;
  }
}
.expand-handle svg {
  height: 30px;
}
.expand-handle svg .st0, .expand-handle svg .st1 {
  fill: rgba(255, 255, 255, 0.5);
  transition: fill 0.3s;
}
.expand-handle svg .st2 {
  fill: #212121;
}
.expand-handle:hover svg .st1 {
  fill: rgb(255, 255, 255);
}
.expand-handle:hover svg .st0 {
  fill: rgba(255, 255, 255, 0);
}
body.forced-right .expand-handle {
  transform: rotate(180deg);
}
body.forced-right .expand-handle .st0 {
  fill: rgb(255, 255, 255);
}
body.forced-right .expand-handle .st1 {
  fill: rgba(255, 255, 255, 0);
}
body.forced-right .expand-handle:hover svg .st1 {
  fill: rgba(255, 255, 255, 0.5);
}
body.forced-right .expand-handle:hover svg .st0 {
  fill: rgba(255, 255, 255, 0.5);
}

.content-angular-right, .pvrPopup {
  position: relative;
}
.content-angular-right .scrolly, .pvrPopup .scrolly {
  padding-bottom: 20px;
}
.content-angular-right .superhead, .pvrPopup .superhead {
  padding-top: 5px;
  text-align: center;
  font-weight: 1.5em;
  background-color: #2db475;
  color: white;
  font-weight: bold;
}
.content-angular-right .row, .pvrPopup .row {
  width: 100%;
  display: flex;
  padding: 5px 2px;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .row, .pvrPopup .row {
    flex-direction: column;
  }
}
.content-angular-right .row > .left, .pvrPopup .row > .left {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  width: 40%;
  text-align: right;
  color: white;
  padding-right: 10px;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .row > .left, .pvrPopup .row > .left {
    width: 100%;
    text-align: left;
    padding-right: 0;
  }
}
.content-angular-right .row > .right, .pvrPopup .row > .right {
  width: 60%;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .row > .right, .pvrPopup .row > .right {
    width: 100%;
  }
}
.content-angular-right .head, .pvrPopup .head {
  background-color: #2db475;
  font-size: 13px;
  display: flex;
  position: relative;
}
.content-angular-right .head.full, .pvrPopup .head.full {
  flex-direction: column;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .head, .pvrPopup .head {
    flex-direction: column;
  }
}
.content-angular-right .head > .left, .pvrPopup .head > .left {
  padding: 0 5px;
  width: 50%;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .head > .left, .pvrPopup .head > .left {
    width: 100%;
  }
}
.content-angular-right .head > .notes, .pvrPopup .head > .notes {
  font-size: 0.75em;
  display: flex;
  flex-direction: column;
  width: 50%;
  padding: 10px 10px 10px 0;
}
@media only screen and (min-width: 701px) {
  .content-angular-right .head > .notes, .pvrPopup .head > .notes {
    position: absolute;
    width: 50%;
    top: 0;
    right: 0;
    max-height: 100%;
  }
}
.content-angular-right .head > .notes .notes-buttons, .pvrPopup .head > .notes .notes-buttons {
  font-size: 1.3em;
  display: flex;
  align-content: stretch;
  justify-content: space-between;
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  margin: 0 0.25em;
}
.content-angular-right .head > .notes .notes-buttons .star::after, .pvrPopup .head > .notes .notes-buttons .star::after {
  font: var(--fa-font-solid);
  font-family: "Font Awesome 5 Free";
  content: "\f005";
  color: goldenrod;
  padding-left: 2px;
}
.content-angular-right .head > .notes .notes-buttons > *, .pvrPopup .head > .notes .notes-buttons > * {
  cursor: pointer;
  background-color: #1b6d47;
  border-radius: 1em 1em 0 0;
  text-align: center;
  flex-grow: 1;
  margin: 0 -0.25em;
  box-shadow: 0px 0px 0.25em black;
  z-index: 0;
}
.content-angular-right .head > .notes .notes-buttons > *.active, .pvrPopup .head > .notes .notes-buttons > *.active {
  z-index: 1;
  background-color: #cbeddd;
  box-shadow: 0px 0px 0.5em black;
}
.content-angular-right .head > .notes .middle, .pvrPopup .head > .notes .middle {
  background-color: #2db475;
  box-shadow: 0px 0px 0.25em black;
  z-index: 2;
  height: 100%;
  overflow-y: auto;
  display: flex;
  flex-direction: column-reverse;
}
.content-angular-right .head > .notes .middle:first-child, .pvrPopup .head > .notes .middle:first-child {
  border-radius: 1em 1em 0 0;
}
.content-angular-right .head > .notes .middle .note, .pvrPopup .head > .notes .middle .note {
  position: relative;
  color: white;
  text-transform: none;
  padding: 2px;
}
.content-angular-right .head > .notes .middle .note .edit-window, .pvrPopup .head > .notes .middle .note .edit-window {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  bottom: 2px;
  right: 2px;
  transition: opacity 0.3s;
}
.content-angular-right .head > .notes .middle .note .edit-window a, .pvrPopup .head > .notes .middle .note .edit-window a {
  color: white;
  background-color: #2db475;
  border-radius: 1em;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
  padding: 3px 10px;
  margin: 3px;
  cursor: pointer;
  transition: box-shadow 0.3s;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none; /* Standard syntax */
}
.content-angular-right .head > .notes .middle .note .edit-window a:hover, .pvrPopup .head > .notes .middle .note .edit-window a:hover {
  color: #222;
  box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.5);
}
.content-angular-right .head > .notes .middle .note:hover .edit-window, .pvrPopup .head > .notes .middle .note:hover .edit-window {
  pointer-events: auto;
  opacity: 1;
}
.content-angular-right .head > .notes .middle .note .timestamp, .content-angular-right .head > .notes .middle .note .name, .pvrPopup .head > .notes .middle .note .timestamp, .pvrPopup .head > .notes .middle .note .name {
  color: black;
  padding-right: 1em;
}
.content-angular-right .head > .notes .middle .note:nth-child(odd), .pvrPopup .head > .notes .middle .note:nth-child(odd) {
  background-color: rgba(0, 0, 0, 0.1);
}
.content-angular-right .head > .notes .bottom, .pvrPopup .head > .notes .bottom {
  border-radius: 0 0 1em 1em;
  text-align: center;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .head > .notes, .pvrPopup .head > .notes {
    width: 100%;
    padding: 10px 10px 10px 10px;
  }
}
.content-angular-right .head > .notes textarea, .pvrPopup .head > .notes textarea {
  width: 100%;
  resize: none;
  padding: 2px;
  margin: 0;
  min-height: 75px;
  display: block;
  background-color: #cbeddd;
  overflow: hidden;
}
@media only screen and (max-width: 700px) {
  .content-angular-right .head > .notes textarea, .pvrPopup .head > .notes textarea {
    min-height: 75px;
  }
}
.content-angular-right .head > .notes textarea:focus, .pvrPopup .head > .notes textarea:focus {
  background-color: white;
}

.content-wrap {
  /*.one-col-layout,
  .two-col-layout{
  	display:flex;
  	align-items:stretch;
  	align-content:stretch;
  }
  .two-col-layout{
  	&>div:first-child,
  	&>div:nth-child(2)
  	{
  		width:55%;
  		height:100% !important;
  		display:flex;
  		flex-direction:column;
  		align-items:stretch;
  		align-content:stretch;
  		height:100%;
  		overflow-x:hidden !important;
  		overflow-y:hidden !important;
  		.scrolly{
  			flex-grow:1;
  		}
  	}
  	&>div:first-child
  	{
  		width:45%;
  	}
  	@media only screen and (max-width: $max-mobile) {
  		&>div
  		{
  			width:100vw !important;
  		}
  	}
  	body.forced-right &>div{
  		width:100vw !important;
  		@media only screen and (min-width: $min-desktop) {
  			padding-right:30px !important;
  		}
  	}
  }*/
}
@media only screen and (max-width: 700px) {
  body.view-right .content-wrap .main-content {
    margin-left: -100vw;
  }
}
body.body button, body.body .button, body.body button.ui, body.body .ui.button {
  position: relative;
  border-radius: 0.5em;
  margin: 2px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  background-color: #e0e0e0;
  color: #444;
  font-size: inherit;
  cursor: pointer;
  border: none;
  padding: 0.5em;
  display: inline-block;
  border: 2px solid;
  border-color: #e0e0e0;
  vertical-align: middle;
}
body.body button:hover, body.body .button:hover, body.body button.ui:hover, body.body .ui.button:hover {
  border-color: #999999;
}
body.body button.orange, body.body .button.orange, body.body button.ui.orange, body.body .ui.button.orange {
  background-color: orange !important;
  border-color: orange;
  box-shadow: 0px 0px 1px #000;
}
body.body button.yellow, body.body .button.yellow, body.body button.ui.yellow, body.body .ui.button.yellow {
  background-color: #e8ec01 !important;
  border-color: #e8ec01;
  border: 1px solid rgba(0, 0, 0, 0.5);
  color: rgba(0, 0, 0, 0.5) !important;
}
body.body button.green, body.body .button.green, body.body button.ui.green, body.body .ui.button.green {
  background-color: #2db475;
  border-color: #2db475;
  color: #ffffff;
}
body.body button.green:hover, body.body .button.green:hover, body.body button.ui.green:hover, body.body .ui.button.green:hover {
  background-color: #cbeddd;
  color: #2db475;
}
body.body button.black, body.body .button.black, body.body button.ui.black, body.body .ui.button.black {
  background-color: #1b1c1d;
  border-color: #1b1c1d;
  color: #ffffff;
}
body.body button.black:hover, body.body .button.black:hover, body.body button.ui.black:hover, body.body .ui.button.black:hover {
  background-color: #ccc;
  color: #1b1c1d;
  border-color: #999;
}
body.body button.disabled, body.body .button.disabled, body.body button.ui.disabled, body.body .ui.button.disabled {
  cursor: default;
  background-color: #dcddde !important;
  border-color: #dcddde !important;
  color: rgba(0, 0, 0, 0.4) !important;
  opacity: 0.3 !important;
  pointer-events: none;
}
body.body button.loading:after, body.body .button.loading:after, body.body button.ui.loading:after, body.body .ui.button.loading:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, #1b6d47 50%, transparent 50%), linear-gradient(90deg, #1b6d47 50%, transparent 50%), linear-gradient(0deg, #1b6d47 50%, transparent 50%), linear-gradient(0deg, #1b6d47 50%, transparent 50%);
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
  background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px;
  animation: border-dance 4s infinite linear;
  border-radius: 0.25em;
}

.MezrLightBoxWrap .MezrLightBox_fg {
  max-height: 95vh;
  max-width: 95vw;
}
.MezrLightBoxWrap.pvr-popup .MezrLightBox_fg {
  width: 95vw;
  height: 95vh;
}
.MezrLightBoxWrap.search-popup .MezrLightBox_fg {
  width: 95%;
  max-width: 500px;
}
.MezrLightBoxWrap.search-popup .MezrLightBox_box {
  background-color: #eee;
}
.MezrLightBoxWrap.search-popup .MezrLightBox_inner {
  padding-bottom: 4em;
}

.ui.new-pvr {
  background-color: #e2e2e2;
}
.ui.new-pvr .ui.left.content.form {
  overflow-y: scroll;
  overflow-x: visible;
}

.edit-pvr-popup .MezrLightBox_fg {
  width: 95vw;
  height: 95vh;
}
.edit-pvr-popup .MezrLightBox_box {
  background-color: #eee;
}
.body .accordion {
  padding: 0.5em;
}
.body .accordion .title {
  cursor: pointer;
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  border-bottom: 1px solid #aaa;
}
.body .accordion .title .dropdown.icon {
  transition: transform 0.3s;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.body .accordion .accordion-content {
  display: none;
  padding: 0.5em;
}
.body .accordion .accordion-content input {
  padding: 0.25em 0.5em !important;
}
.body .accordion.active {
  /*.accordion-content{
  	//max-height:200vh;
  	//overflow:auto;
  }*/
}
.body .accordion.active .title .dropdown.icon {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

.customer-popup .customer {
  min-height: 100px;
  min-width: 100px;
}
.customer-popup .customer .superhead {
  padding: 10px;
}

/*body.pushed .content-wrap{
	margin-left:0;
}*/
@media only screen and (max-width: 700px) {
  .desktop-only {
    display: none !important;
  }
}

@media only screen and (min-width: 701px) {
  .mobile-only {
    display: none !important;
  }
}

svg {
  height: 1em;
}

.has-loading, iframe {
  position: relative;
}
.has-loading::after, iframe::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: " ";
  background-color: white;
  background-image: url("/images/loading.gif");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 200px auto;
  position: absolute;
  transition: opacity 0.3s;
  opacity: 0;
  pointer-events: none;
}
.has-loading.vertical::after, iframe.vertical::after {
  background-size: auto 100%;
}
.has-loading.left::after, iframe.left::after {
  background-position: 0 50%;
}
.has-loading.loading::after, iframe.loading::after {
  opacity: 1;
  transition: none;
}
.has-loading.loading > *, iframe.loading > * {
  display: none;
}

.MezrLightBox_inner > iframe {
  background-color: #fff;
  background-image: url("/images/loading.gif");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 200px auto;
  position: absolute;
}

table {
  border-spacing: 0;
}

table.table {
  width: 100%;
}
table.table th, table.table td {
  border: none;
  text-align: left;
  padding: 0.25em;
  vertical-align: bottom;
}
table.table th.right.aligned, table.table td.right.aligned {
  text-align: right;
}
table.table th.angled, table.table td.angled {
  width: 1em;
  writing-mode: sideways-lr;
  transform: rotate(45deg);
  white-space: nowrap;
  vertical-align: bottom;
  text-align: left;
  padding: 5px 5px 0 12px;
  -webkit-transform-origin: right bottom;
  -moz-transform-origin: right bottom;
  -o-transform-origin: right bottom;
  transform-origin: right bottom;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}
table.table td:not(:last-child) {
  box-shadow: 1px 0px 0 rgba(120, 120, 120, 0.15);
}
table.table.striped td {
  background-color: rgba(0, 0, 0, 0);
}
table.table.striped td.red {
  color: #b42d2d;
  background-color: rgba(204, 0, 0, 0.35);
}
table.table.striped td.green {
  color: #2db475;
  background-color: rgba(0, 204, 0, 0.35);
}
table.table.striped > tbody > tr:nth-child(even) > td, table.table.striped > tr:nth-child(even) > td {
  background-color: rgba(0, 0, 0, 0.1);
}
table.table.striped > tbody > tr:nth-child(even) > td.red, table.table.striped > tr:nth-child(even) > td.red {
  background-color: rgba(204, 0, 0, 0.5);
}
table.table.striped > tbody > tr:nth-child(even) > td.green, table.table.striped > tr:nth-child(even) > td.green {
  background-color: rgba(0, 204, 0, 0.5);
}

.summary {
  padding: 1em;
}

.center {
  text-align: center !important;
}

.table-pad {
  overflow: auto;
}

.MezrLightBox_inner.type-html,
.MezrLightBox_inner.type-div {
  padding: 10px;
}

* {
  transition: opacity 5s, background-image 5s;
  box-sizing: border-box;
  margin-block-start: 0;
  margin-block-end: 0;
}

.scrolly {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
}

a {
  color: #009fda;
  text-decoration: none;
  transition: border-bottom 0.3s;
  border-bottom: rgba(255, 255, 255, 0);
  cursor: pointer;
}
a:not(.button):hover {
  border-bottom: 1px solid #009fda;
}

.green {
  color: #2db475;
}

.bold {
  font-weight: bold;
}

i.fa-solid.fa-spinner {
  animation: spin 2s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.has-datepicker {
  position: relative;
}

h1, h2, h3, h4, h5, h6, p {
  padding: 10px 0;
  margin: 0 20px;
}

hr {
  margin: 0 20px;
}

h1 {
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvbnRzLnNjc3MiLCJtYWxhcmtleS5zY3NzIiwibWFpbi5zY3NzIiwic2VtYW50aWMuc2NzcyIsInNlbGVjdGl6ZS5jc3MiLCIuLi8uLi9wdWJsaWMvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvcGlja2FkYXRlL2xpYi90aGVtZXMvY2xhc3NpYy5jc3MiLCIuLi8uLi9wdWJsaWMvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvcGlja2FkYXRlL2xpYi90aGVtZXMvY2xhc3NpYy5kYXRlLmNzcyIsIi4uLy4uL3B1YmxpYy9hc3NldHMvdGVtcC5jc3MiLCIuLi8uLi9fbWV6cl9oZWxwZXIvbGlnaHRCb3gvbGlnaHRCb3guY3NzIiwiaGVhZGVyLnNjc3MiLCJhbmd1bGFyLWxpc3Quc2NzcyIsIm9yZGVyc19wdnJzLnNjc3MiLCJsYXlvdXRzLnNjc3MiLCJidXR0b25zLnNjc3MiLCJtb2RhbHMuc2NzcyIsIm1vZGFsLW5ldy1wdnIuc2NzcyIsImFjY29yZGlvbi5zY3NzIiwiY3VzdG9tZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7RUFDSTtFQUNBO0VBRUE7RUFDQTs7QUNKSjtFQUVDO0VBQ0E7OztBQUdEO0VBRUM7OztBQUdEO0VBRUM7OztBQUdEO0VBRUM7OztBQUdEO0VBRUM7OztBQUdEO0VBRUM7RUFDQTs7O0FBR0Q7RUFFQzs7O0FBR0Q7RUFDRTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDQzs7O0FBR0Q7RUFDQTtFQUNBOzs7QUFHQTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0E7OztBQUdBO0VBRUM7OztBQUdEO0VBRUM7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFFQzs7O0FBR0Q7RUFFQzs7O0FBR0Q7RUFFQzs7O0FBR0Q7RUFFQzs7O0FBR0Q7RUFFQzs7O0FBR0Q7RUFFQztFQUNBOzs7QUFHRDtFQUVDO0VBQ0E7OztBQUdEO0VBRUM7RUFDQTs7O0FBR0Q7RUFFQztFQUNBOzs7QUFHRDtFQUVDOzs7QUFHRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBRUM7RUFDQTs7O0FBRUQ7RUFFQztFQUNBOzs7QUFFRDtFQUVDO0VBQ0E7OztBQUVEO0VBRUM7RUFDQTs7O0FBRUQ7RUFFQztFQUNBOzs7QUFFRDtFQUVDO0VBQ0E7RUFDQTs7O0FBR0Q7RUFFQztFQUNBOzs7QUFJRDtFQUFZO0VBQWdCOzs7QUFDNUI7RUFBZTtFQUFnQjs7O0FBQy9CO0VBQWE7RUFBZ0I7OztBQUU3QjtFQUFjO0VBQWdCOzs7QUFDOUI7RUFBaUI7RUFBZ0I7OztBQUNqQztFQUFlO0VBQWdCOzs7QUFFL0I7RUFBZTtFQUFnQjs7O0FBQy9CO0VBQWtCO0VBQWdCOzs7QUFDbEM7RUFBZ0I7RUFBZ0I7OztBQUVoQztFQUFjO0VBQWE7OztBQUMzQjtFQUFpQjtFQUFhOzs7QUFDOUI7RUFBZTtFQUFhOzs7QUFHNUI7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7O0FBRUQ7RUFFQztFQUNBOzs7QUFTRjtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVEO0VBQ0k7RUFDRjtFQUNFO0VBQ0E7RUFDRjs7O0FBR0Y7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBS0Q7QUFDQTtBQUFBO0VBR0M7OztBQUtBO0VBQ0MsT0M1Ulc7RUQ2Ulg7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTs7QUFFRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDL1JIO0FDdkNDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBVU87QUFDUjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQUlBO0FBWUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQUVBO0FBQUE7QUFBQTtBQUlBO0FBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBVUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBeUJBO0FBQUE7QUFBQTtBQXNEQTtBQUFBO0FBQUE7QUFpQkE7QUFBQTtBQUFBO0FBYUE7QUFBQTtBQUFBO0FBSUE7QUFpQkE7QUFvQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUF3RkE7QUFBQTtBQW9XQTtBQUFBO0FBc0VBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBNEZBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQXNCQTtBQUFBO0FBQUE7QUFJQTtBQWlGQTtBQUFBO0FBQUE7QUFrQkE7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUF5QkE7QUE4QkE7QUFpQ0E7QUE0Q0E7QUFBQTtBQUFBO0FBcUNBO0FBQUE7QUFBQTtBQUlBO0FBc0JBO0FBc0JBO0FBc0JBO0FBb0JBO0FBc0JBO0FBc0JBO0FBc0JBO0FBbUJBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQW9EQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBb0RBO0FBY0E7QUFvQ0E7QUFvQkE7QUFBQTtBQUFBO0FBV0E7QUFlQTtBQVFBO0FBa0RBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFpQkE7QUFBQTtBQUFBO0FBYUE7QUFBQTtBQUFBO0FBa0NBO0FBQUE7QUFBQTtBQW9DQTtBQVVBO0FBQUE7QUFBQTtBQUlBO0FBbUJBO0FBZUE7QUFlQTtBQWlCQTtBQWtCQTtBQXVIQTtBQStEQTtBQUFBO0FBQUE7QUFJQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQXFDQTtBQWdDQTtBQThCQTtBQStCQTtBQUFBO0FBQUE7QUFxQ0E7QUFBQTtBQUFBO0FBcUNBO0FBQUE7QUFBQTtBQXlDQTtBQUFBO0FBQUE7QUF5Q0E7QUFBQTtBQUFBO0FBc0RBO0FBa0NBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQWtDQTtBQUFBO0FBQUE7QUEwQ0E7QUF3Q0E7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBa0JBO0FBVUE7QUFFQTtBQUFBO0FBQUE7QUFrc0NBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFzQkE7QUFBQTtBQUFBO0FBYUE7QUFBQTtBQUFBO0FBWUE7QUFRQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBU0E7QUFRQTtBQVFBO0FBQUE7QUFBQTtBQVVBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBd0JBO0FBc0JBO0FBQUE7QUFBQTtBQXlCQTtBQXNCQTtBQUFBO0FBQUE7QUF1REE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBZ0hBO0FBQUE7QUFBQTtBQXdCQTtBQUFBO0FBQUE7QUFnRkE7QUFBQTtBQUFBO0FBMkJBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBZ0NBO0FBQUE7QUFBQTtBQXFDQTtBQXNCQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQXNDQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFrQ0E7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFpQkE7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUE0Q0E7QUFBQTtBQUFBO0FBNENBO0FBOERBO0FBQUE7QUFBQTtBQWdDQTtBQUFBO0FBQUE7QUFBQTtBQUtBOztBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTs7QUFBQTtBQUFBOztBQUFBO0FBdUJBO0FBQUE7QUFBQTtBQUlBO0FBOE1BO0FBc05BO0FBc0NBO0FBOEJBO0FBMERBO0FBc0NBO0FBOElBO0FBa0RBO0FBc0ZBO0FBc0NBO0FBa0xBO0FBOENBO0FBOEVBO0FBMENBO0FBc0RBO0FBa0ZBO0FBMEdBO0FBOENBO0FBa0hBO0FBc0NBO0FBa0NBO0FBa1lBO0FBQUE7QUFBQTtBQXFwQkE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUF1QkE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBVUE7QUFBQTtBQUFBO0FBNEJBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUFpQkE7QUFBQTtBQUFBO0FBOEJBO0FBQUE7QUFBQTtBQTRFQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUE0QkE7QUFBQTtBQUFBO0FBSUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFtQ0E7QUFBQTtBQUFBO0FBc0JBO0FBQUE7QUFBQTtBQVdBO0FBVUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFVQTtBQWdCQTtBQWNBO0FBQUE7QUFBQTtBQTBDQTtBQWtCQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBdUJBO0FBU0E7QUFhQTtBQWFBO0FBYUE7QUFVQTtBQUFBO0FBQUE7QUEwQkE7QUFTQTtBQWNBO0FBY0E7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFnQ0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUE4QkE7QUFNQTtBQWNBO0FBT0E7QUFjQTtBQWdCQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQW9CQTtBQVdBO0FBQUE7QUFBQTtBQWdDQTtBQUFBO0FBQUE7QUE0Q0E7QUFBQTtBQUFBO0FBa0JBO0FBZ0NBO0FBb0JBO0FBWUE7QUFZQTtBQUFBO0FBQUE7QUE0QkE7QUFvQkE7QUFpQkE7QUF5QkE7QUFBQTtBQUFBO0FBa0RBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQW9DQTtBQXNDQTtBQW9DQTtBQXNDQTtBQXNDQTtBQXNDQTtBQXFDQTtBQXNDQTtBQXNDQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBMEJBO0FBbUJBO0FBaUJBO0FBZUE7QUFlQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUE0Q0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUEwQkE7QUFBQTtBQUFBO0FBSUE7QUF1Q0E7QUFVQTtBQXdCQTtBQTZCQTtBQXdDQTtBQWFBO0FBT0E7QUFXQTtBQWlCQTtBQWNBO0FBQUE7QUFBQTtBQStCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUF5QkE7QUFRQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQW1CQTtBQWFBO0FBV0E7QUFBQTtBQUFBO0FBMkJBO0FBdUJBO0FBQUE7QUFBQTtBQXVDQTtBQTBCQTtBQVNBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFpQ0E7QUFzQkE7QUFBQTtBQUFBO0FBbUNBO0FBWUE7QUFjQTtBQUFBO0FBQUE7QUFxQkE7QUFNQTtBQWFBO0FBcUJBO0FBUUE7QUFtQkE7QUFRQTtBQUFBO0FBQUE7QUFlQTtBQVFBO0FBVUE7QUFpQkE7QUFxQkE7QUFzQkE7QUFZQTtBQUFBO0FBQUE7QUFtQkE7QUFrQkE7QUFBQTtBQUFBO0FBNEVBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFlQTtBQWFBO0FBb0JBO0FBMEJBO0FBOEJBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFjQTtBQWNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQThCQTtBQXNCQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBb0JBO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUEwQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBVUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUF3QkE7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUF1R0E7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBb0RBO0FBQUE7QUFBQTtBQXNDQTtBQUFBO0FBQUE7QUE4QkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUE4QkE7QUFnQkE7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBc0JBO0FBYUE7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUErQ0E7QUFvQkE7QUFBQTtBQUFBO0FBeUJBO0FBT0E7QUFRQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUF1RUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBcUZBO0FBQUE7QUFBQTtBQWtEQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBNEJBO0FBQUE7QUFBQTtBQTBCQTtBQUFBO0FBQUE7QUFxQkE7QUFjQTtBQWVBO0FBQUE7QUFBQTtBQWlDQTtBQVVBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUF1Q0E7QUFBQTtBQUFBO0FBbUNBO0FBQUE7QUFBQTtBQUlBO0FBUUE7QUFZQTtBQWNBO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBd0JBO0FBQUE7QUFBQTtBQXdCQTtBQU1BO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUE2QkE7QUFBQTtBQUFBO0FBSUE7QUFVQTtBQVVBO0FBb0JBO0FBV0E7QUFPQTtBQWtCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQTZCQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBZUE7QUFlQTtBQUFBO0FBQUE7QUErQ0E7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFJQTtBQVdBO0FBVUE7QUFPQTtBQVlBO0FBT0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBK0JBO0FBQUE7QUFBQTtBQTRFQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQVVBO0FBTUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlBO0FBa0JBO0FBa0JBO0FBQUE7QUFBQTtBQStCQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQW9FQTtBQU1BO0FBQUE7QUFBQTtBQTRCQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUF1RUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBcUJBO0FBQUE7QUFBQTtBQUlBO0FBMkJBO0FBK0NBO0FBb0NBO0FBZ0ZBO0FBaUNBO0FBQUE7QUFBQTtBQTBDQTtBQVlBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFNQTtBQU1BO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQXFCQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBa0JBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQUlBO0FBWUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFVQTtBQTREQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBa0ZBO0FBa0VBO0FBQUE7QUFBQTtBQUlBO0FBa0hBO0FBQUE7QUFBQTtBQUlBO0FBb0hBO0FBb0hBO0FBb0hBO0FBb0hBO0FBb0hBO0FBQUE7QUFBQTtBQTJCQTtBQUFBO0FBQUE7QUFrQkE7QUFjQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBU0E7QUFpQkE7QUFPQTtBQVVBO0FBa0JBO0FBT0E7QUFNQTtBQWdCQTtBQWdCQTtBQUFBO0FBQUE7QUFxREE7QUFjQTtBQUFBO0FBQUE7QUFJQTtBQWtCQTtBQWlCQTtBQWlCQTtBQXNCQTtBQUFBO0FBQUE7QUFJQTtBQStDQTtBQXFCQTtBQXFCQTtBQUFBO0FBQUE7QUFzSUE7QUFBQTtBQUFBO0FBc0JBO0FBNkJBO0FBQUE7QUFBQTtBQXNCQTtBQWtDQTtBQUFBO0FBQUE7QUFJQTtBQWdIQTtBQTZHQTtBQUFBO0FBQUE7QUEwRUE7QUFBQTtBQUFBO0FBSUE7QUFFQTtBQWtCQTtBQWtCQTtBQWtCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFtQkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFxQ0E7QUFBQTtBQUFBO0FBSUE7QUFVQTtBQU9BO0FBQUE7QUFBQTtBQXVCQTtBQWdCQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBdUJBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQTBCQTtBQTBCQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQVlBO0FBcUJBO0FBV0E7QUFNQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBVUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBZUE7QUE2QkE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFtQkE7QUFPQTtBQWFBO0FBa0JBO0FBaUNBO0FBZ0JBO0FBQUE7QUFBQTtBQXVCQTtBQWdCQTtBQU1BO0FBT0E7QUFlQTtBQTRCQTtBQVVBO0FBQUE7QUFBQTtBQThCQTtBQU9BO0FBZUE7QUFhQTtBQUFBO0FBQUE7QUF1QkE7QUFTQTtBQUFBO0FBQUE7QUE0Q0E7QUFPQTtBQWFBO0FBZ0JBO0FBVUE7QUFBQTtBQUFBO0FBY0E7QUFrQkE7QUFPQTtBQU9BO0FBUUE7QUFBQTtBQUFBO0FBa0JBO0FBbUJBO0FBVUE7QUFVQTtBQVVBO0FBY0E7QUFPQTtBQU9BO0FBUUE7QUFPQTtBQUFBO0FBQUE7QUEyQ0E7QUFNQTtBQTZCQTtBQU9BO0FBV0E7QUFVQTtBQVNBO0FBT0E7QUFBQTtBQUFBO0FBNEJBO0FBVUE7QUFVQTtBQUFBO0FBQUE7QUFzQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFrREE7QUFBQTtBQUFBO0FBNkNBO0FBWUE7QUFnQkE7QUFVQTtBQWFBO0FBV0E7QUFBQTtBQUFBO0FBNEJBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFFQTtBQVVBO0FBVUE7QUFVQTtBQVVBO0FBVUE7QUFVQTtBQVVBO0FBVUE7QUFBQTtBQUFBO0FBd0JBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUF3REE7QUFBQTtBQUFBO0FBbURBO0FBTUE7QUFBQTtBQUFBO0FBd0JBO0FBcUJBO0FBc0JBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFJQTtBQVVBO0FBVUE7QUFrQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUF5QkE7QUE4QkE7QUFBQTtBQUFBO0FBZ0NBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQUlBO0FBU0E7QUFNQTtBQW1CQTtBQW9DQTtBQU1BO0FBaUJBO0FBVUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBZ0NBO0FBQUE7QUFBQTtBQW9DQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQWdCQTtBQWdCQTtBQWdCQTtBQWdCQTtBQWdCQTtBQWdCQTtBQWdGQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQXNCQTtBQUFBO0FBQUE7QUFJQTtBQVFBO0FBb0NBO0FBbUNBO0FBVUE7QUFRQTtBQVVBO0FBY0E7QUF3RUE7QUFBQTtBQUFBO0FBSUE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUE2QkE7QUFBQTtBQUFBO0FBb0JBO0FBVUE7QUFRQTtBQWNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBdUVBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQVVBO0FBV0E7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBd0NBO0FBQUE7QUFBQTtBQWtEQTtBQUFBO0FBQUE7QUFJQTtBQWtFQTtBQWtGQTtBQUFBO0FBQUE7QUE0Q0E7QUFZQTtBQU9BO0FBT0E7QUFtQkE7QUFBQTtBQUFBO0FBSUE7QUEwQkE7QUFZQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFnQ0E7QUF5QkE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBY0E7QUFXQTtBQUFBO0FBQUE7QUFhQTtBQVdBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFNQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQStCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQXlCQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBT0E7QUFPQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBT0E7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQUlBO0FBT0E7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBT0E7QUFPQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBT0E7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFPQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBWUE7QUFBQTtBQUFBO0FBcUNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBOENBO0FBQUE7QUFBQTtBQXdCQTtBQVlBO0FBTUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQXFDQTtBQWlCQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7QUFtQkE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQTBCQTtBQUFBO0FBQUE7QUFJQTtBQWNBO0FBWUE7QUFZQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQUVBO0FBcUJBO0FBRUE7QUFxQkE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQTBEQTtBQXdEQTtBQUFBO0FBQUE7QUErSkE7QUFBQTtBQUFBO0FBSUE7QUErR0E7QUErR0E7QUFBQTtBQUFBO0FBdUJBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQVFBO0FBTUE7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBSUE7QUFvQkE7QUErQkE7QUFhQTtBQU1BO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQVdBO0FBV0E7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUFBQTtBQUlBO0FBYUE7QUFBQTtBQUFBO0FBV0E7QUFRQTtBQVVBO0FBQUE7QUFBQTtBQTZDQTtBQVVBO0FBaUJBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQXdCQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBeUJBO0FBQUE7QUFBQTtBQTBCQTtBQUFBO0FBQUE7QUF3Q0E7QUFNQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBdUJBO0FBQUE7QUFBQTtBQUlBO0FBWUE7QUFVQTtBQVVBO0FBQUE7QUFBQTtBQUlBO0FBRUE7QUFrQkE7QUFFQTtBQWtCQTtBQUFBO0FBQUE7QUFxQ0E7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQWlCQTtBQTBCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBcUJBO0FBWUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQW9CQTtBQVNBO0FBQUE7QUFBQTtBQVNBO0FBbUJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWNBO0FBT0E7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTtBQUFBO0FBVUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBd0NBO0FBQUE7QUFBQTtBQW9EQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBNERBO0FBQUE7QUFBQTtBQUlBO0FBaUJBO0FBaUJBO0FBaUJBO0FBaUJBO0FBaUJBO0FBaUJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBZUE7QUFPQTtBQVNBO0FBT0E7QUFZQTtBQW9CQTtBQUFBO0FBQUE7QUFJQTtBQWVBO0FBT0E7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQStCQTtBQWFBO0FBZ0JBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBV0E7QUFrQkE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUEyQkE7QUFBQTtBQUFBO0FBZ0NBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFJQTtBQWNBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVFBO0FBY0E7QUFhQTtBQWFBO0FBQUE7QUFBQTtBQWdCQTtBQXVCQTtBQXdCQTtBQVVBO0FBWUE7QUF1QkE7QUFBQTtBQUFBO0FBb0JBO0FBaUJBO0FBOEJBO0FBVUE7QUFRQTtBQXVCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFtQkE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBa0NBO0FBa0JBO0FBTUE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQXdCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQTZCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUEyQkE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQXlCQTtBQUFBO0FBQUE7QUF5QkE7QUFBQTtBQUFBO0FBdUNBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQWFBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFpQ0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBSUE7QUFPQTtBQU1BO0FBU0E7QUFBQTtBQUFBO0FBSUE7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQW9EQTtBQU1BO0FBd0JBO0FBaUNBO0FBWUE7QUFPQTtBQVdBO0FBWUE7QUFZQTtBQVFBO0FBUUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBZ0JBO0FBYUE7QUFPQTtBQWdCQTtBQWtDQTtBQUFBO0FBQUE7QUF5QkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQVVBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQUlBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFVQTtBQUFBO0FBQUE7QUE0QkE7QUFNQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQVFBO0FBMkJBO0FBQUE7QUFBQTtBQVdBO0FBWUE7QUE0QkE7QUFBQTtBQUFBO0FBSUE7QUFtREE7QUFNQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUFnQ0E7QUE0QkE7QUFvQkE7QUFrQkE7QUFtQkE7QUFvQkE7QUFPQTtBQVlBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUE2QkE7QUFXQTtBQU1BO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBbUNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQXNCQTtBQUFBO0FBQUE7QUFtQkE7QUFBQTtBQUFBO0FBY0E7QUFnQkE7QUFjQTtBQVNBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQUlBO0FBcUNBO0FBY0E7QUF1REE7QUFBQTtBQUFBO0FBMkJBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUEyQkE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBd0JBO0FBQUE7QUFBQTtBQVFBO0FBTUE7QUFxQ0E7QUF5Q0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBZ0RBO0FBQUE7QUFBQTtBQUlBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWdEQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBSUE7QUFxQ0E7QUFrQ0E7QUFXQTtBQVdBO0FBQUE7QUFBQTtBQUlBO0FBUUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBSUE7QUFtQkE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBd0JBO0FBOEJBO0FBOEJBO0FBMEJBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFjQTtBQWtCQTtBQW1CQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBa0JBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUErQ0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBaUNBO0FBQUE7QUFBQTtBQUlBO0FBc0JBO0FBWUE7QUFpQkE7QUFBQTtBQUFBO0FBNEVBO0FBQUE7QUFBQTtBQTRDQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQXFCQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlBO0FBT0E7QUFPQTtBQWlCQTtBQUFBO0FBQUE7QUFTQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQU1BO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQVdBO0FBQUE7QUFBQTtBQWdDQTtBQUFBO0FBQUE7QUFxQkE7QUFNQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFNQTtBQVVBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQU1BO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBK0JBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUFtQkE7QUFpQkE7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQXFCQTtBQVlBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQW1DQTtBQUFBO0FBQUE7QUFhQTtBQUFBO0FBQUE7QUE0QkE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBUUE7QUFjQTtBQWVBO0FBY0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFpQ0E7QUFBQTtBQUFBO0FBOEJBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUF1QkE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQXNCQTtBQVNBO0FBQUE7QUFBQTtBQXVDQTtBQUFBO0FBQUE7QUFVQTtBQU1BO0FBYUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBdUJBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFVQTtBQVlBO0FBMEJBO0FBVUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQTJCQTtBQTBCQTtBQTBCQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBc0JBO0FBUUE7QUFzQkE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQVFBO0FBc0JBO0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFRQTtBQVNBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFzQkE7QUFPQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFzQkE7QUFPQTtBQU9BO0FBQUE7QUFBQTtBQUlBO0FBUUE7QUFzQkE7QUEwQkE7QUFlQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFRQTtBQVFBO0FBY0E7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFpREE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFJQTtBQXNCQTtBQUFBO0FBQUE7QUFJQTtBQVFBO0FBb0NBO0FBbUNBO0FBVUE7QUFRQTtBQVVBO0FBY0E7QUF3RUE7QUFBQTtBQUFBO0FBSUE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUE2QkE7QUFBQTtBQUFBO0FBb0JBO0FBVUE7QUFRQTtBQWNBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBdUVBO0FBQUE7QUFBQTtBQW1CQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFJQTtBQVVBO0FBV0E7QUFZQTtBQUFBO0FBQUE7QUFJQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBd0NBO0FBQUE7QUFBQTtBQWtEQTtBQUFBO0FBQUE7QUFJQTtBQWtFQTtBQWtGQTtBQUFBO0FBQUE7QUE0Q0E7QUFZQTtBQU9BO0FBT0E7QUFtQkE7QUFBQTtBQUFBO0FBSUE7QUEwQkE7QUFZQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFnQ0E7QUF5QkE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBY0E7QUFXQTtBQUFBO0FBQUE7QUFhQTtBQVdBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFNQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQStCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQUlBO0FBVUE7QUFRQTtBQU9BO0FBV0E7QUFPQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBeUJBO0FBMERBO0FBc0dBO0FBQUE7QUFBQTtBQXdCQTtBQTBEQTtBQUFBO0FBQUE7QUFzREE7QUFzSUE7QUFzSUE7QUFBQTtBQUFBO0FBZ0NBO0FBMERBO0FBMERBO0FBQUE7QUFBQTtBQWNBO0FBOEJBO0FBOEJBO0FBQUE7QUFBQTtBQUlBO0FBa0NBO0FBMkJBO0FBZ1RBO0FBNEtBO0FBQUE7QUFBQTtBQXNFQTtBQTBEQTtBQTBEQTtBQUFBO0FBQUE7QUEwRUE7QUFzSEE7QUFzSEE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBOENBO0FBc0JBO0FBb0NBO0FBb0NBO0FBd0RBO0FBMENBO0FBNEVBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBYUE7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQTBDQTtBQWVBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBK0JBO0FBQUE7QUFBQTtBQTRFQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFrQkE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQVVBO0FBTUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlBO0FBa0JBO0FBa0JBO0FBQUE7QUFBQTtBQStCQTtBQUFBO0FBQUE7QUFJQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFNQTtBQW9FQTtBQU1BO0FBQUE7QUFBQTtBQTRCQTtBQU9BO0FBT0E7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQWlCQTtBQUFBO0FBQUE7QUF1RUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBMEJBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQUlBO0FBcUJBO0FBQUE7QUFBQTtBQUlBO0FBMkJBO0FBK0NBO0FBb0NBO0FBZ0ZBO0FBaUNBO0FBQUE7QUFBQTtBQTBDQTtBQVlBO0FBQUE7QUFBQTtBQUlBO0FBTUE7QUFNQTtBQU1BO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBOztBQTd2aENBO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0FBQ0E7O0FBcUJGO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOztBQU9GO0VBQ0U7O0FBWUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBWUU7O0FBUUY7QUFBQTtBQUFBO0FBQUE7RUFJRTtBQUNBO0VBQ0E7QUFDQTs7QUFRRjtFQUNFO0VBQ0E7O0FBUUY7QUFBQTtFQUVFOztBQVVGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFOztBQVVGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7O0FBUUY7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBVUY7RUFDRTs7QUFPRjtFQUNFOztBQVVGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQWtCRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOztBQU9GO0VBQ0U7O0FBVUY7QUFBQTtFQUVFOztBQVdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7QUFDQTtFQUNBO0FBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQVFGO0VBQ0U7O0FBV0Y7QUFBQTtFQUVFO0FBQ0E7RUFDQTtBQUNBOztBQVNGO0FBQUE7RUFFRTs7QUFTRjtFQUNFO0FBQ0E7QUFDQTtFQUNBOztBQVNGO0FBQUE7RUFFRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFRRjtFQUNFO0FBQ0E7RUFDQTtBQUNBOztBQU9GO0VBQ0U7O0FBUUY7RUFDRTs7QUFVRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQXFCRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFXRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBTUY7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFNRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtJQUNFOzs7QUFJSjtFQUNFO0lBQ0U7OztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0FBQ0U7RUFDQTtFQUNBOztBQU1GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7OztBQTJGSjtFQUNFO0lBQ0U7OztBQTBESjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBV0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQVNGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBU0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU9FO0VBQ0E7O0FBV0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0FBQUE7SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUFRSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQXlCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUF1QkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBV0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFXRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQXlCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFRSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBcUNGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFxQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBV0Y7QUFBQTtBQUFBO0VBR0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBTUU7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBTUU7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1FOztBQU9GO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1FO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUE2QkY7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBV0Y7RUFDRTs7QUFpQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQVNGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTs7QUFhRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUF5QkY7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFTRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQVdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFXRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFOztBQVdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7QUFBQTtFQUdFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtBQUVFOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtBQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQTJCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBTUo7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFTRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQWFGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQXlCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7RUFDRTs7QUF5QkY7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBeUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFTRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFZSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0FBQUE7RUFFRTtFQUNBOztBQWlCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFXRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFTRjtFRHRnYkE7QUMwaGJFOztFQW5CQTtJQUNFOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFOztFQUtGO0lBQ0U7OztBQVVKO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7O0FBYUY7RUQzbmJBO0FDK29iRTs7RUFuQkE7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTs7RUFLRjtJQUNFOzs7QUFVSjtFQUNFOztBQVNGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBUUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtBQUNBOztBQXFCRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUE2QkY7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBYUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBV0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBOztBQU9GO0FBQUE7QUFBQTtFQUdFOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFhRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTs7QUFTRjtFQUNFOztBQVNGO0VBQ0U7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBMEJFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFhRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBWUo7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFXRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTs7QUFTRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7RUFDRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUFrQkU7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUF1QkU7SUFDQTtJQUNBO0lBQ0E7OztBQVFKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBUUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQVNGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7O0FBV0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7QUFDRTtFQUNBOztBQUdGO0FBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQWlCRjtFQUNFO0VBQ0E7RUFFQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFTRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBVUo7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVNGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBU0Y7RUFDRTtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOzs7QUFNSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7OztBQU1KO0VBQ0U7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7O0FBTUo7RUFDRTtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOzs7QUFNSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7OztBQVFKO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFLRjtFQUNFOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFTRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFLRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFLRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtJQUNFOztFQUdGO0FBQUE7SUFFRTtJQUNBOztFQUdGO0FBQUE7SUFFRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7O0FBTUo7RUFDRTtBQUFBO0lBRUU7SUFDQTtJQUNBOztFQUdGO0FBQUE7SUFFRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7RUFHRjtBQUFBO0FBQUE7SUFHRTs7O0FBUUo7RUQ3eWhCQTtBQzAwaEJFO0FBUUE7QUFNQTs7RUExQ0E7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQU1FO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFLRjtBQUFBO0lBRUU7SUFDQTs7RUFLRjtJQUNFOztFQUtGO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFO0lBQ0E7SUFDQTtJQUNBOzs7QUFZSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0lBSUU7O0VBR0Y7QUFBQTtBQUFBO0FBQUE7SUFJRTs7O0FBTUo7RUFDRTtBQUFBO0FBQUE7QUFBQTtJQUlFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7OztBQU1KO0VBQ0U7QUFBQTtBQUFBO0FBQUE7SUFJRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFOzs7QUFZSjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQXFCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFXRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBV0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUtGO0VBQ0U7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQWFGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7QUFBQTtFQUdFOztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFPRjtBQUFBO0FBQUE7RUFHRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0FBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFXRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTtFQUNBO0VBQ0E7O0FBaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQVdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQTJCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VENTdtQkE7QUN5K21CRTtBQVVBOztFQXREQTtJQUNFOztFQUdGO0FBQUE7QUFBQTtBQUFBO0lBSUU7SUFDQTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtBQUFBO0lBRUU7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7O0VBS0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUtFOztFQUtGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOzs7QUFVSjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQVdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBV0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBV0Y7RURydW5CQTtBQyt3bkJFO0FBVUE7O0VBbkRBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUFLRTtJQUNBOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0FBQUE7SUFFRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtBQUFBO0lBRUU7SUFDQTs7RUFHRjtBQUFBO0lBRUU7SUFDQTs7RUFLRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBS0U7O0VBS0Y7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7OztBQVFKO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQVNGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQVNGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQWlCRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQVNGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFOztBQVNGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQVNGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFOztBQUdGO0VBQ0U7SUFDRTs7O0FBUUo7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBNkJGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBU0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTs7QUFXRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQVdGO0VBQ0U7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBS0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQVNGO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7O0FBUUo7RUFDRTtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQVFKO0VBQ0U7O0FBNkJGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0VBR0U7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQXlCRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBNkJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7O0FBS0Y7RUFDRTtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQVlKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7O0FBMkJGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFXRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQVdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBV0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFTRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUF5QkY7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBV0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQVdGO0FBQUE7RUFFRTs7QUFXRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQXFCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFTRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQVdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQU9GO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTtFQUNBO0VBQ0E7O0FBV0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBOztBQUlGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQVdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7RUFFRTs7QUFpQ0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBaUJGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBeUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBYUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVVFO0VBQ0E7RUFDQTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0FBQUE7RUFFRTs7QUFLRjtFQUNFOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBU0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFhRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7O0FBSUo7RUFDRTtJQUNFOzs7QUFJSjtFQUNFO0lBQ0U7OztBQU1KO0VBQ0U7RUFDQTtBQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFTRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtJQUNFOzs7QUFJSjtFQUNFO0lBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7O0FBSUo7RUFDRTtJQUNFOzs7QUFRSjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFhRjtFQUNFO0VBQ0E7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBU0Y7QUFBQTtFQUVFO0VBQ0E7O0FBU0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFhRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7O0FBc0JGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQU1KO0VEN2h6QkE7QUM2aXpCRTtBQWVBO0FBVUE7O0VBeENBO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUtGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBS0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUtGO0lBQ0U7O0VBR0Y7QUFBQTtJQUVFOzs7QUFRSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtJQUNFOzs7QUFVSjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0lBQ0U7SUFDQTs7O0FBUUo7RUFDRTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7O0FBTUo7RUFDRTs7QUFHRjtFQUNFO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7OztBQVlKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFpQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQU9GO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUF5QkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFXRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUF5QkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFTRTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFTRTs7QUFLRjtFQUNFOztBQVNGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVdGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQVFKO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBV0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVNGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBeUJGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBYUY7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFTRjtFQUNFOztBQUtGO0VBQ0U7O0FBS0Y7QUFBQTtFQUVFOztBQVNGO0VBQ0U7O0FBU0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFLRjtFQUNFOztBQVNGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBYUY7RUFDRTs7QUFLRjtFQUNFOztBQXFCRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFPRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFXRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQXlCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBMkJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQVdGO0VBQ0U7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFLRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFLRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7O0FBWUY7RUFDRTtFQUNBOztBQWFGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBYUY7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBeUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQXlCRjtFQUNFOztBQVdGO0FBQUE7RUFFRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUEyQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVNGO0FBQUE7RUFFRTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFRHYrNEJBO0FDb2g1QkU7QUFVQTs7RUF0REE7SUFDRTs7RUFHRjtBQUFBO0FBQUE7QUFBQTtJQUlFO0lBQ0E7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0FBQUE7SUFFRTtJQUNBOztFQUdGO0FBQUE7SUFFRTtJQUNBOztFQUtGO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUFLRTs7RUFLRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7O0FBVUo7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFXRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQVdGO0VEaHg1QkE7QUMwejVCRTtBQVVBOztFQW5EQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBS0U7SUFDQTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtBQUFBO0lBRUU7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7O0VBR0Y7QUFBQTtJQUVFO0lBQ0E7O0VBS0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUtFOztFQUtGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOzs7QUFRSjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0VBRUU7RUFDQTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFTRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQU9GO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBU0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQVNGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOztBQUtGO0FBQUE7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBU0Y7RUFDRTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7O0FBV0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFpQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQU9GO0VBQ0U7RUFDQTs7QUFtQkY7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7O0FBUUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQVFKO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTs7O0FBSUo7RUFDRTtJQUNFOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQU1KO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUFJSjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBUUo7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFRSjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQU1KO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQVVKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFLRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQU1KO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQVFKO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQU1KO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7OztBQVFKO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBTUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBWUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtJQUNFOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFNSjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBTUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7O0FBTUo7RUFDRTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFRSjtFQUNFO0VBQ0E7RUFDQTs7QUFpQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBV0Y7RUFDRTs7QUFPRjtBQUFBO0VBRUU7O0FBR0Y7RUFDRTs7QUE2QkY7RUFDRTtFQUNBOztBQU9GO0VBQ0U7O0FBT0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBYUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBV0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQU9GO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9GO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBOztBQU9GO0FBQUE7QUFBQTtFQUdFOztBQUtGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFhRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUtGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBU0Y7RUFDRTs7QUFTRjtFQUNFOztBQVNGO0VBQ0U7O0FBS0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBMEJFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFhRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBT0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7QUFBQTtFQUVFOztBQUtGO0FBQUE7RUFFRTs7QUFPRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOztBQU9GO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBT0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0lBQ0U7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTtJQUNBOztFQUdGO0lBQ0U7SUFDQTs7O0FBWUo7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7QUFXRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTs7QUFTRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQVNGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtBQUFBO0VBRUU7O0FBS0Y7RUFDRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUFrQkU7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUF1QkU7SUFDQTtJQUNBO0lBQ0E7OztBQVFKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBUUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBR0Y7RUFDRTs7QUFLRjtBQUFBO0VBRUU7O0FBR0Y7QUFBQTtFQUVFOztBQVNGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFLRjtFQUNFOztBQUtGO0VBQ0U7O0FBV0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7O0FBR0Y7QUFDRTtFQUNBOztBQUdGO0FBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUNqemhDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFnQkE7RUFDRTtFQUNBOzs7QUFFRjtFQUNFO0FBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTs7O0FDdlFGO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRztFQUNDO0VBQ0k7OztBQUVWO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ1E7RUFDUjtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNRO0VBQ1I7RUFDQTtFQUNBOzs7QUNqR0Y7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0FBQUE7SUFFRTs7O0FBR0o7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0FBQUE7SUFFRTs7O0FBR0o7RUFDRTtFQUNBOzs7QUFFRjtFQUNFO0lBQ0U7OztBQUdKO0VBQ0U7RUFDQTs7O0FBRUY7RUFDRTtJQUNFOzs7QUFHSjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7SUFDRTs7O0FBR0o7RUFDRTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTs7O0FBRUY7RUFDRTtJQUNFOzs7QUFHSjtBQUFBO0FBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FDMVNBO0VBQ0M7OztBQUVEO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0FBQ0E7RUFDSTs7O0FDVko7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVEO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUVEO0VBQ0E7RUFDQTs7O0FBRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QU5SRDtBQUFBO0VBRUM7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVEO0VBQ0U7SUFDRTs7RUFFRjtJQUNFOzs7QU8xRUo7RUFFQyxhUCtCYTtFTzlCYjs7QUFDQTtFQUNDO0VBQ0E7O0FBRUQ7RUFDQztFQUNBOztBQUdGO0VBQ0M7O0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQztFQUNBO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7O0FBT0g7RUFDQztFQUNBO0VBQ0E7O0FBQ0E7RUFDQzs7QUFLSDtFQUNDLE9QaENZO0VPaUNaLGtCUC9CYTtFT2dDYjs7QUFDQTtFQUNDLGtCUG5DTTs7QU9zQ1I7RUFFQztJQUNDO0lBQ0E7SUFDQTs7RUFFQTtJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFJRjtJQUNDOztFQUNBO0lBQ0M7O0VBR0Y7SUFDQzs7RUFDQTtJQUNDO0lBR0E7O0VBRUE7SUFDQyxrQlB0RUk7SU93RUo7OztBQUtKO0VBR0M7SUFFRTs7O0FBTUg7RUFDQztFQUNBO0VBRUE7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUNBOztBQUNBO0VBQ0M7O0FBRUQ7RUFDQztFQUNBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0M7RUFDQTs7QUFJRDtFQUNDO0VBQ0E7RUFDQTs7QUFNSDtFQUNDO0VBQ0E7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDOztBQUlGO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0FBQUE7RUFHQztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0FBQUE7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNDOztBQUdEO0VBQ0M7O0FBRUQ7RUFDQztFQUNBOztBQUVBO0VBQVM7O0FBR1g7RUFDQzs7QUFFRDtFQUNDOztBQUVEO0VBQ0M7O0FBS0E7RUFDQzs7QUN0T0Q7RUFDQzs7QUFFRDtFQUdDO0VBQ0E7O0FBRUM7RUFDQyxPUldFOztBUVJKO0VBQ0M7O0FBQ0E7RUFDQzs7QUFHRjtFQUNDO0VBQ0E7O0FBRUE7RUFFQztFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUVDO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPUjVCSzs7QVE2Qkw7RUFDQyxPUjNCRTs7QVE4Qko7RUFFQzs7QUFDQTtFQUNDO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBOztBQUVEO0VBQ0M7RUFDQTs7QUFHRjtFQUNDOztBQUVBO0VBQ0M7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBSUg7RUFDRSxPUnZFSztFUXdFTDtFQUNBOztBQUVGO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDOztBQUdEO0VBQ0M7RUFDQTtFQUNBOztBQUVEO0VBQ0M7O0FBRUQ7RUFDQzs7QUFFRDtFQUNDOztBQUVEO0VBM0JEO0lBNEJFOztFQUNBO0lBQ0M7SUFDQTs7RUFFRDtJQUNDOzs7QUFHRjtFQUNDO0lBQ0M7OztBQUlGO0VBQ0M7RUFDQTs7QUFFRDtFQUNDLGtCUjNISztFUTRITDs7QUFJQTtFQUNDOztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBR0Q7RUFDQztJQUNDOztFQUVEO0lBQ0M7OztBUnZGSDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QVN2RkY7RUFFQztFQUNBOztBQUNBO0VBQ0M7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUQ7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDOztBQUVEO0VBQ0Msa0JUWkU7O0FTY0g7RUFDQyxrQlRmRTs7QVNnQkY7RUFDQzs7QUFFRDtFQUNDOztBQUdGO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFNSDtFQUNDO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0Msa0JUbERFOztBU29ESDtFQUNDO0VBQ0E7O0FBRUQ7RUFFQztFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFRTjtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBVEQ7SUFXRTs7O0FBRUQ7RUFDQzs7QUFDQTtFQUNDO0VBQ0E7O0FBRUQ7RUFBSzs7QUFFTjtFQUNDOztBQUVEO0VBQ0M7O0FBRUQ7RUFDQzs7QUFDQTtFQUNDOztBQUVEO0VBQ0M7O0FBRUQ7RUFDQzs7QUFFRDtFQUNDOzs7QUFNSDtFQUVDOztBQUNBO0VBQ0M7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQSxrQlR4SU07RVN5SU47RUFDQTs7QUFFRDtFQUVHO0VBQ0E7RUFDQTs7QUFDQTtFQUxIO0lBT0k7OztBQUVEO0VBQ0MsYVQzSVM7RVM0SVQ7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFORDtJQVFFO0lBQ0E7SUFDQTs7O0FBR0Y7RUFDQzs7QUFDQTtFQUZEO0lBSUU7OztBQUlMO0VBQ0Msa0JUM0tNO0VTNEtOO0VBQ0E7RUFDQTs7QUFDQTtFQUNDOztBQUVEO0VBUkQ7SUFVRTs7O0FBRUQ7RUFFQztFQUNBOztBQUNBO0VBSkQ7SUFNRTs7O0FBSUY7RUFDQztFQVNBO0VBQ0E7RUFpR0E7RUFDQTs7QUEzR0E7RUFGRDtJQUlFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhVHRNVTtFU3VNVjs7QUFFQTtFQUNDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDQztFQUVBLGtCVC9OUTtFU2dPUjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQztFQUNBLGtCVHZPUTtFU3dPUjs7QUFJSDtFQUNDLGtCVDlPSTtFUytPSjtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFFQzs7QUFFRDtFQUNDO0VBb0NBO0VBQ0E7RUFDQTs7QUFwQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQztFQUNBLGtCVHRRQztFU3VRRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQztFQUNBOztBQUlIO0VBQ0M7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBTUQ7RUFFQzs7QUFJSDtFQUNDO0VBQ0E7O0FBSUQ7RUE5R0Q7SUFnSEU7SUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQlR6VFU7RVMwVFY7O0FBRUE7RUFWRDtJQVlFOzs7QUFFRDtFQUNDOzs7QUN4Vkw7QUFLQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUEwQ0Q7RUFLRztJQUNDOzs7QUNuREY7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBSUM7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDLGtCWGZJO0VXZ0JKLGNYaEJJO0VXaUJKOztBQUNBO0VBQ0Msa0JYbEJTO0VXbUJULE9YcEJHOztBV3VCTDtFQUNDO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTs7QUFHRjtFQUNDO0VBQ0U7RUFDRjtFQUNFO0VBQ0E7RUFDQTs7QUFFSDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7OztBQ3hFSDtFQUVDO0VBQ0E7O0FBSUE7RUFHQztFQUNBOztBQU1EO0VBRUM7RUFDQTs7QUFHRDtFQUVDOztBQUdEO0VBRUM7OztBQ2pDSDtFQUNDOztBQUdBO0VBQ0c7RUFDQTs7O0FBS0Y7RUFFQztFQUNBOztBQUVEO0VBRUM7O0FDakJGO0VBQ0M7O0FBQ0E7RUFDQztFQUNBLGFkNEJXO0VjckJYOztBQU5BO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFDQztFQUNBOztBQUNBO0VBQ0M7O0FBSUY7QUFXQztBQUFBO0FBQUE7QUFBQTs7QUFQQztFQUVDO0VBQ0E7RUFDQTs7O0FDeEJKO0VBQ0M7RUFDQTs7QUFFQTtFQUNDOzs7QWZnR0g7QUFBQTtBQUFBO0FBS0M7RUFGRDtJQUdFOzs7O0FBS0Q7RUFGRDtJQUdFOzs7O0FBR0Y7RUFDQzs7O0FBR0Q7RUFFQzs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDOztBQUVEO0VBQ0M7O0FBR0E7RUFDQztFQUNBOztBQUVEO0VBQ0M7OztBQUlIO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtFQUVDOzs7QUFFRDtFQUNDOztBQUVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJRjtFQUNDOztBQUtBO0VBQ0M7O0FBQ0E7RUFDQyxPQXpMRTtFQTBMRjs7QUFFRDtFQUNDLE9BaE1JO0VBaU1KOztBQUdGO0VBR0M7O0FBQ0E7RUFDQzs7QUFFRDtFQUNDOzs7QUFLSjtFQUNDOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFFRDtBQUFBO0VBR0M7OztBQUlEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBRUM7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQzs7O0FBS0Y7RUFDQyxPQTVQTzs7O0FBOFBSO0VBQ0M7OztBQUlEO0VBRUM7OztBQUdEO0VBQ0U7SUFDRTs7RUFFRjtJQUNFOzs7QUFJSjtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7OztBQUVEO0VBQ0MiLCJmaWxlIjoiZ2VuZXJhdGVkLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSc7XHJcbiAgICBzcmM6IHVybCgnL2Fzc2V0cy9mb250cy9oZWx2ZXRpY2FuZXVlLWNvbmRlbnNlZC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICB1cmwoJy9hc3NldHMvZm9udHMvaGVsdmV0aWNhbmV1ZS1jb25kZW5zZWQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59IiwiXG4uZ2lmV3JhcFxue1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uZ2lmTG9nb1xue1xuXHRoZWlnaHQ6IDIwMHB4O1xufVxuXG4jYW5ndWxhckNvbnRlbnRIb2xkZXJcbntcblx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucmVzb3BlbnNcbntcblx0cGFkZGluZy1sZWZ0OiAwO1xufVxuXG4jcmVzb3BlbnMyXG57XG5cdHBhZGRpbmctbGVmdDogMDtcbn1cblxuI3B2ci10aWxlczJcbntcblx0cGFkZGluZzogMCAwICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbiNwdnItdGlsZXMyIGRpdlxue1xuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlczIgLnVpLmdyaWQuc2VnbWVudCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zZW07XG4gIG1hcmdpbi10b3A6IDAuM2VtO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlczIgLnVpLmRpdmlkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlczIgLnB2ci10aWxlIC5jb2x1bW4ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlczIgLnB2ci10aWxlIC5jb2x1bW4gLnN1Yi1oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzMiAucHZyLXRpbGUgLmNvbHVtbiAuc3ViLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIG1hcmdpbi1sZWZ0OiAxLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzMiAucHZyLXRpbGUgLmNvbHVtbi50ZW4ud2lkZSAuaGVhZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYm9keS5zbGltICNwdnItdGlsZXMyIC5wdnItdGlsZSAuY29sdW1uLnRlbi53aWRlIC5zdWItaGVhZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keS5zbGltICNwdnItdGlsZXMyIC5wdnItdGlsZSAuY29sdW1uLnRlbi53aWRlIC5zbGltLmRpdmlkZXIge1xuICBtYXJnaW46IDAuMXJlbSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keS5iZWVmeSAjcHZyLXRpbGVzMiAucHZyLXRpbGUgLmNvbHVtbiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG4jcHZyLXRpbGVzMiAucHZyLXRpbGUge1xuXHRwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuI3B2ci10aWxlczIgLnB2ci10aWxlIC5jb2x1bW4ge1xucGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG5wYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbiNwdnItdGlsZXMyIC5wdnItdGlsZSAuY29sdW1uLnNpeC53aWRlIHtcbmJvcmRlci10b3A6IDA7XG5wYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4jcHZyLXRpbGVzMiAucHZyLXRpbGUgLnVpLmRpdmlkZXIge1xubWFyZ2luLXJpZ2h0OiAyLjVyZW07XG59XG5cbiNwdnItdGlsZXMyIC5wdnItdGlsZSAudWkgLnNlZ21lbnRcbntcblx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucHZyLXRpbGUyXG57XG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0cGFkZGluZzogMCAwICFpbXBvcnRhbnQ7XG59XG5ib2R5ICNwdnItcGFnLGJvZHkgI3B2ci10aWxlcyxib2R5ICNwdnItd3JhcCB7XG5cdHBhZGRpbmc6MDtcbn1cbmJvZHkgI3B2ci13cmFwPmRpdiB7XG5cdHBhZGRpbmctYm90dG9tOjEwcHg7XG59XG4ucHZyRm9ybVByaWNlV2FybmluZ1xue1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMCwgMCwgLjMpICFpbXBvcnRhbnQ7XG59XG5cbi5jcm9uRW1haWxzT25cbntcblx0Y29sb3I6IGdyZWVuO1xufVxuXG4uY3JvbkVtYWlsc09mZlxue1xuXHRjb2xvcjogcmVkO1xufVxuXG4ucHZyRm9ybUZpZWxkRGl2XG57XG5cdG1pbi13aWR0aDogMTYwcHggIWltcG9ydGFudDtcbn1cblxuLnB2clByb2R1Y3RzVGFibGVcbntcblx0Zm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wdnJQcm9kdWN0c1RhYmxlIHRoXG57XG5cdGJhY2tncm91bmQtY29sb3I6ICMyREIzNzQgIWltcG9ydGFudDtcblx0Y29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wdnJQcm9kdWN0c1RhYmxlIHRyOm50aC1jaGlsZChldmVuKVxue1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMTExICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucHZyUHJvZHVjdHNUYWJsZSB0cjpudGgtY2hpbGQob2RkKVxue1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucHZyUHJvZHVjdHNUYWJsZSB0cjpob3ZlciBcbntcblx0YmFja2dyb3VuZC1jb2xvcjogIzZBRUM5MiAhaW1wb3J0YW50O1xuXHRjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGFuZ2VyXG57XG5cdGNvbG9yOiAjY2MwMDAwO1xufVxuXG4ubm90ZXMtd2FybmluZy1kaXZcbntcblx0Y29sb3I6ICNjYzAwMDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRwYWRkaW5nOiA0cHg7XG5cdG1hcmdpbi10b3A6IDRweDtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi52YWxpZGF0aW9uLWNoZWNrXG57XG5cdGhlaWdodDogMjJweCAhaW1wb3J0YW50O1xuXHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuLnZhbGlkYXRpb24tY2hlY2subGFyZ2Vcbntcblx0Zm9udC1zaXplOjJlbTtcblx0bGluZS1oZWlnaHQ6LjVlbTtcbn1cbi52YWxpZGF0aW9uLWNoZWNrLmdyZWVuXG57XG5cdGNvbG9yOiMyZGI0NzUgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IDBweCAwcHggMXB4ICMwMDA7XG59XG4udmFsaWRhdGlvbi1jaGVjay5yZWRcbntcblx0Y29sb3I6I2UwMCAhaW1wb3J0YW50O1xuXHR0ZXh0LXNoYWRvdzogMHB4IDBweCAxcHggIzAwMDtcbn1cbi52YWxpZGF0aW9uLWNoZWNrLm9yYW5nZVxue1xuXHRjb2xvcjpvcmFuZ2UgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IDBweCAwcHggMXB4ICMwMDA7XG59XG4udmFsaWRhdGlvbi1jaGVjay55ZWxsb3dcbntcblx0LS1jb2xvcjojZThlYzAxICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB5ZWxsb3cgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IDBweCAwcHggMXB4ICMwMDA7XG59XG5cbi5kYXNoYm9hcmQtb3JkZXItaGVhZGVyXG57XG5cdGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuXHRtaW4td2lkdGg6IDE4NXB4ICFpbXBvcnRhbnQ7XG59XG5cblxuYS5yZWQ6bGluayB7Y29sb3I6ICNjYzAwMDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9XG5hLnJlZDp2aXNpdGVkIHtjb2xvcjogI2NjMDAwMDsgdGV4dC1kZWNvcmF0aW9uOiBub25lO31cbmEucmVkOmhvdmVyIHtjb2xvcjogI2NjMDAwMDsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuXG5hLmdyZWVuOmxpbmsge2NvbG9yOiAjMDBjYzAwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fVxuYS5ncmVlbjp2aXNpdGVkIHtjb2xvcjogIzAwY2MwMDsgdGV4dC1kZWNvcmF0aW9uOiBub25lO31cbmEuZ3JlZW46aG92ZXIge2NvbG9yOiAjMDBjYzAwOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG5cbmEueWVsbG93Omxpbmsge2NvbG9yOiAjY2NjYzAwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fVxuYS55ZWxsb3c6dmlzaXRlZCB7Y29sb3I6ICNjY2NjMDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9XG5hLnllbGxvdzpob3ZlciB7Y29sb3I6ICNjY2NjMDA7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cblxuYS5ibGFjazpsaW5rIHtjb2xvcjogIzY2NjsgdGV4dC1kZWNvcmF0aW9uOiBub25lO31cbmEuYmxhY2s6dmlzaXRlZCB7Y29sb3I6ICM2NjY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9XG5hLmJsYWNrOmhvdmVyIHtjb2xvcjogIzY2NjsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuXHRcblxuLmJveHtcblx0Ym9yZGVyOiAycHggc29saWQ7XG5cdGJvcmRlci1yYWRpdXM6IC4yNXJlbTtcblx0cGFkZGluZzouMjVyZW07XG5cdG1hcmdpbjouMjVyZW07XG59XG50YWJsZS5ib3gtdGR7XG5cdGJvcmRlci1zcGFjaW5nOjAgLjI1cmVtO1xufVxudGQuYm94LXRke1xuXHRib3JkZXI6IDJweCBzb2xpZDtcblx0Ym9yZGVyLWxlZnQ6MDtcblx0cGFkZGluZzouMjVyZW07XG5cdG1hcmdpbjouMjVyZW0gMDtcblx0JjpmaXJzdC1jaGlsZHtcblx0XHRib3JkZXItbGVmdDogMnB4IHNvbGlkO1xuXHRcdGJvcmRlci1yYWRpdXM6IC4yNXJlbSAwIDAgLjI1cmVtO1xuXHR9XG5cdCY6bGFzdC1jaGlsZFxuXHR7XG5cdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC4yNXJlbTtcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjI1cmVtO1xuXHR9XG59XG5cbi5hbGVydC13YXJuaW5nLFxuLmFsZXJ0LWRhbmdlcntcblx0Ly9ib3JkZXItcmFkaXVzOjFyZW07XG5cdC8vYm9yZGVyOiAycHggc29saWQgIWltcG9ydGFudDtcbn1cbi5hbGVydC1uZXV0cmFse1xuXHRjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXHRhY2NlbnQtY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy9jaGVja2JveGVzXG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0Ym9yZGVyLWNvbG9yOiAjNTU1ICFpbXBvcnRhbnQ7XG5cdGZvbnQtd2VpZ2h0Om5vcm1hbDtcbn1cbi5hbGVydC1kYW5nZXJ7XG4gICAgY29sb3I6ICM3MjFjMjQgIWltcG9ydGFudDtcblx0XHRhY2NlbnQtY29sb3I6ICM3MjFjMjQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjNzIxYzI0ICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC13ZWlnaHQ6Ym9sZDtcbn1cblxuLmFsZXJ0LXdhcm5pbmcge1xuXHRjb2xvcjogIzg1NjQwNCAhaW1wb3J0YW50O1xuXHRhY2NlbnQtY29sb3I6ICM4NTY0MDQgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZCAhaW1wb3J0YW50O1xuXHRib3JkZXItY29sb3I6ICM4NTY0MDQgIWltcG9ydGFudDtcblx0XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcblx0Y29sb3I6ICMxNTU3MjQgIWltcG9ydGFudDtcblx0YWNjZW50LWNvbG9yOiAjMTU1NzI0ICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGEgIWltcG9ydGFudDtcblx0Ym9yZGVyLWNvbG9yOiAjYzNlNmNiICFpbXBvcnRhbnQ7XG59XG5cblxuXG4vKiBmaWx0ZXIgYW5kIHBhZ2luYXRpb24gKi9cbi5wdnItcGFnLWRpdiAudWkgYnV0dG9uLCAub3JkZXItZmlsdGVycy51aSBidXR0b24sXG5ib2R5IC5wdnItcGFnLWRpdiAudWkubGFiZWwsIC5vcmRlci1maWx0ZXJzLnVpIC5sYWJlbFxue1xuXHRmb250LXNpemU6LjdyZW07XG59XG5cbi5wcm9kdWN0LmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnRcbntcblx0LmhlYWRlcntcblx0XHRjb2xvcjokZGFyay1ncmVlbjtcblx0XHRwYWRkaW5nLXRvcDouNWVtO1xuXHR9XG5cdC5maWVsZC1ncmlkXG5cdHtcblx0XHRkaXNwbGF5OmZsZXg7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHRmbGV4LXdyYXA6d3JhcDtcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRsYWJlbHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdGZvbnQtc2l6ZTouOGVtO1xuXHRcdH1cblx0XHQmPip7XG5cdC8vXHRcdGZsZXg6IDAgMCAwO1xuXHRcdFx0ZmxleC1iYXNpczogODBweDtcblx0XHRcdGZsZXgtZ3JvdzogMTtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6MjUlO1xuXHRcdFx0ZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG59IiwiXHJcbi8vIE9sZCBvcmlnaW5hbCBmaWxlc1xyXG5cclxuXHJcbi8vQGltcG9ydCBcIi4uLy4uL3B1YmxpYy9hc3NldHMvbW9iaWxlL2Jvb3RzdHJhcC01LjAuMi1kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzc1wiO1xyXG4vL0BpbXBvcnQgXCIuLi8uLi9wdWJsaWMvYXNzZXRzL21vYmlsZS9jc3MvanF1ZXJ5LXVpLm1pbi5tYWxhcmtleS5tb2QuY3NzXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL3B1YmxpYy9hc3NldHMvbW9iaWxlL2Nzcy9kYXNoYm9hcmQuY3NzXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL3B1YmxpYy9hc3NldHMvbW9iaWxlL2Nzcy9kYXNoYm9hcmROYXZNb2JpbGUuY3NzXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL3B1YmxpYy9hc3NldHMvbW9iaWxlL2Nzcy9kYXNoYm9hcmRBbmd1bGFyLmNzc1wiO1xyXG4vL0BpbXBvcnQgXCIuLi8uLi9wdWJsaWMvYXNzZXRzL21vYmlsZS9jc3MvZHQtbXVsdGlzZWxlY3QuY3NzXCI7XHJcbi8vQGltcG9ydCBcIi4uLy4uL3B1YmxpYy9hc3NldHMvbW9iaWxlL2Nzcy9kYXNoYm9hcmRNb2JpbGUuY3NzXCI7XHJcblxyXG4vL0BpbXBvcnQgXCJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9mb250LWF3ZXNvbWUvNi41LjEvY3NzL2FsbC5taW4uY3NzXCI7XHJcblxyXG5cclxuQGltcG9ydCBcImZvbnRzLnNjc3NcIjtcclxuXHJcblxyXG5cclxuXHJcblxyXG4kZGFyay1ncmVlbjogIzFiNmQ0NztcclxuJGdyZWVuOiAjMmRiNDc1O1xyXG4kbGlnaHQtZ3JlZW46ICNjYmVkZGQ7XHJcblxyXG4kcmVkOiAjYjQyZDJkO1xyXG5cclxuJGxlZnQtbmF2LXdpZHRoOjIwMHB4O1xyXG5cclxuJG1heC1tb2JpbGU6IDcwMHB4O1xyXG4kbWF4LW1vYmlsZS1oZWlnaHQ6IDUwMHB4O1xyXG4kbWluLWRlc2t0b3A6NzAxcHg7XHJcbiRtaW4tZGVza3RvcC1oZWlnaHQ6IDUwMXB4O1xyXG4kdGl0bGUtZm9udHM6ICdIZWx2ZXRpY2EgTmV1ZScsQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7XHJcblxyXG5cclxuXHJcbkBpbXBvcnQgXCJtYWxhcmtleS5zY3NzXCI7XHJcblxyXG4uc2VtYW50aWN7XHJcblx0QGltcG9ydCBcInNlbWFudGljLnNjc3NcIjtcclxufVxyXG5cclxuQGltcG9ydCBcInNlbGVjdGl6ZVwiO1xyXG5cclxuXHRcclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9wdWJsaWMvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvcGlja2FkYXRlL2xpYi90aGVtZXMvY2xhc3NpY1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vcHVibGljL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL3BpY2thZGF0ZS9saWIvdGhlbWVzL2NsYXNzaWMuZGF0ZVwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vcHVibGljL2Fzc2V0cy90ZW1wXCI7XHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vX21lenJfaGVscGVyL2xpZ2h0Qm94L2xpZ2h0Qm94XCI7XHJcblxyXG4vL0VORCBvbGQgb3JpZ2luYWwgZmlsZXNcclxuXHJcbmh0bWwsXHJcbmJvZHl7XHJcblx0bWFyZ2luOjA7XHJcblx0cGFkZGluZzowO1xyXG5cdFxyXG5cdGhlaWdodDoxMDB2aDtcclxuXHR3aWR0aDoxMDB2dztcclxuXHRmb250LWZhbWlseTogXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuXHRmb250LXNpemU6MTRweDtcclxuXHRmb250LXdlaWdodDo0MDA7XHJcblx0Y29sb3I6cmdiYSgwLDAsMCwuOCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjojZmZmO1xyXG5cdGFuaW1hdGlvbjogZmFkZUluIC41cyBlYXNlLWluLW91dCBmb3J3YXJkcztcclxufVxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5odG1se1xyXG5cclxuXHRib2R5e1xyXG5cclxuXHRcdEBpbXBvcnQgXCJoZWFkZXJcIjtcclxuXHRcdFxyXG5cdFx0XHJcblx0XHRAaW1wb3J0IFwiYW5ndWxhci1saXN0LnNjc3NcIjtcclxuXHRcdCYuYXBwe1xyXG5cdFx0XHRvdmVyZmxvdzpoaWRkZW47XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG5cdFx0XHRhbGlnbi1pdGVtczpzdHJldGNoO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cclxuXHJcblx0XHJcbn1cclxuQGltcG9ydCBcIm9yZGVyc19wdnJzLnNjc3NcIjtcclxuQGltcG9ydCBcImxheW91dHMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwibW9kYWxzLnNjc3NcIjtcclxuQGltcG9ydCBcIm1vZGFsLW5ldy1wdnIuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiYWNjb3JkaW9uLnNjc3NcIjtcclxuQGltcG9ydCBcImN1c3RvbWVyLnNjc3NcIjtcclxuQGltcG9ydCBcImZvcm0uc2Nzc1wiO1xyXG5cclxuXHJcbi8qYm9keS5wdXNoZWQgLmNvbnRlbnQtd3JhcHtcclxuXHRtYXJnaW4tbGVmdDowO1xyXG59Ki9cclxuLmRlc2t0b3Atb25seVxyXG57XHJcblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWF4LW1vYmlsZSkge1xyXG5cdFx0ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcbi5tb2JpbGUtb25seVxyXG57XHJcblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLWRlc2t0b3ApIHtcclxuXHRcdGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG5zdmd7XHJcblx0aGVpZ2h0OjFlbTtcclxufVxyXG5cclxuLmhhcy1sb2FkaW5nLCBpZnJhbWVcclxue1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdCY6OmFmdGVye1xyXG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHR0b3A6MDtcclxuXHRcdGxlZnQ6MDtcclxuXHRcdGJvdHRvbTowO1xyXG5cdFx0cmlnaHQ6MDtcclxuXHRcdGNvbnRlbnQ6IFwiIFwiO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2FkaW5nLmdpZicpO1xyXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjo1MCUgNTAlO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOjIwMHB4IGF1dG87XHJcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgLjNzO1xyXG5cdFx0b3BhY2l0eTowO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0fVxyXG5cdCYudmVydGljYWw6OmFmdGVye1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOmF1dG8gMTAwJTtcclxuXHR9XHJcblx0Ji5sZWZ0OjphZnRlcntcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246MCA1MCU7XHJcblx0fVxyXG5cdCYubG9hZGluZ3tcclxuXHRcdCY6OmFmdGVye1xyXG5cdFx0XHRvcGFjaXR5OjE7XHJcblx0XHRcdHRyYW5zaXRpb246bm9uZTtcclxuXHRcdH1cclxuXHRcdCY+KntcclxuXHRcdFx0ZGlzcGxheTpub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uTWV6ckxpZ2h0Qm94X2lubmVyPmlmcmFtZXtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2FkaW5nLmdpZicpO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSA1MCU7XHJcblx0YmFja2dyb3VuZC1zaXplOjIwMHB4IGF1dG87XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcbn1cclxudGFibGV7XHJcblx0Ly9ib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAgL3RoaXMgYnJlYWtzIGFuZ2xlZCBjb250ZW50XHJcblx0Ym9yZGVyLXNwYWNpbmc6MDtcclxufVxyXG50YWJsZS50YWJsZXtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdFxyXG5cdHRoLHRkIHtcclxuXHRcdGJvcmRlcjpub25lO1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdHBhZGRpbmc6LjI1ZW07XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG5cdFx0Ji5yaWdodC5hbGlnbmVke1xyXG5cdFx0XHR0ZXh0LWFsaWduOnJpZ2h0O1xyXG5cdFx0fVxyXG5cdFx0Ji5hbmdsZWR7XHJcblx0XHRcdHdpZHRoOjFlbTtcclxuXHRcdFx0d3JpdGluZy1tb2RlOiBzaWRld2F5cy1scjtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHRwYWRkaW5nOjVweCA1cHggMCAxMnB4O1xyXG5cdFx0XHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuXHRcdFx0LW1vei10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcblx0XHRcdC1vLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG5cdFx0XHRib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpO1xyXG5cdFx0XHQvL2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHR0ZDpub3QoOmxhc3QtY2hpbGQpe1xyXG5cdFx0Ym94LXNoYWRvdzogMXB4IDBweCAwIHJnYmEoMTIwLDEyMCwxMjAsLjE1KTtcclxuXHRcdC8vYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCByZ2JhKDEyMCwxMjAsMTIwLC4xNSk7XHJcblxyXG5cdH1cclxuXHQmLnN0cmlwZWR7XHJcblx0XHR0ZHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO1xyXG5cdFx0XHQmLnJlZHtcclxuXHRcdFx0XHRjb2xvcjokcmVkO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6cmdiYSgyMDQsMCwwLC4zNSk7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5ncmVlbntcclxuXHRcdFx0XHRjb2xvcjokZ3JlZW47XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMjA0LDAsLjM1KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jj50Ym9keT50cjpudGgtY2hpbGQoZXZlbik+dGQsXHJcblx0XHQmPnRyOm50aC1jaGlsZChldmVuKT50ZCBcclxuXHRcdHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtcclxuXHRcdFx0Ji5yZWR7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIwNCwwLDAsLjUpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuZ3JlZW57XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMjA0LDAsLjUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5zdW1tYXJ5e1xyXG5cdHBhZGRpbmc6MWVtO1xyXG59XHJcbi5jZW50ZXJ7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyIWltcG9ydGFudDtcclxufVxyXG4udGFibGUtcGFke1xyXG5cdG92ZXJmbG93OmF1dG87XHJcbn1cclxuLk1lenJMaWdodEJveF9pbm5lci50eXBlLWh0bWwsXHJcbi5NZXpyTGlnaHRCb3hfaW5uZXIudHlwZS1kaXZcclxue1xyXG5cdHBhZGRpbmc6MTBweDtcclxuXHJcbn1cclxuXHJcbip7XHJcblx0dHJhbnNpdGlvbjpvcGFjaXR5IDVzLCBiYWNrZ3JvdW5kLWltYWdlIDVzO1xyXG5cdGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6MDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOjA7XHJcbn1cclxuXHJcbi5zY3JvbGx5XHJcbntcclxuXHRoZWlnaHQ6MTAwJTtcclxuXHRvdmVyZmxvdy14OmhpZGRlbjtcclxuXHRvdmVyZmxvdy15OnNjcm9sbDtcclxufVxyXG5cclxuYXtcclxuXHRjb2xvcjogIzAwOWZkYTtcclxuXHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHR0cmFuc2l0aW9uOmJvcmRlci1ib3R0b20gLjNzO1xyXG5cdGJvcmRlci1ib3R0b206cmdiYSgyNTUsMjU1LDI1NSwwKTtcclxuXHRjdXJzb3I6cG9pbnRlcjtcclxuXHQmOm5vdCguYnV0dG9uKTpob3ZlcntcclxuXHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICMwMDlmZGE7XHJcbi8vXHRcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcblx0fVxyXG59XHJcblxyXG4uZ3JlZW57XHJcblx0Y29sb3I6ICRncmVlbjtcclxufVxyXG4uYm9sZHtcclxuXHRmb250LXdlaWdodDpib2xkO1xyXG59XHJcblxyXG4vL3NwaW5uZXJcclxuaS5mYS1zb2xpZC5mYS1zcGlubmVyXHJcbntcclxuXHRhbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW4ge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgfVxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG4uaGFzLWRhdGVwaWNrZXJ7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHB7XHJcblx0cGFkZGluZzoxMHB4IDA7XHJcblx0bWFyZ2luOjAgMjBweDtcclxufVxyXG5cclxuaHJ7XHJcblx0bWFyZ2luOjAgMjBweDtcclxufVxyXG5oMXtcclxuXHRib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLC41KTtcclxufVxyXG4iLCIgLypcbiAqICMgU2VtYW50aWMgVUkgLSAxLjExLjVcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9TZW1hbnRpYy1PcmcvU2VtYW50aWMtVUlcbiAqIGh0dHA6Ly93d3cuc2VtYW50aWMtdWkuY29tL1xuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5AaW1wb3J0ICdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TGF0bzo0MDAsNzAwLDQwMGl0YWxpYyw3MDBpdGFsaWMmc3Vic2V0PWxhdGluJztcbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBSZXNldFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFJlc2V0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBCb3JkZXItQm94ICovXG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogaVBhZCBJbnB1dCBTaGFkb3dzICovXG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAvKiBtb2JpbGUgZmlyZWZveCB0b28hICovXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqL1xuXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMSBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgLyogMiAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAtIFNpdGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBQYWdlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5odG1sLFxuYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIG1pbi13aWR0aDogMzIwcHg7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBIZWFkZXJzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1IHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMzNlbTtcbiAgbWFyZ2luOiAtd2Via2l0LWNhbGMoMnJlbSAtICAwLjE2NWVtICkgMGVtIDFyZW07XG4gIG1hcmdpbjogY2FsYygycmVtIC0gIDAuMTY1ZW0gKSAwZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuaDEge1xuICBtaW4taGVpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjcxNHJlbTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDEuMjhyZW07XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjA3MXJlbTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbmgxOmZpcnN0LWNoaWxkLFxuaDI6Zmlyc3QtY2hpbGQsXG5oMzpmaXJzdC1jaGlsZCxcbmg0OmZpcnN0LWNoaWxkLFxuaDU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbmgxOmxhc3QtY2hpbGQsXG5oMjpsYXN0LWNoaWxkLFxuaDM6bGFzdC1jaGlsZCxcbmg0Omxhc3QtY2hpbGQsXG5oNTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFRleHRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbnAge1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xuICBsaW5lLWhlaWdodDogMS4zMztcbn1cblxucDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxucDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYSB7XG4gIGNvbG9yOiAjMDA5ZmRhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6aG92ZXIge1xuICBjb2xvcjogIzAwYjJmMztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBIaWdobGlnaHRpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFNpdGUgKi9cblxuOjotd2Via2l0LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2UyZmY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NlMmZmO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2UyZmY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEZvcm0gKi9cblxudGV4dGFyZWE6Oi13ZWJraXQtc2VsZWN0aW9uLFxuaW5wdXQ6Oi13ZWJraXQtc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjQpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG50ZXh0YXJlYTo6LW1vei1zZWxlY3Rpb24sXG5pbnB1dDo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbnRleHRhcmVhOjpzZWxlY3Rpb24sXG5pbnB1dDo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjQpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBHbG9iYWwgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmh0bWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udWkud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4vKiBTaWRlYmFyIFxuLS0tLS0tLS0tLSovXG5cbi51aS5sZWZ0LnNpZGViYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi51aS5sZWZ0LnNpZGViYXIubWVudSB7XG4gIGJhY2tncm91bmQ6ICNFMkUyRTI7XG59XG5cbi51aS5zaWRlYmFyLm1lbnUgLml0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4uc2lkZWJhci10YWIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMjAyMTIxO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICB6LWluZGV4OiAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6ICNmZWZmZmY7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xufVxuXG4uc2lkZWJhci10YWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDMyLCAzMywgMzMsIDAuNyk7XG59XG5cbi5zaWRlYmFyLXRhYjpiZWZvcmUge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiBJY29ucztcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjI1ZW07XG4gIHRvcDogNDAlO1xufVxuXG4uc2lkZWJhci10YWIub3BlbmVkIHtcbiAgbGVmdDogMjYwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xufVxuXG4uc2lkZWJhci10YWIub3BlbmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG59XG5cbi5wdXNoZXIge1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xuICBwYWRkaW5nOiAwIDNlbTtcbn1cblxuLnB1c2hlciAuY29sdW1uLnNjcm9sbHkge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAwLjFyZW07XG4gIHBhZGRpbmctbGVmdDogMC4xcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjFyZW07XG59XG5cbi5zY3JvbGx5IHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4udWkucHVzaGVyLnBhZ2UuZ3JpZCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLyogT3JkZXIgY29sdW1uL3RpbGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZ3JlZW4uaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi5zdWItaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc3ViLWhlYWRlciBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgb3BhY2l0eTogMC43O1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuXG4uZGl2aWRlZC5jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbiNyZXNvcGVucyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuI3B2ci13cmFwLFxuI3B2ci1wYWcsXG4jcHZyLXRpbGVzIHtcbiAgcGFkZGluZy10b3A6IDAuMzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDByZW07XG4gIHBhZGRpbmctYm90dG9tOiAwcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG59XG5cbiNwdnItd3JhcCBkaXYsXG4jcHZyLXBhZyBkaXYsXG4jcHZyLXRpbGVzIGRpdiB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbiNwdnItd3JhcCB7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiA4N3ZoO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbiNwdnItd3JhcCAuYnV0dG9uIHtcbiAgd2lkdGg6IDE2ZW07XG4gIG1hcmdpbi10b3A6IDJlbTtcbn1cblxuI3B2ci13cmFwIC50YWJsZS1wYWQgZm9ybSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI3B2ci13cmFwIC50YWJsZS1wYWQgYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNwdnItd3JhcCAubW9kYWwtY2xvc2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jcHZyLXBhZyAudWkuZ3JpZC5zZWdtZW50LmZpbHRlcnMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuXG4jcHZyLXBhZyAudWkuZ3JpZC5zZWdtZW50LmZpbHRlcnMgLmZpbHRlci5idXR0b24uYWN0aXZlLFxuI3B2ci1wYWcgLnVpLmdyaWQuc2VnbWVudC5maWx0ZXJzIC5maWx0ZXIuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NTtcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6ICMyZGI0NzU7XG59XG5cbi5wdnItaGVhZGVyLnVpLnNlZ21lbnQgLnRhYmxleSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IC53cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCAuaGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTFlbTtcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCAuc3ViLWhlYWRlciB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmctdG9wOiAxZW07XG59XG5cbi5wdnItaGVhZGVyLnVpLnNlZ21lbnQgLndyYXA6bnRoLW9mLXR5cGUoMm4pIC5oZWFkZXIsXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IC53cmFwOm50aC1vZi10eXBlKDJuKSAuc3ViLWhlYWRlciB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IHRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBtYXJnaW46IDJlbSAwZW0gMGVtIC0yZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OGI2MztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5wdnItaGVhZGVyLnVpLnNlZ21lbnQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCB0ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ucHZyLWhlYWRlci51aS5zZWdtZW50IHRleHRhcmVhOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjY2NjY2M7XG59XG5cbi5wdnItaGVhZGVyLnVpLnNlZ21lbnQgdGV4dGFyZWE6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjY2NjYztcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCB0ZXh0YXJlYTpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjY2NjYztcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCB0ZXh0YXJlYTpmb2N1czo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjY2NjYztcbn1cblxuLnB2ci1oZWFkZXIudWkuc2VnbWVudCBvbCBsaSB7XG4gIGNvbG9yOiAjZmZmO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5wdnItaGVhZGVyLnVpLnNlZ21lbnQgb2wgbGkgc3BhbiB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4udGFibGUtcGFkIHtcbiAgcGFkZGluZzogMWVtIDEuNWVtIDFlbSAxZW07XG59XG5cbi5zdW1tYXJ5IHtcbiAgcGFkZGluZy1yaWdodDogMi41ZW07XG59XG5cbi5yaWdodC5hbGlnbmVkLmZyZWlnaHQtY29zdHMge1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IDJlbTtcbn1cblxuc3Ryb25nLmdyZWVuIHtcbiAgY29sb3I6ICMyZGI0NzU7XG59XG5cbi5wcmljZSB7XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG59XG5cbi5wdnItdGlsZSBzcGFuLnVpLmxhYmVsLmV4cGlyZXNTb29uIHtcbiAgb3BhY2l0eTogMS4wO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuICAudWkubWVudS5zZXZlbi5pdGVtIC5pdGVtIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODcwcHgpIHtcbiAgLnVpLm1lbnUuc2V2ZW4uaXRlbSAuaXRlbSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG59XG5cbi5wdnItdGlsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLmdyaWQgLnVpLnNlZ21lbnQucHZyLXRpbGUuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NTtcbiAgY29sb3I6ICMxYjFjMWQ7XG59XG5cbi51aS5ncmlkIC51aS5zZWdtZW50LnB2ci10aWxlLmFjdGl2ZSAuaGVhZGVyIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgLnVpLnNlZ21lbnQucHZyLXRpbGUuYWN0aXZlIHNwYW4sXG4udWkuZ3JpZCAudWkuc2VnbWVudC5wdnItdGlsZS5hY3RpdmUgLnN1Yi1oZWFkZXIge1xuICBjb2xvcjogIzFiNmQ0Nztcbn1cblxuLnVpLmdyaWQgLnVpLnNlZ21lbnQucHZyLXRpbGUuYWN0aXZlIHNwYW4gc3Ryb25nLFxuLnVpLmdyaWQgLnVpLnNlZ21lbnQucHZyLXRpbGUuYWN0aXZlIC5zdWItaGVhZGVyIHN0cm9uZyB7XG4gIGNvbG9yOiAjMWIxYzFkO1xufVxuXG4ucGlja2VyIHtcbiAgd2lkdGg6IDEzMCUgIWltcG9ydGFudDtcbn1cblxuLnJpZ2h0LWRhdGUgLnBpY2tlciB7XG4gIGxlZnQ6IC02ZW07XG59XG5cbiNnaWZXcmFwIHtcbiAgaGVpZ2h0OiA4NXZoO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuI2dpZldyYXAgaW1nIHtcbiAgbWF4LXdpZHRoOiA3cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udWkucHJvZHVjdC5hY2NvcmRpb24gaW5wdXQge1xuICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLnByb2R1Y3QuYWNjb3JkaW9uIC51aS5zZWxlY3Rpb24uZHJvcGRvd24sXG4udWkucHJvZHVjdC5hY2NvcmRpb24gLnVpLnNlbGVjdGlvbi5kcm9wZG93biBpbnB1dCB7XG4gIHBhZGRpbmc6IDAuMjVlbSAwLjVlbTtcbn1cblxuLnVpLnByb2R1Y3QuYWNjb3JkaW9uIC5mb3JtIC5oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cblxuLnVpLnByb2R1Y3QuYWNjb3JkaW9uIC5jb250ZW50LmFjdGl2ZSB7XG4gIHBhZGRpbmctdG9wOiAxLjVlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuaGVhZGVyLnRvcC5tYXJnaW4ge1xuICBtYXJnaW4tdG9wOiAwLjNlbTtcbn1cblxuLnVpLm1vZGFsIC5zdWJtaXQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NTtcbn1cblxuLnVpLm1vZGFsIC5ncmVlbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWI2ZDQ3O1xufVxuXG4udWkubmV3LXB2ci5tb2RhbCAudWkubGVmdC5jb250ZW50LmZvcm0ge1xuICBoZWlnaHQ6IDk0dmg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbn1cblxuLnVpLm5ldy1wdnIubW9kYWwgLmZvdXIuZmllbGRzIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbi5wdnJDb2xvciAuc2VsZWN0aXplLWlucHV0IHtcbiAgcGFkZGluZzogMCAwO1xufVxuXG5pLmljb24ubW9kYWwtY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZy1yaWdodDogMS40ZW07XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA5OTk5O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xufVxuXG5pLmljb24ubW9kYWwtY2xvc2U6aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6ICMyZGI0NzU7XG59XG5cbi51aS5zZWFyY2gubW9kYWwgLmZvcm0ge1xuICBwYWRkaW5nLXRvcDogMWVtO1xufVxuXG4udWkuc2VhcmNoLm1vZGFsIC5tb2RhbC1jbG9zZSB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLm1vZGFsIC5maWVsZCA+IGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIC4yODU3cmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IC45Mjg1ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ubW9kYWwgLnVpLmZvcm0gLmZpZWxkID4gbGFiZWwge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi51aS5oZWxwIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc2xpbS5kaXZpZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI21hcmtldGluZ1dyYXAgPiBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jY29udHJhY3Rvci1sb2dvIHtcbiAgLyogVGVzdCB0ZXN0ICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAyMDBweDtcbn1cblxuLyogRGlzcGxheSBNb2Rlc1xuLS0tLS0tLS0tLS0tLS0tLSovXG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzIC51aS5ncmlkLnNlZ21lbnQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gIG1hcmdpbi1ib3R0b206IDAuM2VtO1xuICBtYXJnaW4tdG9wOiAwLjNlbTtcbn1cblxuYm9keS5zbGltICNwdnItdGlsZXMgLnVpLmRpdmlkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlcyAucHZyLXRpbGUgLmNvbHVtbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzIC5wdnItdGlsZSAuY29sdW1uIC5zdWItaGVhZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlcyAucHZyLXRpbGUgLmNvbHVtbiAuc3ViLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIG1hcmdpbi1sZWZ0OiAxLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzIC5wdnItdGlsZSAuY29sdW1uLnRlbi53aWRlIC5oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5ib2R5LnNsaW0gI3B2ci10aWxlcyAucHZyLXRpbGUgLmNvbHVtbi50ZW4ud2lkZSAuc3ViLWhlYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHkuc2xpbSAjcHZyLXRpbGVzIC5wdnItdGlsZSAuY29sdW1uLnRlbi53aWRlIC5zbGltLmRpdmlkZXIge1xuICBtYXJnaW46IDAuMXJlbSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keS5iZWVmeSAjcHZyLXRpbGVzIC5wdnItdGlsZSAuY29sdW1uIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAjbWFpbi1tZW51IC5pdGVtIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxuXG4gIC5wdnItaGVhZGVyLnVpLnNlZ21lbnQgdGV4dGFyZWEge1xuICAgIG1hcmdpbjogMGVtIDBlbTtcbiAgfVxuXG4gIC5wdnItaGVhZGVyLnVpLmdyaWQuc2VnbWVudCAuY29sdW1uIHtcbiAgICB3aWR0aDogOTglICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC51aS5oZWxwIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gIH1cbn1cblxuLypAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBodG1sLFxuICBib2R5IHtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG5cbiAgI25hdi13cmFwIHtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAjbmF2LXdyYXAgI3RvcC1uYXYgLml0ZW06bm90KC5icmFuZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gICNuYXYtd3JhcCAjbmF2LXRpbGVzLXdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICB9XG5cbiAgI25hdi13cmFwICNuYXYtdGlsZXMtd3JhcCAjbWFpbi1tZW51IC5pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgI3B2ci1wYWcge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgI3B2ci10aWxlcyB7XG4gICAgcGFkZGluZzogMCAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjcHZyLXRpbGVzIC5wdnItdGlsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gICNwdnItdGlsZXMgLnB2ci10aWxlIC5jb2x1bW4ge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gICNwdnItdGlsZXMgLnB2ci10aWxlIC5jb2x1bW4uc2l4LndpZGUge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICNwdnItdGlsZXMgLnB2ci10aWxlIC51aS5kaXZpZGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgfVxuXG4gICNwdnItd3JhcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNXJlbTtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjcHZyLXdyYXAgLm1vZGFsLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gIH1cblxuICAjcHZyLXdyYXAgLm1vZGFsLWNsb3NlOmhvdmVyOmJlZm9yZSB7XG4gICAgY29sb3I6ICM0YzRmNTI7XG4gIH1cblxuICAjc2lkZWJhciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG5cbiAgLnNpZGViYXItdGFiIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5wdXNoZXIgLmNvbHVtbi5zY3JvbGx5IHtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG5cbiAgI3Njcm9sbFdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59Ki9cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgI3B2ci1wYWcge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBCdXR0b25cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3Jzc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBCdXR0b25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLnVpLmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMC43ODU3MWVtIDEuNWVtIDAuNzg1NzFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldCwgMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLCBjb2xvciAwLjFzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCBiYWNrZ3JvdW5kIDAuMXMgZWFzZTtcbiAgd2lsbC1jaGFuZ2U6ICcnO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6ICcnO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuYnV0dG9uOmhvdmVyIC5pY29uIHtcbiAgb3BhY2l0eTogMC44NTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAnJztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogJycgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50IGluc2V0LCAwcHggMHB4IDFweCByZ2JhKDgxLCAxNjcsIDIzMiwgMC44KSBpbnNldCwgMHB4IDBweCAzcHggMnB4IHJnYmEoODEsIDE2NywgMjMyLCAwLjgpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b246Zm9jdXMgLmljb24ge1xuICBvcGFjaXR5OiAwLjg1O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3duXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uOmFjdGl2ZSxcbi51aS5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICcnO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQsIDBweCAxcHggNHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMGQwZDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLmFjdGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDBkMGQwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDBkMGQwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3BlY2lmaWNpdHkgaGFjayAqL1xuXG4udWkubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcubG9hZGluZy5sb2FkaW5nLmxvYWRpbmcuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyLCBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhciwgb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi51aS5sb2FkaW5nLmJ1dHRvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0wLjY0Mjg1ZW0gMGVtIDBlbSAtMC42NDI4NWVtO1xuICB3aWR0aDogMS4yODU3ZW07XG4gIGhlaWdodDogMS4yODU3ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4udWkubG9hZGluZy5idXR0b246YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0wLjY0Mjg1ZW0gMGVtIDBlbSAtMC42NDI4NWVtO1xuICB3aWR0aDogMS4yODU3ZW07XG4gIGhlaWdodDogMS4yODU3ZW07XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBidXR0b24tc3BpbiAwLjZzIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBidXR0b24tc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5sYWJlbGVkLmljb24ubG9hZGluZy5idXR0b24gLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJ1dHRvbi1zcGluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJ1dHRvbi1zcGluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4udWkuYmFzaWMubG9hZGluZy5idXR0b246bm90KC5pbnZlcnRlZCk6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi51aS5iYXNpYy5sb2FkaW5nLmJ1dHRvbjpub3QoLmludmVydGVkKTphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNhYWFhYWE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbnMgLmRpc2FibGVkLmJ1dHRvbixcbi51aS5kaXNhYmxlZC5idXR0b24sXG4udWkuYnV0dG9uOmRpc2FibGVkLFxuLnVpLmRpc2FibGVkLmJ1dHRvbjpob3Zlcixcbi51aS5kaXNhYmxlZC5hY3RpdmUuYnV0dG9uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkZGRlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCkgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMC4zICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogQmFzaWMgR3JvdXAgV2l0aCBEaXNhYmxlZCAqL1xuXG4udWkuYmFzaWMuYnV0dG9ucyAudWkuZGlzYWJsZWQuYnV0dG9uIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM5LCA0MSwgNDMsIDAuNSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFuaW1hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hbmltYXRlZC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmctcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC5jb250ZW50IHtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbn1cblxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEhvcml6b250YWwgKi9cblxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAudmlzaWJsZS5jb250ZW50LFxuLnVpLmFuaW1hdGVkLmJ1dHRvbiAuaGlkZGVuLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IHJpZ2h0IDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogcmlnaHQgMC4zcyBlYXNlIDBzO1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMCU7XG59XG5cbi51aS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xufVxuXG4udWkuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMjAwJTtcbn1cblxuLnVpLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMCU7XG59XG5cbi8qIFZlcnRpY2FsICovXG5cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCxcbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi51aS52ZXJ0aWNhbC5hbmltYXRlZC5idXR0b24gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIHRvcDogLTUwJTtcbiAgbGVmdDogMCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4udWkudmVydGljYWwuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMCUpO1xuICByaWdodDogYXV0bztcbn1cblxuLnVpLnZlcnRpY2FsLmFuaW1hdGVkLmJ1dHRvbjpob3ZlciAuaGlkZGVuLmNvbnRlbnQge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEZhZGUgKi9cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQsXG4udWkuZmFkZS5hbmltYXRlZC5idXR0b24gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uIC5oaWRkZW4uY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC52aXNpYmxlLmNvbnRlbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cblxuLnVpLmZhZGUuYW5pbWF0ZWQuYnV0dG9uOmhvdmVyIC5oaWRkZW4uY29udGVudCB7XG4gIGxlZnQ6IDAlO1xuICByaWdodDogYXV0bztcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZmZmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwcHggMHB4IDBweCAtMnB4O1xufVxuXG4udWkuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmludmVydGVkLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMHB4IDBweCAtMnB4IDBweDtcbn1cblxuLnVpLmludmVydGVkLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVpLmludmVydGVkLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZmZmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFNvY2lhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGYWNlYm9vayAqL1xuXG4udWkuZmFjZWJvb2suYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTc5ZDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmZhY2Vib29rLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjVkYTg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmZhY2Vib29rLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE0OTgzO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFR3aXR0ZXIgKi9cblxuLnVpLnR3aXR0ZXIuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwOTJjYztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnR3aXR0ZXIuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjOTljZjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudHdpdHRlci5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxODBiNztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBHb29nbGUgUGx1cyAqL1xuXG4udWkuZ29vZ2xlLnBsdXMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzNDgzNjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmdvb2dsZS5wbHVzLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNjUzNDM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmdvb2dsZS5wbHVzLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmMzYTI5O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIExpbmtlZCBJbiAqL1xuXG4udWkubGlua2VkaW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmODhiZTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkubGlua2VkaW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTFjYjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkubGlua2VkaW4uYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTcyOWY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogWW91VHViZSAqL1xuXG4udWkueW91dHViZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkueW91dHViZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGExYTIwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS55b3V0dWJlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWMxNDE5O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEluc3RhZ3JhbSAqL1xuXG4udWkuaW5zdGFncmFtLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0OTc2OWM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5pbnN0YWdyYW0uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRlN2VhNjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW5zdGFncmFtLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2U2NDg0O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFBpbnRlcmVzdCAqL1xuXG4udWkucGludGVyZXN0LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGFjZWQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5waW50ZXJlc3QuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjdmYztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucGludGVyZXN0LmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5MmM5O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFZLICovXG5cbi51aS52ay5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEQ3MTk4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS52ay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTI3OWEyO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLnZrLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE1ZjgwO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9uID4gLmljb24ge1xuICBvcGFjaXR5OiAwLjg7XG4gIG1hcmdpbjogMGVtIDAuNGVtIDBlbSAtMC4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGNvbG9yOiAnJztcbn1cblxuLnVpLmJ1dHRvbiA+IC5yaWdodC5pY29uIHtcbiAgbWFyZ2luOiAwZW0gLTAuMmVtIDBlbSAwLjRlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmJ1dHRvbnMsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmJ1dHRvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0uYnV0dG9ucyxcbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmJ1dHRvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3QuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmNvbXBhY3QuYnV0dG9uIHtcbiAgcGFkZGluZzogMC41ODkyODI1ZW0gMS4xMjVlbSAwLjU4OTI4MjVlbTtcbn1cblxuLnVpLmNvbXBhY3QuaWNvbi5idXR0b25zIC5idXR0b24sXG4udWkuY29tcGFjdC5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNTg5MjgyNWVtIDAuNTg5MjgyNWVtIDAuNTg5MjgyNWVtO1xufVxuXG4udWkuY29tcGFjdC5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmNvbXBhY3QubGFiZWxlZC5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNTg5MjgyNWVtIDMuNjk2NDJlbSAwLjU4OTI4MjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5taW5pLmJ1dHRvbnMgLm9yLFxuLnVpLm1pbmkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjcxNDI4NTcxcmVtO1xufVxuXG4udWkudGlueS5idXR0b25zIC5idXR0b24sXG4udWkudGlueS5idXR0b25zIC5vcixcbi51aS50aW55LmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNDI4NnJlbTtcbn1cblxuLnVpLnNtYWxsLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5zbWFsbC5idXR0b25zIC5vcixcbi51aS5zbWFsbC5idXR0b24ge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5idXR0b25zIC5idXR0b24sXG4udWkuYnV0dG9ucyAub3IsXG4udWkuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmxhcmdlLmJ1dHRvbnMgLm9yLFxuLnVpLmxhcmdlLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmJpZy5idXR0b25zIC5idXR0b24sXG4udWkuYmlnLmJ1dHRvbnMgLm9yLFxuLnVpLmJpZy5idXR0b24ge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5odWdlLmJ1dHRvbnMgLm9yLFxuLnVpLmh1Z2UuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjQyODU3MTQzcmVtO1xufVxuXG4udWkubWFzc2l2ZS5idXR0b25zIC5idXR0b24sXG4udWkubWFzc2l2ZS5idXR0b25zIC5vcixcbi51aS5tYXNzaXZlLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEljb24gT25seVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmljb24uYnV0dG9uIHtcbiAgcGFkZGluZzogMC43ODU3MWVtIDAuNzg1NzFlbSAwLjc4NTcxZW07XG59XG5cbi51aS5pY29uLmJ1dHRvbnMgLmJ1dHRvbiA+IC5pY29uLFxuLnVpLmljb24uYnV0dG9uID4gLmljb24ge1xuICBvcGFjaXR5OiAwLjk7XG4gIG1hcmdpbjogMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQmFzaWNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQsIDBweCAwcHggMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmOCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpIGluc2V0LCAwcHggMXB4IDRweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogJycgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogcmdiYSgzOSwgNDEsIDQzLCAwLjMpO1xufVxuXG4udWkuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5hY3RpdmUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLyogVmVydGljYWwgKi9cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldCBpbnNldDtcbn1cblxuLnVpLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSBpbnNldCwgMHB4IDFweCA0cHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQgaW5zZXQ7XG59XG5cbi51aS5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogcmdiYSgzOSwgNDEsIDQzLCAwLjMpIGluc2V0O1xufVxuXG4vKiBTdGFuZGFyZCBCYXNpYyBJbnZlcnRlZCAqL1xuXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmFmYWZhICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmludmVydGVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246aG92ZXIge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuaW52ZXJ0ZWQuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIGluc2V0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLmludmVydGVkLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykgaW5zZXQ7XG59XG5cbi51aS5iYXNpYy5pbnZlcnRlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmludmVydGVkLmFjdGl2ZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDcpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZmZmZiBpbnNldCAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNpYyBHcm91cCAqL1xuXG4udWkuYmFzaWMuYnV0dG9ucyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuYmFzaWMudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi51aS5iYXNpYy52ZXJ0aWNhbC5idXR0b25zIC5idXR0b24ge1xuICBib3JkZXItbGVmdC13aWR0aDogMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLnVpLmJhc2ljLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBMYWJlbGVkIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogNC4wNzE0MmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb24sXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMi41NzE0MmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICcnO1xuICBib3JkZXItcmFkaXVzOiAwIDBweCAwcHggMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJveC1zaGFkb3c6IC0xcHggMHB4IDBweCAwcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG59XG5cbi8qIExlZnQgTGFiZWxlZCAqL1xuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb24sXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uIHtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBlbTtcbn1cblxuLyogUmlnaHQgTGFiZWxlZCAqL1xuXG4udWlbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuMDcxNDJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtICFpbXBvcnRhbnQ7XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmljb24uYnV0dG9uID4gLmljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMCAwIDBlbTtcbiAgYm94LXNoYWRvdzogMXB4IDBweCAwcHggMHB4IHRyYW5zcGFyZW50IGluc2V0O1xufVxuXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb246YmVmb3JlLFxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b24gPiAuaWNvbjpiZWZvcmUsXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbnMgPiAuYnV0dG9uID4gLmljb246YWZ0ZXIsXG4udWkubGFiZWxlZC5pY29uLmJ1dHRvbiA+IC5pY29uOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0wLjVlbTtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b24gPiAuaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQgPiAuaWNvbiB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi51aS5sYWJlbGVkLmljb24uYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQgPiAuaWNvbiB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnVpLnZlcnRpY2FsLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQgPiAuaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbn1cblxuLnVpLnZlcnRpY2FsLmxhYmVsZWQuaWNvbi5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCA+IC5pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4vKiBGbHVpZCBMYWJlbGVkICovXG5cbi51aS5mbHVpZFtjbGFzcyo9XCJsZWZ0IGxhYmVsZWRcIl0uaWNvbi5idXR0b24sXG4udWkuZmx1aWRbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pY29uLmJ1dHRvbiB7XG4gIHBhZGRpbmctbGVmdDogMS41ZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMS41ZW0gIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUb2dnbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRvZ2dsZSAoTW9kaWZpZXMgYWN0aXZlIHN0YXRlIHRvIGdpdmUgYWZmb3JkYW5jZXMpICovXG5cbi51aS50b2dnbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5idXR0b25zIC5idXR0b24udG9nZ2xlLmFjdGl2ZSxcbi51aS5idXR0b24udG9nZ2xlLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZGI0NzUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbi50b2dnbGUuYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMwYzA3ZCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2lyY3VsYXIuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMTBlbTtcbn1cblxuLnVpLmNpcmN1bGFyLmJ1dHRvbiA+IC5pY29uIHtcbiAgd2lkdGg6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQuYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi51aS5hdHRhY2hlZC50b3AuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS5hdHRhY2hlZC5ib3R0b20uYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwIDA7XG59XG5cbi51aS5hdHRhY2hlZC5sZWZ0LmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMGVtIDBlbSAwO1xufVxuXG4udWkuYXR0YWNoZWQucmlnaHQuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMCAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgT3IgQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYnV0dG9ucyAub3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMC4zZW07XG4gIGhlaWdodDogMi41NzE0MmVtO1xuICB6LWluZGV4OiAzO1xufVxuXG4udWkuYnV0dG9ucyAub3I6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgY29udGVudDogJ29yJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjg5Mjg1NWVtO1xuICBtYXJnaW4tbGVmdDogLTAuODkyODU1ZW07XG4gIHdpZHRoOiAxLjc4NTcxZW07XG4gIGhlaWdodDogMS43ODU3MWVtO1xuICBsaW5lLWhlaWdodDogMS43ODU3MWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQgaW5zZXQ7XG59XG5cbi51aS5idXR0b25zIC5vcltkYXRhLXRleHRdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbn1cblxuLyogRmx1aWQgT3IgKi9cblxuLnVpLmZsdWlkLmJ1dHRvbnMgLm9yIHtcbiAgd2lkdGg6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuZmx1aWQuYnV0dG9ucyAub3I6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBQbHVyYWwgQXR0YWNoZWQgKi9cblxuLmF0dGFjaGVkLnVpLmJ1dHRvbnMge1xuICBtYXJnaW46IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwZW0gMGVtO1xufVxuXG4uYXR0YWNoZWQudWkuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi5hdHRhY2hlZC51aS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDBlbSAwZW07XG59XG5cbi5hdHRhY2hlZC51aS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDBlbTtcbn1cblxuLyogVG9wIFNpZGUgKi9cblxuW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS51aS5idXR0b25zIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbltjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0udWkuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwZW0gMGVtIDBlbTtcbn1cblxuW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS51aS5idXR0b25zIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDBlbSAwZW07XG59XG5cbi8qIEJvdHRvbSBTaWRlICovXG5cbltjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udWkuYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG5bY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLnVpLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDA7XG59XG5cbltjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0udWkuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMGVtO1xufVxuXG4vKiBMZWZ0IFNpZGUgKi9cblxuW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0udWkuYnV0dG9ucyB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwZW0gMCAwIDBlbTtcbn1cblxuW2NsYXNzKj1cImxlZnQgYXR0YWNoZWRcIl0udWkuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDBlbSAwZW07XG59XG5cbltjbGFzcyo9XCJsZWZ0IGF0dGFjaGVkXCJdLnVpLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwZW07XG59XG5cbi8qIFJpZ2h0IFNpZGUgKi9cblxuW2NsYXNzKj1cInJpZ2h0IGF0dGFjaGVkXCJdLnVpLmJ1dHRvbnMsXG5bY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0udWkuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDBlbSAwZW0gMDtcbn1cblxuW2NsYXNzKj1cInJpZ2h0IGF0dGFjaGVkXCJdLnVpLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDBlbSAwZW0gMGVtO1xufVxuXG5bY2xhc3MqPVwicmlnaHQgYXR0YWNoZWRcIl0udWkuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwZW0gMDtcbn1cblxuLyogRmx1aWQgKi9cblxuLnVpLmZsdWlkLmJ1dHRvbnMsXG4udWkuYnV0dG9uLmZsdWlkLFxuLnVpLmZsdWlkLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzMi5idXR0b25zLFxuLnVpLnR3by5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5cXDMyLmJ1dHRvbnMgPiAuYnV0dG9uLFxuLnVpLnR3by5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS5cXDMzLmJ1dHRvbnMsXG4udWkudGhyZWUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzMy5idXR0b25zID4gLmJ1dHRvbixcbi51aS50aHJlZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4udWkuXFwzNC5idXR0b25zLFxuLnVpLmZvdXIuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzNC5idXR0b25zID4gLmJ1dHRvbixcbi51aS5mb3VyLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLlxcMzUuYnV0dG9ucyxcbi51aS5maXZlLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLlxcMzUuYnV0dG9ucyA+IC5idXR0b24sXG4udWkuZml2ZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aS5cXDM2LmJ1dHRvbnMsXG4udWkuc2l4LmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLlxcMzYuYnV0dG9ucyA+IC5idXR0b24sXG4udWkuc2l4LmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDE2LjY2NiU7XG59XG5cbi51aS5cXDM3LmJ1dHRvbnMsXG4udWkuc2V2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzNy5idXR0b25zID4gLmJ1dHRvbixcbi51aS5zZXZlbi5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxNC4yODUlO1xufVxuXG4udWkuXFwzOC5idXR0b25zLFxuLnVpLmVpZ2h0LmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLlxcMzguYnV0dG9ucyA+IC5idXR0b24sXG4udWkuZWlnaHQuYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTIuNTAwJTtcbn1cblxuLnVpLlxcMzkuYnV0dG9ucyxcbi51aS5uaW5lLmJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLlxcMzkuYnV0dG9ucyA+IC5idXR0b24sXG4udWkubmluZS5idXR0b25zID4gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMS4xMSU7XG59XG5cbi51aS5cXDMxXFwzMC5idXR0b25zLFxuLnVpLnRlbi5idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5cXDMxXFwzMC5idXR0b25zID4gLmJ1dHRvbixcbi51aS50ZW4uYnV0dG9ucyA+IC5idXR0b24ge1xuICB3aWR0aDogMTAlO1xufVxuXG4udWkuXFwzMVxcMzEuYnV0dG9ucyxcbi51aS5lbGV2ZW4uYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzMVxcMzEuYnV0dG9ucyA+IC5idXR0b24sXG4udWkuZWxldmVuLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDkuMDklO1xufVxuXG4udWkuXFwzMVxcMzIuYnV0dG9ucyxcbi51aS50d2VsdmUuYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuXFwzMVxcMzIuYnV0dG9ucyA+IC5idXR0b24sXG4udWkudHdlbHZlLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgd2lkdGg6IDguMzMzMyU7XG59XG5cbi8qIEZsdWlkIFZlcnRpY2FsIEJ1dHRvbnMgKi9cblxuLnVpLmZsdWlkLnZlcnRpY2FsLmJ1dHRvbnMsXG4udWkuZmx1aWQudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi51aS5cXDMyLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uLFxuLnVpLnR3by52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogNTAlO1xufVxuXG4udWkuXFwzMy52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbixcbi51aS50aHJlZS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMzMuMzMzJTtcbn1cblxuLnVpLlxcMzQudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24sXG4udWkuZm91ci52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMjUlO1xufVxuXG4udWkuXFwzNS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbixcbi51aS5maXZlLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAyMCU7XG59XG5cbi51aS5cXDM2LnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uLFxuLnVpLnNpeC52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogMTYuNjY2JTtcbn1cblxuLnVpLlxcMzcudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24sXG4udWkuc2V2ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDE0LjI4NSU7XG59XG5cbi51aS5cXDM4LnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uLFxuLnVpLmVpZ2h0LnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAxMi41MDAlO1xufVxuXG4udWkuXFwzOS52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbixcbi51aS5uaW5lLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgaGVpZ2h0OiAxMS4xMSU7XG59XG5cbi51aS5cXDMxXFwzMC52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbixcbi51aS50ZW4udmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDEwJTtcbn1cblxuLnVpLlxcMzFcXDMxLnZlcnRpY2FsLmJ1dHRvbnMgPiAuYnV0dG9uLFxuLnVpLmVsZXZlbi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGhlaWdodDogOS4wOSU7XG59XG5cbi51aS5cXDMxXFwzMi52ZXJ0aWNhbC5idXR0b25zID4gLmJ1dHRvbixcbi51aS50d2VsdmUudmVydGljYWwuYnV0dG9ucyA+IC5idXR0b24ge1xuICBoZWlnaHQ6IDguMzMzMyU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLSBCbGFjayAtLS0qL1xuXG4udWkuYmxhY2suYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJsYWNrLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLmJsYWNrLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJsYWNrLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmxhY2suYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsYWNrLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmxhY2suYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkuYmxhY2suYWN0aXZlLmJ1dHRvbixcbi51aS5ibGFjay5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmMGYxMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5ibGFjay5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzFiMWMxZCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMwYTBhMGIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwYTBhMGIgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsYWNrLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMuYmxhY2suYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMGEwYTBiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMGEwYTBiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zID4gLmJhc2ljLmJsYWNrLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2Q0ZDRkNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzMzMzMzMyBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzMzMzMzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ibGFjay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyMTIxMjEgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjEyMTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsYWNrLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzMzMzMzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzMzMzMzIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibGFjay5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsYWNrLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmxhY2suYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMjEyMTIxIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEJsdWUgLS0tKi9cblxuLnVpLmJsdWUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJsdWUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkuYmx1ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1OGFjNjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuYmx1ZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJsdWUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzcwYTU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJsdWUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLmJsdWUuYWN0aXZlLmJ1dHRvbixcbi51aS5ibHVlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU3NmFjO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5ibHVlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM0NThhYzYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM0NThhYzYgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5ibHVlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzMzNzBhNSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzMzNzBhNSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuYmx1ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLmJsdWUuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzM3MGE1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzM3MGE1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zID4gLmJhc2ljLmJsdWUuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzU0YzhmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzU0YzhmZjtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmJsdWUuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NGM4ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0YzhmZjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmx1ZS5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM1NGM4ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0YzhmZjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMzMGJkZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMwYmRmZjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibHVlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNTRjOGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRjOGZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNTRjOGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRjOGZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuYmx1ZS5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmJsdWUuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzBiZGZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTRjOGZmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEdyZWVuIC0tLSovXG5cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkuZ3JlZW4uYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5ncmVlbi5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuZ3JlZW4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMwYzA3ZDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5ncmVlbi5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI2OTc2MjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5ncmVlbi5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5ncmVlbi5hY3RpdmUuYnV0dG9uLFxuLnVpLmdyZWVuLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhMDY4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMzBjMDdkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzBjMDdkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5ncmVlbi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLmdyZWVuLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzI2OTc2MiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzI2OTc2MiAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5ncmVlbi5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMyNjk3NjIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMyNjk3NjIgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnMgPiAuYmFzaWMuZ3JlZW4uYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjY2JlZGRkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjY2JlZGRkO1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjY2JlZGRkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYmVkZGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjYmVkZGQgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NiZWRkZDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLmdyZWVuLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2IwZTRjYyBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBlNGNjO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cblxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5ncmVlbi5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjYmVkZGQgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjYmVkZGQgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjYmVkZGQgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjYmVkZGQgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5ncmVlbi5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNiMGU0Y2MgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjYmVkZGQgIWltcG9ydGFudDtcbn1cblxuLyotLS0gT3JhbmdlIC0tLSovXG5cbi51aS5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLm9yYW5nZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA3YjUzO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi51aS5vcmFuZ2UuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLm9yYW5nZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTI4NTYwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5vcmFuZ2UuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYjY0MzU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLm9yYW5nZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLm9yYW5nZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5vcmFuZ2UuYWN0aXZlLmJ1dHRvbixcbi51aS5vcmFuZ2UuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzZhM2Q7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMub3JhbmdlLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZTI4NTYwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZTI4NTYwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZGI2NDM1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZGI2NDM1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5vcmFuZ2UuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy5vcmFuZ2UuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZGI2NDM1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZGI2NDM1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zID4gLmJhc2ljLm9yYW5nZS5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTJweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmODUxYiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmODUxYjtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY4NTFiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjg1MWI7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmODUxYiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY4NTFiO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmNjczMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2NzMwMDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLm9yYW5nZS5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY4NTFiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4NTFiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY4NTFiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4NTFiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5vcmFuZ2UuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZjY3MzAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4NTFiICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFBpbmsgLS0tKi9cblxuLnVpLnBpbmsuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnBpbmsuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NDk5YTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkucGluay5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjNTZhMTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucGluay5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnBpbmsuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjJjOGE7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnBpbmsuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnBpbmsuYWN0aXZlLmJ1dHRvbixcbi51aS5waW5rLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDUzNDhlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5waW5rLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkYzU2YTEgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNkYzU2YTEgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy5waW5rLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2QyMmM4YSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2QyMmM4YSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucGluay5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLnBpbmsuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZDIyYzhhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZDIyYzhhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zID4gLmJhc2ljLnBpbmsuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmOGVkZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmOGVkZjtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnBpbmsuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjhlZGYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGVkZjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucGluay5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjhlZGYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGVkZjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjZhZDUgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNmFkNTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5waW5rLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY4ZWRmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4ZWRmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY4ZWRmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4ZWRmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucGluay5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnBpbmsuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY2YWQ1IGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY4ZWRmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFB1cnBsZSAtLS0qL1xuXG4udWkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5wdXJwbGUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NGY4YTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkucHVycGxlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5wdXJwbGUuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjNTU5NDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkucHVycGxlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDg0MjczO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5wdXJwbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5wdXJwbGUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkucHVycGxlLmFjdGl2ZS5idXR0b24sXG4udWkucHVycGxlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM0NjdhO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEJhc2ljICovXG5cbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnB1cnBsZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmJhc2ljLnB1cnBsZS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzVjNTU5NCBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzVjNTU5NCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzQ4NDI3MyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzQ4NDI3MyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucHVycGxlLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMucHVycGxlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzQ4NDI3MyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzQ4NDI3MyAhaW1wb3J0YW50O1xufVxuXG4udWkuYnV0dG9ucyA+IC5iYXNpYy5wdXJwbGUuYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZGM2ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjZGM2ZmY7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2NkYzZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RjNmZmO1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnB1cnBsZS5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNjZGM2ZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NkYzZmZjtcbiAgY29sb3I6ICMxYjFjMWQ7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjYWVhMmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZWEyZmY7XG4gIGNvbG9yOiAjMWIxYzFkO1xufVxuXG4vKiBJbnZlcnRlZCBCYXNpYyAqL1xuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnB1cnBsZS5iYXNpYy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5wdXJwbGUuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnB1cnBsZS5iYXNpYy5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2NkYzZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkYzZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2NkYzZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkYzZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLmJhc2ljLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2FlYTJmZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkYzZmZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBSZWQgLS0tKi9cblxuLnVpLnJlZC5idXR0b25zIC5idXR0b24sXG4udWkucmVkLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzE4MWU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnJlZC5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnJlZC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkucmVkLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYTFhMjA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnJlZC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnJlZC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjMTQxOTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucmVkLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkucmVkLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b246YWN0aXZlLFxuLnVpLnJlZC5hY3RpdmUuYnV0dG9uLFxuLnVpLnJlZC5idXR0b24gLmFjdGl2ZS5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I1MTUxYjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBCYXNpYyAqL1xuXG4udWkuYmFzaWMucmVkLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5iYXNpYy5yZWQuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMucmVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5iYXNpYy5yZWQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNkYTFhMjAgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNkYTFhMjAgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnJlZC5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNhYzE0MTkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNhYzE0MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnJlZC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmJhc2ljLnJlZC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNhYzE0MTkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNhYzE0MTkgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnMgPiAuYmFzaWMucmVkLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY2OTVlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmY2OTVlO1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjY5NWUgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNjk1ZTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5yZWQuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmY2OTVlIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjY5NWU7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmNDgzYSBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0ODNhO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cblxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbixcbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQucmVkLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjpob3Zlcixcbi51aS5pbnZlcnRlZC5yZWQuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjY5NWUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZjY5NWUgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5hY3RpdmUuYnV0dG9uLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjY5NWUgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZjY5NWUgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnJlZC5idXR0b25zIC5iYXNpYy5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnJlZC5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmZjQ4M2EgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZjY5NWUgIWltcG9ydGFudDtcbn1cblxuLyotLS0gVGVhbCAtLS0qL1xuXG4udWkudGVhbC5idXR0b25zIC5idXR0b24sXG4udWkudGVhbC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNWFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi51aS50ZWFsLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkudGVhbC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkudGVhbC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjNGJjO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS50ZWFsLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkudGVhbC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTE4YjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkudGVhbC5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbjphY3RpdmUsXG4udWkudGVhbC5hY3RpdmUuYnV0dG9uLFxuLnVpLnRlYWwuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDljOTU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmJhc2ljLnRlYWwuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KSAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMudGVhbC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzAwYzRiYyBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwYzRiYyAhaW1wb3J0YW50O1xufVxuXG4udWkuYmFzaWMudGVhbC5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmJhc2ljLnRlYWwuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjMDA5MThiIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDA5MThiICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy50ZWFsLmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuYmFzaWMudGVhbC5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMwMDkxOGIgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDkxOGIgIWltcG9ydGFudDtcbn1cblxuLnVpLmJ1dHRvbnMgPiAuYmFzaWMudGVhbC5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTJweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjNmRmZmZmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNmRmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQudGVhbC5idXR0b246aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzZkZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmRmZmZmO1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC50ZWFsLmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzZkZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmRmZmZmO1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzQ5ZmZmZiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDlmZmZmO1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLyogSW52ZXJ0ZWQgQmFzaWMgKi9cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYmFzaWMuYnV0dG9uLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM2ZGZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2ZGZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJhc2ljLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5hY3RpdmUuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM2ZGZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2ZGZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC50ZWFsLmJ1dHRvbnMgLmJhc2ljLmJ1dHRvbjphY3RpdmUsXG4udWkuaW52ZXJ0ZWQudGVhbC5iYXNpYy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICM0OWZmZmYgaW5zZXQgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2ZGZmZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0gWWVsbG93IC0tLSovXG5cbi51aS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnllbGxvdy5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjNjFmO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi51aS55ZWxsb3cuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnllbGxvdy5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNjYTJkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGI0MGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnllbGxvdy5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnllbGxvdy5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS55ZWxsb3cuYWN0aXZlLmJ1dHRvbixcbi51aS55ZWxsb3cuYnV0dG9uIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWJjMGU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQmFzaWMgKi9cblxuLnVpLmJhc2ljLnllbGxvdy5idXR0b25zIC5idXR0b24sXG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnVpLmJhc2ljLnllbGxvdy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuYmFzaWMueWVsbG93LmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZjNjYTJkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZjNjYTJkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZTBiNDBkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZTBiNDBkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5iYXNpYy55ZWxsb3cuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5iYXNpYy55ZWxsb3cuYWN0aXZlLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZTBiNDBkIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZTBiNDBkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5idXR0b25zID4gLmJhc2ljLnllbGxvdy5idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTJweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b24sXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZTIxZiBpbnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZTIxZjtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZlMjFmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmUyMWY7XG4gIGNvbG9yOiAjMWIxYzFkO1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJ1dHRvbnMgLmFjdGl2ZS5idXR0b24sXG4udWkuaW52ZXJ0ZWQueWVsbG93LmFjdGl2ZS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2ZmZTIxZiBpbnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMjFmO1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b246YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNmYWRhMDAgaW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZGEwMDtcbiAgY29sb3I6ICMxYjFjMWQ7XG59XG5cbi8qIEludmVydGVkIEJhc2ljICovXG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5idXR0b24sXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLmludmVydGVkLnllbGxvdy5idXR0b25zIC5iYXNpYy5idXR0b246aG92ZXIsXG4udWkuaW52ZXJ0ZWQueWVsbG93LmJhc2ljLmJ1dHRvbjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZlMjFmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZlMjFmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYmFzaWMuYWN0aXZlLmJ1dHRvbixcbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYWN0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZlMjFmIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZlMjFmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYnV0dG9ucyAuYmFzaWMuYnV0dG9uOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC55ZWxsb3cuYmFzaWMuYnV0dG9uOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmFkYTAwIGluc2V0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZlMjFmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFByaW1hcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnByaW1hcnkuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWkucHJpbWFyeS5idXR0b24ge1xuICBib3gtc2hhZG93OiAwcHggMGVtIDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbn1cblxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnByaW1hcnkuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1OGFjNjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucHJpbWFyeS5idXR0b25zIC5idXR0b246YWN0aXZlLFxuLnVpLnByaW1hcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzcwYTU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnByaW1hcnkuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5wcmltYXJ5LmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU3NmFjO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgU2Vjb25kYXJ5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uLFxuLnVpLnNlY29uZGFyeS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi51aS5zZWNvbmRhcnkuYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyNDI1O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5zZWNvbmRhcnkuYnV0dG9ucyAuYnV0dG9uOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnNlY29uZGFyeS5hY3RpdmUuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmMGYxMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5wb3NpdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnBvc2l0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbjpob3Zlcixcbi51aS5wb3NpdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzBjMDdkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnBvc2l0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkucG9zaXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjk3NjIgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkucG9zaXRpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5wb3NpdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5wb3NpdGl2ZS5hY3RpdmUuYnV0dG9uLFxuLnVpLnBvc2l0aXZlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhMDY4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tXG4gICAgIE5lZ2F0aXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbixcbi51aS5uZWdhdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLm5lZ2F0aXZlLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYnV0dG9uOmhvdmVyLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbjpob3Zlcixcbi51aS5uZWdhdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmFjdGl2ZS5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGExYTIwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLm5lZ2F0aXZlLmJ1dHRvbnMgLmJ1dHRvbjphY3RpdmUsXG4udWkubmVnYXRpdmUuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYzE0MTkgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4udWkubmVnYXRpdmUuYnV0dG9ucyAuYWN0aXZlLmJ1dHRvbixcbi51aS5uZWdhdGl2ZS5idXR0b25zIC5hY3RpdmUuYnV0dG9uOmFjdGl2ZSxcbi51aS5uZWdhdGl2ZS5hY3RpdmUuYnV0dG9uLFxuLnVpLm5lZ2F0aXZlLmJ1dHRvbiAuYWN0aXZlLmJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjUxNTFiO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5idXR0b25zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbn1cblxuLnVpLmJ1dHRvbnMgPiAuYnV0dG9uOmhvdmVyLFxuLnVpLmJ1dHRvbnMgPiAuYWN0aXZlLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVpLmJ1dHRvbnM6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkuYnV0dG9uczpub3QoLmJhc2ljKTpub3QoLmludmVydGVkKSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5idXR0b25zID4gLnVpLmJ1dHRvbjpub3QoLmJhc2ljKTpub3QoLmludmVydGVkKSxcbi51aS5idXR0b25zOm5vdCguYmFzaWMpOm5vdCguaW52ZXJ0ZWQpID4gLmJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudCBpbnNldCwgMHB4IDBlbSAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQ7XG59XG5cbi51aS5idXR0b25zIC5idXR0b24ge1xuICBtYXJnaW46IDBlbTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgbWFyZ2luOiAwcHggMHB4IDBweCAwcHg7XG59XG5cbi51aS5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4udWkuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi8qIFZlcnRpY2FsICBTdHlsZSAqL1xuXG4udWkudmVydGljYWwuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMHB4IDBweCAwcHggMHB4O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmZpcnN0LWNoaWxkLFxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLm1pbmkuYnV0dG9uOmZpcnN0LWNoaWxkLFxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLnRpbnkuYnV0dG9uOmZpcnN0LWNoaWxkLFxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLnNtYWxsLmJ1dHRvbjpmaXJzdC1jaGlsZCxcbi51aS52ZXJ0aWNhbC5idXR0b25zIC5tYXNzaXZlLmJ1dHRvbjpmaXJzdC1jaGlsZCxcbi51aS52ZXJ0aWNhbC5idXR0b25zIC5odWdlLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwcHggMHB4O1xufVxuXG4udWkudmVydGljYWwuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQsXG4udWkudmVydGljYWwuYnV0dG9ucyAubWluaS5idXR0b246bGFzdC1jaGlsZCxcbi51aS52ZXJ0aWNhbC5idXR0b25zIC50aW55LmJ1dHRvbjpsYXN0LWNoaWxkLFxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLnNtYWxsLmJ1dHRvbjpsYXN0LWNoaWxkLFxuLnVpLnZlcnRpY2FsLmJ1dHRvbnMgLm1hc3NpdmUuYnV0dG9uOmxhc3QtY2hpbGQsXG4udWkudmVydGljYWwuYnV0dG9ucyAuaHVnZS5idXR0b246bGFzdC1jaGlsZCxcbi51aS52ZXJ0aWNhbC5idXR0b25zIC5naWdhbnRpYy5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwIDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmNhdXRpb24uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLmZpbHRlci5idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMC40NWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41NWVtO1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIERpdmlkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIERpdmlkZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5kaXZpZGVyIHtcbiAgbWFyZ2luOiAxcmVtIDByZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDBlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRlcjpub3QoLnZlcnRpY2FsKTpub3QoLmhvcml6b250YWwpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZ3JpZCA+IC51aS5kaXZpZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaG9yaXpvbnRhbC5kaXZpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogJyc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YmVmb3JlLFxuLnVpLmhvcml6b250YWwuZGl2aWRlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHotaW5kZXg6IDM7XG4gIHdpZHRoOiA1MCU7XG4gIHRvcDogNTAlO1xuICBoZWlnaHQ6IDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnVpLmhvcml6b250YWwuZGl2aWRlcjpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogLXdlYmtpdC1jYWxjKC01MCUgLSAgMWVtICk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC01MCUgLSAgMWVtICk7XG59XG5cbi51aS5ob3Jpem9udGFsLmRpdmlkZXI6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IDByZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogNTAlO1xuICBsaW5lLWhlaWdodDogMGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIGNvbnRlbnQ6ICcnO1xuICB6LWluZGV4OiAzO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogLXdlYmtpdC1jYWxjKDEwMCUgLSAgMXJlbSApO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtICAxcmVtICk7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gIHRvcDogLTEwMCU7XG59XG5cbi51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDBweDtcbn1cblxuLyogSW5zaWRlIGdyaWQgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxcmVtIDByZW07XG4gICAgbGVmdDogNTAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSxcbiAgLnVpLnN0YWNrYWJsZS5ncmlkIC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyLFxuICAudWkuZ3JpZCAuc3RhY2thYmxlLnJvdyAudWkudmVydGljYWwuZGl2aWRlcjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgY29udGVudDogJyc7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIGhlaWdodDogMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuZ3JpZCAudWkudmVydGljYWwuZGl2aWRlcjpiZWZvcmUsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmJlZm9yZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC01MSU7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmdyaWQgLnVpLnZlcnRpY2FsLmRpdmlkZXI6YWZ0ZXIsXG4gIC51aS5ncmlkIC5zdGFja2FibGUucm93IC51aS52ZXJ0aWNhbC5kaXZpZGVyOmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVyID4gLmljb24ge1xuICBtYXJnaW46IDByZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEhpZGRlblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhpZGRlbi5kaXZpZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVyLmludmVydGVkLFxuLnVpLnZlcnRpY2FsLmludmVydGVkLmRpdmlkZXIsXG4udWkuaG9yaXpvbnRhbC5pbnZlcnRlZC5kaXZpZGVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5kaXZpZGVyLmludmVydGVkLFxuLnVpLmRpdmlkZXIuaW52ZXJ0ZWQ6YWZ0ZXIsXG4udWkuZGl2aWRlci5pbnZlcnRlZDpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuZGl2aWRlciB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2xlYXJpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jbGVhcmluZy5kaXZpZGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VjdGlvbi5kaXZpZGVyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZXIge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBGbGFnXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgRmxhZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaS5mbGFnOm5vdCguaWNvbikge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxMXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogU3ByaXRlICovXG5cbmkuZmxhZzpub3QoLmljb24pOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQ6IHVybChcInRoZW1lcy9kZWZhdWx0L2Fzc2V0cy9pbWFnZXMvZmxhZ3MucG5nXCIpIG5vLXJlcGVhdCAwcHggMHB4O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxMXB4O1xufVxuXG4vKiBGbGFnIFNwcml0ZSBCYXNlZCBPbiBodHRwOi8vd3d3LmZhbWZhbWZhbS5jb20vbGFiL2ljb25zL2ZsYWdzLyAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5pLmZsYWcuYWQ6YmVmb3JlLFxuaS5mbGFnLmFuZG9ycmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDBweDtcbn1cblxuaS5mbGFnLmFlOmJlZm9yZSxcbmkuZmxhZy51bml0ZWQuYXJhYi5lbWlyYXRlczpiZWZvcmUsXG5pLmZsYWcudWFlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjZweDtcbn1cblxuaS5mbGFnLmFmOmJlZm9yZSxcbmkuZmxhZy5hZmdoYW5pc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTUycHg7XG59XG5cbmkuZmxhZy5hZzpiZWZvcmUsXG5pLmZsYWcuYW50aWd1YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTc4cHg7XG59XG5cbmkuZmxhZy5haTpiZWZvcmUsXG5pLmZsYWcuYW5ndWlsbGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMDRweDtcbn1cblxuaS5mbGFnLmFsOmJlZm9yZSxcbmkuZmxhZy5hbGJhbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTMwcHg7XG59XG5cbmkuZmxhZy5hbTpiZWZvcmUsXG5pLmZsYWcuYXJtZW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE1NnB4O1xufVxuXG5pLmZsYWcuYW46YmVmb3JlLFxuaS5mbGFnLm5ldGhlcmxhbmRzLmFudGlsbGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTgycHg7XG59XG5cbmkuZmxhZy5hbzpiZWZvcmUsXG5pLmZsYWcuYW5nb2xhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjA4cHg7XG59XG5cbmkuZmxhZy5hcjpiZWZvcmUsXG5pLmZsYWcuYXJnZW50aW5hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjM0cHg7XG59XG5cbmkuZmxhZy5hczpiZWZvcmUsXG5pLmZsYWcuYW1lcmljYW4uc2Ftb2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yNjBweDtcbn1cblxuaS5mbGFnLmF0OmJlZm9yZSxcbmkuZmxhZy5hdXN0cmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjg2cHg7XG59XG5cbmkuZmxhZy5hdTpiZWZvcmUsXG5pLmZsYWcuYXVzdHJhbGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMzEycHg7XG59XG5cbmkuZmxhZy5hdzpiZWZvcmUsXG5pLmZsYWcuYXJ1YmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0zMzhweDtcbn1cblxuaS5mbGFnLmF4OmJlZm9yZSxcbmkuZmxhZy5hbGFuZC5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMzY0cHg7XG59XG5cbmkuZmxhZy5hejpiZWZvcmUsXG5pLmZsYWcuYXplcmJhaWphbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTM5MHB4O1xufVxuXG5pLmZsYWcuYmE6YmVmb3JlLFxuaS5mbGFnLmJvc25pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTQxNnB4O1xufVxuXG5pLmZsYWcuYmI6YmVmb3JlLFxuaS5mbGFnLmJhcmJhZG9zOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNDQycHg7XG59XG5cbmkuZmxhZy5iZDpiZWZvcmUsXG5pLmZsYWcuYmFuZ2xhZGVzaDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTQ2OHB4O1xufVxuXG5pLmZsYWcuYmU6YmVmb3JlLFxuaS5mbGFnLmJlbGdpdW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC00OTRweDtcbn1cblxuaS5mbGFnLmJmOmJlZm9yZSxcbmkuZmxhZy5idXJraW5hLmZhc286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC01MjBweDtcbn1cblxuaS5mbGFnLmJnOmJlZm9yZSxcbmkuZmxhZy5idWxnYXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTU0NnB4O1xufVxuXG5pLmZsYWcuYmg6YmVmb3JlLFxuaS5mbGFnLmJhaHJhaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC01NzJweDtcbn1cblxuaS5mbGFnLmJpOmJlZm9yZSxcbmkuZmxhZy5idXJ1bmRpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNTk4cHg7XG59XG5cbmkuZmxhZy5iajpiZWZvcmUsXG5pLmZsYWcuYmVuaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC02MjRweDtcbn1cblxuaS5mbGFnLmJtOmJlZm9yZSxcbmkuZmxhZy5iZXJtdWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNjUwcHg7XG59XG5cbmkuZmxhZy5ibjpiZWZvcmUsXG5pLmZsYWcuYnJ1bmVpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtNjc2cHg7XG59XG5cbmkuZmxhZy5ibzpiZWZvcmUsXG5pLmZsYWcuYm9saXZpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTcwMnB4O1xufVxuXG5pLmZsYWcuYnI6YmVmb3JlLFxuaS5mbGFnLmJyYXppbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTcyOHB4O1xufVxuXG5pLmZsYWcuYnM6YmVmb3JlLFxuaS5mbGFnLmJhaGFtYXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC03NTRweDtcbn1cblxuaS5mbGFnLmJ0OmJlZm9yZSxcbmkuZmxhZy5iaHV0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC03ODBweDtcbn1cblxuaS5mbGFnLmJ2OmJlZm9yZSxcbmkuZmxhZy5ib3V2ZXQuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtODA2cHg7XG59XG5cbmkuZmxhZy5idzpiZWZvcmUsXG5pLmZsYWcuYm90c3dhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC04MzJweDtcbn1cblxuaS5mbGFnLmJ5OmJlZm9yZSxcbmkuZmxhZy5iZWxhcnVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtODU4cHg7XG59XG5cbmkuZmxhZy5iejpiZWZvcmUsXG5pLmZsYWcuYmVsaXplOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtODg0cHg7XG59XG5cbmkuZmxhZy5jYTpiZWZvcmUsXG5pLmZsYWcuY2FuYWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtOTEwcHg7XG59XG5cbmkuZmxhZy5jYzpiZWZvcmUsXG5pLmZsYWcuY29jb3MuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTk2MnB4O1xufVxuXG5pLmZsYWcuY2Q6YmVmb3JlLFxuaS5mbGFnLmNvbmdvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtOTg4cHg7XG59XG5cbmkuZmxhZy5jZjpiZWZvcmUsXG5pLmZsYWcuY2VudHJhbC5hZnJpY2FuLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTAxNHB4O1xufVxuXG5pLmZsYWcuY2c6YmVmb3JlLFxuaS5mbGFnLmNvbmdvLmJyYXp6YXZpbGxlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTA0MHB4O1xufVxuXG5pLmZsYWcuY2g6YmVmb3JlLFxuaS5mbGFnLnN3aXR6ZXJsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTA2NnB4O1xufVxuXG5pLmZsYWcuY2k6YmVmb3JlLFxuaS5mbGFnLmNvdGUuZGl2b2lyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwOTJweDtcbn1cblxuaS5mbGFnLmNrOmJlZm9yZSxcbmkuZmxhZy5jb29rLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMTE4cHg7XG59XG5cbmkuZmxhZy5jbDpiZWZvcmUsXG5pLmZsYWcuY2hpbGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMTQ0cHg7XG59XG5cbmkuZmxhZy5jbTpiZWZvcmUsXG5pLmZsYWcuY2FtZXJvb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMTcwcHg7XG59XG5cbmkuZmxhZy5jbjpiZWZvcmUsXG5pLmZsYWcuY2hpbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMTk2cHg7XG59XG5cbmkuZmxhZy5jbzpiZWZvcmUsXG5pLmZsYWcuY29sb21iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMjIycHg7XG59XG5cbmkuZmxhZy5jcjpiZWZvcmUsXG5pLmZsYWcuY29zdGEucmljYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEyNDhweDtcbn1cblxuaS5mbGFnLmNzOmJlZm9yZSxcbmkuZmxhZy5zZXJiaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMjc0cHg7XG59XG5cbmkuZmxhZy5jdTpiZWZvcmUsXG5pLmZsYWcuY3ViYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEzMDBweDtcbn1cblxuaS5mbGFnLmN2OmJlZm9yZSxcbmkuZmxhZy5jYXBlLnZlcmRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTMyNnB4O1xufVxuXG5pLmZsYWcuY3g6YmVmb3JlLFxuaS5mbGFnLmNocmlzdG1hcy5pc2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMzUycHg7XG59XG5cbmkuZmxhZy5jeTpiZWZvcmUsXG5pLmZsYWcuY3lwcnVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTM3OHB4O1xufVxuXG5pLmZsYWcuY3o6YmVmb3JlLFxuaS5mbGFnLmN6ZWNoLnJlcHVibGljOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTQwNHB4O1xufVxuXG5pLmZsYWcuZGU6YmVmb3JlLFxuaS5mbGFnLmdlcm1hbnk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNDMwcHg7XG59XG5cbmkuZmxhZy5kajpiZWZvcmUsXG5pLmZsYWcuZGppYm91dGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNDU2cHg7XG59XG5cbmkuZmxhZy5kazpiZWZvcmUsXG5pLmZsYWcuZGVubWFyazpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE0ODJweDtcbn1cblxuaS5mbGFnLmRtOmJlZm9yZSxcbmkuZmxhZy5kb21pbmljYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE1MDhweDtcbn1cblxuaS5mbGFnLmRvOmJlZm9yZSxcbmkuZmxhZy5kb21pbmljYW4ucmVwdWJsaWM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNTM0cHg7XG59XG5cbmkuZmxhZy5kejpiZWZvcmUsXG5pLmZsYWcuYWxnZXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE1NjBweDtcbn1cblxuaS5mbGFnLmVjOmJlZm9yZSxcbmkuZmxhZy5lY3VhZG9yOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTU4NnB4O1xufVxuXG5pLmZsYWcuZWU6YmVmb3JlLFxuaS5mbGFnLmVzdG9uaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNjEycHg7XG59XG5cbmkuZmxhZy5lZzpiZWZvcmUsXG5pLmZsYWcuZWd5cHQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNjM4cHg7XG59XG5cbmkuZmxhZy5laDpiZWZvcmUsXG5pLmZsYWcud2VzdGVybi5zYWhhcmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xNjY0cHg7XG59XG5cbmkuZmxhZy5lcjpiZWZvcmUsXG5pLmZsYWcuZXJpdHJlYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE3MTZweDtcbn1cblxuaS5mbGFnLmVzOmJlZm9yZSxcbmkuZmxhZy5zcGFpbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE3NDJweDtcbn1cblxuaS5mbGFnLmV0OmJlZm9yZSxcbmkuZmxhZy5ldGhpb3BpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE3NjhweDtcbn1cblxuaS5mbGFnLmV1OmJlZm9yZSxcbmkuZmxhZy5ldXJvcGVhbi51bmlvbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE3OTRweDtcbn1cblxuaS5mbGFnLmZpOmJlZm9yZSxcbmkuZmxhZy5maW5sYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTg0NnB4O1xufVxuXG5pLmZsYWcuZmo6YmVmb3JlLFxuaS5mbGFnLmZpamk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xODcycHg7XG59XG5cbmkuZmxhZy5mazpiZWZvcmUsXG5pLmZsYWcuZmFsa2xhbmQuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTE4OThweDtcbn1cblxuaS5mbGFnLmZtOmJlZm9yZSxcbmkuZmxhZy5taWNyb25lc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTkyNHB4O1xufVxuXG5pLmZsYWcuZm86YmVmb3JlLFxuaS5mbGFnLmZhcm9lLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xOTUwcHg7XG59XG5cbmkuZmxhZy5mcjpiZWZvcmUsXG5pLmZsYWcuZnJhbmNlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTk3NnB4O1xufVxuXG5pLmZsYWcuZ2E6YmVmb3JlLFxuaS5mbGFnLmdhYm9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IDBweDtcbn1cblxuaS5mbGFnLmdiOmJlZm9yZSxcbmkuZmxhZy51bml0ZWQua2luZ2RvbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjZweDtcbn1cblxuaS5mbGFnLmdkOmJlZm9yZSxcbmkuZmxhZy5ncmVuYWRhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC01MnB4O1xufVxuXG5pLmZsYWcuZ2U6YmVmb3JlLFxuaS5mbGFnLmdlb3JnaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTc4cHg7XG59XG5cbmkuZmxhZy5nZjpiZWZvcmUsXG5pLmZsYWcuZnJlbmNoLmd1aWFuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTA0cHg7XG59XG5cbmkuZmxhZy5naDpiZWZvcmUsXG5pLmZsYWcuZ2hhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzMHB4O1xufVxuXG5pLmZsYWcuZ2k6YmVmb3JlLFxuaS5mbGFnLmdpYnJhbHRhcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU2cHg7XG59XG5cbmkuZmxhZy5nbDpiZWZvcmUsXG5pLmZsYWcuZ3JlZW5sYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODJweDtcbn1cblxuaS5mbGFnLmdtOmJlZm9yZSxcbmkuZmxhZy5nYW1iaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTIwOHB4O1xufVxuXG5pLmZsYWcuZ246YmVmb3JlLFxuaS5mbGFnLmd1aW5lYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjM0cHg7XG59XG5cbmkuZmxhZy5ncDpiZWZvcmUsXG5pLmZsYWcuZ3VhZGVsb3VwZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMjYwcHg7XG59XG5cbmkuZmxhZy5ncTpiZWZvcmUsXG5pLmZsYWcuZXF1YXRvcmlhbC5ndWluZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTI4NnB4O1xufVxuXG5pLmZsYWcuZ3I6YmVmb3JlLFxuaS5mbGFnLmdyZWVjZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMzEycHg7XG59XG5cbmkuZmxhZy5nczpiZWZvcmUsXG5pLmZsYWcuc2FuZHdpY2guaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMzM4cHg7XG59XG5cbmkuZmxhZy5ndDpiZWZvcmUsXG5pLmZsYWcuZ3VhdGVtYWxhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zNjRweDtcbn1cblxuaS5mbGFnLmd1OmJlZm9yZSxcbmkuZmxhZy5ndWFtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zOTBweDtcbn1cblxuaS5mbGFnLmd3OmJlZm9yZSxcbmkuZmxhZy5ndWluZWEtYmlzc2F1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC00MTZweDtcbn1cblxuaS5mbGFnLmd5OmJlZm9yZSxcbmkuZmxhZy5ndXlhbmE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTQ0MnB4O1xufVxuXG5pLmZsYWcuaGs6YmVmb3JlLFxuaS5mbGFnLmhvbmcua29uZzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNDY4cHg7XG59XG5cbmkuZmxhZy5obTpiZWZvcmUsXG5pLmZsYWcuaGVhcmQuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC00OTRweDtcbn1cblxuaS5mbGFnLmhuOmJlZm9yZSxcbmkuZmxhZy5ob25kdXJhczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTIwcHg7XG59XG5cbmkuZmxhZy5ocjpiZWZvcmUsXG5pLmZsYWcuY3JvYXRpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNTQ2cHg7XG59XG5cbmkuZmxhZy5odDpiZWZvcmUsXG5pLmZsYWcuaGFpdGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTU3MnB4O1xufVxuXG5pLmZsYWcuaHU6YmVmb3JlLFxuaS5mbGFnLmh1bmdhcnk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTU5OHB4O1xufVxuXG5pLmZsYWcuaWQ6YmVmb3JlLFxuaS5mbGFnLmluZG9uZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNjI0cHg7XG59XG5cbmkuZmxhZy5pZTpiZWZvcmUsXG5pLmZsYWcuaXJlbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNjUwcHg7XG59XG5cbmkuZmxhZy5pbDpiZWZvcmUsXG5pLmZsYWcuaXNyYWVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC02NzZweDtcbn1cblxuaS5mbGFnLmluOmJlZm9yZSxcbmkuZmxhZy5pbmRpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzAycHg7XG59XG5cbmkuZmxhZy5pbzpiZWZvcmUsXG5pLmZsYWcuaW5kaWFuLm9jZWFuLnRlcnJpdG9yeTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzI4cHg7XG59XG5cbmkuZmxhZy5pcTpiZWZvcmUsXG5pLmZsYWcuaXJhcTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzU0cHg7XG59XG5cbmkuZmxhZy5pcjpiZWZvcmUsXG5pLmZsYWcuaXJhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtNzgwcHg7XG59XG5cbmkuZmxhZy5pczpiZWZvcmUsXG5pLmZsYWcuaWNlbGFuZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtODA2cHg7XG59XG5cbmkuZmxhZy5pdDpiZWZvcmUsXG5pLmZsYWcuaXRhbHk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTgzMnB4O1xufVxuXG5pLmZsYWcuam06YmVmb3JlLFxuaS5mbGFnLmphbWFpY2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTg1OHB4O1xufVxuXG5pLmZsYWcuam86YmVmb3JlLFxuaS5mbGFnLmpvcmRhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtODg0cHg7XG59XG5cbmkuZmxhZy5qcDpiZWZvcmUsXG5pLmZsYWcuamFwYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTkxMHB4O1xufVxuXG5pLmZsYWcua2U6YmVmb3JlLFxuaS5mbGFnLmtlbnlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC05MzZweDtcbn1cblxuaS5mbGFnLmtnOmJlZm9yZSxcbmkuZmxhZy5reXJneXpzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC05NjJweDtcbn1cblxuaS5mbGFnLmtoOmJlZm9yZSxcbmkuZmxhZy5jYW1ib2RpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtOTg4cHg7XG59XG5cbmkuZmxhZy5raTpiZWZvcmUsXG5pLmZsYWcua2lyaWJhdGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwMTRweDtcbn1cblxuaS5mbGFnLmttOmJlZm9yZSxcbmkuZmxhZy5jb21vcm9zOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDQwcHg7XG59XG5cbmkuZmxhZy5rbjpiZWZvcmUsXG5pLmZsYWcuc2FpbnQua2l0dHMuYW5kLm5ldmlzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMDY2cHg7XG59XG5cbmkuZmxhZy5rcDpiZWZvcmUsXG5pLmZsYWcubm9ydGgua29yZWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEwOTJweDtcbn1cblxuaS5mbGFnLmtyOmJlZm9yZSxcbmkuZmxhZy5zb3V0aC5rb3JlYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTExOHB4O1xufVxuXG5pLmZsYWcua3c6YmVmb3JlLFxuaS5mbGFnLmt1d2FpdDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTE0NHB4O1xufVxuXG5pLmZsYWcua3k6YmVmb3JlLFxuaS5mbGFnLmNheW1hbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMTcwcHg7XG59XG5cbmkuZmxhZy5rejpiZWZvcmUsXG5pLmZsYWcua2F6YWtoc3RhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTE5NnB4O1xufVxuXG5pLmZsYWcubGE6YmVmb3JlLFxuaS5mbGFnLmxhb3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEyMjJweDtcbn1cblxuaS5mbGFnLmxiOmJlZm9yZSxcbmkuZmxhZy5sZWJhbm9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMjQ4cHg7XG59XG5cbmkuZmxhZy5sYzpiZWZvcmUsXG5pLmZsYWcuc2FpbnQubHVjaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEyNzRweDtcbn1cblxuaS5mbGFnLmxpOmJlZm9yZSxcbmkuZmxhZy5saWVjaHRlbnN0ZWluOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzAwcHg7XG59XG5cbmkuZmxhZy5sazpiZWZvcmUsXG5pLmZsYWcuc3JpLmxhbmthOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xMzI2cHg7XG59XG5cbmkuZmxhZy5scjpiZWZvcmUsXG5pLmZsYWcubGliZXJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTM1MnB4O1xufVxuXG5pLmZsYWcubHM6YmVmb3JlLFxuaS5mbGFnLmxlc290aG86YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTEzNzhweDtcbn1cblxuaS5mbGFnLmx0OmJlZm9yZSxcbmkuZmxhZy5saXRodWFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0MDRweDtcbn1cblxuaS5mbGFnLmx1OmJlZm9yZSxcbmkuZmxhZy5sdXhlbWJvdXJnOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNDMwcHg7XG59XG5cbmkuZmxhZy5sdjpiZWZvcmUsXG5pLmZsYWcubGF0dmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNDU2cHg7XG59XG5cbmkuZmxhZy5seTpiZWZvcmUsXG5pLmZsYWcubGlieWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE0ODJweDtcbn1cblxuaS5mbGFnLm1hOmJlZm9yZSxcbmkuZmxhZy5tb3JvY2NvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTA4cHg7XG59XG5cbmkuZmxhZy5tYzpiZWZvcmUsXG5pLmZsYWcubW9uYWNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNTM0cHg7XG59XG5cbmkuZmxhZy5tZDpiZWZvcmUsXG5pLmZsYWcubW9sZG92YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTU2MHB4O1xufVxuXG5pLmZsYWcubWU6YmVmb3JlLFxuaS5mbGFnLm1vbnRlbmVncm86YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE1ODZweDtcbn1cblxuaS5mbGFnLm1nOmJlZm9yZSxcbmkuZmxhZy5tYWRhZ2FzY2FyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNjEzcHg7XG59XG5cbmkuZmxhZy5taDpiZWZvcmUsXG5pLmZsYWcubWFyc2hhbGwuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTYzOXB4O1xufVxuXG5pLmZsYWcubWs6YmVmb3JlLFxuaS5mbGFnLm1hY2Vkb25pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTY2NXB4O1xufVxuXG5pLmZsYWcubWw6YmVmb3JlLFxuaS5mbGFnLm1hbGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE2OTFweDtcbn1cblxuaS5mbGFnLm1tOmJlZm9yZSxcbmkuZmxhZy5teWFubWFyOmJlZm9yZSxcbmkuZmxhZy5idXJtYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTcxN3B4O1xufVxuXG5pLmZsYWcubW46YmVmb3JlLFxuaS5mbGFnLm1vbmdvbGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xNzQzcHg7XG59XG5cbmkuZmxhZy5tbzpiZWZvcmUsXG5pLmZsYWcubWFjYXU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3NjlweDtcbn1cblxuaS5mbGFnLm1wOmJlZm9yZSxcbmkuZmxhZy5ub3J0aGVybi5tYXJpYW5hLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE3OTVweDtcbn1cblxuaS5mbGFnLm1xOmJlZm9yZSxcbmkuZmxhZy5tYXJ0aW5pcXVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xODIxcHg7XG59XG5cbmkuZmxhZy5tcjpiZWZvcmUsXG5pLmZsYWcubWF1cml0YW5pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTg0N3B4O1xufVxuXG5pLmZsYWcubXM6YmVmb3JlLFxuaS5mbGFnLm1vbnRzZXJyYXQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggLTE4NzNweDtcbn1cblxuaS5mbGFnLm10OmJlZm9yZSxcbmkuZmxhZy5tYWx0YTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTg5OXB4O1xufVxuXG5pLmZsYWcubXU6YmVmb3JlLFxuaS5mbGFnLm1hdXJpdGl1czpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMTkyNXB4O1xufVxuXG5pLmZsYWcubXY6YmVmb3JlLFxuaS5mbGFnLm1hbGRpdmVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xOTUxcHg7XG59XG5cbmkuZmxhZy5tdzpiZWZvcmUsXG5pLmZsYWcubWFsYXdpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0xOTc3cHg7XG59XG5cbmkuZmxhZy5teDpiZWZvcmUsXG5pLmZsYWcubWV4aWNvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IDBweDtcbn1cblxuaS5mbGFnLm15OmJlZm9yZSxcbmkuZmxhZy5tYWxheXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMjZweDtcbn1cblxuaS5mbGFnLm16OmJlZm9yZSxcbmkuZmxhZy5tb3phbWJpcXVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01MnB4O1xufVxuXG5pLmZsYWcubmE6YmVmb3JlLFxuaS5mbGFnLm5hbWliaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTc4cHg7XG59XG5cbmkuZmxhZy5uYzpiZWZvcmUsXG5pLmZsYWcubmV3LmNhbGVkb25pYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA0cHg7XG59XG5cbmkuZmxhZy5uZTpiZWZvcmUsXG5pLmZsYWcubmlnZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMHB4O1xufVxuXG5pLmZsYWcubmY6YmVmb3JlLFxuaS5mbGFnLm5vcmZvbGsuaXNsYW5kOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTZweDtcbn1cblxuaS5mbGFnLm5nOmJlZm9yZSxcbmkuZmxhZy5uaWdlcmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODJweDtcbn1cblxuaS5mbGFnLm5pOmJlZm9yZSxcbmkuZmxhZy5uaWNhcmFndWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTIwOHB4O1xufVxuXG5pLmZsYWcubmw6YmVmb3JlLFxuaS5mbGFnLm5ldGhlcmxhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yMzRweDtcbn1cblxuaS5mbGFnLm5vOmJlZm9yZSxcbmkuZmxhZy5ub3J3YXk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTI2MHB4O1xufVxuXG5pLmZsYWcubnA6YmVmb3JlLFxuaS5mbGFnLm5lcGFsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0yODZweDtcbn1cblxuaS5mbGFnLm5yOmJlZm9yZSxcbmkuZmxhZy5uYXVydTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzEycHg7XG59XG5cbmkuZmxhZy5udTpiZWZvcmUsXG5pLmZsYWcubml1ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMzM4cHg7XG59XG5cbmkuZmxhZy5uejpiZWZvcmUsXG5pLmZsYWcubmV3LnplYWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTM2NHB4O1xufVxuXG5pLmZsYWcub206YmVmb3JlLFxuaS5mbGFnLm9tYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTM5MHB4O1xufVxuXG5pLmZsYWcucGE6YmVmb3JlLFxuaS5mbGFnLnBhbmFtYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDE2cHg7XG59XG5cbmkuZmxhZy5wZTpiZWZvcmUsXG5pLmZsYWcucGVydTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDQycHg7XG59XG5cbmkuZmxhZy5wZjpiZWZvcmUsXG5pLmZsYWcuZnJlbmNoLnBvbHluZXNpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDY4cHg7XG59XG5cbmkuZmxhZy5wZzpiZWZvcmUsXG5pLmZsYWcubmV3Lmd1aW5lYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNDk0cHg7XG59XG5cbmkuZmxhZy5waDpiZWZvcmUsXG5pLmZsYWcucGhpbGlwcGluZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTUyMHB4O1xufVxuXG5pLmZsYWcucGs6YmVmb3JlLFxuaS5mbGFnLnBha2lzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC01NDZweDtcbn1cblxuaS5mbGFnLnBsOmJlZm9yZSxcbmkuZmxhZy5wb2xhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTU3MnB4O1xufVxuXG5pLmZsYWcucG06YmVmb3JlLFxuaS5mbGFnLnNhaW50LnBpZXJyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNTk4cHg7XG59XG5cbmkuZmxhZy5wbjpiZWZvcmUsXG5pLmZsYWcucGl0Y2Fpcm4uaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjI0cHg7XG59XG5cbmkuZmxhZy5wcjpiZWZvcmUsXG5pLmZsYWcucHVlcnRvLnJpY286YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTY1MHB4O1xufVxuXG5pLmZsYWcucHM6YmVmb3JlLFxuaS5mbGFnLnBhbGVzdGluZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNjc2cHg7XG59XG5cbmkuZmxhZy5wdDpiZWZvcmUsXG5pLmZsYWcucG9ydHVnYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTcwMnB4O1xufVxuXG5pLmZsYWcucHc6YmVmb3JlLFxuaS5mbGFnLnBhbGF1OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC03MjhweDtcbn1cblxuaS5mbGFnLnB5OmJlZm9yZSxcbmkuZmxhZy5wYXJhZ3VheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtNzU0cHg7XG59XG5cbmkuZmxhZy5xYTpiZWZvcmUsXG5pLmZsYWcucWF0YXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTc4MHB4O1xufVxuXG5pLmZsYWcucmU6YmVmb3JlLFxuaS5mbGFnLnJldW5pb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTgwNnB4O1xufVxuXG5pLmZsYWcucm86YmVmb3JlLFxuaS5mbGFnLnJvbWFuaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTgzMnB4O1xufVxuXG5pLmZsYWcucnM6YmVmb3JlLFxuaS5mbGFnLnNlcmJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtODU4cHg7XG59XG5cbmkuZmxhZy5ydTpiZWZvcmUsXG5pLmZsYWcucnVzc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC04ODRweDtcbn1cblxuaS5mbGFnLnJ3OmJlZm9yZSxcbmkuZmxhZy5yd2FuZGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTkxMHB4O1xufVxuXG5pLmZsYWcuc2E6YmVmb3JlLFxuaS5mbGFnLnNhdWRpLmFyYWJpYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtOTM2cHg7XG59XG5cbmkuZmxhZy5zYjpiZWZvcmUsXG5pLmZsYWcuc29sb21vbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC05NjJweDtcbn1cblxuaS5mbGFnLnNjOmJlZm9yZSxcbmkuZmxhZy5zZXljaGVsbGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC05ODhweDtcbn1cblxuaS5mbGFnLnNkOmJlZm9yZSxcbmkuZmxhZy5zdWRhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA0MHB4O1xufVxuXG5pLmZsYWcuc2U6YmVmb3JlLFxuaS5mbGFnLnN3ZWRlbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA2NnB4O1xufVxuXG5pLmZsYWcuc2c6YmVmb3JlLFxuaS5mbGFnLnNpbmdhcG9yZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTA5MnB4O1xufVxuXG5pLmZsYWcuc2g6YmVmb3JlLFxuaS5mbGFnLnNhaW50LmhlbGVuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTExOHB4O1xufVxuXG5pLmZsYWcuc2k6YmVmb3JlLFxuaS5mbGFnLnNsb3ZlbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTQ0cHg7XG59XG5cbmkuZmxhZy5zajpiZWZvcmUsXG5pLmZsYWcuc3ZhbGJhcmQ6YmVmb3JlLFxuaS5mbGFnLmphbi5tYXllbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTE3MHB4O1xufVxuXG5pLmZsYWcuc2s6YmVmb3JlLFxuaS5mbGFnLnNsb3Zha2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMTk2cHg7XG59XG5cbmkuZmxhZy5zbDpiZWZvcmUsXG5pLmZsYWcuc2llcnJhLmxlb25lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMjIycHg7XG59XG5cbmkuZmxhZy5zbTpiZWZvcmUsXG5pLmZsYWcuc2FuLm1hcmlubzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTI0OHB4O1xufVxuXG5pLmZsYWcuc246YmVmb3JlLFxuaS5mbGFnLnNlbmVnYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEyNzRweDtcbn1cblxuaS5mbGFnLnNvOmJlZm9yZSxcbmkuZmxhZy5zb21hbGlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzAwcHg7XG59XG5cbmkuZmxhZy5zcjpiZWZvcmUsXG5pLmZsYWcuc3VyaW5hbWU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTEzMjZweDtcbn1cblxuaS5mbGFnLnN0OmJlZm9yZSxcbmkuZmxhZy5zYW8udG9tZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTM1MnB4O1xufVxuXG5pLmZsYWcuc3Y6YmVmb3JlLFxuaS5mbGFnLmVsLnNhbHZhZG9yOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xMzc4cHg7XG59XG5cbmkuZmxhZy5zeTpiZWZvcmUsXG5pLmZsYWcuc3lyaWE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE0MDRweDtcbn1cblxuaS5mbGFnLnN6OmJlZm9yZSxcbmkuZmxhZy5zd2F6aWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE0MzBweDtcbn1cblxuaS5mbGFnLnRjOmJlZm9yZSxcbmkuZmxhZy5jYWljb3MuaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTQ1NnB4O1xufVxuXG5pLmZsYWcudGQ6YmVmb3JlLFxuaS5mbGFnLmNoYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE0ODJweDtcbn1cblxuaS5mbGFnLnRmOmJlZm9yZSxcbmkuZmxhZy5mcmVuY2gudGVycml0b3JpZXM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1MDhweDtcbn1cblxuaS5mbGFnLnRnOmJlZm9yZSxcbmkuZmxhZy50b2dvOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTM0cHg7XG59XG5cbmkuZmxhZy50aDpiZWZvcmUsXG5pLmZsYWcudGhhaWxhbmQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE1NjBweDtcbn1cblxuaS5mbGFnLnRqOmJlZm9yZSxcbmkuZmxhZy50YWppa2lzdGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNTg2cHg7XG59XG5cbmkuZmxhZy50azpiZWZvcmUsXG5pLmZsYWcudG9rZWxhdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTYxMnB4O1xufVxuXG5pLmZsYWcudGw6YmVmb3JlLFxuaS5mbGFnLnRpbW9ybGVzdGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE2MzhweDtcbn1cblxuaS5mbGFnLnRtOmJlZm9yZSxcbmkuZmxhZy50dXJrbWVuaXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE2NjRweDtcbn1cblxuaS5mbGFnLnRuOmJlZm9yZSxcbmkuZmxhZy50dW5pc2lhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xNjkwcHg7XG59XG5cbmkuZmxhZy50bzpiZWZvcmUsXG5pLmZsYWcudG9uZ2E6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE3MTZweDtcbn1cblxuaS5mbGFnLnRyOmJlZm9yZSxcbmkuZmxhZy50dXJrZXk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE3NDJweDtcbn1cblxuaS5mbGFnLnR0OmJlZm9yZSxcbmkuZmxhZy50cmluaWRhZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc2OHB4O1xufVxuXG5pLmZsYWcudHY6YmVmb3JlLFxuaS5mbGFnLnR1dmFsdTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTc5NHB4O1xufVxuXG5pLmZsYWcudHc6YmVmb3JlLFxuaS5mbGFnLnRhaXdhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTgyMHB4O1xufVxuXG5pLmZsYWcudHo6YmVmb3JlLFxuaS5mbGFnLnRhbnphbmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xODQ2cHg7XG59XG5cbmkuZmxhZy51YTpiZWZvcmUsXG5pLmZsYWcudWtyYWluZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTg3MnB4O1xufVxuXG5pLmZsYWcudWc6YmVmb3JlLFxuaS5mbGFnLnVnYW5kYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTg5OHB4O1xufVxuXG5pLmZsYWcudW06YmVmb3JlLFxuaS5mbGFnLnVzLm1pbm9yLmlzbGFuZHM6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcycHggLTE5MjRweDtcbn1cblxuaS5mbGFnLnVzOmJlZm9yZSxcbmkuZmxhZy5hbWVyaWNhOmJlZm9yZSxcbmkuZmxhZy51bml0ZWQuc3RhdGVzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03MnB4IC0xOTUwcHg7XG59XG5cbmkuZmxhZy51eTpiZWZvcmUsXG5pLmZsYWcudXJ1Z3VheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzJweCAtMTk3NnB4O1xufVxuXG5pLmZsYWcudXo6YmVmb3JlLFxuaS5mbGFnLnV6YmVraXN0YW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IDBweDtcbn1cblxuaS5mbGFnLnZhOmJlZm9yZSxcbmkuZmxhZy52YXRpY2FuLmNpdHk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yNnB4O1xufVxuXG5pLmZsYWcudmM6YmVmb3JlLFxuaS5mbGFnLnNhaW50LnZpbmNlbnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC01MnB4O1xufVxuXG5pLmZsYWcudmU6YmVmb3JlLFxuaS5mbGFnLnZlbmV6dWVsYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTc4cHg7XG59XG5cbmkuZmxhZy52ZzpiZWZvcmUsXG5pLmZsYWcuYnJpdGlzaC52aXJnaW4uaXNsYW5kczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTEwNHB4O1xufVxuXG5pLmZsYWcudmk6YmVmb3JlLFxuaS5mbGFnLnVzLnZpcmdpbi5pc2xhbmRzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMTMwcHg7XG59XG5cbmkuZmxhZy52bjpiZWZvcmUsXG5pLmZsYWcudmlldG5hbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTE1NnB4O1xufVxuXG5pLmZsYWcudnU6YmVmb3JlLFxuaS5mbGFnLnZhbnVhdHU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0xODJweDtcbn1cblxuaS5mbGFnLndmOmJlZm9yZSxcbmkuZmxhZy53YWxsaXMuYW5kLmZ1dHVuYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA4cHggLTIzNHB4O1xufVxuXG5pLmZsYWcud3M6YmVmb3JlLFxuaS5mbGFnLnNhbW9hOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMjYwcHg7XG59XG5cbmkuZmxhZy55ZTpiZWZvcmUsXG5pLmZsYWcueWVtZW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0yODZweDtcbn1cblxuaS5mbGFnLnl0OmJlZm9yZSxcbmkuZmxhZy5tYXlvdHRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzEycHg7XG59XG5cbmkuZmxhZy56YTpiZWZvcmUsXG5pLmZsYWcuc291dGguYWZyaWNhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzM4cHg7XG59XG5cbmkuZmxhZy56bTpiZWZvcmUsXG5pLmZsYWcuemFtYmlhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDhweCAtMzY0cHg7XG59XG5cbmkuZmxhZy56dzpiZWZvcmUsXG5pLmZsYWcuemltYmFid2U6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOHB4IC0zOTBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIEhlYWRlclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgSGVhZGVyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBTdGFuZGFyZCAqL1xuXG4udWkuaGVhZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IC13ZWJraXQtY2FsYygycmVtIC0gIDAuMTY1ZW0gKSAwZW0gMXJlbTtcbiAgbWFyZ2luOiBjYWxjKDJyZW0gLSAgMC4xNjVlbSApIDBlbSAxcmVtO1xuICBwYWRkaW5nOiAwZW0gMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMzNlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAtMC4xNjVlbTtcbn1cblxuLnVpLmhlYWRlcjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgZm9udC1zaXplOiAxLjE0MjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciA+IC5pY29uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgcGFkZGluZy10b3A6IDAuMTY1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIFdpdGggVGV4dCBOb2RlICovXG5cbi51aS5oZWFkZXIgLmljb246b25seS1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJbWFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyID4gLmltYWdlLFxuLnVpLmhlYWRlciA+IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMC4xNjVlbTtcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5oZWFkZXIgPiAuaW1hZ2U6b25seS1jaGlsZCxcbi51aS5oZWFkZXIgPiBpbWc6b25seS1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaGVhZGVyIC5jb250ZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKiBBZnRlciBJbWFnZSAqL1xuXG4udWkuaGVhZGVyID4gaW1nICsgLmNvbnRlbnQsXG4udWkuaGVhZGVyID4gLmltYWdlICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIEFmdGVyIEljb24gKi9cblxuLnVpLmhlYWRlciA+IC5pY29uICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBMb29zZSBDb3VwbGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlciAudWkubGFiZWwge1xuICBmb250LXNpemU6ICcnO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogUG9zaXRpb25pbmcgKi9cblxuLnVpLmhlYWRlciArIHAge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG5oMS51aS5oZWFkZXIge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbmgyLnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS43MTRyZW07XG59XG5cbmgzLnVpLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4yOHJlbTtcbn1cblxuaDQudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjA3MXJlbTtcbn1cblxuaDUudWkuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKiBTdWIgSGVhZGVyICovXG5cbmgxLnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1cmVtO1xufVxuXG5oMi51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyOHJlbTtcbn1cblxuaDMudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjE0MjhyZW07XG59XG5cbmg0LnVpLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuaDUudWkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiBDb250ZW50IEhlYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5odWdlLmhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi51aS5sYXJnZS5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNzE0ZW07XG59XG5cbi51aS5tZWRpdW0uaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjI4ZW07XG59XG5cbi51aS5zbWFsbC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMDcxZW07XG59XG5cbi51aS50aW55LmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBTdWIgSGVhZGVyICovXG5cbi51aS5odWdlLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1cmVtO1xufVxuXG4udWkubGFyZ2UuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjQyODVyZW07XG59XG5cbi51aS5oZWFkZXIgLnN1Yi5oZWFkZXIge1xuICBmb250LXNpemU6IDEuMTQyOHJlbTtcbn1cblxuLnVpLnNtYWxsLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLnRpbnkuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjkyODVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBJY29uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDJyZW0gMGVtIDFyZW07XG59XG5cbi51aS5pY29uLmhlYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5pY29uLmhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmljb24uaGVhZGVyIC5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwZW07XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBtYXJnaW46IDBlbSBhdXRvIDAuMjVyZW07XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5pY29uLmhlYWRlciAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuaWNvbi5oZWFkZXIgLmNpcmN1bGFyLmljb24ge1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLnVpLmljb24uaGVhZGVyIC5zcXVhcmUuaWNvbiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4udWkuYmxvY2suaWNvbi5oZWFkZXIgLmljb24ge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi51aS5pY29uLmhlYWRlci5hbGlnbmVkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5kaXNhYmxlZC5oZWFkZXIge1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmxhY2suaGVhZGVyIHtcbiAgY29sb3I6ICMxYjFjMWQgIWltcG9ydGFudDtcbn1cblxuYS51aS5ibGFjay5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmx1ZS5oZWFkZXIge1xuICBjb2xvcjogIzNiODNjMCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmJsdWUuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICM0NThhYzYgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyZWVuLmhlYWRlciB7XG4gIGNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuZ3JlZW4uaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMzMGMwN2QgIWltcG9ydGFudDtcbn1cblxuLnVpLm9yYW5nZS5oZWFkZXIge1xuICBjb2xvcjogI2UwN2I1MyAhaW1wb3J0YW50O1xufVxuXG5hLnVpLm9yYW5nZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2UyODU2MCAhaW1wb3J0YW50O1xufVxuXG4udWkucGluay5oZWFkZXIge1xuICBjb2xvcjogI2Q5NDk5YSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnBpbmsuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNkYzU2YTEgIWltcG9ydGFudDtcbn1cblxuLnVpLnB1cnBsZS5oZWFkZXIge1xuICBjb2xvcjogIzU2NGY4YSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnB1cnBsZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzVjNTU5NCAhaW1wb3J0YW50O1xufVxuXG4udWkucmVkLmhlYWRlciB7XG4gIGNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG59XG5cbmEudWkucmVkLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZGExYTIwICFpbXBvcnRhbnQ7XG59XG5cbi51aS50ZWFsLmhlYWRlciB7XG4gIGNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG59XG5cbmEudWkudGVhbC5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzAwYzRiYyAhaW1wb3J0YW50O1xufVxuXG4udWkueWVsbG93LmhlYWRlciB7XG4gIGNvbG9yOiAjZjJjNjFmICFpbXBvcnRhbnQ7XG59XG5cbmEudWkueWVsbG93LmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZjNjYTJkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ibGFjay5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFiMWMxZDtcbn1cblxuLnVpLmJsdWUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzYjgzYzA7XG59XG5cbi51aS5ncmVlbi5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzJkYjQ3NTtcbn1cblxuLnVpLm9yYW5nZS5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2UwN2I1Mztcbn1cblxuLnVpLnBpbmsuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkOTQ5OWE7XG59XG5cbi51aS5wdXJwbGUuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1NjRmOGE7XG59XG5cbi51aS5yZWQuZGl2aWRpbmcuaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNjYzE4MWU7XG59XG5cbi51aS50ZWFsLmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBiNWFkO1xufVxuXG4udWkueWVsbG93LmRpdmlkaW5nLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjJjNjFmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5oZWFkZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLmhlYWRlciAuc3ViLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xufVxuXG4udWkuaW52ZXJ0ZWQuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMyAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzMgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLmJsb2NrLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzMgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgSW52ZXJ0ZWQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5ibGFjay5oZWFkZXIge1xuICBjb2xvcjogI2FhYWFhYSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmludmVydGVkLmJsYWNrLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjYjJiMmIyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLmhlYWRlciB7XG4gIGNvbG9yOiAjNTRjOGZmICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQuYmx1ZS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzYzY2RmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4uaGVhZGVyIHtcbiAgY29sb3I6ICNjYmVkZGQgIWltcG9ydGFudDtcbn1cblxuYS51aS5pbnZlcnRlZC5ncmVlbi5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2Q2ZjFlNCAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLmhlYWRlciB7XG4gIGNvbG9yOiAjZmY4NTFiICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQub3JhbmdlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmY4ZDJhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLmhlYWRlciB7XG4gIGNvbG9yOiAjZmY4ZWRmICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQucGluay5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmOWRlMyAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLmhlYWRlciB7XG4gIGNvbG9yOiAjY2RjNmZmICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuaW52ZXJ0ZWQucHVycGxlLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZGFkNWZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQuaGVhZGVyIHtcbiAgY29sb3I6ICNmZjY5NWUgIWltcG9ydGFudDtcbn1cblxuYS51aS5pbnZlcnRlZC5yZWQuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNmZjc3NmQgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuaGVhZGVyIHtcbiAgY29sb3I6ICM2ZGZmZmYgIWltcG9ydGFudDtcbn1cblxuYS51aS5pbnZlcnRlZC50ZWFsLmhlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjN2NmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuaGVhZGVyIHtcbiAgY29sb3I6ICNmZmUyMWYgIWltcG9ydGFudDtcbn1cblxuYS51aS5pbnZlcnRlZC55ZWxsb3cuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICNmZmU0MmUgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJsb2NrLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFsaWduZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxlZnQuYWxpZ25lZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWkucmlnaHQuYWxpZ25lZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnVpLmNlbnRlcmVkLmhlYWRlcixcbi51aS5jZW50ZXIuYWxpZ25lZC5oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS5qdXN0aWZpZWQuaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnVpLmp1c3RpZmllZC5oZWFkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRlZC5oZWFkZXIsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmhlYWRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLmhlYWRlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZpdHR0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpdHRlZC5oZWFkZXIge1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRGl2aWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkaW5nLmhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkuZGl2aWRpbmcuaGVhZGVyIC5zdWIuaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG59XG5cbi51aS5kaXZpZGluZy5oZWFkZXIgLmljb24ge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi51aS5pbnZlcnRlZC5kaXZpZGluZy5oZWFkZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBCbG9ja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDRkNGQ1O1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG59XG5cbi51aS50aW55LmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkuc21hbGwuYmxvY2suaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjA3MWVtO1xufVxuXG4udWkuYmxvY2suaGVhZGVyOm5vdChoMSk6bm90KGgyKTpub3QoaDMpOm5vdChoNCk6bm90KGg1KTpub3QoaDYpIHtcbiAgZm9udC1zaXplOiAxLjI4ZW07XG59XG5cbi51aS5sYXJnZS5ibG9jay5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNzE0ZW07XG59XG5cbi51aS5odWdlLmJsb2NrLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDRkNGQ1O1xufVxuXG4udWkuYXR0YWNoZWQuYmxvY2suaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbn1cblxuLnVpLmF0dGFjaGVkOm5vdCgudG9wKTpub3QoLmJvdHRvbSkuaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLnRvcC5hdHRhY2hlZC5oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbSAwLjMxMjVyZW0gMGVtIDBlbTtcbn1cblxuLnVpLmJvdHRvbS5hdHRhY2hlZC5oZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4zMTI1cmVtIDAuMzEyNXJlbTtcbn1cblxuLyogQXR0YWNoZWQgU2l6ZXMgKi9cblxuLnVpLnRpbnkuYXR0YWNoZWQuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjg1NzFlbTtcbn1cblxuLnVpLnNtYWxsLmF0dGFjaGVkLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1ZW07XG59XG5cbi51aS5hdHRhY2hlZC5oZWFkZXI6bm90KGgxKTpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNikge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLmF0dGFjaGVkLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0ZW07XG59XG5cbi51aS5odWdlLmF0dGFjaGVkLmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYWRlcjpub3QoaDEpOm5vdChoMik6bm90KGgzKTpub3QoaDQpOm5vdChoNSk6bm90KGg2KSB7XG4gIGZvbnQtc2l6ZTogMS4yOGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gSWNvblxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEljb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ljb25zJztcbiAgc3JjOiB1cmwoXCIvc2VtYW50aWMvZGlzdC90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMuZW90XCIpO1xuICBzcmM6IHVybChcIi9zZW1hbnRpYy9kaXN0L3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9pY29ucy5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKFwiL3NlbWFudGljL2Rpc3QvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2ljb25zLndvZmYyXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCIvc2VtYW50aWMvZGlzdC90aGVtZXMvZGVmYXVsdC9hc3NldHMvZm9udHMvaWNvbnMud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiL3NlbWFudGljL2Rpc3QvdGhlbWVzL2RlZmF1bHQvYXNzZXRzL2ZvbnRzL2ljb25zLnR0ZlwiKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybChcIi9zZW1hbnRpYy9kaXN0L3RoZW1lcy9kZWZhdWx0L2Fzc2V0cy9mb250cy9pY29ucy5zdmcjaWNvbnNcIikgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuaS5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAxO1xuICBtYXJnaW46IDBlbSAwLjI1cmVtIDBlbSAwZW07XG4gIHdpZHRoOiAxLjIzZW07XG4gIGhlaWdodDogMC45ZW07XG4gIGZvbnQtZmFtaWx5OiAnSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuaS5pY29uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbmkuaWNvbi5sb2FkaW5nIHtcbiAgaGVpZ2h0OiAxZW07XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBpY29uLWxvYWRpbmcgMnMgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb246IGljb24tbG9hZGluZyAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBpY29uLWxvYWRpbmcge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaWNvbi1sb2FkaW5nIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuaS5pY29uLmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuaS5pY29uLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmkuZW1waGFzaXplZC5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuaS5kaXNhYmxlZC5pY29uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuMyAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5saW5rLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuODtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbmkubGluay5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkuY2lyY3VsYXIuaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDUwMGVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAuNWVtIDAuNWVtICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDAuMWVtIHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldDtcbiAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgd2lkdGg6IDJlbSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDJlbSAhaW1wb3J0YW50O1xufVxuXG5pLmNpcmN1bGFyLmludmVydGVkLmljb24ge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgRmxpcHBlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmZsaXBwZWQuaWNvbixcbmkuaG9yaXpvbnRhbGx5LmZsaXBwZWQuaWNvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG59XG5cbmkudmVydGljYWxseS5mbGlwcGVkLmljb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJvdGF0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5yb3RhdGVkLmljb24sXG5pLnJpZ2h0LnJvdGF0ZWQuaWNvbixcbmkuY2xvY2t3aXNlLnJvdGF0ZWQuaWNvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbmkubGVmdC5yb3RhdGVkLmljb24sXG5pLmNvdW50ZXJjbG9ja3dpc2Uucm90YXRlZC5pY29uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBCb3JkZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pLmJvcmRlcmVkLmljb24ge1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgcGFkZGluZzogMC41NWVtIDAuMzg1ZW0gIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMC4xZW0gcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbmkuYm9yZGVyZWQuaW52ZXJ0ZWQuaWNvbiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkud2hpdGUuaWNvbiB7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbmkuYmxhY2suaWNvbiB7XG4gIGNvbG9yOiAjMWIxYzFkICFpbXBvcnRhbnQ7XG59XG5cbmkuYmx1ZS5pY29uIHtcbiAgY29sb3I6ICMzYjgzYzAgIWltcG9ydGFudDtcbn1cblxuaS5ncmVlbi5pY29uIHtcbiAgY29sb3I6ICMyZGI0NzUgIWltcG9ydGFudDtcbn1cblxuaS5vcmFuZ2UuaWNvbiB7XG4gIGNvbG9yOiAjZTA3YjUzICFpbXBvcnRhbnQ7XG59XG5cbmkucGluay5pY29uIHtcbiAgY29sb3I6ICNkOTQ5OWEgIWltcG9ydGFudDtcbn1cblxuaS5wdXJwbGUuaWNvbiB7XG4gIGNvbG9yOiAjNTY0ZjhhICFpbXBvcnRhbnQ7XG59XG5cbmkucmVkLmljb24ge1xuICBjb2xvcjogI2NjMTgxZSAhaW1wb3J0YW50O1xufVxuXG5pLnRlYWwuaWNvbiB7XG4gIGNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG59XG5cbmkueWVsbG93Lmljb24ge1xuICBjb2xvcjogI2YyYzYxZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmkuaW52ZXJ0ZWQuaWNvbiB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG5pLmludmVydGVkLmJsYWNrLmljb24ge1xuICBjb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJsdWUuaWNvbiB7XG4gIGNvbG9yOiAjNTRjOGZmICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuZ3JlZW4uaWNvbiB7XG4gIGNvbG9yOiAjY2JlZGRkICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQub3JhbmdlLmljb24ge1xuICBjb2xvcjogI2ZmODUxYiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLnBpbmsuaWNvbiB7XG4gIGNvbG9yOiAjZmY4ZWRmICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQucHVycGxlLmljb24ge1xuICBjb2xvcjogI2NkYzZmZiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLnJlZC5pY29uIHtcbiAgY29sb3I6ICNmZjY5NWUgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC50ZWFsLmljb24ge1xuICBjb2xvcjogIzZkZmZmZiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLnllbGxvdy5pY29uIHtcbiAgY29sb3I6ICNmZmUyMWYgIWltcG9ydGFudDtcbn1cblxuLyogSW52ZXJ0ZWQgU2hhcGVzICovXG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjIgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5ibGFjay5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5ibGFjay5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLmJsdWUuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIuYmx1ZS5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLmdyZWVuLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLmdyZWVuLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQub3JhbmdlLmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLm9yYW5nZS5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwN2I1MyAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLnBpbmsuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucGluay5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NDk5YSAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG5pLmludmVydGVkLmJvcmRlcmVkLnB1cnBsZS5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci5wdXJwbGUuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjRmOGEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuaS5pbnZlcnRlZC5ib3JkZXJlZC5yZWQuaWNvbixcbmkuaW52ZXJ0ZWQuY2lyY3VsYXIucmVkLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQudGVhbC5pY29uLFxuaS5pbnZlcnRlZC5jaXJjdWxhci50ZWFsLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbmkuaW52ZXJ0ZWQuYm9yZGVyZWQueWVsbG93Lmljb24sXG5pLmludmVydGVkLmNpcmN1bGFyLnllbGxvdy5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyYzYxZiAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuaS5zbWFsbC5pY29uIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG5pLmljb24ge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuaS5sYXJnZS5pY29uIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuaS5iaWcuaWNvbiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5pLmh1Z2UuaWNvbiB7XG4gIGZvbnQtc2l6ZTogNGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5pLm1hc3NpdmUuaWNvbiB7XG4gIGZvbnQtc2l6ZTogOGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKlxuICogRm9udCBBd2Vzb21lIDQuMy4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqIExpY2Vuc2UgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8vbGljZW5zZSAoRm9udDogU0lMIE9GTCAxLjEsIENTUzogTUlUIExpY2Vuc2UpXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuU2VtYW50aWMtVUkgaW50ZWdyYXRpb24gb2YgZm9udC1hd2Vzb21lIDpcblxuLy8vY2xhc3MgbmFtZXMgYXJlIHNlcGFyYXRlZFxuaS5pY29uLmNpcmNsZSA9PiBpLmljb24uY2lyY2xlXG5pLmljb24uY2lyY2xlLW8gPT4gaS5pY29uLmNpcmNsZS5vdXRsaW5lXG5cbi8vYWJicmV2aWF0aW9uIGFyZSByZXBsYWNlZCBieSBmdWxsIGxldHRlcnM6XG5pLmljb24uZWxsaXBzaXMtaCA9PiBpLmljb24uZWxsaXBzaXMuaG9yaXpvbnRhbFxuaS5pY29uLmVsbGlwc2lzLXYgPT4gaS5pY29uLmVsbGlwc2lzLnZlcnRpY2FsXG4uYWxwaGEgPT4gLmkuaWNvbi5hbHBoYWJldFxuLmFzYyA9PiAuaS5pY29uLmFzY2VuZGluZ1xuLmRlc2MgPT4gLmkuaWNvbi5kZXNjZW5kaW5nXG4uYWx0ID0+LmFsdGVybmF0ZVxuXG5BU0NJSSBvcmRlciBpcyBjb25zZXJ2ZWQgZm9yIGVhc2llciBtYWludGVuYW5jZS5cblxuSWNvbnMgdGhhdCBvbmx5IGhhdmUgb25lIHN0eWxlICdvdXRsaW5lJywgJ3NxdWFyZScgZXRjIGRvIG5vdCByZXF1aXJlIHRoaXMgY2xhc3NcbmZvciBpbnN0YW5jZSBgbGVtb24gaWNvbmAgbm90IGBsZW1vbiBvdXRsaW5lIGljb25gIHNpbmNlIHRoZXJlIGlzIG9ubHkgb25lIGxlbW9uXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBJY29uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogV2ViIENvbnRlbnQgKi9cblxuaS5pY29uLnNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwMlwiO1xufVxuXG5pLmljb24ubWFpbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAzXCI7XG59XG5cbmkuaWNvbi5leHRlcm5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZVwiO1xufVxuXG5pLmljb24uc2lnbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEyXCI7XG59XG5cbmkuaWNvbi5zZXR0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEzXCI7XG59XG5cbmkuaWNvbi5ob21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG59XG5cbmkuaWNvbi5pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxY1wiO1xufVxuXG5pLmljb24uYnJvd3NlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMlwiO1xufVxuXG5pLmljb24udGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJiXCI7XG59XG5cbmkuaWNvbi50YWdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJjXCI7XG59XG5cbmkuaWNvbi5jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3M1wiO1xufVxuXG5pLmljb24uY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NVwiO1xufVxuXG5pLmljb24uY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODZcIjtcbn1cblxuaS5pY29uLnNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cblxuaS5pY29uLnByaXZhY3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cblxuaS5pY29uLnNldHRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg1XCI7XG59XG5cbmkuaWNvbi50cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTFcIjtcbn1cblxuaS5pY29uLnBheW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cblxuaS5pY29uLmZlZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWVcIjtcbn1cblxuaS5pY29uLmFsYXJtLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTJcIjtcbn1cblxuaS5pY29uLnRhc2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFlXCI7XG59XG5cbmkuaWNvbi5jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMlwiO1xufVxuXG5pLmljb24ubGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMzXCI7XG59XG5cbmkuaWNvbi5tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUwXCI7XG59XG5cbmkuaWNvbi5pZGVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGViXCI7XG59XG5cbmkuaWNvbi5kYXNoYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTRcIjtcbn1cblxuaS5pY29uLnNpdGVtYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZThcIjtcbn1cblxuaS5pY29uLmFsYXJtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYzXCI7XG59XG5cbmkuaWNvbi50ZXJtaW5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyMFwiO1xufVxuXG5pLmljb24uY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyMVwiO1xufVxuXG5pLmljb24ucHJvdGVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzMlwiO1xufVxuXG5pLmljb24uY2FsZW5kYXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzM1wiO1xufVxuXG5pLmljb24udGlja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ1XCI7XG59XG5cbmkuaWNvbi5leHRlcm5hbC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGNcIjtcbn1cblxuaS5pY29uLm1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZVwiO1xufVxuXG5pLmljb24uYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg4XCI7XG59XG5cbmkuaWNvbi5tYWlsLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OVwiO1xufVxuXG5pLmljb24uaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYVwiO1xufVxuXG5pLmljb24ub3B0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZVwiO1xufVxuXG5pLmljb24uY29tbWVudC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU1XCI7XG59XG5cbmkuaWNvbi5jb21tZW50cy5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU2XCI7XG59XG5cbmkuaWNvbi50ZXh0LnRlbGVwaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuXG5pLmljb24uZmluZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNVwiO1xufVxuXG5pLmljb24ud2lmaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYlwiO1xufVxuXG5pLmljb24uYWxhcm0uc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjZcIjtcbn1cblxuaS5pY29uLmFsYXJtLnNsYXNoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjdcIjtcbn1cblxuaS5pY29uLmNvcHlyaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmOVwiO1xufVxuXG5pLmljb24uYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmFcIjtcbn1cblxuaS5pY29uLmV5ZWRyb3BwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmJcIjtcbn1cblxuaS5pY29uLnBhaW50LmJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZjXCI7XG59XG5cbmkuaWNvbi5oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWVcIjtcbn1cblxuLyogVXNlciBBY3Rpb25zICovXG5cbmkuaWNvbi5kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxOVwiO1xufVxuXG5pLmljb24ucmVwZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDFlXCI7XG59XG5cbmkuaWNvbi5yZWZyZXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG59XG5cbmkuaWNvbi5sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIzXCI7XG59XG5cbmkuaWNvbi5ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZVwiO1xufVxuXG5pLmljb24ucHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmZcIjtcbn1cblxuaS5pY29uLndyaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQwXCI7XG59XG5cbmkuaWNvbi50aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0M1wiO1xufVxuXG5pLmljb24uYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQyXCI7XG59XG5cbmkuaWNvbi5lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQ0XCI7XG59XG5cbmkuaWNvbi5leHRlcm5hbC5zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0NVwiO1xufVxuXG5pLmljb24uYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVlXCI7XG59XG5cbmkuaWNvbi5tYWlsLmZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjRcIjtcbn1cblxuaS5pY29uLnNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY0XCI7XG59XG5cbmkuaWNvbi5leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjVcIjtcbn1cblxuaS5pY29uLmNvbXByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY2XCI7XG59XG5cbmkuaWNvbi51bmhpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmVcIjtcbn1cblxuaS5pY29uLmhpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cblxuaS5pY29uLnJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NFwiO1xufVxuXG5pLmljb24ucmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3OVwiO1xufVxuXG5pLmljb24uc2lnbi5vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGJcIjtcbn1cblxuaS5pY29uLnBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuXG5pLmljb24uc2lnbi5pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MFwiO1xufVxuXG5pLmljb24udXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkzXCI7XG59XG5cbmkuaWNvbi5jYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk1XCI7XG59XG5cbmkuaWNvbi5jYWxsLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OFwiO1xufVxuXG5pLmljb24ucmVtb3ZlLmJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk3XCI7XG59XG5cbmkuaWNvbi51bmxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWNcIjtcbn1cblxuaS5pY29uLmNvbmZpZ3VyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhZFwiO1xufVxuXG5pLmljb24uZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIwXCI7XG59XG5cbmkuaWNvbi53aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cblxuaS5pY29uLnVuZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTJcIjtcbn1cblxuaS5pY29uLmV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGVjXCI7XG59XG5cbmkuaWNvbi5jbG91ZC5kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlZFwiO1xufVxuXG5pLmljb24uY2xvdWQudXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGVlXCI7XG59XG5cbmkuaWNvbi5yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMlwiO1xufVxuXG5pLmljb24ucmVwbHkuYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTIyXCI7XG59XG5cbmkuaWNvbi5lcmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZFwiO1xufVxuXG5pLmljb24udW5sb2NrLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzZVwiO1xufVxuXG5pLmljb24uYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuXG5pLmljb24udHJhbnNsYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFiXCI7XG59XG5cbmkuaWNvbi5yZWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI4XCI7XG59XG5cbmkuaWNvbi5zZW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ4XCI7XG59XG5cbmkuaWNvbi5zZW5kLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDlcIjtcbn1cblxuaS5pY29uLnNoYXJlLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMFwiO1xufVxuXG5pLmljb24uc2hhcmUuYWx0ZXJuYXRlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMVwiO1xufVxuXG5pLmljb24ud2FpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxN1wiO1xufVxuXG5pLmljb24ud3JpdGUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRiXCI7XG59XG5cbmkuaWNvbi5zaGFyZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGRcIjtcbn1cblxuaS5pY29uLmFkZC50by5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5cbmkuaWNvbi5pbi5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE4XCI7XG59XG5cbmkuaWNvbi5hZGQudXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNFwiO1xufVxuXG5pLmljb24ucmVtb3ZlLnVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuLyogTWVzc2FnZXMgKi9cblxuaS5pY29uLmhlbHAuY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU5XCI7XG59XG5cbmkuaWNvbi5pbmZvLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YVwiO1xufVxuXG5pLmljb24ud2FybmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYVwiO1xufVxuXG5pLmljb24ud2FybmluZy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmFcIjtcbn1cblxuaS5pY29uLndhcm5pbmcuc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MVwiO1xufVxuXG5pLmljb24uaGVscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyOFwiO1xufVxuXG5pLmljb24uaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyOVwiO1xufVxuXG5pLmljb24uYW5ub3VuY2VtZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGExXCI7XG59XG5cbmkuaWNvbi5iaXJ0aGRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZFwiO1xufVxuXG4vKiBVc2VycyAqL1xuXG5pLmljb24udXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzBcIjtcbn1cblxuaS5pY29uLmRvY3RvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmMFwiO1xufVxuXG5pLmljb24uY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWVcIjtcbn1cblxuaS5pY29uLnVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cblxuaS5pY29uLmhhbmRpY2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkzXCI7XG59XG5cbmkuaWNvbi5zdHVkZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlkXCI7XG59XG5cbmkuaWNvbi5zcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWJcIjtcbn1cblxuLyogR2VuZGVyICYgU2V4dWFsaXR5ICovXG5cbmkuaWNvbi5mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODJcIjtcbn1cblxuaS5pY29uLm1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODNcIjtcbn1cblxuaS5pY29uLndvbWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIxXCI7XG59XG5cbmkuaWNvbi5tYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjJcIjtcbn1cblxuaS5pY29uLm5vbi5iaW5hcnkudHJhbnNnZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cblxuaS5pY29uLmludGVyZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI0XCI7XG59XG5cbmkuaWNvbi50cmFuc2dlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNVwiO1xufVxuXG5pLmljb24ubGVzYmlhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuXG5pLmljb24uZ2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI3XCI7XG59XG5cbmkuaWNvbi5oZXRlcm9zZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cblxuaS5pY29uLm90aGVyLmdlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuXG5pLmljb24ub3RoZXIuZ2VuZGVyLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJhXCI7XG59XG5cbmkuaWNvbi5vdGhlci5nZW5kZXIuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYlwiO1xufVxuXG5pLmljb24ubmV1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJjXCI7XG59XG5cbi8qIFZpZXcgQWRqdXN0bWVudCAqL1xuXG5pLmljb24uZ3JpZC5sYXlvdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGFcIjtcbn1cblxuaS5pY29uLmxpc3QubGF5b3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBiXCI7XG59XG5cbmkuaWNvbi5ibG9jay5sYXlvdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDlcIjtcbn1cblxuaS5pY29uLnpvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cblxuaS5pY29uLnpvb20ub3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEwXCI7XG59XG5cbmkuaWNvbi5yZXNpemUudmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2RcIjtcbn1cblxuaS5pY29uLnJlc2l6ZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdlXCI7XG59XG5cbmkuaWNvbi5tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMlwiO1xufVxuXG5pLmljb24uY3JvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNVwiO1xufVxuXG4vKiBMaXRlcmFsIE9iamVjdHMgKi9cblxuaS5pY29uLmNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAwXCI7XG59XG5cbmkuaWNvbi5yb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE4XCI7XG59XG5cbmkuaWNvbi5mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG5cbmkuaWNvbi5ib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJkXCI7XG59XG5cbmkuaWNvbi5naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZiXCI7XG59XG5cbmkuaWNvbi5sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZjXCI7XG59XG5cbmkuaWNvbi5maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZkXCI7XG59XG5cbmkuaWNvbi5wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MlwiO1xufVxuXG5pLmljb24ubWFnbmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc2XCI7XG59XG5cbmkuaWNvbi5sZWdhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlM1wiO1xufVxuXG5pLmljb24ubGVtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTRcIjtcbn1cblxuaS5pY29uLndvcmxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFjXCI7XG59XG5cbmkuaWNvbi50cmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYjFcIjtcbn1cblxuaS5pY29uLnNoaXBwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQxXCI7XG59XG5cbmkuaWNvbi5tb25leTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNlwiO1xufVxuXG5pLmljb24ubGlnaHRuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU3XCI7XG59XG5cbmkuaWNvbi5yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU5XCI7XG59XG5cbmkuaWNvbi50cmVhdG1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjFcIjtcbn1cblxuaS5pY29uLnN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYyXCI7XG59XG5cbmkuaWNvbi5iYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmNcIjtcbn1cblxuaS5pY29uLmZsYWcub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExZFwiO1xufVxuXG5pLmljb24uZmxhZy5jaGVja2VyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWVcIjtcbn1cblxuaS5pY29uLnB1enpsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyZVwiO1xufVxuXG5pLmljb24uZmlyZS5leHRpbmd1aXNoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzRcIjtcbn1cblxuaS5pY29uLnJvY2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNVwiO1xufVxuXG5pLmljb24uYW5jaG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNkXCI7XG59XG5cbmkuaWNvbi5idWxsc2V5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MFwiO1xufVxuXG5pLmljb24uc3VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg1XCI7XG59XG5cbmkuaWNvbi5tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg2XCI7XG59XG5cbmkuaWNvbi5mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWNcIjtcbn1cblxuaS5pY29uLmxpZmUucmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjZFwiO1xufVxuXG5pLmljb24uYm9tYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMlwiO1xufVxuXG5pLmljb24uc29jY2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWUzXCI7XG59XG5cbmkuaWNvbi5jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVjXCI7XG59XG5cbmkuaWNvbi5kaWFtb25kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE5XCI7XG59XG5cbi8qIFNoYXBlcyAqL1xuXG5pLmljb24uY3Jvc3NoYWlyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YlwiO1xufVxuXG5pLmljb24uYXN0ZXJpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjlcIjtcbn1cblxuaS5pY29uLmNlcnRpZmljYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEzXCI7XG59XG5cbmkuaWNvbi5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTFcIjtcbn1cblxuaS5pY29uLnF1b3RlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGRcIjtcbn1cblxuaS5pY29uLnF1b3RlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBlXCI7XG59XG5cbmkuaWNvbi5lbGxpcHNpcy5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQxXCI7XG59XG5cbmkuaWNvbi5lbGxpcHNpcy52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MlwiO1xufVxuXG5pLmljb24uY3ViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMlwiO1xufVxuXG5pLmljb24uY3ViZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjNcIjtcbn1cblxuaS5pY29uLmNpcmNsZS5ub3RjaGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNlXCI7XG59XG5cbmkuaWNvbi5jaXJjbGUudGhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYlwiO1xufVxuXG4vKiBJdGVtIFNlbGVjdGlvbiAqL1xuXG5pLmljb24uY2hlY2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5cbmkuaWNvbi5yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLmNoZWNrbWFyay5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDZcIjtcbn1cblxuaS5pY29uLm1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDdcIjtcbn1cblxuaS5pY29uLmFkZC5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTVcIjtcbn1cblxuaS5pY29uLm1pbnVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NlwiO1xufVxuXG5pLmljb24ucmVtb3ZlLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuXG5pLmljb24uY2hlY2suY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU4XCI7XG59XG5cbmkuaWNvbi5yZW1vdmUuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWNcIjtcbn1cblxuaS5pY29uLmNoZWNrLmNpcmNsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDVkXCI7XG59XG5cbmkuaWNvbi5wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG59XG5cbmkuaWNvbi5taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2OFwiO1xufVxuXG5pLmljb24uYWRkLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZVwiO1xufVxuXG5pLmljb24ucmFkaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGNcIjtcbn1cblxuaS5pY29uLnNlbGVjdGVkLnJhZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkyXCI7XG59XG5cbmkuaWNvbi5taW51cy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDZcIjtcbn1cblxuaS5pY29uLm1pbnVzLnNxdWFyZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ3XCI7XG59XG5cbmkuaWNvbi5jaGVjay5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGFcIjtcbn1cblxuaS5pY29uLnBsdXMuc3F1YXJlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTZcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS5vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDRcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS5vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwNVwiO1xufVxuXG4vKiBNZWRpYSAqL1xuXG5pLmljb24uZmlsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOFwiO1xufVxuXG5pLmljb24uc291bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjVcIjtcbn1cblxuaS5pY29uLnBob3RvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMwXCI7XG59XG5cbmkuaWNvbi5iYXIuY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODBcIjtcbn1cblxuaS5pY29uLmNhbWVyYS5yZXRybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4M1wiO1xufVxuXG5pLmljb24ubmV3c3BhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVhXCI7XG59XG5cbmkuaWNvbi5hcmVhLmNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZlXCI7XG59XG5cbmkuaWNvbi5waWUuY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDBcIjtcbn1cblxuaS5pY29uLmxpbmUuY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDFcIjtcbn1cblxuLyogUG9pbnRlcnMgKi9cblxuaS5pY29uLmFycm93LmNpcmNsZS5vdXRsaW5lLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWFcIjtcbn1cblxuaS5pY29uLmFycm93LmNpcmNsZS5vdXRsaW5lLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDFiXCI7XG59XG5cbmkuaWNvbi5jaGV2cm9uLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTNcIjtcbn1cblxuaS5pY29uLmNoZXZyb24ucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cblxuaS5pY29uLmFycm93LmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjBcIjtcbn1cblxuaS5pY29uLmFycm93LnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG59XG5cbmkuaWNvbi5hcnJvdy51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MlwiO1xufVxuXG5pLmljb24uYXJyb3cuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2M1wiO1xufVxuXG5pLmljb24uY2hldnJvbi51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3N1wiO1xufVxuXG5pLmljb24uY2hldnJvbi5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG5cbmkuaWNvbi5wb2ludGluZy5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNFwiO1xufVxuXG5pLmljb24ucG9pbnRpbmcubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNVwiO1xufVxuXG5pLmljb24ucG9pbnRpbmcudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTZcIjtcbn1cblxuaS5pY29uLnBvaW50aW5nLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cblxuaS5pY29uLmFycm93LmNpcmNsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE4XCI7XG59XG5cbmkuaWNvbi5hcnJvdy5jaXJjbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTlcIjtcbn1cblxuaS5pY29uLmFycm93LmNpcmNsZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhYVwiO1xufVxuXG5pLmljb24uYXJyb3cuY2lyY2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWJcIjtcbn1cblxuaS5pY29uLmNhcmV0LmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDdcIjtcbn1cblxuaS5pY29uLmNhcmV0LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG5cbmkuaWNvbi5jYXJldC5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCI7XG59XG5cbmkuaWNvbi5jYXJldC5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkYVwiO1xufVxuXG5pLmljb24uYW5nbGUuZG91YmxlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDBcIjtcbn1cblxuaS5pY29uLmFuZ2xlLmRvdWJsZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwMVwiO1xufVxuXG5pLmljb24uYW5nbGUuZG91YmxlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAyXCI7XG59XG5cbmkuaWNvbi5hbmdsZS5kb3VibGUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwM1wiO1xufVxuXG5pLmljb24uYW5nbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNFwiO1xufVxuXG5pLmljb24uYW5nbGUucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDVcIjtcbn1cblxuaS5pY29uLmFuZ2xlLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA2XCI7XG59XG5cbmkuaWNvbi5hbmdsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG59XG5cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM3XCI7XG59XG5cbmkuaWNvbi5jaGV2cm9uLmNpcmNsZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzOFwiO1xufVxuXG5pLmljb24uY2hldnJvbi5jaXJjbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzlcIjtcbn1cblxuaS5pY29uLmNoZXZyb24uY2lyY2xlLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2FcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUwXCI7XG59XG5cbmkuaWNvbi50b2dnbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTFcIjtcbn1cblxuaS5pY29uLnRvZ2dsZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1MlwiO1xufVxuXG5pLmljb24ubG9uZy5hcnJvdy5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc1XCI7XG59XG5cbmkuaWNvbi5sb25nLmFycm93LnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc2XCI7XG59XG5cbmkuaWNvbi5sb25nLmFycm93LmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzdcIjtcbn1cblxuaS5pY29uLmxvbmcuYXJyb3cucmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzhcIjtcbn1cblxuaS5pY29uLmFycm93LmNpcmNsZS5vdXRsaW5lLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThlXCI7XG59XG5cbmkuaWNvbi5hcnJvdy5jaXJjbGUub3V0bGluZS5sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTkwXCI7XG59XG5cbmkuaWNvbi50b2dnbGUubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5MVwiO1xufVxuXG4vKiBDb21wdXRlciAqL1xuXG5pLmljb24ucG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cblxuaS5pY29uLnRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY4XCI7XG59XG5cbmkuaWNvbi50cmFzaC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE0XCI7XG59XG5cbmkuaWNvbi5kaXNrLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTBcIjtcbn1cblxuaS5pY29uLmRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDhcIjtcbn1cblxuaS5pY29uLmxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOVwiO1xufVxuXG5pLmljb24udGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBhXCI7XG59XG5cbmkuaWNvbi5tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGJcIjtcbn1cblxuaS5pY29uLmdhbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWJcIjtcbn1cblxuaS5pY29uLmtleWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTFjXCI7XG59XG5cbmkuaWNvbi5wbHVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU2XCI7XG59XG5cbi8qIEZpbGUgU3lzdGVtICovXG5cbmkuaWNvbi5mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2JcIjtcbn1cblxuaS5pY29uLmZvbGRlci5vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdjXCI7XG59XG5cbmkuaWNvbi5sZXZlbC51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0OFwiO1xufVxuXG5pLmljb24ubGV2ZWwuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0OVwiO1xufVxuXG5pLmljb24uZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YlwiO1xufVxuXG5pLmljb24uZmlsZS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE2XCI7XG59XG5cbmkuaWNvbi5maWxlLnRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWNcIjtcbn1cblxuaS5pY29uLmZpbGUudGV4dC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY2XCI7XG59XG5cbmkuaWNvbi5mb2xkZXIub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExNFwiO1xufVxuXG5pLmljb24uZm9sZGVyLm9wZW4ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExNVwiO1xufVxuXG5pLmljb24uZmlsZS5wZGYub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMVwiO1xufVxuXG5pLmljb24uZmlsZS53b3JkLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzJcIjtcbn1cblxuaS5pY29uLmZpbGUuZXhjZWwub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjM1wiO1xufVxuXG5pLmljb24uZmlsZS5wb3dlcnBvaW50Lm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzRcIjtcbn1cblxuaS5pY29uLmZpbGUuaW1hZ2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNVwiO1xufVxuXG5pLmljb24uZmlsZS5hcmNoaXZlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzZcIjtcbn1cblxuaS5pY29uLmZpbGUuYXVkaW8ub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjN1wiO1xufVxuXG5pLmljb24uZmlsZS52aWRlby5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM4XCI7XG59XG5cbmkuaWNvbi5maWxlLmNvZGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOVwiO1xufVxuXG4vKiBUZWNobm9sb2dpZXMgKi9cblxuaS5pY29uLmJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmFcIjtcbn1cblxuaS5pY29uLnFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOVwiO1xufVxuXG5pLmljb24uZm9yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyNlwiO1xufVxuXG5pLmljb24uaHRtbDU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2JcIjtcbn1cblxuaS5pY29uLmNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2NcIjtcbn1cblxuaS5pY29uLnJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZVwiO1xufVxuXG5pLmljb24ucnNzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0M1wiO1xufVxuXG5pLmljb24ub3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTliXCI7XG59XG5cbmkuaWNvbi5kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMFwiO1xufVxuXG5pLmljb24uc2VydmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMzXCI7XG59XG5cbi8qIFJhdGluZyAqL1xuXG5pLmljb24uaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDRcIjtcbn1cblxuaS5pY29uLnN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDVcIjtcbn1cblxuaS5pY29uLmVtcHR5LnN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDZcIjtcbn1cblxuaS5pY29uLnRodW1icy5vdXRsaW5lLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg3XCI7XG59XG5cbmkuaWNvbi50aHVtYnMub3V0bGluZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg4XCI7XG59XG5cbmkuaWNvbi5zdGFyLmhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODlcIjtcbn1cblxuaS5pY29uLmVtcHR5LmhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhhXCI7XG59XG5cbmkuaWNvbi5zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOFwiO1xufVxuXG5pLmljb24uZnJvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTlcIjtcbn1cblxuaS5pY29uLm1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYVwiO1xufVxuXG5pLmljb24uc3Rhci5oYWxmLmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTIzXCI7XG59XG5cbmkuaWNvbi50aHVtYnMudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjRcIjtcbn1cblxuaS5pY29uLnRodW1icy5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY1XCI7XG59XG5cbi8qIEF1ZGlvICovXG5cbmkuaWNvbi5tdXNpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwMVwiO1xufVxuXG5pLmljb24udmlkZW8ucGxheS5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDFkXCI7XG59XG5cbmkuaWNvbi52b2x1bWUub2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI2XCI7XG59XG5cbmkuaWNvbi52b2x1bWUuZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyN1wiO1xufVxuXG5pLmljb24udm9sdW1lLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI4XCI7XG59XG5cbmkuaWNvbi5yZWNvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2RcIjtcbn1cblxuaS5pY29uLnN0ZXAuYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDhcIjtcbn1cblxuaS5pY29uLmZhc3QuYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDlcIjtcbn1cblxuaS5pY29uLmJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRhXCI7XG59XG5cbmkuaWNvbi5wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRiXCI7XG59XG5cbmkuaWNvbi5wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0Y1wiO1xufVxuXG5pLmljb24uc3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZFwiO1xufVxuXG5pLmljb24uZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0ZVwiO1xufVxuXG5pLmljb24uZmFzdC5mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDUwXCI7XG59XG5cbmkuaWNvbi5zdGVwLmZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTFcIjtcbn1cblxuaS5pY29uLmVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDUyXCI7XG59XG5cbmkuaWNvbi51bm11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzBcIjtcbn1cblxuaS5pY29uLm11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzFcIjtcbn1cblxuaS5pY29uLnZpZGVvLnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cblxuaS5pY29uLmNsb3NlZC5jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBhXCI7XG59XG5cbi8qIE1hcCwgTG9jYXRpb25zLCAmIFRyYW5zcG9ydGF0aW9uICovXG5cbmkuaWNvbi5tYXJrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDFcIjtcbn1cblxuaS5pY29uLmNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNFwiO1xufVxuXG5pLmljb24uZm9vZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmNVwiO1xufVxuXG5pLmljb24uYnVpbGRpbmcub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmN1wiO1xufVxuXG5pLmljb24uaG9zcGl0YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjhcIjtcbn1cblxuaS5pY29uLmVtZXJnZW5jeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmOVwiO1xufVxuXG5pLmljb24uZmlyc3QuYWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZhXCI7XG59XG5cbmkuaWNvbi5taWxpdGFyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmYlwiO1xufVxuXG5pLmljb24uaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmZFwiO1xufVxuXG5pLmljb24ubG9jYXRpb24uYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjRcIjtcbn1cblxuaS5pY29uLnNwYWNlLnNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTdcIjtcbn1cblxuaS5pY29uLnVuaXZlcnNpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWNcIjtcbn1cblxuaS5pY29uLmJ1aWxkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFkXCI7XG59XG5cbmkuaWNvbi5wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjBcIjtcbn1cblxuaS5pY29uLnNwb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIxXCI7XG59XG5cbmkuaWNvbi5jYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjlcIjtcbn1cblxuaS5pY29uLnRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmFcIjtcbn1cblxuaS5pY29uLnRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmJcIjtcbn1cblxuaS5pY29uLmJpY3ljbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDZcIjtcbn1cblxuaS5pY29uLmJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwN1wiO1xufVxuXG5pLmljb24uc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxYVwiO1xufVxuXG5pLmljb24ubW90b3JjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxY1wiO1xufVxuXG5pLmljb24uc3RyZWV0LnZpZXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMWRcIjtcbn1cblxuaS5pY29uLmhvdGVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM2XCI7XG59XG5cbmkuaWNvbi50cmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzOFwiO1xufVxuXG5pLmljb24uc3Vid2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM5XCI7XG59XG5cbi8qIFRhYmxlcyAqL1xuXG5pLmljb24udGFibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2VcIjtcbn1cblxuaS5pY29uLmNvbHVtbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGJcIjtcbn1cblxuaS5pY29uLnNvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGNcIjtcbn1cblxuaS5pY29uLnNvcnQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRkXCI7XG59XG5cbmkuaWNvbi5zb3J0LmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGVcIjtcbn1cblxuaS5pY29uLnNvcnQuYWxwaGFiZXQuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTVkXCI7XG59XG5cbmkuaWNvbi5zb3J0LmFscGhhYmV0LmRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWVcIjtcbn1cblxuaS5pY29uLnNvcnQuY29udGVudC5hc2NlbmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjBcIjtcbn1cblxuaS5pY29uLnNvcnQuY29udGVudC5kZXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYxXCI7XG59XG5cbmkuaWNvbi5zb3J0Lm51bWVyaWMuYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYyXCI7XG59XG5cbmkuaWNvbi5zb3J0Lm51bWVyaWMuZGVzY2VuZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2M1wiO1xufVxuXG4vKiBUZXh0IEVkaXRvciAqL1xuXG5pLmljb24uZm9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMVwiO1xufVxuXG5pLmljb24uYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMlwiO1xufVxuXG5pLmljb24uaXRhbGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMzXCI7XG59XG5cbmkuaWNvbi50ZXh0LmhlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNFwiO1xufVxuXG5pLmljb24udGV4dC53aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNVwiO1xufVxuXG5pLmljb24uYWxpZ24ubGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNlwiO1xufVxuXG5pLmljb24uYWxpZ24uY2VudGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDM3XCI7XG59XG5cbmkuaWNvbi5hbGlnbi5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzOFwiO1xufVxuXG5pLmljb24uYWxpZ24uanVzdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzOVwiO1xufVxuXG5pLmljb24ubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzYVwiO1xufVxuXG5pLmljb24ub3V0ZGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzYlwiO1xufVxuXG5pLmljb24uaW5kZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNjXCI7XG59XG5cbmkuaWNvbi5saW5raWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMxXCI7XG59XG5cbmkuaWNvbi5jdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzRcIjtcbn1cblxuaS5pY29uLmNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzVcIjtcbn1cblxuaS5pY29uLmF0dGFjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjNlwiO1xufVxuXG5pLmljb24uc2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjN1wiO1xufVxuXG5pLmljb24uY29udGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuXG5pLmljb24udW5vcmRlcmVkLmxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2FcIjtcbn1cblxuaS5pY29uLm9yZGVyZWQubGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYlwiO1xufVxuXG5pLmljb24uc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjY1wiO1xufVxuXG5pLmljb24udW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNkXCI7XG59XG5cbmkuaWNvbi5wYXN0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlYVwiO1xufVxuXG5pLmljb24udW5saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI3XCI7XG59XG5cbmkuaWNvbi5zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYlwiO1xufVxuXG5pLmljb24uc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJjXCI7XG59XG5cbmkuaWNvbi5oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGNcIjtcbn1cblxuaS5pY29uLnBhcmFncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkZFwiO1xufVxuXG4vKiBDdXJyZW5jeSAqL1xuXG5pLmljb24uZXVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1M1wiO1xufVxuXG5pLmljb24ucG91bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTRcIjtcbn1cblxuaS5pY29uLmRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NVwiO1xufVxuXG5pLmljb24ucnVwZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTZcIjtcbn1cblxuaS5pY29uLnllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1N1wiO1xufVxuXG5pLmljb24ucnVibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNThcIjtcbn1cblxuaS5pY29uLndvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OVwiO1xufVxuXG5pLmljb24ubGlyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NVwiO1xufVxuXG5pLmljb24uc2hla2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBiXCI7XG59XG5cbi8qIFBheW1lbnQgT3B0aW9ucyAqL1xuXG5pLmljb24ucGF5cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVkXCI7XG59XG5cbmkuaWNvbi5wYXlwYWwuY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuXG5pLmljb24uZ29vZ2xlLndhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlZVwiO1xufVxuXG5pLmljb24udmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMFwiO1xufVxuXG5pLmljb24ubWFzdGVyY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmMVwiO1xufVxuXG5pLmljb24uZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjJcIjtcbn1cblxuaS5pY29uLmFtZXJpY2FuLmV4cHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbn1cblxuaS5pY29uLnN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNVwiO1xufVxuXG4vKiBOZXR3b3JrcyBhbmQgV2Vic2l0ZXMqL1xuXG5pLmljb24udHdpdHRlci5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODFcIjtcbn1cblxuaS5pY29uLmZhY2Vib29rLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MlwiO1xufVxuXG5pLmljb24ubGlua2VkaW4uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG59XG5cbmkuaWNvbi5naXRodWIuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkyXCI7XG59XG5cbmkuaWNvbi50d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk5XCI7XG59XG5cbmkuaWNvbi5mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5YVwiO1xufVxuXG5pLmljb24uZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG59XG5cbmkuaWNvbi5waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDJcIjtcbn1cblxuaS5pY29uLnBpbnRlcmVzdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDNcIjtcbn1cblxuaS5pY29uLmdvb2dsZS5wbHVzLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNFwiO1xufVxuXG5pLmljb24uZ29vZ2xlLnBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDVcIjtcbn1cblxuaS5pY29uLmxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUxXCI7XG59XG5cbmkuaWNvbi5naXRodWIuYWx0ZXJuYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTEzXCI7XG59XG5cbmkuaWNvbi5tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzZcIjtcbn1cblxuaS5pY29uLmJpdGNvaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWFcIjtcbn1cblxuaS5pY29uLnlvdXR1YmUuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY2XCI7XG59XG5cbmkuaWNvbi55b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY3XCI7XG59XG5cbmkuaWNvbi54aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY4XCI7XG59XG5cbmkuaWNvbi54aW5nLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2OVwiO1xufVxuXG5pLmljb24ueW91dHViZS5wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZhXCI7XG59XG5cbmkuaWNvbi5kcm9wYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZiXCI7XG59XG5cbmkuaWNvbi5zdGFjay5vdmVyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2Y1wiO1xufVxuXG5pLmljb24uaW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZkXCI7XG59XG5cbmkuaWNvbi5mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNmVcIjtcbn1cblxuaS5pY29uLmFkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3MFwiO1xufVxuXG5pLmljb24uYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcxXCI7XG59XG5cbmkuaWNvbi5iaXRidWNrZXQuc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcyXCI7XG59XG5cbmkuaWNvbi50dW1ibHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzNcIjtcbn1cblxuaS5pY29uLnR1bWJsci5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzRcIjtcbn1cblxuaS5pY29uLmFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc5XCI7XG59XG5cbmkuaWNvbi53aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdhXCI7XG59XG5cbmkuaWNvbi5hbmRyb2lkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdiXCI7XG59XG5cbmkuaWNvbi5saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3Y1wiO1xufVxuXG5pLmljb24uZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2RcIjtcbn1cblxuaS5pY29uLnNreXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdlXCI7XG59XG5cbmkuaWNvbi5mb3Vyc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTgwXCI7XG59XG5cbmkuaWNvbi50cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODFcIjtcbn1cblxuaS5pY29uLmdpdHRpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NFwiO1xufVxuXG5pLmljb24udms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODlcIjtcbn1cblxuaS5pY29uLndlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThhXCI7XG59XG5cbmkuaWNvbi5yZW5yZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGJcIjtcbn1cblxuaS5pY29uLnBhZ2VsaW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4Y1wiO1xufVxuXG5pLmljb24uc3RhY2suZXhjaGFuZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGRcIjtcbn1cblxuaS5pY29uLnZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk0XCI7XG59XG5cbmkuaWNvbi5zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OFwiO1xufVxuXG5pLmljb24ud29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlhXCI7XG59XG5cbmkuaWNvbi55YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZVwiO1xufVxuXG5pLmljb24uZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEwXCI7XG59XG5cbmkuaWNvbi5yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTFcIjtcbn1cblxuaS5pY29uLnJlZGRpdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTJcIjtcbn1cblxuaS5pY29uLnN0dW1ibGV1cG9uLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhM1wiO1xufVxuXG5pLmljb24uc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYTRcIjtcbn1cblxuaS5pY29uLmRlbGljaW91czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNVwiO1xufVxuXG5pLmljb24uZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNlwiO1xufVxuXG5pLmljb24ucGllZC5waXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhN1wiO1xufVxuXG5pLmljb24ucGllZC5waXBlci5hbHRlcm5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYThcIjtcbn1cblxuaS5pY29uLmRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhOVwiO1xufVxuXG5pLmljb24uam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFhXCI7XG59XG5cbmkuaWNvbi5iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI0XCI7XG59XG5cbmkuaWNvbi5iZWhhbmNlLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiNVwiO1xufVxuXG5pLmljb24uc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjZcIjtcbn1cblxuaS5pY29uLnN0ZWFtLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiN1wiO1xufVxuXG5pLmljb24uc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiY1wiO1xufVxuXG5pLmljb24uZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiZFwiO1xufVxuXG5pLmljb24uc291bmRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiZVwiO1xufVxuXG5pLmljb24udmluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjYVwiO1xufVxuXG5pLmljb24uY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjYlwiO1xufVxuXG5pLmljb24uanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbn1cblxuaS5pY29uLnJlYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQwXCI7XG59XG5cbmkuaWNvbi5lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDFcIjtcbn1cblxuaS5pY29uLmdpdC5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDJcIjtcbn1cblxuaS5pY29uLmdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkM1wiO1xufVxuXG5pLmljb24uaGFja2VyLm5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDRcIjtcbn1cblxuaS5pY29uLnRlbmNlbnQud2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDVcIjtcbn1cblxuaS5pY29uLnFxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ2XCI7XG59XG5cbmkuaWNvbi53ZWNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDdcIjtcbn1cblxuaS5pY29uLnNsaWRlc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTdcIjtcbn1cblxuaS5pY29uLnR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlOFwiO1xufVxuXG5pLmljb24ueWVscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlOVwiO1xufVxuXG5pLmljb24ubGFzdGZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAyXCI7XG59XG5cbmkuaWNvbi5sYXN0Zm0uc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAzXCI7XG59XG5cbmkuaWNvbi5pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA4XCI7XG59XG5cbmkuaWNvbi5hbmdlbGxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDlcIjtcbn1cblxuaS5pY29uLm1lYW5wYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBjXCI7XG59XG5cbmkuaWNvbi5idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjBkXCI7XG59XG5cbmkuaWNvbi5jb25uZWN0ZGV2ZWxvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwZVwiO1xufVxuXG5pLmljb24uZGFzaGN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTBcIjtcbn1cblxuaS5pY29uLmZvcnVtYmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjExXCI7XG59XG5cbmkuaWNvbi5sZWFucHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjEyXCI7XG59XG5cbmkuaWNvbi5zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTNcIjtcbn1cblxuaS5pY29uLnNoaXJ0c2luYnVsazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxNFwiO1xufVxuXG5pLmljb24uc2ltcGx5YnVpbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTVcIjtcbn1cblxuaS5pY29uLnNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE2XCI7XG59XG5cbmkuaWNvbi53aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzMlwiO1xufVxuXG5pLmljb24udmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzN1wiO1xufVxuXG5pLmljb24ubWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNhXCI7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBBbGlhc2VzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5pLmljb24ubGlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuXG5pLmljb24uZmF2b3JpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDVcIjtcbn1cblxuaS5pY29uLnZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA4XCI7XG59XG5cbmkuaWNvbi5jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xufVxuXG5pLmljb24ucmVtb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG5cbmkuaWNvbi5jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG5pLmljb24uY2FuY2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG59XG5cbmkuaWNvbi5kZWxldGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLng6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuaS5pY29uLnVzZXIudGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnVzZXIuY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzVcIjtcbn1cblxuaS5pY29uLnVzZXIuY2FuY2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5cbmkuaWNvbi51c2VyLmRlbGV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzNVwiO1xufVxuXG5pLmljb24udXNlci54OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5cbmkuaWNvbi56b29tLmluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBlXCI7XG59XG5cbmkuaWNvbi5tYWduaWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBlXCI7XG59XG5cbmkuaWNvbi5zaHV0ZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMVwiO1xufVxuXG5pLmljb24uY2xvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cblxuaS5pY29uLnRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cblxuaS5pY29uLnBsYXkuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWRcIjtcbn1cblxuaS5pY29uLmhlYWRwaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNVwiO1xufVxuXG5pLmljb24udm9sdW1lLm9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNlwiO1xufVxuXG5pLmljb24uY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMwXCI7XG59XG5cbmkuaWNvbi52aWRlby5jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2RcIjtcbn1cblxuaS5pY29uLnBpY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cblxuaS5pY29uLnBlbmNpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MFwiO1xufVxuXG5pLmljb24uY29tcG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MFwiO1xufVxuXG5pLmljb24ucG9pbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDFcIjtcbn1cblxuaS5pY29uLnRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDNcIjtcbn1cblxuaS5pY29uLnNpZ251cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0NFwiO1xufVxuXG5pLmljb24ucGx1cy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTVcIjtcbn1cblxuaS5pY29uLm1pbnVzLmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NlwiO1xufVxuXG5pLmljb24uZG9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1ZVwiO1xufVxuXG5pLmljb24ubWluaW1pemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjZcIjtcbn1cblxuaS5pY29uLmFkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2N1wiO1xufVxuXG5pLmljb24uZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG59XG5cbmkuaWNvbi5hdHRlbnRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmFcIjtcbn1cblxuaS5pY29uLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cblxuaS5pY29uLnNodWZmbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzRcIjtcbn1cblxuaS5pY29uLnRhbGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cblxuaS5pY29uLmNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbn1cblxuaS5pY29uLnNob3BwaW5nLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2FcIjtcbn1cblxuaS5pY29uLmJhci5ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MFwiO1xufVxuXG5pLmljb24uYXJlYS5ncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmZVwiO1xufVxuXG5pLmljb24ucGllLmdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAwXCI7XG59XG5cbmkuaWNvbi5saW5lLmdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjAxXCI7XG59XG5cbmkuaWNvbi5rZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cblxuaS5pY29uLnByaXZhY3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cblxuaS5pY29uLmNvZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODVcIjtcbn1cblxuaS5pY29uLmRpc2N1c3Npb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg2XCI7XG59XG5cbmkuaWNvbi5saWtlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODdcIjtcbn1cblxuaS5pY29uLmRpc2xpa2Uub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OFwiO1xufVxuXG5pLmljb24uaGVhcnQub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4YVwiO1xufVxuXG5pLmljb24ubG9nLm91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4YlwiO1xufVxuXG5pLmljb24udGh1bWIudGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4ZFwiO1xufVxuXG5pLmljb24ud2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDkxXCI7XG59XG5cbmkuaWNvbi5ib29rbWFyay5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk3XCI7XG59XG5cbmkuaWNvbi5waG9uZS5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOThcIjtcbn1cblxuaS5pY29uLnBob25lLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OFwiO1xufVxuXG5pLmljb24uY3JlZGl0LmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cblxuaS5pY29uLmhkZC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEwXCI7XG59XG5cbmkuaWNvbi5idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMVwiO1xufVxuXG5pLmljb24uYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmM1wiO1xufVxuXG5pLmljb24uYmVsbC5vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEyXCI7XG59XG5cbmkuaWNvbi5iZWxsLnNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY2XCI7XG59XG5cbmkuaWNvbi5iZWxsLnNsYXNoLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjdcIjtcbn1cblxuaS5pY29uLmhhbmQub3V0bGluZS5yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNFwiO1xufVxuXG5pLmljb24uaGFuZC5vdXRsaW5lLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTVcIjtcbn1cblxuaS5pY29uLmhhbmQub3V0bGluZS51cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhNlwiO1xufVxuXG5pLmljb24uaGFuZC5vdXRsaW5lLmRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTdcIjtcbn1cblxuaS5pY29uLmdsb2JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFjXCI7XG59XG5cbmkuaWNvbi53cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWRcIjtcbn1cblxuaS5pY29uLmJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMVwiO1xufVxuXG5pLmljb24uZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzBcIjtcbn1cblxuaS5pY29uLmZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMzXCI7XG59XG5cbmkuaWNvbi5zaWRlYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM5XCI7XG59XG5cbmkuaWNvbi5iYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM5XCI7XG59XG5cbmkuaWNvbi5saXN0LnVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNhXCI7XG59XG5cbmkuaWNvbi5saXN0Lm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5cbmkuaWNvbi5udW1iZXJlZC5saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNiXCI7XG59XG5cbmkuaWNvbi5tYWdpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMFwiO1xufVxuXG5pLmljb24udHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDFcIjtcbn1cblxuaS5pY29uLmN1cnJlbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ2XCI7XG59XG5cbmkuaWNvbi50cmlhbmdsZS5kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ3XCI7XG59XG5cbmkuaWNvbi5kcm9wZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuXG5pLmljb24udHJpYW5nbGUudXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDhcIjtcbn1cblxuaS5pY29uLnRyaWFuZ2xlLmxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDlcIjtcbn1cblxuaS5pY29uLnRyaWFuZ2xlLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG59XG5cbmkuaWNvbi5lbnZlbG9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMFwiO1xufVxuXG5pLmljb24uY29udmVyc2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU2XCI7XG59XG5cbmkuaWNvbi5saWdodG5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTdcIjtcbn1cblxuaS5pY29uLnVtYnJlbGxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU5XCI7XG59XG5cbmkuaWNvbi5saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWJcIjtcbn1cblxuaS5pY29uLnN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYyXCI7XG59XG5cbmkuaWNvbi5iZWxsLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYTJcIjtcbn1cblxuaS5pY29uLmFtYnVsYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmOVwiO1xufVxuXG5pLmljb24ubWVka2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGZhXCI7XG59XG5cbmkuaWNvbi5maWdodGVyLmpldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmYlwiO1xufVxuXG5pLmljb24uYmVlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmY1wiO1xufVxuXG5pLmljb24ucGx1cy5zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmVcIjtcbn1cblxuaS5pY29uLmNvbXB1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA4XCI7XG59XG5cbmkuaWNvbi5jaXJjbGUub3V0bGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwY1wiO1xufVxuXG5pLmljb24uaW50ZXJzZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGNcIjtcbn1cblxuaS5pY29uLmFzZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGNcIjtcbn1cblxuaS5pY29uLnNwaW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTBcIjtcbn1cblxuaS5pY29uLmdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWJcIjtcbn1cblxuaS5pY29uLnN0YXIuaGFsZi5mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTIzXCI7XG59XG5cbmkuaWNvbi5xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyOFwiO1xufVxuXG5pLmljb24uYXR0ZW50aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJhXCI7XG59XG5cbmkuaWNvbi5lcmFzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmRcIjtcbn1cblxuaS5pY29uLm1pY3JvcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzBcIjtcbn1cblxuaS5pY29uLm1pY3JvcGhvbmUuc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzFcIjtcbn1cblxuaS5pY29uLnNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzMlwiO1xufVxuXG5pLmljb24udGFyZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG59XG5cbmkuaWNvbi5wbGF5LmNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0NFwiO1xufVxuXG5pLmljb24ucGVuY2lsLnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0YlwiO1xufVxuXG5pLmljb24uY29tcGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0ZVwiO1xufVxuXG5pLmljb24uZXVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG5cbmkuaWNvbi5nYnA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTRcIjtcbn1cblxuaS5pY29uLnVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NVwiO1xufVxuXG5pLmljb24uaW5yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU2XCI7XG59XG5cbmkuaWNvbi5jbnk6YmVmb3JlLFxuaS5pY29uLnJtYjpiZWZvcmUsXG5pLmljb24uanB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU3XCI7XG59XG5cbmkuaWNvbi5yb3VibGU6YmVmb3JlLFxuaS5pY29uLnJ1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OFwiO1xufVxuXG5pLmljb24ud29uOmJlZm9yZSxcbmkuaWNvbi5rcnc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cblxuaS5pY29uLmJ0YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YVwiO1xufVxuXG5pLmljb24uc2hlcWVsOmJlZm9yZSxcbmkuaWNvbi5pbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGJcIjtcbn1cblxuaS5pY29uLnRyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NVwiO1xufVxuXG5pLmljb24uemlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTg3XCI7XG59XG5cbmkuaWNvbi5kb3QuY2lyY2xlLm91dGxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTJcIjtcbn1cblxuaS5pY29uLnNsaWRlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGVcIjtcbn1cblxuaS5pY29uLndpLWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWViXCI7XG59XG5cbmkuaWNvbi5ncmFkdWF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTlkXCI7XG59XG5cbmkuaWNvbi5cXDMzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMlwiO1xufVxuXG5pLmljb24ud2VpeGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ3XCI7XG59XG5cbmkuaWNvbi5iaW5vY3VsYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU1XCI7XG59XG5cbmkuaWNvbi5ncmF0aXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NFwiO1xufVxuXG5pLmljb24uZ2VuZGVybGVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkYlwiO1xufVxuXG5pLmljb24udGVsZXR5cGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTRcIjtcbn1cblxuaS5pY29uLnBvd2VyLmNvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZTZcIjtcbn1cblxuaS5pY29uLnR0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuXG5pLmljb24uY2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGFcIjtcbn1cblxuaS5pY29uLmlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuXG5pLmljb24ucGx1cy5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5cbmkuaWNvbi5hcnJvdy5kb3duLmNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMThcIjtcbn1cblxuaS5pY29uLmRldGVjdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxYlwiO1xufVxuXG5pLmljb24udmVudXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjFcIjtcbn1cblxuaS5pY29uLm1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjJcIjtcbn1cblxuaS5pY29uLm1lcmN1cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjNcIjtcbn1cblxuaS5pY29uLnZlbnVzLmRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNlwiO1xufVxuXG5pLmljb24uZmVtYWxlLmhvbW9zZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjZcIjtcbn1cblxuaS5pY29uLm1hcnMuZG91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI3XCI7XG59XG5cbmkuaWNvbi5tYWxlLmhvbW9zZXh1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjdcIjtcbn1cblxuaS5pY29uLnZlbnVzLm1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cblxuaS5pY29uLm1hcnMuc3Ryb2tlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjI5XCI7XG59XG5cbmkuaWNvbi5tYXJzLmFsdGVybmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyOVwiO1xufVxuXG5pLmljb24ubWFycy52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYVwiO1xufVxuXG5pLmljb24ubWFycy5ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJiXCI7XG59XG5cbmkuaWNvbi5tYXJzLnN0cm9rZS52ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYVwiO1xufVxuXG5pLmljb24ubWFycy5zdHJva2UuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyYlwiO1xufVxuXG5pLmljb24ubmV1dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjJjXCI7XG59XG5cbmkuaWNvbi5mYWNlYm9vay5vZmZpY2lhbCB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMwXCI7XG59XG5cbmkuaWNvbi5waW50ZXJlc3Qub2ZmaWNpYWwge1xuICBjb250ZW50OiBcIlxcZjIzMVwiO1xufVxuXG5pLmljb24uYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM2XCI7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBJbWFnZVxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIEltYWdlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaW1nLnVpLmltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi51aS5pbWFnZSBzdmcsXG4udWkuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaGlkZGVuLmltYWdlcyxcbi51aS5oaWRkZW4uaW1hZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkuZGlzYWJsZWQuaW1hZ2VzLFxuLnVpLmRpc2FibGVkLmltYWdlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbmxpbmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbmxpbmUuaW1hZ2UsXG4udWkuaW5saW5lLmltYWdlIHN2Zyxcbi51aS5pbmxpbmUuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICBWZXJ0aWNhbCBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRvcC5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2UsXG4udWkudG9wLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLnRvcC5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2UsXG4udWkubWlkZGxlLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLm1pZGRsZS5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlcyAuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2UsXG4udWkuYm90dG9tLmFsaWduZWQuaW1hZ2Ugc3ZnLFxuLnVpLmJvdHRvbS5hbGlnbmVkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSb3VuZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucm91bmRlZC5pbWFnZXMgLmltYWdlLFxuLnVpLnJvdW5kZWQuaW1hZ2VzIGltZyxcbi51aS5yb3VuZGVkLmltYWdlcyBzdmcsXG4udWkucm91bmRlZC5pbWFnZSBpbWcsXG4udWkucm91bmRlZC5pbWFnZSBzdmcsXG4udWkucm91bmRlZC5pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ib3JkZXJlZC5pbWFnZXMgLmltYWdlLFxuLnVpLmJvcmRlcmVkLmltYWdlcyBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2VzIHN2Zyxcbi51aS5ib3JkZXJlZC5pbWFnZSBpbWcsXG4udWkuYm9yZGVyZWQuaW1hZ2Ugc3ZnLFxuaW1nLnVpLmJvcmRlcmVkLmltYWdlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jaXJjdWxhci5pbWFnZXMsXG4udWkuY2lyY3VsYXIuaW1hZ2Uge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udWkuY2lyY3VsYXIuaW1hZ2VzIC5pbWFnZSxcbi51aS5jaXJjdWxhci5pbWFnZXMgaW1nLFxuLnVpLmNpcmN1bGFyLmltYWdlcyBzdmcsXG4udWkuY2lyY3VsYXIuaW1hZ2UgaW1nLFxuLnVpLmNpcmN1bGFyLmltYWdlIHN2Zyxcbi51aS5jaXJjdWxhci5pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLmltYWdlcyxcbi51aS5mbHVpZC5pbWFnZSxcbi51aS5mbHVpZC5pbWFnZXMgaW1nLFxuLnVpLmZsdWlkLmltYWdlcyBzdmcsXG4udWkuZmx1aWQuaW1hZ2Ugc3ZnLFxuLnVpLmZsdWlkLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmF2YXRhci5pbWFnZXMgLmltYWdlLFxuLnVpLmF2YXRhci5pbWFnZXMgaW1nLFxuLnVpLmF2YXRhci5pbWFnZXMgc3ZnLFxuLnVpLmF2YXRhci5pbWFnZSBpbWcsXG4udWkuYXZhdGFyLmltYWdlIHN2Zyxcbi51aS5hdmF0YXIuaW1hZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMi41ZW07XG4gIGhlaWdodDogMi41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRlZC5pbWFnZSxcbi51aS5mbG9hdGVkLmltYWdlcyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4udWkucmlnaHQuZmxvYXRlZC5pbWFnZXMsXG4udWkucmlnaHQuZmxvYXRlZC5pbWFnZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLnVpLmZsb2F0ZWQuaW1hZ2VzOmxhc3QtY2hpbGQsXG4udWkuZmxvYXRlZC5pbWFnZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkuY2VudGVyZWQuaW1hZ2VzLFxuLnVpLmNlbnRlcmVkLmltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW1hZ2VzIC5pbWFnZSxcbi51aS5taW5pLmltYWdlcyBpbWcsXG4udWkubWluaS5pbWFnZXMgc3ZnLFxuLnVpLm1pbmkuaW1hZ2Uge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IDAuNzE0Mjg1NzFyZW07XG59XG5cbi51aS50aW55LmltYWdlcyAuaW1hZ2UsXG4udWkudGlueS5pbWFnZXMgaW1nLFxuLnVpLnRpbnkuaW1hZ2VzIHN2Zyxcbi51aS50aW55LmltYWdlIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuaW1hZ2VzIC5pbWFnZSxcbi51aS5zbWFsbC5pbWFnZXMgaW1nLFxuLnVpLnNtYWxsLmltYWdlcyBzdmcsXG4udWkuc21hbGwuaW1hZ2Uge1xuICB3aWR0aDogMTUwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAwLjkyODU3MTQzcmVtO1xufVxuXG4udWkubWVkaXVtLmltYWdlcyAuaW1hZ2UsXG4udWkubWVkaXVtLmltYWdlcyBpbWcsXG4udWkubWVkaXVtLmltYWdlcyBzdmcsXG4udWkubWVkaXVtLmltYWdlIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmltYWdlcyAuaW1hZ2UsXG4udWkubGFyZ2UuaW1hZ2VzIGltZyxcbi51aS5sYXJnZS5pbWFnZXMgc3ZnLFxuLnVpLmxhcmdlLmltYWdlIHtcbiAgd2lkdGg6IDQ1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuLnVpLmJpZy5pbWFnZXMgLmltYWdlLFxuLnVpLmJpZy5pbWFnZXMgaW1nLFxuLnVpLmJpZy5pbWFnZXMgc3ZnLFxuLnVpLmJpZy5pbWFnZSB7XG4gIHdpZHRoOiA2MDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5odWdlLmltYWdlcyAuaW1hZ2UsXG4udWkuaHVnZS5pbWFnZXMgaW1nLFxuLnVpLmh1Z2UuaW1hZ2VzIHN2Zyxcbi51aS5odWdlLmltYWdlIHtcbiAgd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuaW1hZ2VzIC5pbWFnZSxcbi51aS5tYXNzaXZlLmltYWdlcyBpbWcsXG4udWkubWFzc2l2ZS5pbWFnZXMgc3ZnLFxuLnVpLm1hc3NpdmUuaW1hZ2Uge1xuICB3aWR0aDogOTYwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBHcm91cHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5pbWFnZXMge1xuICBmb250LXNpemU6IDBlbTtcbiAgbWFyZ2luOiAwZW0gLTAuMjVyZW0gMHJlbTtcbn1cblxuLnVpLmltYWdlcyAuaW1hZ2UsXG4udWkuaW1hZ2VzIGltZyxcbi51aS5pbWFnZXMgc3ZnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbSAwLjI1cmVtIDAuNXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIElucHV0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFN0YW5kYXJkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIElucHV0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5pbnB1dCBpbnB1dCB7XG4gIG1hcmdpbjogMGVtO1xuICB3aWR0aDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS4yMTQyZW07XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDAuNjc4NjFlbSAxZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFBsYWNlaG9sZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBicm93c2VycyByZXF1aXJlIHRoZXNlIHJ1bGVzIHNlcGFyYXRlICovXG5cbi51aS5pbnB1dCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi51aS5pbnB1dCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5wdXQgaW5wdXQ6YWN0aXZlLFxuLnVpLmlucHV0LmRvd24gaW5wdXQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLmxvYWRpbmcuaW5wdXQgPiBpLmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NWVtIDBlbSAwZW0gLTAuNjQyODVlbTtcbiAgd2lkdGg6IDEuMjg1N2VtO1xuICBoZWlnaHQ6IDEuMjg1N2VtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlcjogMC4yZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkubG9hZGluZy5sb2FkaW5nLmlucHV0ID4gaS5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NWVtIDBlbSAwZW0gLTAuNjQyODVlbTtcbiAgd2lkdGg6IDEuMjg1N2VtO1xuICBoZWlnaHQ6IDEuMjg1N2VtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIGFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1jb2xvcjogI2FhYWFhYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5wdXQuZm9jdXMgaW5wdXQsXG4udWkuaW5wdXQgaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYmEoMzksIDQxLCA0MywgMC4zKTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmlucHV0LmZvY3VzIGlucHV0IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0IGlucHV0OmZvY3VzIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLmlucHV0LmZvY3VzIGlucHV0IGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuLnVpLmlucHV0IGlucHV0OmZvY3VzIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlucHV0LmVycm9yIGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjBmMDtcbiAgYm9yZGVyLWNvbG9yOiAjZGJiMWIxO1xuICBjb2xvcjogI2NjMTgxZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogRXJyb3IgUGxhY2Vob2xkZXIgKi9cblxuLnVpLmlucHV0LmVycm9yIGlucHV0IDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgODAsIDgwLCAwLjQpO1xufVxuXG4udWkuaW5wdXQuZXJyb3IgaW5wdXQgOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCA4MCwgODAsIDAuNCk7XG59XG5cbi8qIEZvY3VzZWQgRXJyb3IgUGxhY2Vob2xkZXIgKi9cblxuLnVpLmlucHV0LmVycm9yIGlucHV0IDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgODAsIDgwLCAwLjcpO1xufVxuXG4udWkuaW5wdXQuZXJyb3IgaW5wdXQgOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCA4MCwgODAsIDAuNyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFRyYW5zcGFyZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudHJhbnNwYXJlbnQuaW5wdXQgaW5wdXQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKiBUcmFuc3BhcmVudCBJY29uICovXG5cbi51aS50cmFuc3BhcmVudC5pY29uLmlucHV0ID4gaS5pY29uIHtcbiAgd2lkdGg6IDEuMjVlbTtcbn1cblxuLnVpLnRyYW5zcGFyZW50Lmljb24uaW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkudHJhbnNwYXJlbnRbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDJlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBUcmFuc3BhcmVudCBJbnZlcnRlZCAqL1xuXG4udWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkudHJhbnNwYXJlbnQuaW52ZXJ0ZWQuaW5wdXQge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLnRyYW5zcGFyZW50LmludmVydGVkLmlucHV0IGlucHV0IHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLmlucHV0ID4gaS5pY29uIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIG1hcmdpbjogMGVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyLjgyMTQyZW07XG4gIG9wYWNpdHk6IDAuNTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMCAwZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xufVxuXG4udWkuaWNvbi5pbnB1dCBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuODIxNDJlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbjpiZWZvcmUsXG4udWkuaWNvbi5pbnB1dCA+IGkuaWNvbjphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC0wLjVlbTtcbn1cblxuLnVpLmljb24uaW5wdXQgPiBpLmxpbmsuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLmljb24uaW5wdXQgPiBpLmNpcmN1bGFyLmljb24ge1xuICB0b3A6IDAuMzVlbTtcbiAgcmlnaHQ6IDAuNWVtO1xufVxuXG4vKiBMZWZ0IEljb24gSW5wdXQgKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgaWNvblwiXS5pbnB1dCA+IGkuaWNvbiB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMGVtIDBlbSAwO1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaS5jaXJjdWxhci5pY29uIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDAuNWVtO1xufVxuXG4udWlbY2xhc3MqPVwibGVmdCBpY29uXCJdLmlucHV0ID4gaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDIuODIxNDJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAxZW0gIWltcG9ydGFudDtcbn1cblxuLyogRm9jdXMgKi9cblxuLnVpLmljb24uaW5wdXQgPiBpbnB1dDpmb2N1cyB+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQWRqYWNlbnQgTGFiZWwgKi9cblxuLnVpLmxhYmVsZWQuaW5wdXQge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi51aS5sYWJlbGVkLmlucHV0ID4gLmxhYmVsIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxIDAgYXV0bztcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhYmVsZWQuaW5wdXQgPiAubGFiZWw6bm90KC5jb3JuZXIpIHtcbiAgcGFkZGluZy10b3A6IDAuNzg1NzFlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzg1NzFlbTtcbn1cblxuLyogRmx1aWQgTGFiZWxlZCAqL1xuXG4udWkuZmx1aWQubGFiZWxlZC5pbnB1dCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKiBMYWJlbCBvbiBMZWZ0ICovXG5cbi51aS5sYWJlbGVkLmlucHV0Om5vdChbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0pOm5vdChbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXSkgPiBpbnB1dCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbn1cblxuLnVpLmxhYmVsZWQuaW5wdXQ6bm90KFtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXSk6bm90KFtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdKSA+IC5sYWJlbCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG59XG5cbi8qIExhYmVsIG9uIFJpZ2h0ICovXG5cbi51aVtjbGFzcyo9XCJyaWdodCBsYWJlbGVkXCJdLmlucHV0ID4gaW5wdXQge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgbGFiZWxlZFwiXS5pbnB1dCA+IC5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xufVxuXG4vKiBDb3JuZXIgTGFiZWwgKi9cblxuLnVpLmxhYmVsZWQuaW5wdXQgLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMGVtIDBlbTtcbn1cblxuLnVpLmxhYmVsZWQuaW5wdXQgaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVlbSAhaW1wb3J0YW50O1xufVxuXG4vKiBTcGFjaW5nIHdpdGggY29ybmVyIGxhYmVsICovXG5cbi51aVtjbGFzcyo9XCJjb3JuZXIgbGFiZWxlZFwiXS5pY29uLmlucHV0Om5vdCgubGVmdCkgPiBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMuMjVlbSAhaW1wb3J0YW50O1xufVxuXG4udWlbY2xhc3MqPVwiY29ybmVyIGxhYmVsZWRcIl0uaWNvbi5pbnB1dDpub3QoLmxlZnQpID4gLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hY3Rpb24uaW5wdXQge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi51aS5hY3Rpb24uaW5wdXQgPiAuYnV0dG9uLFxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b25zIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxIDAgYXV0bztcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLnVpLmFjdGlvbi5pbnB1dCA+IC5idXR0b24sXG4udWkuYWN0aW9uLmlucHV0ID4gLmJ1dHRvbnMgPiAuYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDAuNzg1NzFlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzg1NzFlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBGbHVpZCAqL1xuXG4udWkuZmx1aWQuYWN0aW9uLmlucHV0IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIEJ1dHRvbiBvbiBSaWdodCAqL1xuXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gaW5wdXQge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udWkuYWN0aW9uLmlucHV0Om5vdChbY2xhc3MqPVwibGVmdCBhY3Rpb25cIl0pID4gLmJ1dHRvbixcbi51aS5hY3Rpb24uaW5wdXQ6bm90KFtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXSkgPiAuYnV0dG9ucyA+IC5idXR0b24ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbn1cblxuLyogQnV0dG9uIG9uIExlZnQgKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgYWN0aW9uXCJdLmlucHV0ID4gLmJ1dHRvbixcbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IC5idXR0b25zID4gLmJ1dHRvbiB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG59XG5cbi51aVtjbGFzcyo9XCJsZWZ0IGFjdGlvblwiXS5pbnB1dCA+IGlucHV0IHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFN0YW5kYXJkICovXG5cbi51aS5pbnZlcnRlZC5pbnB1dCBpbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLmlucHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1pbmkuaW5wdXQge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbn1cblxuLnVpLnNtYWxsLmlucHV0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnVpLmlucHV0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UuaW5wdXQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4udWkuYmlnLmlucHV0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4udWkuaHVnZS5pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5cbi51aS5tYXNzaXZlLmlucHV0IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmlucHV0IGlucHV0IHtcbiAgY3Vyc29yOiB0ZXh0O1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIExhYmVsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBMYWJlbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDBlbSAwLjEyNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xuICBib3JkZXItY29sb3I6ICNlOGU4ZTg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNmVtIDAuOGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xufVxuXG4udWkubGFiZWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4udWkubGFiZWw6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4vKiBMaW5rICovXG5cbmEudWkubGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIEluc2lkZSBMaW5rICovXG5cbi51aS5sYWJlbCBhIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC44O1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgb3BhY2l0eSBlYXNlO1xuICB0cmFuc2l0aW9uOiAwLjJzIG9wYWNpdHkgZWFzZTtcbn1cblxuLnVpLmxhYmVsIGE6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBJY29uICovXG5cbi51aS5sYWJlbCAuaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDBlbSAwLjc1ZW0gMGVtIDBlbTtcbn1cblxuLyogRGV0YWlsICovXG5cbi51aS5sYWJlbCAuZGV0YWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4udWkubGFiZWwgLmRldGFpbCAuaWNvbiB7XG4gIG1hcmdpbjogMGVtIDAuMjVlbSAwZW0gMGVtO1xufVxuXG4vKiBSZW1vdmFibGUgbGFiZWwgKi9cblxuLnVpLmxhYmVsIC5jbG9zZS5pY29uLFxuLnVpLmxhYmVsIC5kZWxldGUuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgb3BhY2l0eTogMC44O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZTtcbn1cblxuLnVpLmxhYmVsIC5kZWxldGUuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEdyb3VwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMgLmxhYmVsIHtcbiAgbWFyZ2luOiAwZW0gMC41ZW0gMC43NWVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUmVtb3ZlIGJvcmRlciByYWRpdXMgb24gYXR0YWNoZWQgc2VnbWVudCAqL1xuXG4udWkuYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AubGVmdC5hdHRhY2hlZC5sYWJlbCxcbi51aS5ib3R0b20uYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AubGVmdC5hdHRhY2hlZC5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG59XG5cbi51aS5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLnRvcC5yaWdodC5hdHRhY2hlZC5sYWJlbCxcbi51aS5ib3R0b20uYXR0YWNoZWQuc2VnbWVudCA+IC51aS50b3AucmlnaHQuYXR0YWNoZWQubGFiZWwge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnVpLnRvcC5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLmJvdHRvbS5sZWZ0LmF0dGFjaGVkLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLnVpLnRvcC5hdHRhY2hlZC5zZWdtZW50ID4gLnVpLmJvdHRvbS5yaWdodC5hdHRhY2hlZC5sYWJlbCB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4vKiBQYWRkaW5nIG9uIG5leHQgY29udGVudCBhZnRlciBhIGxhYmVsICovXG5cbi51aS50b3AuYXR0YWNoZWQubGFiZWw6Zmlyc3QtY2hpbGQgKyA6bm90KC5hdHRhY2hlZCkge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ib3R0b20uYXR0YWNoZWQubGFiZWw6Zmlyc3QtY2hpbGQgfiA6bGFzdC1jaGlsZDpub3QoLmF0dGFjaGVkKSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuaW1hZ2UubGFiZWwge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgbWF4LXdpZHRoOiA5OTk5cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNlOGU4ZTg7XG4gIHBhZGRpbmc6IDAuNmVtIDAuOGVtIDAuNmVtIDAuNWVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW1hZ2UubGFiZWwgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBoZWlnaHQ6IDIuMmVtO1xuICBtYXJnaW46IC0wLjZlbSAwLjVlbSAtMC42ZW0gLTAuNWVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWkuaW1hZ2UubGFiZWwgLmRldGFpbCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWFyZ2luOiAtMC42ZW0gLTAuOGVtIC0wLjZlbSAwLjVlbTtcbiAgcGFkZGluZzogMC42ZW0gMC44ZW07XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDAgMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIFRhZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFnLmxhYmVscyAubGFiZWwsXG4udWkudGFnLmxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMCAwZW07XG59XG5cbi51aS50YWcubGFiZWxzIC5sYWJlbDpiZWZvcmUsXG4udWkudGFnLmxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxMDAlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgd2lkdGg6IDEuNTZlbTtcbiAgaGVpZ2h0OiAxLjU2ZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xufVxuXG4udWkudGFnLmxhYmVscyAubGFiZWw6YWZ0ZXIsXG4udWkudGFnLmxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IC0wLjI1ZW07XG4gIG1hcmdpbi10b3A6IC0wLjI1ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgd2lkdGg6IDAuNWVtO1xuICBoZWlnaHQ6IDAuNWVtO1xuICBib3gtc2hhZG93OiAwIC0xcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIENvcm5lciBMYWJlbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29ybmVyLmxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBlbTtcbiAgcmlnaHQ6IDBlbTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMy4yNWVtO1xuICBoZWlnaHQ6IDMuMjVlbTtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4vKiBJY29uIExhYmVsICovXG5cbi51aS5jb3JuZXIubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4udWkuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICByaWdodDogMGVtO1xuICB0b3A6IDBlbTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwZW07XG4gIGhlaWdodDogMGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiAwZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMy4yNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAzLjI1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4udWkuY29ybmVyLmxhYmVsIC5pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDAuNGVtO1xuICBsZWZ0OiAwLjc1ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyogTGVmdCBDb3JuZXIgKi9cblxuLnVpLmxlZnQuY29ybmVyLmxhYmVsLFxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDBlbTtcbn1cblxuLnVpLmxlZnQuY29ybmVyLmxhYmVsOmFmdGVyIHtcbiAgYm9yZGVyLXRvcDogMy4yNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDMuMjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMGVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xufVxuXG4udWkubGVmdC5jb3JuZXIubGFiZWwgLmljb24ge1xuICBsZWZ0OiAtMC43NWVtO1xufVxuXG4vKiBTZWdtZW50ICovXG5cbi51aS5zZWdtZW50ID4gLnVpLmNvcm5lci5sYWJlbCB7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IC0xcHg7XG59XG5cbi51aS5zZWdtZW50ID4gLnVpLmxlZnQuY29ybmVyLmxhYmVsIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IC0xcHg7XG59XG5cbi8qIElucHV0ICovXG5cbi51aS5pbnB1dCA+IC51aS5jb3JuZXIubGFiZWwge1xuICB0b3A6IDFweDtcbiAgcmlnaHQ6IDFweDtcbn1cblxuLnVpLmlucHV0ID4gLnVpLnJpZ2h0LmNvcm5lci5sYWJlbCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIFJpYmJvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmliYm9uLmxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDBlbTtcbiAgbWluLXdpZHRoOiAtd2Via2l0LW1heC1jb250ZW50O1xuICBtaW4td2lkdGg6IC1tb3otbWF4LWNvbnRlbnQ7XG4gIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDAgMGVtO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi51aS5yaWJib24ubGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDBlbSAxLjJlbSAxLjJlbSAwZW07XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDBlbTtcbiAgaGVpZ2h0OiAwZW07XG59XG5cbi8qIFJpZ2h0IFJpYmJvbiAqL1xuXG4udWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwZW0gMGVtIDA7XG4gIHBhZGRpbmctbGVmdDogMC44ZW07XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCByaWJib25cIl0ubGFiZWw6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMCU7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMS4yZW0gMS4yZW0gMGVtIDBlbTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLyogUG9zaXRpb25pbmcgKi9cblxuLnVpLnJpYmJvbi5sYWJlbCB7XG4gIGxlZnQ6IC13ZWJraXQtY2FsYyggLTFyZW0gIC0gIDEuMmVtICk7XG4gIGxlZnQ6IGNhbGMoIC0xcmVtICAtICAxLjJlbSApO1xuICBtYXJnaW4tcmlnaHQ6IC0xLjJlbTtcbiAgcGFkZGluZy1sZWZ0OiAtd2Via2l0LWNhbGMoIDFyZW0gICsgIDEuMmVtICk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyggMXJlbSAgKyAgMS4yZW0gKTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIGxlZnQ6IC13ZWJraXQtY2FsYygxMDAlICsgIDFyZW0gICsgIDEuMmVtICk7XG4gIGxlZnQ6IGNhbGMoMTAwJSArICAxcmVtICArICAxLjJlbSApO1xuICBwYWRkaW5nLXJpZ2h0OiAtd2Via2l0LWNhbGMoIDFyZW0gICsgIDEuMmVtICk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoIDFyZW0gICsgIDEuMmVtICk7XG59XG5cbi8qIEluc2lkZSBJbWFnZSAqL1xuXG4udWkuaW1hZ2UgPiAucmliYm9uLmxhYmVsLFxuLnVpLmNhcmQgLmltYWdlID4gLnJpYmJvbi5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xufVxuXG4udWkuY2FyZCAuaW1hZ2UgPiAudWkucmliYm9uLmxhYmVsLFxuLnVpLmltYWdlID4gLnVpLnJpYmJvbi5sYWJlbCB7XG4gIGxlZnQ6IC13ZWJraXQtY2FsYyggMC4wNXJlbSAgLSAgMS4yZW0gKTtcbiAgbGVmdDogY2FsYyggMC4wNXJlbSAgLSAgMS4yZW0gKTtcbiAgcGFkZGluZy1sZWZ0OiAtd2Via2l0LWNhbGMoIC0wLjA1cmVtICArICAxLjJlbSApO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoIC0wLjA1cmVtICArICAxLjJlbSApO1xufVxuXG4udWkuY2FyZCAuaW1hZ2UgPiAudWlbY2xhc3MqPVwicmlnaHQgcmliYm9uXCJdLmxhYmVsLFxuLnVpLmltYWdlID4gLnVpW2NsYXNzKj1cInJpZ2h0IHJpYmJvblwiXS5sYWJlbCB7XG4gIGxlZnQ6IC13ZWJraXQtY2FsYygxMDAlICsgIC0wLjA1cmVtICArICAxLjJlbSApO1xuICBsZWZ0OiBjYWxjKDEwMCUgKyAgLTAuMDVyZW0gICsgIDEuMmVtICk7XG4gIHBhZGRpbmctbGVmdDogMC44ZW07XG4gIHBhZGRpbmctcmlnaHQ6IC13ZWJraXQtY2FsYyggLTAuMDVyZW0gICsgIDEuMmVtICk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoIC0wLjA1cmVtICArICAxLjJlbSApO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50b3AuYXR0YWNoZWQubGFiZWwsXG4udWkuYXR0YWNoZWQubGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDBlbTtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBlbTtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS5ib3R0b20uYXR0YWNoZWQubGFiZWwge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbn1cblxuLnVpLnRvcC5sZWZ0LmF0dGFjaGVkLmxhYmVsIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDBlbSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwIDBlbSAwIDBlbTtcbn1cblxuLnVpLnRvcC5yaWdodC5hdHRhY2hlZC5sYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMCAwZW0gMDtcbn1cblxuLnVpLmJvdHRvbS5sZWZ0LmF0dGFjaGVkLmxhYmVsIHtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwZW07XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDBlbSAwO1xufVxuXG4udWkuYm90dG9tLnJpZ2h0LmF0dGFjaGVkLmxhYmVsIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDBlbTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDBlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDAgMGVtIDAgMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGFiZWwuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5hLnVpLmxhYmVscyAubGFiZWw6aG92ZXIsXG5hLnVpLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbiAgYm9yZGVyLWNvbG9yOiAjZTBlMGUwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFZpc2libGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxhYmVscy52aXNpYmxlIC5sYWJlbCxcbi51aS5sYWJlbC52aXNpYmxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgSGlkZGVuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbHMuaGlkZGVuIC5sYWJlbCxcbi51aS5sYWJlbC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLSBCbGFjayAtLS0qL1xuXG4udWkuYmxhY2subGFiZWxzIC5sYWJlbCxcbi51aS5ibGFjay5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMWIxYzFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgLmJsYWNrLmxhYmVsOmJlZm9yZSxcbi51aS5ibGFjay5sYWJlbHMgLmxhYmVsOmJlZm9yZSxcbi51aS5ibGFjay5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkICFpbXBvcnRhbnQ7XG59XG5cbmEudWkuYmxhY2subGFiZWxzIC5sYWJlbDpob3ZlcixcbmEudWkuYmxhY2subGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIGEuYmxhY2subGFiZWw6aG92ZXI6YmVmb3JlLFxuLnVpLmJsYWNrLmxhYmVscyBhLmxhYmVsOmhvdmVyOmJlZm9yZSxcbmEudWkuYmxhY2subGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xufVxuXG4udWkuYmxhY2suY29ybmVyLmxhYmVsLFxuLnVpLmJsYWNrLmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ibGFjay5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMjAyMDMgIWltcG9ydGFudDtcbn1cblxuLyotLS0gQmx1ZSAtLS0qL1xuXG4udWkuYmx1ZS5sYWJlbHMgLmxhYmVsLFxuLnVpLmJsdWUubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I4M2MwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzNiODNjMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIC5ibHVlLmxhYmVsOmJlZm9yZSxcbi51aS5ibHVlLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLmJsdWUubGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLmJsdWUubGFiZWxzIC5sYWJlbDpob3Zlcixcbi51aS5ibHVlLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5ibHVlLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1OGFjNiAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICM0NThhYzYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmxhYmVscyBhLmJsdWUubGFiZWw6aG92ZXI6YmVmb3JlLFxuLnVpLmJsdWUubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5ibHVlLmxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NThhYzYgIWltcG9ydGFudDtcbn1cblxuLnVpLmJsdWUuY29ybmVyLmxhYmVsLFxuLnVpLmJsdWUuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnVpLmJsdWUucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMmY2ODk5ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIEdyZWVuIC0tLSovXG5cbi51aS5ncmVlbi5sYWJlbHMgLmxhYmVsLFxuLnVpLmdyZWVuLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMyZGI0NzUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmxhYmVscyAuZ3JlZW4ubGFiZWw6YmVmb3JlLFxuLnVpLmdyZWVuLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLmdyZWVuLmxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZGI0NzUgIWltcG9ydGFudDtcbn1cblxuYS51aS5ncmVlbi5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5ncmVlbi5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMGMwN2QgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMzBjMDdkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgYS5ncmVlbi5sYWJlbDpob3ZlcjpiZWZvcmUsXG4udWkuZ3JlZW4ubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5ncmVlbi5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzBjMDdkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmVlbi5jb3JuZXIubGFiZWwsXG4udWkuZ3JlZW4uY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyZWVuLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzIzOGI1YSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBPcmFuZ2UgLS0tKi9cblxuLnVpLm9yYW5nZS5sYWJlbHMgLmxhYmVsLFxuLnVpLm9yYW5nZS5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMDdiNTMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZTA3YjUzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgLm9yYW5nZS5sYWJlbDpiZWZvcmUsXG4udWkub3JhbmdlLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLm9yYW5nZS5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA3YjUzICFpbXBvcnRhbnQ7XG59XG5cbmEudWkub3JhbmdlLmxhYmVscyAubGFiZWw6aG92ZXIsXG4udWkub3JhbmdlLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5vcmFuZ2UubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTI4NTYwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2UyODU2MCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIGEub3JhbmdlLmxhYmVsOmhvdmVyOmJlZm9yZSxcbi51aS5vcmFuZ2UubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5vcmFuZ2UubGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyODU2MCAhaW1wb3J0YW50O1xufVxuXG4udWkub3JhbmdlLmNvcm5lci5sYWJlbCxcbi51aS5vcmFuZ2UuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnVpLm9yYW5nZS5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNkODVhMjggIWltcG9ydGFudDtcbn1cblxuLyotLS0gUGluayAtLS0qL1xuXG4udWkucGluay5sYWJlbHMgLmxhYmVsLFxuLnVpLnBpbmsubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk0OTlhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2Q5NDk5YSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIC5waW5rLmxhYmVsOmJlZm9yZSxcbi51aS5waW5rLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLnBpbmsubGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NDk5YSAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnBpbmsubGFiZWxzIC5sYWJlbDpob3Zlcixcbi51aS5waW5rLmxhYmVscyBhLmxhYmVsOmhvdmVyLFxuYS51aS5waW5rLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjNTZhMSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNkYzU2YTEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmxhYmVscyBhLnBpbmsubGFiZWw6aG92ZXI6YmVmb3JlLFxuLnVpLnBpbmsubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5waW5rLmxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzU2YTEgIWltcG9ydGFudDtcbn1cblxuLnVpLnBpbmsuY29ybmVyLmxhYmVsLFxuLnVpLnBpbmsuY29ybmVyLmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnVpLnBpbmsucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzYyOTgxICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIFB1cnBsZSAtLS0qL1xuXG4udWkucHVycGxlLmxhYmVscyAubGFiZWwsXG4udWkucHVycGxlLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NGY4YSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICM1NjRmOGEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmxhYmVscyAucHVycGxlLmxhYmVsOmJlZm9yZSxcbi51aS5wdXJwbGUubGFiZWxzIC5sYWJlbDpiZWZvcmUsXG4udWkucHVycGxlLmxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjRmOGEgIWltcG9ydGFudDtcbn1cblxuYS51aS5wdXJwbGUubGFiZWxzIC5sYWJlbDpob3Zlcixcbi51aS5wdXJwbGUubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLnB1cnBsZS5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YzU1OTQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjNWM1NTk0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgYS5wdXJwbGUubGFiZWw6aG92ZXI6YmVmb3JlLFxuLnVpLnB1cnBsZS5sYWJlbHMgYS5sYWJlbDpob3ZlcjpiZWZvcmUsXG5hLnVpLnB1cnBsZS5sYWJlbDpob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM1NTk0ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wdXJwbGUuY29ybmVyLmxhYmVsLFxuLnVpLnB1cnBsZS5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4udWkucHVycGxlLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzQyM2M2YSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBSZWQgLS0tKi9cblxuLnVpLnJlZC5sYWJlbHMgLmxhYmVsLFxuLnVpLnJlZC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzE4MWUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgLnJlZC5sYWJlbDpiZWZvcmUsXG4udWkucmVkLmxhYmVscyAubGFiZWw6YmVmb3JlLFxuLnVpLnJlZC5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5yZWQuY29ybmVyLmxhYmVsLFxuLnVpLnJlZC5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnJlZC5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuYS51aS5yZWQubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGExYTIwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2RhMWEyMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIGEucmVkLmxhYmVsOmhvdmVyOmJlZm9yZSxcbi51aS5yZWQubGFiZWxzIGEubGFiZWw6aG92ZXI6YmVmb3JlLFxuYS51aS5yZWQubGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhMWEyMCAhaW1wb3J0YW50O1xufVxuXG4udWkucmVkLnJpYmJvbi5sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzllMTMxNyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLSBUZWFsIC0tLSovXG5cbi51aS50ZWFsLmxhYmVscyAubGFiZWwsXG4udWkudGVhbC5sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI1YWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5sYWJlbHMgLnRlYWwubGFiZWw6YmVmb3JlLFxuLnVpLnRlYWwubGFiZWxzIC5sYWJlbDpiZWZvcmUsXG4udWkudGVhbC5sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG59XG5cbmEudWkudGVhbC5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuLnVpLnRlYWwubGFiZWxzIGEubGFiZWw6aG92ZXIsXG5hLnVpLnRlYWwubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjNGJjICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzAwYzRiYyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIGEudGVhbC5sYWJlbDpob3ZlcjpiZWZvcmUsXG4udWkudGVhbC5sYWJlbHMgYS5sYWJlbDpob3ZlcjpiZWZvcmUsXG5hLnVpLnRlYWwubGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYzRiYyAhaW1wb3J0YW50O1xufVxuXG4udWkudGVhbC5jb3JuZXIubGFiZWwsXG4udWkudGVhbC5jb3JuZXIubGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4udWkudGVhbC5yaWJib24ubGFiZWwge1xuICBib3JkZXItY29sb3I6ICMwMDgyN2MgIWltcG9ydGFudDtcbn1cblxuLyotLS0gWWVsbG93IC0tLSovXG5cbi51aS55ZWxsb3cubGFiZWxzIC5sYWJlbCxcbi51aS55ZWxsb3cubGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjNjFmICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2YyYzYxZiAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkubGFiZWxzIC55ZWxsb3cubGFiZWw6YmVmb3JlLFxuLnVpLnllbGxvdy5sYWJlbHMgLmxhYmVsOmJlZm9yZSxcbi51aS55ZWxsb3cubGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyYzYxZiAhaW1wb3J0YW50O1xufVxuXG5hLnVpLnllbGxvdy5sYWJlbHMgLmxhYmVsOmhvdmVyLFxuLnVpLnllbGxvdy5sYWJlbHMgYS5sYWJlbDpob3ZlcixcbmEudWkueWVsbG93LmxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzY2EyZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNmM2NhMmQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmxhYmVscyBhLnllbGxvdy5sYWJlbDpob3ZlcjpiZWZvcmUsXG4udWkueWVsbG93LmxhYmVscyBhLmxhYmVsOmhvdmVyOmJlZm9yZSxcbmEudWkueWVsbG93LmxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2NhMmQgIWltcG9ydGFudDtcbn1cblxuLnVpLnllbGxvdy5jb3JuZXIubGFiZWwsXG4udWkueWVsbG93LmNvcm5lci5sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi51aS55ZWxsb3cucmliYm9uLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDJhOTBjICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbC5mbHVpZCxcbi51aS5mbHVpZC5sYWJlbHMgPiAubGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmxhYmVscyAubGFiZWwsXG4udWkuaW52ZXJ0ZWQubGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgSG9yaXpvbnRhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaG9yaXpvbnRhbC5sYWJlbHMgLmxhYmVsLFxuLnVpLmhvcml6b250YWwubGFiZWwge1xuICBtYXJnaW46IDBlbSAwLjVlbSAwZW0gMGVtO1xuICBwYWRkaW5nOiAwLjRlbSAwLjhlbTtcbiAgbWluLXdpZHRoOiAzZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ2lyY3VsYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNpcmN1bGFyLmxhYmVscyAubGFiZWwsXG4udWkuY2lyY3VsYXIubGFiZWwge1xuICBtaW4td2lkdGg6IDJlbTtcbiAgbWluLWhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAwLjVlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbn1cblxuLnVpLmVtcHR5LmNpcmN1bGFyLmxhYmVscyAubGFiZWwsXG4udWkuZW1wdHkuY2lyY3VsYXIubGFiZWwge1xuICBtaW4td2lkdGg6IDBlbTtcbiAgbWluLWhlaWdodDogMGVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMC41ZW07XG4gIGhlaWdodDogMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUG9pbnRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBvaW50aW5nLmxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWkuYXR0YWNoZWQucG9pbnRpbmcubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi51aS5wb2ludGluZy5sYWJlbDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMC42ZW07XG4gIGhlaWdodDogMC42ZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xufVxuXG4vKi0tLSBBYm92ZSAtLS0qL1xuXG4udWkucG9pbnRpbmcubGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnVpLnBvaW50aW5nLmxhYmVsLFxuLnVpLnBvaW50aW5nLmFib3ZlLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4udWkucG9pbnRpbmcubGFiZWw6YmVmb3JlLFxuLnVpLnBvaW50aW5nLmFib3ZlLmxhYmVsOmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zZW07XG4gIHRvcDogLTAuM2VtO1xuICBsZWZ0OiA1MCU7XG59XG5cbi8qLS0tIEJlbG93IC0tLSovXG5cbi51aS5wb2ludGluZy5ib3R0b20ubGFiZWwsXG4udWkucG9pbnRpbmcuYmVsb3cubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLnVpLnBvaW50aW5nLmJvdHRvbS5sYWJlbDpiZWZvcmUsXG4udWkucG9pbnRpbmcuYmVsb3cubGFiZWw6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjNlbTtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiAtMC4zZW07XG4gIGxlZnQ6IDUwJTtcbn1cblxuLyotLS0gTGVmdCAtLS0qL1xuXG4udWkucG9pbnRpbmcubGVmdC5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNmVtO1xufVxuXG4udWkucG9pbnRpbmcubGVmdC5sYWJlbDpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAtMC4zZW07XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwZW07XG59XG5cbi8qLS0tIFJpZ2h0IC0tLSovXG5cbi51aS5wb2ludGluZy5yaWdodC5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjZlbTtcbn1cblxuLnVpLnBvaW50aW5nLnJpZ2h0LmxhYmVsOmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IC0wLjNlbTtcbiAgcmlnaHQ6IC0wLjNlbTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgIEZsb2F0aW5nIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsb2F0aW5nLmxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDA7XG4gIHRvcDogLTFlbTtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMS41ZW0gIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5taW5pLmxhYmVscyAubGFiZWwsXG4udWkubWluaS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC42NDI4cmVtO1xufVxuXG4udWkudGlueS5sYWJlbHMgLmxhYmVsLFxuLnVpLnRpbnkubGFiZWwge1xuICBmb250LXNpemU6IDAuNzE0MnJlbTtcbn1cblxuLnVpLnNtYWxsLmxhYmVscyAubGFiZWwsXG4udWkuc21hbGwubGFiZWwge1xuICBmb250LXNpemU6IDAuNzg1N3JlbTtcbn1cblxuLnVpLmxhYmVscyAubGFiZWwsXG4udWkubGFiZWwge1xuICBmb250LXNpemU6IDAuODU3MXJlbTtcbn1cblxuLnVpLmxhcmdlLmxhYmVscyAubGFiZWwsXG4udWkubGFyZ2UubGFiZWwge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5iaWcubGFiZWxzIC5sYWJlbCxcbi51aS5iaWcubGFiZWwge1xuICBmb250LXNpemU6IDEuMTQyOHJlbTtcbn1cblxuLnVpLmh1Z2UubGFiZWxzIC5sYWJlbCxcbi51aS5odWdlLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjI4NTdyZW07XG59XG5cbi51aS5tYXNzaXZlLmxhYmVscyAubGFiZWwsXG4udWkubWFzc2l2ZS5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1cmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gTGlzdFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExpc3RcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbnVsLnVpLmxpc3QsXG5vbC51aS5saXN0LFxuLnVpLmxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMWVtIDBlbTtcbiAgcGFkZGluZzogMGVtIDBlbTtcbn1cblxudWwudWkubGlzdDpmaXJzdC1jaGlsZCxcbm9sLnVpLmxpc3Q6Zmlyc3QtY2hpbGQsXG4udWkubGlzdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxudWwudWkubGlzdDpsYXN0LWNoaWxkLFxub2wudWkubGlzdDpsYXN0LWNoaWxkLFxuLnVpLmxpc3Q6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgcGFkZGluZy1ib3R0b206IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIExpc3QgSXRlbSAqL1xuXG51bC51aS5saXN0IGxpLFxub2wudWkubGlzdCBsaSxcbi51aS5saXN0ID4gLml0ZW0sXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIHBhZGRpbmc6IDAuM2VtIDBlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxudWwudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxub2wudWkubGlzdCA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyLFxuLnVpLmxpc3QgPiAubGlzdCA+IC5pdGVtLFxuLnVpLmxpc3QgPiAuaXRlbTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG51bC51aS5saXN0IGxpOmZpcnN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpmaXJzdC1jaGlsZCxcbi51aS5saXN0IC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxudWwudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxub2wudWkubGlzdCBsaTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkLFxuLnVpLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDBlbTtcbn1cblxuLyogQ2hpbGQgTGlzdCAqL1xuXG51bC51aS5saXN0IHVsLFxub2wudWkubGlzdCBvbCxcbi51aS5saXN0IC5saXN0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwLjc1ZW0gMGVtIDAuMjVlbSAwLjVlbTtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gaS5pY29uLFxuLnVpLmxpc3QgPiAuaXRlbSA+IGkuaWNvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nLXRvcDogMC4xcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjNlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBpW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmljb24sXG4udWkubGlzdCA+IC5pdGVtID4gaVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IGkuaWNvbjpvbmx5LWNoaWxkLFxuLnVpLmxpc3QgPiAuaXRlbSA+IGkuaWNvbjpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uaW1hZ2UsXG4udWkubGlzdCA+IC5pdGVtID4gW2NsYXNzKj1cInRvcCBhbGlnbmVkXCJdLmltYWdlIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5pbWFnZSBpbWcsXG4udWkubGlzdCA+IC5pdGVtID4gLmltYWdlIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlOm9ubHktY2hpbGQsXG4udWkubGlzdCA+IC5pdGVtID4gaW1nLmltYWdlLFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5pbWFnZTpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAwZW07XG59XG5cbi8qIENvbnRlbnQgKi9cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCAudWkubGlzdCA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQsXG4udWkubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDAuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQsXG4udWkubGlzdCAubGlzdCA+IC5pdGVtID4gLmljb24gKyAuY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiAuaWNvbiArIC5jb250ZW50IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMC41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiBpbWcuaW1hZ2UgKyAuY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29udGVudCxcbi51aS5saXN0ID4gLml0ZW0gPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29udGVudCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gPiAuY29udGVudCA+IC5saXN0LFxuLnVpLmxpc3QgPiAuaXRlbSA+IC5jb250ZW50ID4gLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBwYWRkaW5nLWxlZnQ6IDBlbTtcbn1cblxuLyogSXRlbSBMaW5rICovXG5cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtLFxuLnVpLmxpc3QgPiBhLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtOmhvdmVyLFxuLnVpLmxpc3QgPiBhLml0ZW06aG92ZXIge1xuICBjb2xvcjogIzAwYjJmMztcbn1cblxuLyogTGlua2VkIEl0ZW0gSWNvbnMgKi9cblxuLnVpLmxpc3QgLmxpc3QgPiBhLml0ZW0gaS5pY29uLFxuLnVpLmxpc3QgPiBhLml0ZW0gaS5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLyogTGlua2luZyBDb250ZW50ICovXG5cbi51aS5saXN0IC5pdGVtIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCkgIWltcG9ydGFudDtcbn1cblxuLnVpLmxpc3QgLml0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiAjMDBiMmYzICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhlYWRlciAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIC5oZWFkZXIsXG4udWkubGlzdCA+IC5pdGVtIC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwZW07XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIC5kZXNjcmlwdGlvbixcbi51aS5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEZsb2F0ZWQgQ29udGVudCAqL1xuXG4udWkubGlzdCAubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0sXG4udWkubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW0gMWVtIDBlbSAwZW07XG59XG5cbi51aS5saXN0IC5saXN0ID4gLml0ZW0gW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkubGlzdCA+IC5pdGVtIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWVudSAudWkubGlzdCA+IC5pdGVtLFxuLnVpLm1lbnUgLnVpLmxpc3QgLmxpc3QgPiAuaXRlbSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZzogMC4zZW0gMGVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4udWkubWVudSAudWkubGlzdCAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLm1lbnUgLnVpLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwZW07XG59XG5cbi51aS5tZW51IC51aS5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5tZW51IC51aS5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3Jpem9udGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ob3Jpem9udGFsLmxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmhvcml6b250YWwubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuaG9yaXpvbnRhbC5saXN0IC5saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwZW07XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qIFBhZGRpbmcgb24gYWxsIGVsZW1lbnRzICovXG5cbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDAuM2VtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG59XG5cbi8qIEhvcml6b250YWwgTGlzdCAqL1xuXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiBpLmljb24ge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtIDAuMjVlbSAwZW0gMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0gPiAuaWNvbixcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSA+IC5pY29uICsgLmNvbnRlbnQge1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpc3QgLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSxcbi51aS5saXN0ID4gLmRpc2FibGVkLml0ZW0ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IHJnYmEoNDAsIDQwLCA0MCwgMC4zKSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5kaXNhYmxlZC5pdGVtLFxuLnVpLmludmVydGVkLmxpc3QgPiAuZGlzYWJsZWQuaXRlbSB7XG4gIGNvbG9yOiByZ2JhKDIyNSwgMjI1LCAyMjUsIDAuMykgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5saXN0IC5saXN0ID4gYS5pdGVtOmhvdmVyIC5pY29uLFxuLnVpLmxpc3QgPiBhLml0ZW06aG92ZXIgLmljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IGEuaXRlbSA+IC5pY29uLFxuLnVpLmludmVydGVkLmxpc3QgPiBhLml0ZW0gPiAuaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gLml0ZW0gLmhlYWRlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmhlYWRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IC5pdGVtIC5kZXNjcmlwdGlvbixcbi51aS5pbnZlcnRlZC5saXN0ID4gLml0ZW0gLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLyogSXRlbSBMaW5rICovXG5cbi51aS5pbnZlcnRlZC5saXN0IC5saXN0ID4gYS5pdGVtLFxuLnVpLmludmVydGVkLmxpc3QgPiBhLml0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQubGlzdCAubGlzdCA+IGEuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5saXN0ID4gYS5pdGVtOmhvdmVyIHtcbiAgY29sb3I6ICMwMGIyZjM7XG59XG5cbi8qIExpbmtpbmcgQ29udGVudCAqL1xuXG4udWkuaW52ZXJ0ZWQubGlzdCAuaXRlbSBhIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQubGlzdCAuaXRlbSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMGIyZjMgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5saXN0IC5pdGVtLFxuLnVpLmxpbmsubGlzdCBhLml0ZW0sXG4udWkubGluay5saXN0IC5pdGVtIGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgY29sb3IgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4ycyBjb2xvciBlYXNlO1xufVxuXG4udWkubGluay5saXN0IGEuaXRlbTpob3Zlcixcbi51aS5saW5rLmxpc3QgLml0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5saW5rLmxpc3QgYS5pdGVtOmFjdGl2ZSxcbi51aS5saW5rLmxpc3QgLml0ZW0gYTphY3RpdmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkubGluay5saXN0IC5hY3RpdmUuaXRlbSxcbi51aS5saW5rLmxpc3QgLmFjdGl2ZS5pdGVtIGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IC5pdGVtLFxuLnVpLmludmVydGVkLmxpbmsubGlzdCBhLml0ZW0sXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IC5pdGVtIGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IGEuaXRlbTpob3Zlcixcbi51aS5pbnZlcnRlZC5saW5rLmxpc3QgLml0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IGEuaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQubGluay5saXN0IC5pdGVtIGE6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5saW5rLmxpc3QgYS5hY3RpdmUuaXRlbSxcbi51aS5pbnZlcnRlZC5saW5rLmxpc3QgLmFjdGl2ZS5pdGVtIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTZWxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAuNWVtIDAuNWVtO1xuICBtYXJnaW46IDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBjb2xvciBlYXNlLCAwLjJzIHBhZGRpbmctbGVmdCBlYXNlLCAwLjJzIGJhY2tncm91bmQtY29sb3IgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4ycyBjb2xvciBlYXNlLCAwLjJzIHBhZGRpbmctbGVmdCBlYXNlLCAwLjJzIGJhY2tncm91bmQtY29sb3IgZWFzZTtcbn1cblxuLnVpLnNlbGVjdGlvbi5saXN0IC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi51aS5zZWxlY3Rpb24ubGlzdC5saXN0ID4gLml0ZW06aG92ZXIsXG4udWkuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtOmFjdGl2ZSxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLmFjdGl2ZSxcbi51aS5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtLFxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0uYWN0aXZlLFxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qIENlbGxlZCAvIERpdmlkZWQgU2VsZWN0aW9uIExpc3QgKi9cblxuLnVpLmNlbGxlZC5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuc2VsZWN0aW9uLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEFuaW1hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5hbmltYXRlZC5saXN0ID4gLml0ZW0ge1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgY29sb3IgZWFzZSwgMC4ycyBwYWRkaW5nLWxlZnQgZWFzZSwgMC4ycyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2U7XG4gIHRyYW5zaXRpb246IDAuMnMgY29sb3IgZWFzZSwgMC4ycyBwYWRkaW5nLWxlZnQgZWFzZSwgMC4ycyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2U7XG59XG5cbi51aS5hbmltYXRlZC5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbTpob3ZlciB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGaXR0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpdHRlZC5saXN0Om5vdCguc2VsZWN0aW9uKSAubGlzdCA+IC5pdGVtLFxuLnVpLmZpdHRlZC5saXN0Om5vdCguc2VsZWN0aW9uKSA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwZW07XG4gIHBhZGRpbmctcmlnaHQ6IDBlbTtcbn1cblxuLnVpLmZpdHRlZC5zZWxlY3Rpb24ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmZpdHRlZC5zZWxlY3Rpb24ubGlzdCA+IC5pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQnVsbGV0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxudWwudWkubGlzdCxcbi51aS5idWxsZXRlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbnVsLnVpLmxpc3QgbGksXG4udWkuYnVsbGV0ZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmJ1bGxldGVkLmxpc3QgPiAuaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxudWwudWkubGlzdCBsaTpiZWZvcmUsXG4udWkuYnVsbGV0ZWQubGlzdCAubGlzdCA+IC5pdGVtOmJlZm9yZSxcbi51aS5idWxsZXRlZC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgY29udGVudDogJ+KAoic7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnVsLnVpLmxpc3QgdWwsXG4udWkuYnVsbGV0ZWQubGlzdCAubGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cblxuLyogSG9yaXpvbnRhbCBCdWxsZXRlZCAqL1xuXG51bC51aS5ob3Jpem9udGFsLmJ1bGxldGVkLmxpc3QsXG4udWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpLFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCA+IC5pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbn1cblxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpOmZpcnN0LWNoaWxkLFxuLnVpLmhvcml6b250YWwuYnVsbGV0ZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxudWwudWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0IGxpOmZpcnN0LWNoaWxkOjpiZWZvcmUsXG4udWkuaG9yaXpvbnRhbC5idWxsZXRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxub2wudWkubGlzdCxcbi51aS5vcmRlcmVkLmxpc3QsXG4udWkub3JkZXJlZC5saXN0IC5saXN0LFxub2wudWkubGlzdCBvbCB7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQ7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbm9sLnVpLmxpc3QgbGksXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkub3JkZXJlZC5saXN0ID4gLml0ZW0ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxub2wudWkubGlzdCBsaTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLm9yZGVyZWQubGlzdCA+IC5pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG4gIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlcmVkO1xuICBjb250ZW50OiBjb3VudGVycyhvcmRlcmVkLCBcIi5cIikgXCIgXCI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi8qIENoaWxkIExpc3RzICovXG5cbm9sLnVpLmxpc3Qgb2wsXG4udWkub3JkZXJlZC5saXN0IC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxub2wudWkubGlzdCBvbCBsaTpiZWZvcmUsXG4udWkub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IC0yZW07XG59XG5cbi8qIEhvcml6b250YWwgT3JkZXJlZCAqL1xuXG5vbC51aS5ob3Jpem9udGFsLmxpc3QsXG4udWkub3JkZXJlZC5ob3Jpem9udGFsLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG5vbC51aS5ob3Jpem9udGFsLmxpc3QgbGk6YmVmb3JlLFxuLnVpLm9yZGVyZWQuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW06YmVmb3JlLFxuLnVpLm9yZGVyZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luOiAwZW0gMC41ZW0gMGVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGl2aWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGl2aWRlZC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLnVpLmRpdmlkZWQubGlzdCAubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLmRpdmlkZWQubGlzdCAuaXRlbSAubGlzdCA+IC5pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLmRpdmlkZWQubGlzdCAubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmRpdmlkZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogU3ViIE1lbnUgKi9cblxuLnVpLmRpdmlkZWQubGlzdDpub3QoLmhvcml6b250YWwpIC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG5cbi8qIERpdmlkZWQgYnVsbGV0ZWQgKi9cblxuLnVpLmRpdmlkZWQuYnVsbGV0ZWQubGlzdDpub3QoLmhvcml6b250YWwpLFxuLnVpLmRpdmlkZWQuYnVsbGV0ZWQubGlzdCAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIHBhZGRpbmctbGVmdDogMGVtO1xufVxuXG4udWkuZGl2aWRlZC5idWxsZXRlZC5saXN0IC5saXN0ID4gLml0ZW06bm90KC5ob3Jpem9udGFsKSxcbi51aS5kaXZpZGVkLmJ1bGxldGVkLmxpc3QgPiAuaXRlbTpub3QoLmhvcml6b250YWwpIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuXG4vKiBEaXZpZGVkIE9yZGVyZWQgKi9cblxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuZGl2aWRlZC5vcmRlcmVkLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5pdGVtIC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjNlbTtcbn1cblxuLnVpLmRpdmlkZWQub3JkZXJlZC5saXN0IC5pdGVtIC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLyogRGl2aWRlZCBTZWxlY3Rpb24gKi9cblxuLnVpLmRpdmlkZWQuc2VsZWN0aW9uLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5kaXZpZGVkLnNlbGVjdGlvbi5saXN0ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4vKiBEaXZpZGVkIGhvcml6b250YWwgKi9cblxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLmRpdmlkZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNjtcbn1cblxuLnVpLmhvcml6b250YWwuZGl2aWRlZC5saXN0ID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQubGlzdCA+IC5pdGVtLFxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQubGlzdCA+IC5saXN0LFxuLnVpLmRpdmlkZWQuaW52ZXJ0ZWQuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENlbGxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQubGlzdCA+IC5saXN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkuY2VsbGVkLmxpc3QgPiAuaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG59XG5cbi8qIFBhZGRpbmcgb24gYWxsIGVsZW1lbnRzICovXG5cbi51aS5jZWxsZWQubGlzdCA+IC5pdGVtOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC5saXN0ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwLjNlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuM2VtO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuXG4udWkuY2VsbGVkLmxpc3QgLml0ZW0gLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci13aWR0aDogMHB4O1xufVxuXG4udWkuY2VsbGVkLmxpc3QgLmxpc3QgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbn1cblxuLyogQ2VsbGVkIEJ1bGxldGVkICovXG5cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmNlbGxlZC5idWxsZXRlZC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5cbi51aS5jZWxsZWQuYnVsbGV0ZWQubGlzdCAuaXRlbSAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuM2VtO1xufVxuXG4vKiBDZWxsZWQgT3JkZXJlZCAqL1xuXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xufVxuXG4udWkuY2VsbGVkLm9yZGVyZWQubGlzdCAuaXRlbSAubGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIG1hcmdpbi1yaWdodDogMGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG59XG5cbi51aS5jZWxsZWQub3JkZXJlZC5saXN0IC5saXN0ID4gLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLyogQ2VsbGVkIEhvcml6b250YWwgKi9cblxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3Qge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5jZWxsZWQubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmhvcml6b250YWwuY2VsbGVkLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuICBsaW5lLWhlaWdodDogMC42O1xufVxuXG4udWkuaG9yaXpvbnRhbC5jZWxsZWQubGlzdCAubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQsXG4udWkuaG9yaXpvbnRhbC5jZWxsZWQubGlzdCA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuY2VsbGVkLmludmVydGVkLmxpc3QgPiAuaXRlbSxcbi51aS5jZWxsZWQuaW52ZXJ0ZWQubGlzdCA+IC5saXN0IHtcbiAgYm9yZGVyLWNvbG9yOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4udWkuY2VsbGVkLmludmVydGVkLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmNlbGxlZC5pbnZlcnRlZC5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUmVsYXhlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVsYXhlZC5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi51aS5yZWxheGVkLmxpc3QgLmxpc3QgPiAuaXRlbSAuaGVhZGVyLFxuLnVpLnJlbGF4ZWQubGlzdCA+IC5pdGVtIC5oZWFkZXIge1xuICAvKm1hcmdpbi1ib3R0b206IEByZWxheGVkSGVhZGVyTWFyZ2luOyovXG59XG5cbi51aS5ob3Jpem9udGFsLnJlbGF4ZWQubGlzdCA+IC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xufVxuXG4vKiBWZXJ5IFJlbGF4ZWQgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0Om5vdCguaG9yaXpvbnRhbCkgPiAuaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5saXN0IC5saXN0ID4gLml0ZW0gLmhlYWRlcixcbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCA+IC5pdGVtIC5oZWFkZXIge1xuICAvKm1hcmdpbi1ib3R0b206IEB2ZXJ5UmVsYXhlZEhlYWRlck1hcmdpbjsqL1xufVxuXG4udWkuaG9yaXpvbnRhbFtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0ubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmhvcml6b250YWxbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmxpc3QgPiAuaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaS5saXN0IHtcbiAgZm9udC1zaXplOiAwLjcxNDI4NTcxZW07XG59XG5cbi51aS50aW55Lmxpc3Qge1xuICBmb250LXNpemU6IDAuODU3MTQyODZlbTtcbn1cblxuLnVpLnNtYWxsLmxpc3Qge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cblxuLnVpLmxpc3Qge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLmxpc3Qge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmJpZy5saXN0IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxNDI5ZW07XG59XG5cbi51aS5odWdlLmxpc3Qge1xuICBmb250LXNpemU6IDEuNDI4NTcxNDNlbTtcbn1cblxuLnVpLm1hc3NpdmUubGlzdCB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MWVtO1xufVxuXG4udWkubWluaS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5taW5pLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjcxNDI4NTcxcmVtO1xufVxuXG4udWkudGlueS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS50aW55Lmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xufVxuXG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuc21hbGwuaG9yaXpvbnRhbC5saXN0ID4gLml0ZW0ge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5ob3Jpem9udGFsLmxpc3QgLmxpc3QgPiAuaXRlbSxcbi51aS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmxhcmdlLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmxhcmdlLmhvcml6b250YWwubGlzdCA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkuYmlnLmhvcml6b250YWwubGlzdCAubGlzdCA+IC5pdGVtLFxuLnVpLmJpZy5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MTQyOXJlbTtcbn1cblxuLnVpLmh1Z2UuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkuaHVnZS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M3JlbTtcbn1cblxuLnVpLm1hc3NpdmUuaG9yaXpvbnRhbC5saXN0IC5saXN0ID4gLml0ZW0sXG4udWkubWFzc2l2ZS5ob3Jpem9udGFsLmxpc3QgPiAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBMb2FkZXJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIExvYWRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU3RhbmRhcmQgU2l6ZSAqL1xuXG4udWkubG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vKiBTdGF0aWMgU2hhcGUgKi9cblxuLnVpLmxvYWRlcjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyOiAwLjJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi8qIEFjdGl2ZSBTaGFwZSAqL1xuXG4udWkubG9hZGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZGVyIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IGxvYWRlciAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjYWFhYWFhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEFjdGl2ZSBBbmltYXRpb24gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRlciB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsb2FkZXIge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qIFNpemVzICovXG5cbi51aS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAyLjI1ODVlbTtcbiAgaGVpZ2h0OiAyLjI1ODVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMS4xMjkyNWVtO1xufVxuXG4udWkubWluaS5sb2FkZXI6YmVmb3JlLFxuLnVpLm1pbmkubG9hZGVyOmFmdGVyIHtcbiAgd2lkdGg6IDEuMjg1N2VtO1xuICBoZWlnaHQ6IDEuMjg1N2VtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIC0wLjY0Mjg1ZW07XG59XG5cbi51aS5zbWFsbC5sb2FkZXI6YmVmb3JlLFxuLnVpLnNtYWxsLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiAxLjcxNDJlbTtcbiAgaGVpZ2h0OiAxLjcxNDJlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMC44NTcxZW07XG59XG5cbi51aS5sYXJnZS5sb2FkZXI6YmVmb3JlLFxuLnVpLmxhcmdlLmxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiA0LjU3MTRlbTtcbiAgaGVpZ2h0OiA0LjU3MTRlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMi4yODU3ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2hvdyBpbnNpZGUgYWN0aXZlIGRpbW1lciAqL1xuXG4udWkuZGltbWVyIC5sb2FkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogQmxhY2sgRGltbWVyICovXG5cbi51aS5kaW1tZXIgLnVpLmxvYWRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZGltbWVyIC51aS5sb2FkZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG4udWkuZGltbWVyIC51aS5sb2FkZXI6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNmZmZmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFdoaXRlIERpbW1lciAoSW52ZXJ0ZWQpICovXG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlcjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmludmVydGVkLmRpbW1lciAudWkubG9hZGVyOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYWFhYWFhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGV4dC5sb2FkZXIge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5pbmRldGVybWluYXRlLmxvYWRlcjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuMnM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS4ycztcbn1cblxuLnVpLmxvYWRlci5hY3RpdmUsXG4udWkubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVpLmxvYWRlci5kaXNhYmxlZCxcbi51aS5sb2FkZXIuaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMb2FkZXIgKi9cblxuLnVpLmludmVydGVkLmRpbW1lciAudWkubWluaS5sb2FkZXIsXG4udWkubWluaS5sb2FkZXIge1xuICB3aWR0aDogMS4yODU3ZW07XG4gIGhlaWdodDogMS4yODU3ZW07XG4gIGZvbnQtc2l6ZTogMC43ODU3ZW07XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLnNtYWxsLmxvYWRlcixcbi51aS5zbWFsbC5sb2FkZXIge1xuICB3aWR0aDogMS43MTQyZW07XG4gIGhlaWdodDogMS43MTQyZW07XG4gIGZvbnQtc2l6ZTogMC45Mjg1ZW07XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgLnVpLmxvYWRlcixcbi51aS5sb2FkZXIge1xuICB3aWR0aDogMi4yNTg1ZW07XG4gIGhlaWdodDogMi4yNTg1ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGltbWVyIC51aS5sb2FkZXIubGFyZ2UsXG4udWkubG9hZGVyLmxhcmdlIHtcbiAgd2lkdGg6IDQuNTcxNGVtO1xuICBoZWlnaHQ6IDQuNTcxNGVtO1xuICBmb250LXNpemU6IDEuMTQyOGVtO1xufVxuXG4vKiBUZXh0IExvYWRlciAqL1xuXG4udWkubWluaS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogMS4yODU3ZW07XG4gIHBhZGRpbmctdG9wOiAxLjk4NTdlbTtcbn1cblxuLnVpLnNtYWxsLnRleHQubG9hZGVyIHtcbiAgbWluLXdpZHRoOiAxLjcxNDJlbTtcbiAgcGFkZGluZy10b3A6IDIuNDE0MmVtO1xufVxuXG4udWkudGV4dC5sb2FkZXIge1xuICBtaW4td2lkdGg6IDIuMjU4NWVtO1xuICBwYWRkaW5nLXRvcDogMi45NTg1ZW07XG59XG5cbi51aS5sYXJnZS50ZXh0LmxvYWRlciB7XG4gIG1pbi13aWR0aDogNC41NzE0ZW07XG4gIHBhZGRpbmctdG9wOiA1LjI3MTRlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmxvYWRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQubG9hZGVyOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cblxuLnVpLmludmVydGVkLmxvYWRlcjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIElubGluZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW5saW5lLmxvYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwZW07XG4gIGxlZnQ6IDBlbTtcbiAgdG9wOiAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi51aS5pbmxpbmUubG9hZGVyLmFjdGl2ZSxcbi51aS5pbmxpbmUubG9hZGVyLnZpc2libGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qIENlbnRlcmVkIElubGluZSAqL1xuXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci5hY3RpdmUsXG4udWkuY2VudGVyZWQuaW5saW5lLmxvYWRlci52aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBSYWlsXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUmFpbHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5yYWlsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAlO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi51aS5sZWZ0LnJhaWwge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAwJTtcbiAgcGFkZGluZzogMGVtIDJyZW0gMGVtIDBlbTtcbiAgbWFyZ2luOiAwZW0gMnJlbSAwZW0gMGVtO1xufVxuXG4udWkucmlnaHQucmFpbCB7XG4gIGxlZnQ6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAycmVtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDJyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW50ZXJuYWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sZWZ0LmludGVybmFsLnJhaWwge1xuICBsZWZ0OiAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDJyZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMnJlbTtcbn1cblxuLnVpLnJpZ2h0LmludGVybmFsLnJhaWwge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMCU7XG4gIHBhZGRpbmc6IDBlbSAycmVtIDBlbSAwZW07XG4gIG1hcmdpbjogMGVtIDJyZW0gMGVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXZpZGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5kaXZpZGluZy5yYWlsIHtcbiAgcGFkZGluZzogMGVtIDIuNXJlbSAwZW0gMGVtO1xuICBtYXJnaW46IDBlbSAyLjVyZW0gMGVtIDBlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLnVpLnJpZ2h0LmRpdmlkaW5nLnJhaWwge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDIuNXJlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAyLjVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBEaXN0YW5jZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNsb3NlLmxlZnQucmFpbCB7XG4gIHBhZGRpbmc6IDBlbSAxZW0gMGVtIDBlbTtcbiAgbWFyZ2luOiAwZW0gMWVtIDBlbSAwZW07XG59XG5cbi51aS5jbG9zZS5yaWdodC5yYWlsIHtcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMWVtO1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLnZlcnkuY2xvc2UubGVmdC5yYWlsIHtcbiAgcGFkZGluZzogMGVtIDAuNWVtIDBlbSAwZW07XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwZW07XG59XG5cbi51aS52ZXJ5LmNsb3NlLnJpZ2h0LnJhaWwge1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAwLjVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwLjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQubGVmdC5yYWlsLFxuLnVpLmF0dGFjaGVkLnJpZ2h0LnJhaWwge1xuICBwYWRkaW5nOiAwZW07XG4gIG1hcmdpbjogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhaWwge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFJldmVhbFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgUmV2ZWFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucmV2ZWFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDMgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC44cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKSAwLjE1cztcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xNXM7XG59XG5cbi51aS5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgei1pbmRleDogMiAhaW1wb3J0YW50O1xufVxuXG4vKiBNYWtlIHN1cmUgaG92ZXJlZCBlbGVtZW50IGlzIG9uIHRvcCBvZiBvdGhlciByZXZlYWwgKi9cblxuLnVpLnJldmVhbDpob3ZlciAudmlzaWJsZS5jb250ZW50IHtcbiAgei1pbmRleDogNCAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2xpZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zbGlkZS5yZXZlYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udWkuc2xpZGUucmV2ZWFsID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMGVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xNXM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpIDAuMTVzO1xufVxuXG4udWkuc2xpZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJldmVhbDpob3ZlciA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5yaWdodC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJpZ2h0LnJldmVhbCA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLnJpZ2h0LnJldmVhbDpob3ZlciA+IC5oaWRkZW4uY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS51cC5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUudXAucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zbGlkZS51cC5yZXZlYWw6aG92ZXIgPiAuaGlkZGVuLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUuZG93bi5yZXZlYWwgPiAuaGlkZGVuLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkuc2xpZGUuZG93bi5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNsaWRlLmRvd24ucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmFkZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZhZGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51aS5mYWRlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNb3ZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW92ZS5yZXZlYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udWkubW92ZS5yZXZlYWwgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC44cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKSAwLjE1cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSkgMC4xNXM7XG59XG5cbi51aS5tb3ZlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vdmUucmV2ZWFsID4gLmhpZGRlbi5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb3ZlLnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xufVxuXG4udWkubW92ZS5yaWdodC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vdmUudXAucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb3ZlLmRvd24ucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUm90YXRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucm90YXRlLnJldmVhbCA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi51aS5yb3RhdGUucmV2ZWFsID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmlnaHQucmV2ZWFsID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG59XG5cbi51aS5yb3RhdGUucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCxcbi51aS5yb3RhdGUucmlnaHQucmV2ZWFsOmhvdmVyID4gLnZpc2libGUuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTEwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDExMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDExMGRlZyk7XG59XG5cbi51aS5yb3RhdGUubGVmdC5yZXZlYWwgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbn1cblxuLnVpLnJvdGF0ZS5sZWZ0LnJldmVhbDpob3ZlciA+IC52aXNpYmxlLmNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTExMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMTBkZWcpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5kaXNhYmxlZC5yZXZlYWwge1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kaXNhYmxlZC5yZXZlYWwgPiAuY29udGVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kaXNhYmxlZC5yZXZlYWw6aG92ZXIgPiAudmlzaWJsZS5jb250ZW50IHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkuZGlzYWJsZWQucmV2ZWFsOmhvdmVyID4gLmhpZGRlbi5jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE1hc2tlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1hc2tlZC5yZXZlYWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEluc3RhbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnN0YW50LnJldmVhbCA+IC5jb250ZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJldmVhbCA+IC5jb250ZW50IHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBTZWdtZW50XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTZWdtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2VnbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSksIDBweCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgbWFyZ2luOiAxcmVtIDBlbTtcbiAgcGFkZGluZzogMWVtIDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuc2VnbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLnNlZ21lbnQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLnNlZ21lbnQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuXG4udWlbY2xhc3MqPVwidmVydGljYWwgc2VnbWVudFwiXSB7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nLWxlZnQ6IDBlbTtcbiAgcGFkZGluZy1yaWdodDogMGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4udWlbY2xhc3MqPVwidmVydGljYWwgc2VnbWVudFwiXTpsYXN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSG9yaXpvbnRhbCAqL1xuXG4udWlbY2xhc3MqPVwiaG9yaXpvbnRhbCBzZWdtZW50XCJdIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmctdG9wOiAwZW07XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMXB4IDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTG9vc2UgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSGVhZGVyICovXG5cbi51aS5pbnZlcnRlZC5zZWdtZW50ID4gLnVpLmhlYWRlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKiBMYWJlbCAqL1xuXG4udWlbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLnNlZ21lbnQgPiBbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMGVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMGVtO1xufVxuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnNlZ21lbnQgPiBbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdLmxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMGVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMGVtO1xufVxuXG4udWkuYXR0YWNoZWQuc2VnbWVudDpub3QoLnRvcCk6bm90KC5ib3R0b20pID4gW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXS5sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLmF0dGFjaGVkLnNlZ21lbnQ6bm90KC50b3ApOm5vdCguYm90dG9tKSA+IFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ubGFiZWwge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW07XG59XG5cbi8qIEdyaWQgKi9cblxuLnVpLnBhZ2UuZ3JpZC5zZWdtZW50LFxuLnVpLmdyaWQgLnVpLnNlZ21lbnQuY29sdW1uIHtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcbn1cblxuLnVpLmdyaWQuc2VnbWVudCB7XG4gIG1hcmdpbjogMXJlbSAwcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vKiBUYWJsZSAqL1xuXG4udWkuYmFzaWMudGFibGUuc2VnbWVudCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSksIDBweCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGUuc2VnbWVudCB7XG4gIHBhZGRpbmc6IDFlbSAxZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBQaWxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGlsZWQuc2VnbWVudCB7XG4gIG1hcmdpbjogM2VtIDBlbTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIHotaW5kZXg6IGF1dG87XG59XG5cbi51aS5waWxlZC5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudDphZnRlcixcbi51aS5waWxlZC5zZWdtZW50OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDFweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4udWkucGlsZWQuc2VnbWVudDphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMS4yZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDEuMmRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDEuMmRlZyk7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi51aS5waWxlZC5zZWdtZW50OmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEuMmRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMS4yZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEuMmRlZyk7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTI7XG59XG5cbi8qIFBpbGVkIEF0dGFjaGVkICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0ucGlsZWQuc2VnbWVudCB7XG4gIG1hcmdpbi10b3A6IDNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudFtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5waWxlZC5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogM2VtO1xufVxuXG4udWkucGlsZWQuc2VnbWVudFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgU3RhY2tlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhY2tlZC5zZWdtZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNGVtO1xufVxuXG4udWkuc3RhY2tlZC5zZWdtZW50OmFmdGVyLFxuLnVpLnN0YWNrZWQuc2VnbWVudDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zcHg7XG4gIGxlZnQ6IDAlO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnB4O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4udWkuc3RhY2tlZC5zZWdtZW50OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEFkZCBhZGRpdGlvbmFsIHBhZ2UgKi9cblxuLnVpLnRhbGwuc3RhY2tlZC5zZWdtZW50OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3R0b206IDBweDtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLnN0YWNrZWQuaW52ZXJ0ZWQuc2VnbWVudDphZnRlcixcbi51aS5zdGFja2VkLmludmVydGVkLnNlZ21lbnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4zKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tcGFjdC5zZWdtZW50IHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENpcmN1bGFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jaXJjdWxhci5zZWdtZW50IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgcGFkZGluZzogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSYWlzZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhaXNlZC5zZWdtZW50IHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSksIDBweCAxcHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXNhYmxlZC5zZWdtZW50IHtcbiAgb3BhY2l0eTogMC4zO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcuc2VnbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludC1ldmVudHM6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG5cbi51aS5sb2FkaW5nLnNlZ21lbnQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgei1pbmRleDogMTAwO1xufVxuXG4udWkubG9hZGluZy5zZWdtZW50OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMS41ZW0gMGVtIDBlbSAtMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGhlaWdodDogM2VtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2VnbWVudC1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IHNlZ21lbnQtc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjYWFhYWFhIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNlZ21lbnQtc3BpbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzZWdtZW50LXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5iYXNpYy5zZWdtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGaXR0dGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5maXR0ZWQuc2VnbWVudCB7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ibGFjay5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMxYjFjMWQ7XG59XG5cbi51aS5ibHVlLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzNiODNjMDtcbn1cblxuLnVpLmdyZWVuLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzJkYjQ3NTtcbn1cblxuLnVpLm9yYW5nZS5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlMDdiNTM7XG59XG5cbi51aS5waW5rLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2Q5NDk5YTtcbn1cblxuLnVpLnB1cnBsZS5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM1NjRmOGE7XG59XG5cbi51aS5yZWQuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjY2MxODFlO1xufVxuXG4udWkudGVhbC5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMwMGI1YWQ7XG59XG5cbi51aS55ZWxsb3cuc2VnbWVudDpub3QoLmludmVydGVkKSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZjJjNjFmO1xufVxuXG4udWkuYmxhY2suc2VnbWVudDpub3QoLmludmVydGVkKTpub3QoLmF0dGFjaGVkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmJsdWUuc2VnbWVudDpub3QoLmludmVydGVkKTpub3QoLmF0dGFjaGVkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyZWVuLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCk6bm90KC5hdHRhY2hlZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5vcmFuZ2Uuc2VnbWVudDpub3QoLmludmVydGVkKTpub3QoLmF0dGFjaGVkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLnBpbmsuc2VnbWVudDpub3QoLmludmVydGVkKTpub3QoLmF0dGFjaGVkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLnB1cnBsZS5zZWdtZW50Om5vdCguaW52ZXJ0ZWQpOm5vdCguYXR0YWNoZWQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4udWkucmVkLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCk6bm90KC5hdHRhY2hlZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS50ZWFsLnNlZ21lbnQ6bm90KC5pbnZlcnRlZCk6bm90KC5hdHRhY2hlZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS55ZWxsb3cuc2VnbWVudDpub3QoLmludmVydGVkKTpub3QoLmF0dGFjaGVkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBJbnZlcnRlZCBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLnNlZ21lbnQsXG4udWkuaW52ZXJ0ZWQuYmxhY2suc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjgzYzAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmdyZWVuLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2Uuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMDdiNTMgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTQ5OWEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnB1cnBsZS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NGY4YSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuc2VnbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmM2MWYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLnNlZ21lbnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5zZWdtZW50IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi51aVtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5zZWdtZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGVkLnNlZ21lbnQsXG4udWlbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLnNlZ21lbnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4udWlbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5zZWdtZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLnNlZ21lbnQgLnNlZ21lbnQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCAuaW52ZXJ0ZWQuc2VnbWVudCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VnbWVudCxcbi51aS5wcmltYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLmJsb2NrLnNlZ21lbnQsXG4udWkuaW52ZXJ0ZWQuYXR0YWNoZWQuc2VnbWVudCB7XG4gIGJvcmRlci1jb2xvcjogIzU1NTU1NTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIE9yZGluYWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlY29uZGFyeS5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogI2ZhZjlmYTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLnRlcnRpYXJ5LnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAjZWJlYmViO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIDEwMCUpO1xuICBjb2xvcjogI2ZhZmFmYTtcbn1cblxuLnVpLnRlcnRpYXJ5LmludmVydGVkLnNlZ21lbnQge1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDEwMCUpO1xuICBjb2xvcjogI2YwZjBmMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2VnbWVudC5hdHRhY2hlZCB7XG4gIHRvcDogMHB4O1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luOiAwZW0gLTFweDtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlICsgIDJweCApO1xuICB3aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICBtYXgtd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlICsgIDJweCApO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArICAycHggKTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDRkNGQ1O1xufVxuXG4udWkuc2VnbWVudC5hdHRhY2hlZCArIC51aS5zZWdtZW50LmF0dGFjaGVkOm5vdCgudG9wKSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFRvcCAqL1xuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnNlZ21lbnQge1xuICB0b3A6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS5zZWdtZW50W2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLyogQm90dG9tICovXG5cbi51aS5zZWdtZW50W2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXSB7XG4gIHRvcDogMHB4O1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3gtc2hhZG93OiBub25lLCAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4udWkuc2VnbWVudFtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWdtZW50cyB7XG4gIG1hcmdpbjogMXJlbSAwZW07XG59XG5cbi51aS5zZWdtZW50czpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLnNlZ21lbnRzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50IHtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xuICBtYXJnaW46IDBlbSAtMXB4O1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAgMnB4ICk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAgMnB4ICk7XG4gIG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAgMnB4ICk7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLyogVG9wICovXG5cbi51aS5zZWdtZW50cyA+IC5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBib3R0b206IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICB0b3A6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi8qIEJvdHRvbSAqL1xuXG4udWkuc2VnbWVudHMgPiAuc2VnbWVudDpsYXN0LWNoaWxkIHtcbiAgYm90dG9tOiAwcHg7XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICB0b3A6IDBweDtcbiAgYm94LXNoYWRvdzogbm9uZSwgMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuZ3JpZCAudWkuc2VnbWVudC5jb2x1bW4sXG4udWkucGFnZS5ncmlkLnNlZ21lbnQge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFN0ZXBcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgU2luZ3VsYXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zdGVwcyAuc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwZW0gMGVtO1xuICBwYWRkaW5nOiAwLjkyODVlbSAxLjVlbSAwLjkyODVlbSAyLjI1ZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWkuc3RlcHMgLnN0ZXA6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDBlbTtcbiAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwLFxuLnVpLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBvcGFjaXR5IDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFBsdXJhbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnN0ZXBzIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICcnO1xuICBib3gtc2hhZG93OiAnJztcbiAgbGluZS1oZWlnaHQ6IDEuMTQycmVtO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW07XG59XG5cbi51aS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1N3JlbSAwZW0gMGVtIDAuMjg1N3JlbTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3cmVtIDAuMjg1N3JlbSAwZW07XG59XG5cbi51aS5zdGVwcyAuc3RlcDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtO1xufVxuXG4udWkuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWkuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBDb250ZW50XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBUaXRsZSAqL1xuXG4udWkuc3RlcHMgLnN0ZXAgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjA3MTRlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIERlc2NyaXB0aW9uICovXG5cbi51aS5zdGVwcyAuc3RlcCAuZGVzY3JpcHRpb24ge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc3RlcHMgLnN0ZXAgLnRpdGxlIH4gLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC4xZW07XG59XG5cbi8qIEljb24gKi9cblxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24sXG4udWkuc3RlcHMgLnN0ZXAgPiAuaWNvbiB+IC5jb250ZW50IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwID4gLmljb24ge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNmVtO1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5zdGVwcyAubGluay5zdGVwLFxuLnVpLnN0ZXBzIGEuc3RlcCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE9yZGVyZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vcmRlcmVkLnN0ZXBzIHtcbiAgY291bnRlci1yZXNldDogb3JkZXJlZDtcbn1cblxuLnVpLm9yZGVyZWQuc3RlcHMgLnN0ZXA6YmVmb3JlIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBjb3VudGVycyhvcmRlcmVkLCBcIi5cIik7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNmVtO1xuICBmb250LXNpemU6IDJlbTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyZWQ7XG59XG5cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwID4gKiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDAuOTI4NWVtIDEuNWVtO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nOiAwLjkyODVlbSAxLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtIDAuMjg1N3JlbSAwZW0gMGVtO1xufVxuXG4udWkudmVydGljYWwuc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3cmVtIDAuMjg1N3JlbTtcbn1cblxuLyogQXJyb3cgKi9cblxuLnVpLnZlcnRpY2FsLnN0ZXBzIC5zdGVwOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQWN0aXZlIEFycm93ICovXG5cbi51aS52ZXJ0aWNhbC5zdGVwcyAuYWN0aXZlLnN0ZXA6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS1cbiAgICBSZXNwb25zaXZlXG4tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTW9iaWxlIChEZWZhdWx0KSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zdGVwcyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAudWkuc3RlcHMgLnN0ZXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMC45Mjg1ZW0gMS41ZW07XG4gIH1cblxuICAudWkuc3RlcHMgLnN0ZXA6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDAuOTI4NWVtIDEuNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjg1N3JlbSAwLjI4NTdyZW0gMGVtIDBlbTtcbiAgfVxuXG4gIC51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAuMjg1N3JlbSAwLjI4NTdyZW07XG4gIH1cblxuICAvKiBBcnJvdyAqL1xuXG4gIC51aS5zdGVwcyAuc3RlcDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogTGluayBIb3ZlciAqL1xuXG4udWkuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcjo6YWZ0ZXIsXG4udWkuc3RlcHMgLmxpbmsuc3RlcDpob3Zlcixcbi51aS5zdGVwcyBhLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuc3RlcDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIExpbmsgRG93biAqL1xuXG4udWkuc3RlcHMgLmxpbmsuc3RlcDphY3RpdmU6OmFmdGVyLFxuLnVpLnN0ZXBzIC5saW5rLnN0ZXA6YWN0aXZlLFxuLnVpLnN0ZXBzIGEuc3RlcDphY3RpdmU6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuc3RlcDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZSB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwLmFjdGl2ZTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG59XG5cbi51aS5zdGVwcyAuc3RlcC5hY3RpdmUgLnRpdGxlIHtcbiAgY29sb3I6ICMwMDlmZGE7XG59XG5cbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmFjdGl2ZTpiZWZvcmUsXG4udWkuc3RlcHMgLmFjdGl2ZS5zdGVwIC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi8qIEFjdGl2ZSBIb3ZlciAqL1xuXG4udWkuc3RlcHMgLmxpbmsuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIC5saW5rLmFjdGl2ZS5zdGVwOmhvdmVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXI6OmFmdGVyLFxuLnVpLnN0ZXBzIGEuYWN0aXZlLnN0ZXA6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICNlY2VjZWM7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIENvbXBsZXRlZCAqL1xuXG4udWkuc3RlcHMgLnN0ZXAuY29tcGxldGVkID4gLmljb246YmVmb3JlLFxuLnVpLm9yZGVyZWQuc3RlcHMgLnN0ZXAuY29tcGxldGVkOmJlZm9yZSB7XG4gIGNvbG9yOiAjMmRiNDc1O1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXAge1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXAsXG4udWkuc3RlcHMgLmRpc2FibGVkLnN0ZXAgLnRpdGxlLFxuLnVpLnN0ZXBzIC5kaXNhYmxlZC5zdGVwIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG5cbi51aS5zdGVwcyAuZGlzYWJsZWQuc3RlcDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGFibGV0IE9yIEJlbG93ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMC45Mjg1ZW0gMS41ZW07XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMC45Mjg1ZW0gMS41ZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtIDAuMjg1N3JlbSAwZW0gMGVtO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0uc3RlcHMgLnN0ZXA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTdyZW0gMC4yODU3cmVtO1xuICB9XG5cbiAgLyogQXJyb3cgKi9cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS5zdGVwcyAuc3RlcDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRmx1aWQgKi9cblxuLnVpLmZsdWlkLnN0ZXBzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVG9wICovXG5cbi5hdHRhY2hlZC51aS5zdGVwcyB7XG4gIG1hcmdpbjogMGVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW0gMC4yODU3cmVtIDBlbSAwZW07XG59XG5cbi5hdHRhY2hlZC51aS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1N3JlbSAwZW0gMGVtIDBlbTtcbn1cblxuLmF0dGFjaGVkLnVpLnN0ZXBzIC5zdGVwOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3cmVtIDBlbSAwZW07XG59XG5cbi8qIEJvdHRvbSAqL1xuXG4uYm90dG9tLmF0dGFjaGVkLnVpLnN0ZXBzIHtcbiAgbWFyZ2luOiAtMXB4IDBlbSAwZW07XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMC4yODU3cmVtIDAuMjg1N3JlbTtcbn1cblxuLmJvdHRvbS5hdHRhY2hlZC51aS5zdGVwcyAuc3RlcDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMGVtIDAuMjg1N3JlbTtcbn1cblxuLmJvdHRvbS5hdHRhY2hlZC51aS5zdGVwcyAuc3RlcDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwLjI4NTdyZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBFdmVubHkgRGl2aWRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkub25lLnN0ZXBzLFxuLnVpLnR3by5zdGVwcyxcbi51aS50aHJlZS5zdGVwcyxcbi51aS5mb3VyLnN0ZXBzLFxuLnVpLmZpdmUuc3RlcHMsXG4udWkuc2l4LnN0ZXBzLFxuLnVpLnNldmVuLnN0ZXBzLFxuLnVpLmVpZ2h0LnN0ZXBzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5vbmUuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkudHdvLnN0ZXBzID4gLnN0ZXAge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWkudGhyZWUuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4udWkuZm91ci5zdGVwcyA+IC5zdGVwIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLmZpdmUuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aS5zaXguc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxNi42NjYlO1xufVxuXG4udWkuc2V2ZW4uc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxNC4yODUlO1xufVxuXG4udWkuZWlnaHQuc3RlcHMgPiAuc3RlcCB7XG4gIHdpZHRoOiAxMi41MDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc21hbGwuc3RlcCxcbi51aS5zbWFsbC5zdGVwcyAuc3RlcCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1NzE0M3JlbTtcbn1cblxuLnVpLnN0ZXAsXG4udWkuc3RlcHMgLnN0ZXAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS5sYXJnZS5zdGVwLFxuLnVpLmxhcmdlLnN0ZXBzIC5zdGVwIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTdGVwJztcbiAgc3JjOiB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODs7YmFzZTY0LEFBRUFBQUFPQUlBQUF3QmdUMU12TWozaFNRRUFBQURzQUFBQVZtTnRZWERRRWhtM0FBQUJSQUFBQVVwamRuUWdCa24vbEFBQUJ1d0FBQUFjWm5CbmJZb0tlRHNBQUFjSUFBQUprV2RoYzNBQUFBQVFBQUFHNUFBQUFBaG5iSGxtMzJjRWRnQUFBcEFBQUFDMmFHVmhaQUVyUEhzQUFBTklBQUFBTm1ob1pXRUhVd05OQUFBRGdBQUFBQ1JvYlhSNEN5a0FBQUFBQTZRQUFBQU1iRzlqWVFBNEFGc0FBQU93QUFBQUNHMWhlSEFBcGdtOEFBQUR1QUFBQUNCdVlXMWx6SjBhSEFBQUE5Z0FBQUxOY0c5emRLNjlRSmdBQUFhb0FBQUFPM0J5WlhDU29aci9BQUFRbkFBQUFGWUFBUU80QVpBQUJRQUlBbm9DdkFBQUFJd0NlZ0s4QUFBQjRBQXhBUUlBQUFJQUJRTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVUdaRlpBQkE2QURvQVFOUy8yb0FXZ01MQUU4QUFBQUJBQUFBQUFBQUFBQUFBd0FBQUFNQUFBQWNBQUVBQUFBQUFFUUFBd0FCQUFBQUhBQUVBQ2dBQUFBR0FBUUFBUUFDQUFEb0FmLy9BQUFBQU9nQS8vOEFBQmdCQUFFQUFBQUFBQUFBQUFFR0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFEcEFLWUFCVUFIRUFaRHdFQUFRRkNBQUlCQW1vQUFRQUJhZ0FBQUdFVUZ4UURFaXNCRkFjQkJpSW5BU1kwUHdFMk1oOEJBVFl5SHdFV0E2UVAvaUFRTEJEKzZnOFBUQkFzRUtRQmJoQXNFRXdQQWhZV0VQNGdEdzhCRmhBc0VFd1FFS1VCYnhBUVRCQUFBQUgvL2YreEExOERDd0FNQUJKQUR3QUJBUXBEQUFBQUN3QkVGUk1DRVNzQkZBNEJJaTRDUGdFeUhnRURXWExHNk1odUJucTg5THArQVY1MXhIUjB4T3JFZEhURUFBQUFBQUVBQUFBQkFBRERlUnBkWHc4ODlRQUxBK2dBQUFBQXp6V1lqUUFBQUFEUE5XQk4vLzMvc1FPa0F3c0FBQUFJQUFJQUFBQUFBQUFBQVFBQUExTC9hZ0JhQStnQUFQLzNBNlFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQU1ENkFBQUErZ0FBQU5aQUFBQUFBQUFBRGdBV3dBQkFBQUFBd0FXQUFFQUFBQUFBQUlBQmdBVEFHNEFBQUF0Q1pFQUFBQUFBQUFBRWdEZUFBRUFBQUFBQUFBQU5RQUFBQUVBQUFBQUFBRUFDQUExQUFFQUFBQUFBQUlBQndBOUFBRUFBQUFBQUFNQUNBQkVBQUVBQUFBQUFBUUFDQUJNQUFFQUFBQUFBQVVBQ3dCVUFBRUFBQUFBQUFZQUNBQmZBQUVBQUFBQUFBb0FLd0JuQUFFQUFBQUFBQXNBRXdDU0FBTUFBUVFKQUFBQWFnQ2xBQU1BQVFRSkFBRUFFQUVQQUFNQUFRUUpBQUlBRGdFZkFBTUFBUVFKQUFNQUVBRXRBQU1BQVFRSkFBUUFFQUU5QUFNQUFRUUpBQVVBRmdGTkFBTUFBUVFKQUFZQUVBRmpBQU1BQVFRSkFBb0FWZ0Z6QUFNQUFRUUpBQXNBSmdISlEyOXdlWEpwWjJoMElDaERLU0F5TURFMElHSjVJRzl5YVdkcGJtRnNJR0YxZEdodmNuTWdRQ0JtYjI1MFpXeHNieTVqYjIxbWIyNTBaV3hzYjFKbFozVnNZWEptYjI1MFpXeHNiMlp2Ym5SbGJHeHZWbVZ5YzJsdmJpQXhMakJtYjI1MFpXeHNiMGRsYm1WeVlYUmxaQ0JpZVNCemRtY3lkSFJtSUdaeWIyMGdSbTl1ZEdWc2JHOGdjSEp2YW1WamRDNW9kSFJ3T2k4dlptOXVkR1ZzYkc4dVkyOXRBRU1BYndCd0FIa0FjZ0JwQUdjQWFBQjBBQ0FBS0FCREFDa0FJQUF5QURBQU1RQTBBQ0FBWWdCNUFDQUFid0J5QUdrQVp3QnBBRzRBWVFCc0FDQUFZUUIxQUhRQWFBQnZBSElBY3dBZ0FFQUFJQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFMZ0JqQUc4QWJRQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVVnQmxBR2NBZFFCc0FHRUFjZ0JtQUc4QWJnQjBBR1VBYkFCc0FHOEFaZ0J2QUc0QWRBQmxBR3dBYkFCdkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFSd0JsQUc0QVpRQnlBR0VBZEFCbEFHUUFJQUJpQUhrQUlBQnpBSFlBWndBeUFIUUFkQUJtQUNBQVpnQnlBRzhBYlFBZ0FFWUFid0J1QUhRQVpRQnNBR3dBYndBZ0FIQUFjZ0J2QUdvQVpRQmpBSFFBTGdCb0FIUUFkQUJ3QURvQUx3QXZBR1lBYndCdUFIUUFaUUJzQUd3QWJ3QXVBR01BYndCdEFBQUFBQUlBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUF3QUFBUUlCQXdsamFHVmphMjFoY21zR1kybHlZMnhsQUFBQUFBRUFBZi8vQUE4QUFBQUFBQUFBQUFBQUFBQUFBQUFBQURJQU1nTUwvN0VEQy8reHNBQXNzQ0JnWmkyd0FTd2daQ0N3d0ZDd0JDWmFzQVJGVzFnaEl5RWJpbGdnc0ZCUVdDR3dRRmtiSUxBNFVGZ2hzRGhaV1NDd0NrVmhaTEFvVUZnaHNBcEZJTEF3VUZnaHNEQlpHeUN3d0ZCWUlHWWdpb3BoSUxBS1VGaGdHeUN3SUZCWUliQUtZQnNnc0RaUVdDR3dObUFiWUZsWldSdXdBQ3RaV1NPd0FGQllaVmxaTGJBQ0xDQkZJTEFFSldGa0lMQUZRMUJZc0FValFyQUdJMEliSVNGWnNBRmdMYkFETENNaEl5RWdaTEVGWWtJZ3NBWWpRcklLQUFJcUlTQ3dCa01naWlDS3NBQXJzVEFGSllwUldHQlFHMkZTV1ZnaldTRWdzRUJUV0xBQUt4c2hzRUJaSTdBQVVGaGxXUzJ3QkN5d0IwTXJzZ0FDQUVOZ1FpMndCU3l3QnlOQ0l5Q3dBQ05DWWJDQVlyQUJZTEFFS2kyd0Jpd2dJRVVnc0FKRlk3QUJSV0pnUkxBQllDMndCeXdnSUVVZ3NBQXJJN0VDQkNWZ0lFV0tJMkVnWkNDd0lGQllJYkFBRzdBd1VGaXdJQnV3UUZsWkk3QUFVRmhsV2JBREpTTmhSRVN3QVdBdHNBZ3NzUVVGUmJBQllVUXRzQWtzc0FGZ0lDQ3dDVU5Lc0FCUVdDQ3dDU05DV2JBS1EwcXdBRkpZSUxBS0kwSlpMYkFLTENDNEJBQmlJTGdFQUdPS0kyR3dDME5nSUlwZ0lMQUxJMElqTGJBTExFdFVXTEVIQVVSWkpMQU5aU040TGJBTUxFdFJXRXRUV0xFSEFVUlpHeUZaSkxBVFpTTjRMYkFOTExFQURFTlZXTEVNREVPd0FXRkNzQW9yV2JBQVE3QUNKVUt4Q1FJbFFyRUtBaVZDc0FFV0l5Q3dBeVZRV0xFQkFFTmdzQVFsUW9xS0lJb2pZYkFKS2lFanNBRmhJSW9qWWJBSktpRWJzUUVBUTJDd0FpVkNzQUlsWWJBSktpRlpzQWxEUjdBS1EwZGdzSUJpSUxBQ1JXT3dBVVZpWUxFQUFCTWpSTEFCUTdBQVBySUJBUUZEWUVJdHNBNHNzUUFGUlZSWUFMQU1JMElnWUxBQlliVU5EUUVBQ3dCQ1FvcGdzUTBGSzdCdEt4c2lXUzJ3RHl5eEFBNHJMYkFRTExFQkRpc3RzQkVzc1FJT0t5MndFaXl4QXc0ckxiQVRMTEVFRGlzdHNCUXNzUVVPS3kyd0ZTeXhCZzRyTGJBV0xMRUhEaXN0c0Jjc3NRZ09LeTJ3R0N5eENRNHJMYkFaTExBSUs3RUFCVVZVV0FDd0RDTkNJR0N3QVdHMURRMEJBQXNBUWtLS1lMRU5CU3V3YlNzYklsa3RzQm9zc1FBWkt5MndHeXl4QVJrckxiQWNMTEVDR1NzdHNCMHNzUU1aS3kyd0hpeXhCQmtyTGJBZkxMRUZHU3N0c0NBc3NRWVpLeTJ3SVN5eEJ4a3JMYkFpTExFSUdTc3RzQ01zc1FrWkt5MndKQ3dnUExBQllDMndKU3dnWUxBTllDQkRJN0FCWUVPd0FpVmhzQUZnc0NRcUlTMndKaXl3SlN1d0pTb3RzQ2NzSUNCSElDQ3dBa1Zqc0FGRlltQWpZVGdqSUlwVldDQkhJQ0N3QWtWanNBRkZZbUFqWVRnYklWa3RzQ2dzc1FBRlJWUllBTEFCRnJBbktyQUJGVEFiSWxrdHNDa3NzQWdyc1FBRlJWUllBTEFCRnJBbktyQUJGVEFiSWxrdHNDb3NJRFd3QVdBdHNDc3NBTEFEUldPd0FVVmlzQUFyc0FKRlk3QUJSV0t3QUN1d0FCYTBBQUFBQUFCRVBpTTRzU29CRlNvdHNDd3NJRHdnUnlDd0FrVmpzQUZGWW1Dd0FFTmhPQzJ3TFN3dUZ6d3RzQzRzSUR3Z1J5Q3dBa1Zqc0FGRlltQ3dBRU5oc0FGRFl6Z3RzQzhzc1FJQUZpVWdMaUJIc0FBalFyQUNKVW1LaWtjalJ5TmhJRmhpR3lGWnNBRWpRckl1QVFFVkZDb3RzREFzc0FBV3NBUWxzQVFsUnlOSEkyR3dCa1VyWllvdUl5QWdQSW80TGJBeExMQUFGckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckFHUlNzZ3NHQlFXQ0N3UUZGWXN3SWdBeUFic3dJbUF4cFpRa0lqSUxBSVF5Q0tJMGNqUnlOaEkwWmdzQVJEc0lCaVlDQ3dBQ3NnaW9waElMQUNRMkJrSTdBRFEyRmtVRml3QWtOaEc3QURRMkJac0FNbHNJQmlZU01nSUxBRUppTkdZVGdiSTdBSVEwYXdBaVd3Q0VOSEkwY2pZV0Fnc0FSRHNJQmlZQ01nc0FBckk3QUVRMkN3QUN1d0JTVmhzQVVsc0lCaXNBUW1ZU0N3QkNWZ1pDT3dBeVZnWkZCWUlSc2pJVmtqSUNDd0JDWWpSbUU0V1Myd01peXdBQllnSUNDd0JTWWdMa2NqUnlOaEl6dzRMYkF6TExBQUZpQ3dDQ05DSUNBZ1JpTkhzQUFySTJFNExiQTBMTEFBRnJBREpiQUNKVWNqUnlOaHNBQlVXQzRnUENNaEc3QUNKYkFDSlVjalJ5TmhJTEFGSmJBRUpVY2pSeU5oc0FZbHNBVWxTYkFDSldHd0FVVmpJeUJZWWhzaFdXT3dBVVZpWUNNdUl5QWdQSW80SXlGWkxiQTFMTEFBRmlDd0NFTWdMa2NqUnlOaElHQ3dJR0Jtc0lCaUl5QWdQSW80TGJBMkxDTWdMa2F3QWlWR1VsZ2dQRmt1c1NZQkZDc3RzRGNzSXlBdVJyQUNKVVpRV0NBOFdTNnhKZ0VVS3kyd09Dd2pJQzVHc0FJbFJsSllJRHhaSXlBdVJyQUNKVVpRV0NBOFdTNnhKZ0VVS3kyd09TeXdNQ3NqSUM1R3NBSWxSbEpZSUR4WkxyRW1BUlFyTGJBNkxMQXhLNG9nSUR5d0JDTkNpamdqSUM1R3NBSWxSbEpZSUR4WkxyRW1BUlFyc0FSRExyQW1LeTJ3T3l5d0FCYXdCQ1d3QkNZZ0xrY2pSeU5oc0FaRkt5TWdQQ0F1SXppeEpnRVVLeTJ3UEN5eENBUWxRckFBRnJBRUpiQUVKU0F1UnlOSEkyRWdzQVFqUXJBR1JTc2dzR0JRV0NDd1FGRllzd0lnQXlBYnN3SW1BeHBaUWtJaklFZXdCRU93Z0dKZ0lMQUFLeUNLaW1FZ3NBSkRZR1Fqc0FORFlXUlFXTEFDUTJFYnNBTkRZRm13QXlXd2dHSmhzQUlsUm1FNEl5QThJemdiSVNBZ1JpTkhzQUFySTJFNElWbXhKZ0VVS3kyd1BTeXdNQ3N1c1NZQkZDc3RzRDRzc0RFcklTTWdJRHl3QkNOQ0l6aXhKZ0VVSzdBRVF5NndKaXN0c0Q4c3NBQVZJRWV3QUNOQ3NnQUJBUlVVRXk2d0xDb3RzRUFzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TENvdHNFRXNzUUFCRkJPd0xTb3RzRUlzc0M4cUxiQkRMTEFBRmtVaklDNGdSb29qWVRpeEpnRVVLeTJ3UkN5d0NDTkNzRU1yTGJCRkxMSUFBRHdyTGJCR0xMSUFBVHdyTGJCSExMSUJBRHdyTGJCSUxMSUJBVHdyTGJCSkxMSUFBRDByTGJCS0xMSUFBVDByTGJCTExMSUJBRDByTGJCTUxMSUJBVDByTGJCTkxMSUFBRGtyTGJCT0xMSUFBVGtyTGJCUExMSUJBRGtyTGJCUUxMSUJBVGtyTGJCUkxMSUFBRHNyTGJCU0xMSUFBVHNyTGJCVExMSUJBRHNyTGJCVUxMSUJBVHNyTGJCVkxMSUFBRDRyTGJCV0xMSUFBVDRyTGJCWExMSUJBRDRyTGJCWUxMSUJBVDRyTGJCWkxMSUFBRG9yTGJCYUxMSUFBVG9yTGJCYkxMSUJBRG9yTGJCY0xMSUJBVG9yTGJCZExMQXlLeTZ4SmdFVUt5MndYaXl3TWl1d05pc3RzRjhzc0RJcnNEY3JMYkJnTExBQUZyQXlLN0E0S3kyd1lTeXdNeXN1c1NZQkZDc3RzR0lzc0RNcnNEWXJMYkJqTExBeks3QTNLeTJ3WkN5d015dXdPQ3N0c0dVc3NEUXJMckVtQVJRckxiQm1MTEEwSzdBMkt5MndaeXl3TkN1d055c3RzR2dzc0RRcnNEZ3JMYkJwTExBMUt5NnhKZ0VVS3kyd2FpeXdOU3V3TmlzdHNHc3NzRFVyc0RjckxiQnNMTEExSzdBNEt5MndiU3dyc0FobHNBTWtVSGl3QVJVd0xRQUFBRXU0QU1oU1dMRUJBWTVadVFnQUNBQmpJTEFCSTBTd0F5TndzZ1FvQ1VWU1JMSUtBZ2Nxc1FZQlJMRWtBWWhSV0xCQWlGaXhCZ05Fc1NZQmlGRll1QVFBaUZpeEJnRkVXVmxaV2JnQi80V3dCSTJ4QlFCRUFBQT1cIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUmdBQkFBQUFBQW9VQUE0QUFBQUFFUFFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQlBVeTh5QUFBQlJBQUFBRVFBQUFCV1BlRkpBV050WVhBQUFBR0lBQUFBT2dBQUFVclFFaG0zWTNaMElBQUFBY1FBQUFBVUFBQUFIQVpKLzVSbWNHZHRBQUFCMkFBQUJQa0FBQW1SaWdwNE8yZGhjM0FBQUFiVUFBQUFDQUFBQUFnQUFBQVFaMng1WmdBQUJ0d0FBQUN1QUFBQXR0OW5CSFpvWldGa0FBQUhqQUFBQURVQUFBQTJBU3M4ZTJob1pXRUFBQWZFQUFBQUlBQUFBQ1FIVXdOTmFHMTBlQUFBQitRQUFBQU1BQUFBREFzcEFBQnNiMk5oQUFBSDhBQUFBQWdBQUFBSUFEZ0FXMjFoZUhBQUFBZjRBQUFBSUFBQUFDQUFwZ204Ym1GdFpRQUFDQmdBQUFGM0FBQUN6Y3lkR2h4d2IzTjBBQUFKa0FBQUFDb0FBQUE3cnIxQW1IQnlaWEFBQUFtOEFBQUFWZ0FBQUZhU29aci9lSnhqWUdUZXdUaUJnWldCZzZtS2FROERBME1QaEdaOHdHREl5TVRBd01UQXlzeUFGUVNrdWFZd09MeGdlTUhJSFBRL2l5R0ttWnZCSHlqTUNKSURBUGU5QzJCNG5HTmdZR0JtZ0dBWkJrWUdFSEFCOGhqQmZCWUdEU0ROQnFRWkdaZ1lHRjR3L3Y4UFV2Q0NBVVJMTUVMVkF3RWpHOE9JQndCazVBYXZBQUI0bkdOZ1FBTkdERWJNM1A4M2dqQUFFTFFENFhpY25WWFpkdE5XRkpVOFpIQVNPbVNnb0E3WDNEaFE2OHFFS1Jnd2FTckZkaUVkSEFpdEJCMmtESFRrbmNjKzYydU9RcnRXSC9tMDduMDlKTFIwcmJZc2xzKytSMXRuMkRyblJod2pLbjBhaUd2VW9aS1hBNm1zUFpaSzkwbGMxM1V2ajVVTUJuRmR0aEpQU1p1b25TUkthdDNzVUM3eFdPc3FXU2RZSitQbElGWlBWWjVub0F6aUZCNWxTVVFiUkJ1cGx5Wko0b25qSjRrV1p4QWZKVWtnSmFNUXA5TElVRUkxR3NSUzFhRk02ZENyMXhOeDAwREtScU1lZFZoVTkwUEZKOGMxcDlTc0EwWXFWem5DRmV2VlJyNGJwd012ZTVERU9zR3pyWWN4SG5pc2ZwUXFrSXFSNmNnL2RrcE9sSWFCVkhIVW9WYmk2RENUWC9lUlRDck5RS2FNWWtXbDdvRzQzZjEwMnhZeFBYUTZ2aTVLbFVhcXVybk9LSnJ0MGZHb2d5Z1AyY2JwcE56UTJmYnc1UmxUVkt0ZGNiUHRRR1lOWEVySmJIU2ZSQUFkSmxMajZRRk9OWndDcVJuMVI4WFo1ODhCRXNsY2xLbzhWVEtIZWdPWk16dDdjVEh0YmllcnNuQ2tud2N5YjNaMjQ1MkhRNmRYaDMvUitoZE00Y3hIaitKaWZqNUMrbEJxZmlKT0pLVkdXTXp5cDRZZmNWY2dRcmt4aUFzWHl1QlRoRGwwUmRyWlpsM2p0VEgyaHMvNVNxbGhQUW5hNktQNGZncjlUaVFySEdkUm8vVkluTTFqMTNXdDNHZFFTN1c3RnpzeXIwT1ZJdTd2Q3d1dU0rZUVZWjRXQzFWZm52bmVCVFQvQm9obi9FRGVOSVZMKzVZcFNyUnZtNkpNdTJpS0N1MFNWS1ZkTnNVVTdZb3BwbW5QbW1LRzloMVR6TktlTXpMai84dmM1NUg3SE43eGtKdjJYZVNtZlErNWFkOUhidG9Qa0p0V0lUZHRIYmxwTHlBM3JVWnUybFdqT25ZRUdnWnBGMUlWUWRBMHN2cGgzRmFiOVVEV2pEUjhhV0R5TG1MSSt1cEVSNTIxdGNvZnhYOTE0Z3NIY21taXA3c2lGNXZpTHEvYkZqNDgzZTZyajVwRzNiRFYrTWFSOGpBZVJub2NtdEJaK2MzaHYrMU4zUzZhN2pLcU11Z0JGVXdLd0FCbDdVQUMwenJiQ2FUMW1xZjQ4Z2RnWElaNHprcER0VlNmTzRhbTcrVjVYL2V4T2ZHK3grM0dMcmRjZDNrSldkWU5jbVAyOE45U1pLcnJIK1V0clZRblI2d3JKNDlWYXhoREtyd291cjZTbEh1MHRSdS9LS215OGw2VTFzcm5rNUNiUFlNYlFsdTI3bUd3STB4cHlpVWVYbE9sS0QzVVVvNnlReXh2S2NvODRKU0xDMXFHeExnT2RROXFhOFRwb1hvWUd3c2hocUcwdlJCd1NDbGRGZCsweW5meEhxdHIyT2o0eFJYaDZYcHlFaEdmNGlyN1VmQlUxMGI5NkE3YXZHYmRNb01wVmFxbis0eFBzYS9iOWxGWmFhU09zeGUzVkFmWE5Pc2FPUlhUVCtScjRIUnZPR2pkQXoxVWZEUkJJMVUxeCtqR0tHTTBsalhsM3dSME1WWit3MmpWWXZzOTNFK2RwRldzdVV1WTdKc1Q5K0MwdS8wcSs3V2NXMGJXL2RjR3ZXM2tpcDhqTWI4dEN2dzdCMkszWkEzVU81T0JHQXZJV2RBWXhoWW1keGl1ZzIzRWJmWS9KcWYvMzRhRlJYSlhPeHE3ZWVyRDFaTlJKWGZaOHJqTFRYWloxNk0yUjlWT0d2c0lqUzBQTitiWTRYSXN0c1JnUWJiK3dmOHg3Z0YzYVZFQzRORElaWmlJMm5TaG51cmg2aDZyc1cwNFZ4SUJkczJ4NDNRQWVnQXVRZDhjdTliekNZRDEzQ1BuTHNCOWNnaDJ5Q0g0bEJ5Q3o4aTVCZkE1T1FSZmtFTXdJSWRnbDV3N0FBL0lJWGhJRHNFZU9RU1B5TmtFK0pJY2dxL0lJWWpKSVVqSXVRM3dtQnlDSitRUWZFME93VGRHcms1ay9wWUgyUUQ2enFLYlFLbWRHaHphT0dSR3JrM1krenhZOW9GRlpCOWFST3FSa2VzVDZsTWVMUFY3aTBqOXdTSlNmelJ5WTBMOWlRZEwvZGtpVW4reGlOUm54cGVaSXltdkRwN3pqZzcrQkpmcXJWNEFBQUFBQVFBQi8vOEFEM2ljWTJCa0FBTG1KVXd6R0VRWlpCd2srUmtaR0JtZEdKZ1ltYklZZ013c29HU2lpTGdJczVBMm93ZzdJNXVTT3FPYWlUMmptWkU4STVnUVkxN0MvMDlCUUVmZzN5dCtmaDhndllReEQwajY4RE9KaVFuOFUrRG5aeFFEY1FVRWxqTG1Dd0JwQmdiRy8zLy9iMlNPWitabTRHRVFjdUFIMnNibERMU0VtOEZGVkpoSkVHZ0xINk9TSHBNZG81RWNJM05rMGJFWEovTFlxdlo4MlZYSEdGZDZwS1RreUNzUXdRQUFxK1FrcUFBQWVKeGpZR1JnWUFEaXc1VlNzZkg4Tmw4WnVKbGZBRVVZenB2TzZJWFFDYjcvLy83ZnlMeUVtUnZJNVdCZ0Fva0NBRmIvREpBQUFBQjRuR05nWkdCZ0R2cWZ4UkRGL0lLQjRmOTM1aVVNUUJFVXdBd0FpNVlGcGdQb0FBQUQ2QUFBQTFrQUFBQUFBQUFBT0FCYkFBRUFBQUFEQUJZQUFRQUFBQUFBQWdBR0FCTUFiZ0FBQUMwSmtRQUFBQUI0bkhXUXkyckNRQlNHLy9IU2kwSmJXdWkyc3lwS2FieGdONElnV0hUVGJxUzRMVEhHSkJJek1oa0ZYNlB2MElmcFMvUlorcHVNcFNoTm1NeDN2amx6NW1RQVhPTWJBdm56eEpHendCbWpuQXM0UmM5eWtmN1pjb244WXJtTUt0NHNuOUMvVzY3Z0FZSGxLbTd3d1FxaWRNNW9nVS9MQWxmaTBuSUJGK0xPY3BIKzBYS0ozTE5jeHExNHRYeEM3MW11WUNKU3kxWGNpNitCV20xMUZJUkcxZ1oxMlc2Mk9uSzZsWW9xU3R4WXVtc1RLcDNLdnB5cnhQaHhyQnhQTGZjODlvTjE3T3A5dUo4bnZrNGpsY2lXMDl5cmtaLzQyalgrYkZjOTNRUnRZK1p5cnRWU0RtMkdYR20xOEQzamhNYXN1bzNHMy9Nd2dNSUtXMmhFdktvUUJoSTEyanJuTnBwb29VT2FNa015TTgrS2tNQkZUT05pelIxaHRwSXk3blBNR1NXMFBqTmlzZ09QMytXUkg1TUM3bzlaUlIrdEhzWVQwdTZNS1BPU2ZUbnM3akJyUkVxeVREZXpzOS9lVTJ4NFdwdldjTmV1UzUxMUpURThxQ0Y1SDd1MUJZMUg3MlMzWW1pN2FQRDk1LzkrQU4xZmhFc0FlSnhqWUdLQUFDNEc3SUNaZ1lHUmlaR1pNemtqTlRrN043RW9teTA1c3lnNUo1V0JBUUJFMVFaQkFBQkx1QURJVWxpeEFRR09XYmtJQUFnQVl5Q3dBU05Fc0FNamNMSUVLQWxGVWtTeUNnSUhLckVHQVVTeEpBR0lVVml3UUloWXNRWURSTEVtQVloUldMZ0VBSWhZc1FZQlJGbFpXVm00QWYrRnNBU05zUVVBUkFBQVwiKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuLnVpLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZCA+IC5pY29uOmJlZm9yZSxcbi51aS5vcmRlcmVkLnN0ZXBzIC5zdGVwLmNvbXBsZXRlZDpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ1N0ZXAnO1xuICBjb250ZW50OiAnXFxlODAwJztcbiAgLyogJ+6ggCcgKi9cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIEJyZWFkY3J1bWJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQnJlYWRjcnVtYlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmJyZWFkY3J1bWIge1xuICBtYXJnaW46IDFlbSAwZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnVpLmJyZWFkY3J1bWI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5icmVhZGNydW1iOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRGl2aWRlciAqL1xuXG4udWkuYnJlYWRjcnVtYiAuZGl2aWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3BhY2l0eTogMC41O1xuICBtYXJnaW46IDBlbSAwLjJyZW0gMGVtO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIExpbmsgKi9cblxuLnVpLmJyZWFkY3J1bWIgYSB7XG4gIGNvbG9yOiAjMDA5ZmRhO1xufVxuXG4udWkuYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMGIyZjM7XG59XG5cbi8qIEljb24gRGl2aWRlciAqL1xuXG4udWkuYnJlYWRjcnVtYiAuaWNvbi5kaXZpZGVyIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0Mjg2ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyogU2VjdGlvbiAqL1xuXG4udWkuYnJlYWRjcnVtYiBhLnNlY3Rpb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5icmVhZGNydW1iIC5zZWN0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKiBMb29zZSBDb3VwbGluZyAqL1xuXG4udWkuYnJlYWRjcnVtYi5zZWdtZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5icmVhZGNydW1iIC5hY3RpdmUuc2VjdGlvbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWluaS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAwLjY1ZW07XG59XG5cbi51aS50aW55LmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDAuN2VtO1xufVxuXG4udWkuc21hbGwuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xufVxuXG4udWkuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkubGFyZ2UuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG59XG5cbi51aS5iaWcuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMS4wNWVtO1xufVxuXG4udWkuaHVnZS5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbn1cblxuLnVpLm1hc3NpdmUuYnJlYWRjcnVtYiB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBGb3JtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBFbGVtZW50c1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtID4gcCB7XG4gIG1hcmdpbjogMWVtIDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBGaWVsZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQsXG4udWkuZm9ybSAuZmllbGQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkczpsYXN0LWNoaWxkLFxuLnVpLmZvcm0gLmZpZWxkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgPiBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbSAwZW0gMC4yODU3cmVtIDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC1zaXplOiAwLjkyODVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgPiBsYWJlbCB7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjI4NTdyZW0gMGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzID4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMGVtIDFlbSAwZW0gMGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFuZGFyZCBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIHRleHRhcmVhLFxuLnVpLmZvcm0gaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLnVpLmZvcm0gLnVpLmlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMGVtO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjIxNDJlbTtcbiAgcGFkZGluZzogMC42Nzg2MWVtIDFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1N3JlbTtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLnRleHRhcmVhLFxuLnVpLmZvcm0gdGV4dGFyZWEge1xuICBtYXJnaW46IDBlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBwYWRkaW5nOiAwLjc4NTcxZW0gMWVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW07XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBoZWlnaHQ6IDEyZW07XG4gIG1pbi1oZWlnaHQ6IDhlbTtcbiAgbWF4LWhlaWdodDogMjRlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWEsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIElucHV0IHcvIGF0dGFjaGVkIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gaW5wdXQuYXR0YWNoZWQge1xuICB3aWR0aDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCYXNpYyBTZWxlY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW07XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgcGFkZGluZzogMC42MmVtIDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEcm9wZG93blxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuZm9ybSAuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiAuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERpdmlkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZGl2aWRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDFlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFR5cGVzIG9mIE1lc3NhZ2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuc3VjY2Vzcy5tZXNzYWdlLFxuLnVpLmZvcm0gLndhcm5pbmcubWVzc2FnZSxcbi51aS5mb3JtIC5lcnJvci5tZXNzYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQXNzdW1wdGlvbnMgKi9cblxuLnVpLmZvcm0gLm1lc3NhZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFZhbGlkYXRpb24gUHJvbXB0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgLnByb21wdC5sYWJlbCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgLnByb21wdCB7XG4gIG1hcmdpbjogLTAuNWVtIDBlbSAtMC41ZW0gMWVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQ6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogLTAuM2VtO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBQbGFjZWhvbGRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogYnJvd3NlcnMgcmVxdWlyZSB0aGVzZSBydWxlcyBzZXBhcmF0ZSAqL1xuXG4udWkuZm9ybSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxNDAsIDE0MCwgMTQwLCAwLjgpO1xufVxuXG4udWkuZm9ybSA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgxNDAsIDE0MCwgMTQwLCAwLjgpO1xufVxuXG4udWkuZm9ybSA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg4OSwgODksIDg5LCAwLjgpO1xufVxuXG4udWkuZm9ybSA6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg4OSwgODksIDg5LCAwLjgpO1xufVxuXG4vKiBFcnJvciBQbGFjZWhvbGRlciAqL1xuXG4udWkuZm9ybSAuZXJyb3IgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlNzMwMzY7XG59XG5cbi51aS5mb3JtIC5lcnJvciA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2U3MzAzNjtcbn1cblxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTMxYjIxO1xufVxuXG4udWkuZm9ybSAuZXJyb3IgOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlMzFiMjE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9jdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzksIDQxLCA0MywgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1N3JlbSAwLjI4NTdyZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAxcHggMGVtIDBlbSAwZW0gcmdiYSgzOSwgNDEsIDQzLCAwLjMpIGluc2V0O1xufVxuXG4udWkuZm9ybSB0ZXh0YXJlYTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMzksIDQxLCA0MywgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAuMjg1N3JlbSAwLjI4NTdyZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAxcHggMGVtIDBlbSAwZW0gcmdiYSgzOSwgNDEsIDQzLCAwLjMpIGluc2V0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgU3VjY2Vzc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogT24gRm9ybSAqL1xuXG4udWkuZm9ybS5zdWNjZXNzIC5zdWNjZXNzLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogT24gRm9ybSAqL1xuXG4udWkuZm9ybS53YXJuaW5nIC53YXJuaW5nLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBPbiBGb3JtICovXG5cbi51aS5mb3JtLmVycm9yIC5lcnJvci5tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIE9uIEZpZWxkKHMpICovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmlucHV0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5pbnB1dCB7XG4gIGNvbG9yOiAjY2MxODFlO1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY29ybmVyLmxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jb3JuZXIubGFiZWwge1xuICBib3JkZXItY29sb3I6ICNjYzE4MWU7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCB0ZXh0YXJlYSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIHNlbGVjdCxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInVybFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciB0ZXh0YXJlYSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3QsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXQ6bm90KFt0eXBlXSksXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjA7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbiAgY29sb3I6ICNjYzE4MWU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTdyZW0gMC4yODU3cmVtIDBlbTtcbiAgYm94LXNoYWRvdzogMnB4IDBlbSAwZW0gMGVtICNjYzE4MWUgaW5zZXQ7XG59XG5cbi51aS5mb3JtIC5maWVsZC5lcnJvciB0ZXh0YXJlYTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3Q6Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjA7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbiAgY29sb3I6ICNkYTFhMjA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMnB4IDBlbSAwZW0gMGVtICNkYTFhMjAgaW5zZXQ7XG59XG5cbi8qIFByZXNlcnZlIE5hdGl2ZSBTZWxlY3QgU3R5bGluZ3MgKi9cblxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIHNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbWVudWxpc3QtYnV0dG9uO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIERyb3Bkb3duIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bixcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duIC50ZXh0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAuaXRlbSB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjA7XG4gIGNvbG9yOiAjY2MxODFlO1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGJiMWIxICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bjpob3Zlcixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNkYmIxYjEgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duOmhvdmVyIC5tZW51LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93bjpob3ZlciAubWVudSB7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtOmhvdmVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAubWVudSAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmU3ZTc7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRjZmNmICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBDaGVja2JveCBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgbGFiZWwsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgbGFiZWwsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3gge1xuICBjb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgbGFiZWw6YmVmb3JlLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsOmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3g6YmVmb3JlLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIC5ib3g6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjBmMDtcbiAgYm9yZGVyLWNvbG9yOiAjZGJiMWIxO1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3ggbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLmNoZWNrYm94IC5ib3g6YWZ0ZXIge1xuICBjb2xvcjogI2NjMTgxZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGQgOmRpc2FibGVkLFxuLnVpLmZvcm0gLmZpZWxkLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4udWkuZm9ybSAuZmllbGQuZGlzYWJsZWQgbGFiZWwge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi51aS5mb3JtIC5maWVsZC5kaXNhYmxlZCA6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludC1ldmVudHM6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLnVpLmxvYWRpbmcuZm9ybTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDAlO1xuICBsZWZ0OiAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi51aS5sb2FkaW5nLmZvcm06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0xLjVlbSAwZW0gMGVtIC0xLjVlbTtcbiAgd2lkdGg6IDNlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmb3JtLXNwaW4gMC42cyBsaW5lYXI7XG4gIGFuaW1hdGlvbjogZm9ybS1zcGluIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXItY29sb3I6ICNhYWFhYWEgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgei1pbmRleDogMTAxO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZm9ybS1zcGluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZvcm0tc3BpbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEVsZW1lbnQgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgUmVxdWlyZWQgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHMgPiAuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkcyA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlciB7XG4gIG1hcmdpbjogLTAuMmVtIDBlbSAwZW0gMC4yZW07XG4gIGNvbnRlbnQ6ICcqJztcbiAgY29sb3I6ICNjYzE4MWU7XG59XG5cbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHMgPiAuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IGxhYmVsOmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzID4gLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyLFxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkID4gLmNoZWNrYm94OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAlO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuZm9ybSBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmZvcm0gLmludmVydGVkLnNlZ21lbnQgLnVpLmNoZWNrYm94IC5ib3gsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggbGFiZWwsXG4udWkuaW52ZXJ0ZWQuZm9ybSAudWkuY2hlY2tib3ggLmJveCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIEZpZWxkIEdyb3Vwc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogR3JvdXBlZCBWZXJ0aWNhbGx5ICovXG5cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyB7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW07XG59XG5cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgPiBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1ZW07XG59XG5cbi51aS5mb3JtIC5ncm91cGVkLmZpZWxkcyAuZmllbGQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMC41ZW0gMGVtO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmllbGRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTcGxpdCBmaWVsZHMgKi9cblxuLnVpLmZvcm0gLmZpZWxkcyB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udWkuZm9ybSAuZmllbGRzOmFmdGVyIHtcbiAgY29udGVudDogJyAnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyA+IC5maWVsZCB7XG4gIGNsZWFyOiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG5cbi51aS5mb3JtIC5maWVsZHMgPiAuZmllbGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogT3RoZXIgQ29tYmluYXRpb25zICovXG5cbi51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLmZvcm0gLnRocmVlLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cblxuLnVpLmZvcm0gLmZvdXIuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZml2ZS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMjAlO1xufVxuXG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG5cbi51aS5mb3JtIC5zZXZlbi5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnNldmVuLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyOSU7XG59XG5cbi51aS5mb3JtIC5laWdodC5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5uaW5lLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMS4xMTExMTExMSU7XG59XG5cbi51aS5mb3JtIC50ZW4uZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC50ZW4uZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLyogU3dhcCB0byBmdWxsIHdpZHRoIG9uIG1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLnNpeC5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuc2l4LmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLnNldmVuLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC5zZXZlbi5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5laWdodC5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuZWlnaHQuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAubmluZS5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAubmluZS5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC50ZW4uZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLnRlbi5maWVsZHMgPiAuZmllbGQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAlO1xuICB9XG59XG5cbi51aS5mb3JtIC5maWVsZHMgLmZpZWxkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwJTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAlO1xufVxuXG4vKiBTaXppbmcgQ29tYmluYXRpb25zICovXG5cbi51aS5mb3JtIC5maWVsZHMgLndpZGUuZmllbGQge1xuICB3aWR0aDogNi4yNSU7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkuZm9ybSAuZmllbGRzIC53aWRlLmZpZWxkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwJTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyAud2lkZS5maWVsZDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMCU7XG59XG5cbi51aS5mb3JtIC5vbmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAudHdvLndpZGUuZmllbGQge1xuICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnRocmVlLndpZGUuZmllbGQge1xuICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5mb3VyLndpZGUuZmllbGQge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5maXZlLndpZGUuZmllbGQge1xuICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5zaXgud2lkZS5maWVsZCB7XG4gIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuc2V2ZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmVpZ2h0LndpZGUuZmllbGQge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5uaW5lLndpZGUuZmllbGQge1xuICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC50ZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZWxldmVuLndpZGUuZmllbGQge1xuICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC50d2VsdmUud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnRoaXJ0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5mb3VydGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5maWZ0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5zaXh0ZWVuLndpZGUuZmllbGQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKiBTd2FwIHRvIGZ1bGwgd2lkdGggb24gbW9iaWxlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAudHdvLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLnRocmVlLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLmZpdmUuZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLmZpdmUuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnR3by53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnRocmVlLndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuZm91ci53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLmZpdmUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5zaXgud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5zZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLmVpZ2h0LndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAubmluZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnRlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLmVsZXZlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnR3ZWx2ZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnRoaXJ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuZm91cnRlZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5maWZ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuc2l4dGVlbi53aWRlLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtIDBlbSAxZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwJTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgSW5saW5lIEZpZWxkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMge1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDBlbSAxZW0gMGVtIDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IHAsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBpbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IC51aS5pbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBsYWJlbCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBwLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IGlucHV0LFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IC51aS5pbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBpbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IC51aS5pbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBpbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiAudWkuaW5wdXQge1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiAudWkuY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDEuNzVlbTtcbn1cblxuLyogTGFiZWwgKi9cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gOmZpcnN0LWNoaWxkLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMGVtIDAuMjg1N3JlbSAwZW0gMGVtO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiA6b25seS1jaGlsZCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiA6b25seS1jaGlsZCB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTdGFuZGFyZCAqL1xuXG4udWkuc21hbGwuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLyogTWVkaXVtICovXG5cbi51aS5mb3JtIHtcbiAgZm9udC1zaXplOiBhdXRvO1xufVxuXG4vKiBMYXJnZSAqL1xuXG4udWkubGFyZ2UuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbn1cblxuLyogSHVnZSAqL1xuXG4udWkuaHVnZS5mb3JtIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuZm9ybSAuZmllbGRzIC5maWVsZCxcbi51aS5mb3JtIC5maWVsZCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51aS5tb2RhbCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb2RhbCA6LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTgtICovXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vZGFsIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTkrICovXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCkgIWltcG9ydGFudDtcbn1cblxuLnVpLm1vZGFsIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG59XG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gR3JpZFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5ncmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC8vZm9udC1zaXplOiAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLnVpLmdyaWQ6YWZ0ZXIsXG4udWkuZ3JpZCA+IC5yb3c6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJlbW92ZSBHdXR0ZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkIHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICBtYXJnaW4tbGVmdDogLTFyZW07XG4gIG1hcmdpbi1yaWdodDogLTFyZW07XG59XG5cbi51aS5yZWxheGVkLmdyaWQge1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmdyaWQge1xuICBtYXJnaW4tbGVmdDogLTIuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMi41cmVtO1xufVxuXG4vKiBDb2xsYXBzZSBNYXJnaW5zIG9uIENvbnNlY3V0aXZlIEdyaWRzICovXG5cbi51aS5ncmlkICsgLmdyaWQge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2x1bW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFN0YW5kYXJkIDE2IGNvbHVtbiAqL1xuXG4udWkuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIHdpZHRoOiA2LjI1JTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuZ3JpZCA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBSb3dzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkID4gLnJvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDByZW07XG4gIGZvbnQtc2l6ZTogMHJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2x1bW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFZlcnRpY2FsIHBhZGRpbmcgd2hlbiBubyByb3dzICovXG5cbi51aS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdykge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkID4gLnJvdyA+IGltZyxcbi51aS5ncmlkID4gLnJvdyA+IC5jb2x1bW4gPiBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExvb3NlIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ncmlkIC5yb3cgKyAudWkuZGl2aWRlciB7XG4gIG1hcmdpbjogMXJlbSAxcmVtO1xufVxuXG4vKiByZW1vdmUgQm9yZGVyIG9uIGxhc3QgaG9yaXpvbnRhbCBzZWdtZW50ICovXG5cbi51aS5ncmlkID4gLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCA+IC5ob3Jpem9udGFsLnNlZ21lbnQsXG4udWkuZ3JpZCA+IC5jb2x1bW46bGFzdC1jaGlsZCA+IC5ob3Jpem9udGFsLnNlZ21lbnQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgUGFnZSBHcmlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZ2UuZ3JpZCB7XG4gIHBhZGRpbmctbGVmdDogOCU7XG4gIHBhZGRpbmctcmlnaHQ6IDglO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyogQ29sbGFwc2UgTWFyZ2luICovXG5cbi51aS5ncmlkID4gLnVpLmdyaWQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5ncmlkID4gLnVpLmdyaWQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkucGFnZS5ncmlkIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDBlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwZW07XG4gICAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiA0ZW07XG4gICAgcGFkZGluZy1yaWdodDogNGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnBhZ2UuZ3JpZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDglO1xuICAgIHBhZGRpbmctcmlnaHQ6IDglO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTUlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5wYWdlLmdyaWQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyMyU7XG4gICAgcGFkZGluZy1yaWdodDogMjMlO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBDb2x1bW4gQ291bnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQXNzdW1lIGZ1bGwgd2lkdGggd2l0aCBvbmUgY29sdW1uICovXG5cbi51aS5ncmlkID4gLmNvbHVtbjpvbmx5LWNoaWxkLFxuLnVpLmdyaWQgPiAucm93ID4gLmNvbHVtbjpvbmx5LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEdyaWQgQmFzZWQgKi9cblxuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW4ge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWlbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW4ge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuXG4udWlbY2xhc3MqPVwiZm91ciBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJmaXZlIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cblxuLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbn1cblxuLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4udWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDExLjExMTExMTExJTtcbn1cblxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTAlO1xufVxuXG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA5LjA5MDkwOTA5JTtcbn1cblxuLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZ3JpZCA+IC5jb2x1bW4ge1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA3LjY5MjMwNzY5JTtcbn1cblxuLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDcuMTQyODU3MTQlO1xufVxuXG4udWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImZpZnRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclO1xufVxuXG4udWlbY2xhc3MqPVwic2l4dGVlbiBjb2x1bW5cIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmdyaWQgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuMjUlO1xufVxuXG4vKiBSb3cgQmFzZWQgT3ZlcnJpZGVzICovXG5cbi51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTQuMjg1NzE0MjklICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogMTEuMTExMTExMTElICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDkuMDkwOTA5MDklICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA3LjY5MjMwNzY5JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0ucm93ID4gLmNvbHVtbiB7XG4gIHdpZHRoOiA3LjE0Mjg1NzE0JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5yb3cgPiAuY29sdW1uIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ29sdW1uIFdpZHRoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNpemluZyBDb21iaW5hdGlvbnMgKi9cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGVcIl0uY29sdW1uIHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlXCJdLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlXCJdLmNvbHVtbiB7XG4gIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGVcIl0uY29sdW1uLFxuLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZVwiXS5jb2x1bW4ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBXaWR0aCBwZXIgRGV2aWNlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE1vYmlsZSBTaXppbmcgQ29tYmluYXRpb25zICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDQzLjc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4MS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbW9iaWxlXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBtb2JpbGVcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIG1vYmlsZVwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogVGFibGV0IFNpemluZyBDb21iaW5hdGlvbnMgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJvbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGhyZWUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxOC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaXZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1Ni4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB0YWJsZXRcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA5My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHRhYmxldFwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgdGFibGV0XCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBDb21wdXRlci9EZXNrdG9wIFNpemluZyBDb21iaW5hdGlvbnMgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d28gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm5pbmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBjb21wdXRlclwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSBjb21wdXRlclwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uIHtcbiAgICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgY29tcHV0ZXJcIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIGNvbXB1dGVyXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBMYXJnZSBNb25pdG9yIFNpemluZyBDb21iaW5hdGlvbnMgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIGFuZCAobWF4LXdpZHRoOiAxOTE5cHgpIHtcbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm9uZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE4Ljc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImZvdXIgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMS4yNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzaXggd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJzZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWlnaHQgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDU2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWxldmVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2OC43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0d2VsdmUgd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXJ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIGxhcmdlIHNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDkzLjc1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIHdpZGUgbGFyZ2Ugc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSBsYXJnZSBzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFdpZGVzY3JlZW4gU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cIm9uZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwib25lIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2LjI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInR3byB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0d28gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInR3byB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZvdXIgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91ciB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpdmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMzEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cInNldmVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA0My43NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVpZ2h0IHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cIm5pbmUgd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwibmluZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNTYuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidGVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmNvbHVtbi5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogNjguNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gLmNvbHVtbi5yb3cgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIHdpZGUgd2lkZXNjcmVlblwiXS5jb2x1bW4sXG4gIC51aS5jb2x1bW4uZ3JpZCA+IFtjbGFzcyo9XCJ0aGlydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogODEuMjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiAuY29sdW1uLnJvdyA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbiB7XG4gICAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cImZpZnRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogOTMuNzUlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuZ3JpZCA+IC5jb2x1bW4ucm93ID4gW2NsYXNzKj1cInNpeHRlZW4gd2lkZSB3aWRlc2NyZWVuXCJdLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uLFxuICAudWkuY29sdW1uLmdyaWQgPiBbY2xhc3MqPVwic2l4dGVlbiB3aWRlIHdpZGVzY3JlZW5cIl0uY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDZW50ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VudGVyZWQuZ3JpZCxcbi51aS5jZW50ZXJlZC5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gLmNlbnRlcmVkLnJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udWkuY2VudGVyZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5hbGlnbmVkKTpub3QoLnJvdyksXG4udWkuY2VudGVyZWQuZ3JpZCA+IC5yb3cgPiAuY29sdW1uOm5vdCguYWxpZ25lZCksXG4udWkuZ3JpZCAuY2VudGVyZWQucm93ID4gLmNvbHVtbjpub3QoLmFsaWduZWQpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVpLmdyaWQgPiAuY2VudGVyZWQuY29sdW1uLFxuLnVpLmdyaWQgPiAucm93ID4gLmNlbnRlcmVkLmNvbHVtbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUmVsYXhlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVsYXhlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkucmVsYXhlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5yZWxheGVkLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMi41cmVtO1xufVxuXG4vKiBDb3VwbGluZyB3aXRoIFVJIERpdmlkZXIgKi9cblxuLnVpLnJlbGF4ZWQuZ3JpZCAucm93ICsgLnVpLmRpdmlkZXIsXG4udWkuZ3JpZCAucmVsYXhlZC5yb3cgKyAudWkuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmdyaWQgLnJvdyArIC51aS5kaXZpZGVyLFxuLnVpLmdyaWQgW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5yb3cgKyAudWkuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMi41cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgUGFkZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWRkZWQuZ3JpZDpub3QoLnZlcnRpY2FsbHkpOm5vdCguaG9yaXpvbnRhbGx5KSB7XG4gIG1hcmdpbjogMGVtICFpbXBvcnRhbnQ7XG59XG5cbltjbGFzcyo9XCJob3Jpem9udGFsbHkgcGFkZGVkXCJdLnVpLmdyaWQge1xuICBtYXJnaW4tbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG59XG5cbltjbGFzcyo9XCJ2ZXJ0aWNhbGx5IHBhZGRlZFwiXS51aS5ncmlkIHtcbiAgbWFyZ2luLXRvcDogMGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDBlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBcIkZsb2F0ZWRcIlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZ3JpZCBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLmNvbHVtbiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXS5jb2x1bW4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBEaXZpZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uIHtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4vKiBTd2FwIGZyb20gcGFkZGluZyB0byBtYXJnaW4gb24gY29sdW1ucyB0byBoYXZlIGRpdmlkZXJzIGFsaWduICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDByZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3cge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgcGFkZGluZy10b3A6IDBlbTtcbiAgcGFkZGluZy1ib3R0b206IDBlbTtcbn1cblxuLyogTm8gZGl2aWRlciBvbiBmaXJzdCBjb2x1bW4gb24gcm93ICovXG5cbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpmaXJzdC1jaGlsZCxcbi51aS5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBEaXZpZGVkIFJvdyAqL1xuXG4udWkuZ3JpZCA+IC5kaXZpZGVkLnJvdyA+IC5jb2x1bW4ge1xuICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG59XG5cbi51aS5ncmlkID4gLmRpdmlkZWQucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFZlcnRpY2FsbHkgRGl2aWRlZCAqL1xuXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWlbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdLmdyaWQgPiAucm93OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gIDJyZW0gKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICAycmVtICk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDAlIDFyZW07XG4gIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLyogUGFkZGVkIEhvcml6b250YWxseSBEaXZpZGVkICovXG5cbltjbGFzcyo9XCJob3Jpem9udGFsbHkgcGFkZGVkXCJdLnVpLmRpdmlkZWQuZ3JpZCxcbi51aS5wYWRkZWQuZGl2aWRlZC5ncmlkOm5vdCgudmVydGljYWxseSk6bm90KC5ob3Jpem9udGFsbHkpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEZpcnN0IFJvdyBWZXJ0aWNhbGx5IERpdmlkZWQgKi9cblxuLnVpW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBJbnZlcnRlZCBEaXZpZGVkICovXG5cbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uIHtcbiAgYm94LXNoYWRvdzogLTFweCAwcHggMHB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi51aS5pbnZlcnRlZC5kaXZpZGVkLmdyaWQ6bm90KFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0pID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQsXG4udWkuaW52ZXJ0ZWQuZGl2aWRlZC5ncmlkOm5vdChbY2xhc3MqPVwidmVydGljYWxseSBkaXZpZGVkXCJdKSA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmludmVydGVkW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLyogUmVsYXhlZCAqL1xuXG4udWkucmVsYXhlZFtjbGFzcyo9XCJ2ZXJ0aWNhbGx5IGRpdmlkZWRcIl0uZ3JpZCA+IC5yb3c6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtICAzcmVtICk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAgM3JlbSApO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdW2NsYXNzKj1cInZlcnRpY2FsbHkgZGl2aWRlZFwiXS5ncmlkID4gLnJvdzpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiA1cmVtO1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLSAgNXJlbSApO1xuICB3aWR0aDogY2FsYygxMDAlIC0gIDVyZW0gKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNlbGxlZC5ncmlkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDFlbSAwZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkuY2VsbGVkLmdyaWQgPiAucm93LFxuLnVpLmNlbGxlZC5ncmlkID4gLmNvbHVtbi5yb3csXG4udWkuY2VsbGVkLmdyaWQgPiAuY29sdW1uLnJvdzpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtO1xuICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4ICNkNGQ0ZDU7XG59XG5cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggMHB4ICNkNGQ0ZDU7XG59XG5cbi51aS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4udWkuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5jZWxsZWQucGFnZS5ncmlkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWkuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDAuNzVlbTtcbn1cblxuLnVpLnJlbGF4ZWQuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5yZWxheGVkLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aVtjbGFzcyo9XCJ2ZXJ5IHJlbGF4ZWRcIl0uY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDJlbTtcbn1cblxuLyogSW50ZXJuYWxseSBDZWxsZWQgKi9cblxuLnVpW2NsYXNzKj1cImludGVybmFsbHkgY2VsbGVkXCJdLmdyaWQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWlbY2xhc3MqPVwiaW50ZXJuYWxseSBjZWxsZWRcIl0uZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWlbY2xhc3MqPVwiaW50ZXJuYWxseSBjZWxsZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEhvcml6b250YWxseSBDZW50ZXJlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWZ0IEFsaWduZWQgKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5ncmlkLFxuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLyogQ2VudGVyIEFsaWduZWQgKi9cblxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmdyaWQsXG4udWlbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi51aS5ncmlkIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXS5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLyogUmlnaHQgQWxpZ25lZCAqL1xuXG4udWlbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5ncmlkLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWkuZ3JpZCA+IFtjbGFzcyo9XCJyaWdodCBhbGlnbmVkXCJdLnJvdyA+IC5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXS5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4vKiBKdXN0aWZpZWQgKi9cblxuLnVpLmp1c3RpZmllZC5ncmlkLFxuLnVpLmp1c3RpZmllZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuanVzdGlmaWVkLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgLmp1c3RpZmllZC5jb2x1bW4sXG4udWkuZ3JpZCA+IC5qdXN0aWZpZWQucm93ID4gLmNvbHVtbiB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cblxuLnVpLmdyaWQgLmp1c3RpZmllZC5jb2x1bW4ge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0byAhaW1wb3J0YW50O1xuICAtbW96LWh5cGhlbnM6IGF1dG8gIWltcG9ydGFudDtcbiAgLW1zLWh5cGhlbnM6IGF1dG8gIWltcG9ydGFudDtcbiAgaHlwaGVuczogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFZlcnRpY2FsbHkgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUb3AgQWxpZ25lZCAqL1xuXG4udWlbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uZ3JpZCxcbi51aVtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWlbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uZ3JpZCA+IC5jb2x1bW4sXG4udWkuZ3JpZCBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4udWkuc3RyZXRjaGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSxcbi51aS5ncmlkIC5zdHJldGNoZWQuY29sdW1uLFxuLnVpLmdyaWQgPiAuc3RyZXRjaGVkLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4gPiAqLFxuLnVpLnN0cmV0Y2hlZC5ncmlkID4gLmNvbHVtbiA+ICosXG4udWkuZ3JpZCAuc3RyZXRjaGVkLmNvbHVtbiA+ICosXG4udWkuZ3JpZCA+IC5zdHJldGNoZWQucm93ID4gLmNvbHVtbiA+ICoge1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLyogTWlkZGxlIEFsaWduZWQgKi9cblxuLnVpW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdLmdyaWQsXG4udWlbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cIm1pZGRsZSBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4udWkuZ3JpZCBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29sdW1uIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLyogQm90dG9tIEFsaWduZWQgKi9cblxuLnVpW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmdyaWQsXG4udWlbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0uZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuLnVpW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmdyaWQgPiAuY29sdW1uLFxuLnVpLmdyaWQgPiBbY2xhc3MqPVwiYm90dG9tIGFsaWduZWRcIl0ucm93ID4gLmNvbHVtbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIC13ZWJraXQtYm94LXBhY2s6IGVuZCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLnVpLmdyaWQgW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmNvbHVtbiB7XG4gIC13ZWJraXQtYm94LXBhY2s6IGVuZCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgIENvbG9yZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmdyaWQgPiAud2hpdGUucm93LFxuLnVpLmdyaWQgPiAucm93ID4gLndoaXRlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gLndoaXRlLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5ibGFjay5yb3csXG4udWkuZ3JpZCA+IC5yb3cgPiAuYmxhY2suY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWMxZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gLmJsYWNrLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5ibHVlLnJvdyxcbi51aS5ncmlkID4gLnJvdyA+IC5ibHVlLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjgzYzAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IC5ibHVlLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5ncmVlbi5yb3csXG4udWkuZ3JpZCA+IC5yb3cgPiAuZ3JlZW4uY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmdyaWQgPiAucm93ID4gLmdyZWVuLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5vcmFuZ2Uucm93LFxuLnVpLmdyaWQgPiAucm93ID4gLm9yYW5nZS5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA3YjUzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiAub3JhbmdlLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5waW5rLnJvdyxcbi51aS5ncmlkIC5waW5rLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTQ5OWEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IC5waW5rLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5wdXJwbGUucm93LFxuLnVpLmdyaWQgPiAucm93ID4gLnB1cnBsZS5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY0ZjhhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiAucHVycGxlLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC5yZWQucm93LFxuLnVpLmdyaWQgPiAucm93ID4gLnJlZC5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiAucmVkLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC50ZWFsLnJvdyxcbi51aS5ncmlkID4gLnJvdyA+IC50ZWFsLmNvbHVtbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI1YWQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5ncmlkID4gLnJvdyA+IC50ZWFsLmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udWkuZ3JpZCA+IC55ZWxsb3cucm93LFxuLnVpLmdyaWQgPiAucm93ID4gLnllbGxvdy5jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjNjFmICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuZ3JpZCA+IC5yb3cgPiAueWVsbG93LmNvbHVtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEVxdWFsIFdpZHRoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4vKiBGbGV4Ym94IChFeHBlcmltZW50YWwgLyBPdmVycmlkZXMgV2hlcmUgU3VwcG9ydGVkKSAqL1xuXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCxcbi51aVtjbGFzcyo9XCJlcXVhbCB3aWR0aFwiXS5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWlbY2xhc3MqPVwiZXF1YWwgd2lkdGhcIl0uZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuLnVpW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIHdpZHRoXCJdLnJvdyA+IC5jb2x1bW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBFcXVhbCBIZWlnaHQgQ29sdW1uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWlbY2xhc3MqPVwiZXF1YWwgaGVpZ2h0XCJdLmdyaWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5yb3cge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwiZXF1YWwgaGVpZ2h0XCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5yb3cgPiAuY29sdW1uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLyogRmxleGJveCAoRXhwZXJpbWVudGFsIC8gT3ZlcnJpZGVzIFdoZXJlIFN1cHBvcnRlZCkgKi9cblxuLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5ncmlkLFxuLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5ncmlkID4gLnJvdyxcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5yb3cge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4udWlbY2xhc3MqPVwiZXF1YWwgaGVpZ2h0XCJdLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbi51aS5ncmlkID4gW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5yb3cgPiAuY29sdW1uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3VibGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUYWJsZXQgT25seSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnVpLmRvdWJsaW5nLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5kb3VibGluZy5yb3csXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyB7XG4gICAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDBlbTtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3byBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhyZWUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeCBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJzZXZlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImVpZ2h0IGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlbGV2ZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInR3ZWx2ZSBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0aGlydGVlbiBjb2x1bW5cIl0uZG91YmxpbmcuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZvdXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZG91Ymxpbmcucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDE0LjI4NTcxNDI5JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmRvdWJsaW5nLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZy5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBNb2JpbHkgT25seSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5ncmlkID4gLmRvdWJsaW5nLnJvdyxcbiAgLnVpLmRvdWJsaW5nLmdyaWQgPiAucm93IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMGVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuZ3JpZCA+IC5kb3VibGluZy5yb3cgPiAuY29sdW1uLFxuICAudWkuZG91YmxpbmcuZ3JpZCA+IC5yb3cgPiAuY29sdW1uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d28gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdvIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0aHJlZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInRocmVlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmb3VyIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImZvdXIgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cImZpdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwiZml2ZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJzaXggY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2l4IGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInNldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwic2V2ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWlnaHQgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJlaWdodCBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwibmluZSBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJuaW5lIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpW2NsYXNzKj1cInRlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJ0ZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZWxldmVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cImVsZXZlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJ0d2VsdmUgY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidHdlbHZlIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRoaXJ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLmNvbHVtbixcbiAgLnVpLmdyaWQgPiBbY2xhc3MqPVwidGhpcnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiZm91cnRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmb3VydGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLnJvdyA+IC5jb2x1bW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWlbY2xhc3MqPVwiZmlmdGVlbiBjb2x1bW5cIl0uZG91Ymxpbmc6bm90KC5zdGFja2FibGUpLmdyaWQgPiAuY29sdW1uLFxuICAudWkuZ3JpZCA+IFtjbGFzcyo9XCJmaWZ0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkucm93ID4gLmNvbHVtbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aVtjbGFzcyo9XCJzaXh0ZWVuIGNvbHVtblwiXS5kb3VibGluZzpub3QoLnN0YWNrYWJsZSkuZ3JpZCA+IC5jb2x1bW4sXG4gIC51aS5ncmlkID4gW2NsYXNzKj1cInNpeHRlZW4gY29sdW1uXCJdLmRvdWJsaW5nOm5vdCguc3RhY2thYmxlKS5yb3cgPiAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc3RhY2thYmxlLmdyaWQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDBlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMGVtO1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLnJvdyA+IC53aWRlLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLndpZGUuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uLmdyaWQgPiAuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5zdGFja2FibGUuZ3JpZCA+IC5yb3cgPiAuY29sdW1uLFxuICAudWkuc3RhY2thYmxlLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtIDBlbSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnN0YWNrYWJsZS5ncmlkID4gLnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDBlbTtcbiAgICBwYWRkaW5nOiAwZW07XG4gIH1cblxuICAvKiBEb24ndCBwYWQgaW5zaWRlIHNlZ21lbnQgb3IgbmVzdGVkIGdyaWQgKi9cblxuICAudWkuZ3JpZCAudWkuc3RhY2thYmxlLmdyaWQsXG4gIC51aS5zZWdtZW50Om5vdCgudmVydGljYWwpIC51aS5zdGFja2FibGUucGFnZS5ncmlkIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBFcXVhbCBIZWlnaHQgU3RhY2thYmxlICovXG5cbiAgLnVpW2NsYXNzKj1cImVxdWFsIGhlaWdodFwiXS5zdGFja2FibGUucGFnZS5ncmlkIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogRGl2aWRlZCBTdGFja2FibGUgKi9cblxuICAudWkuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uOmZpcnN0LWNoaWxkLFxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdzpmaXJzdC1jaGlsZCA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyk6Zmlyc3QtY2hpbGQsXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAuY29sdW1uOm5vdCgucm93KTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmludmVydGVkLnN0YWNrYWJsZS5jZWxsZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmRpdmlkZWQuZ3JpZCA+IC5jb2x1bW46bm90KC5yb3cpLFxuICAudWkuaW52ZXJ0ZWQuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4sXG4gIC51aS5pbnZlcnRlZC5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLnJvdyA+IC5jb2x1bW4ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmNlbGxlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5zdGFja2FibGUuZGl2aWRlZC5ncmlkID4gLmNvbHVtbjpub3QoLnJvdyksXG4gIC51aS5zdGFja2FibGUuY2VsbGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbixcbiAgLnVpLnN0YWNrYWJsZS5kaXZpZGVkLmdyaWQgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgT25seSAoRGV2aWNlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBUaGVzZSBpbmNsdWRlIGFyYml0cmFyeSBjbGFzcyByZXBldGl0aW9ucyBmb3IgZm9yY2VkIHNwZWNpZmljaXR5ICovXG5cbi8qIE1vYmlsZSBPbmx5IEhpZGUgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkudGFibGV0Om5vdCgubW9iaWxlKS5vbmx5LmdyaWQuZ3JpZC5ncmlkLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0ucm93Om5vdCgubW9iaWxlKSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLm1vYmlsZSksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uZ3JpZC5ncmlkLmdyaWQ6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5yb3c6bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5jb2x1bW46bm90KC5tb2JpbGUpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cImNvbXB1dGVyIG9ubHlcIl0uY29sdW1uOm5vdCgubW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFRhYmxldCBPbmx5IEhpZGUgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aVtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5yb3c6bm90KC50YWJsZXQpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCgudGFibGV0KSxcbiAgLnVpLmdyaWQuZ3JpZC5ncmlkID4gLnJvdyA+IFtjbGFzcyo9XCJtb2JpbGUgb25seVwiXS5jb2x1bW46bm90KC50YWJsZXQpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5ncmlkLmdyaWQuZ3JpZDpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLnJvdzpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IFtjbGFzcyo9XCJjb21wdXRlciBvbmx5XCJdLmNvbHVtbjpub3QoLnRhYmxldCksXG4gIC51aS5ncmlkLmdyaWQuZ3JpZCA+IC5yb3cgPiBbY2xhc3MqPVwiY29tcHV0ZXIgb25seVwiXS5jb2x1bW46bm90KC50YWJsZXQpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogQ29tcHV0ZXIgT25seSBIaWRlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwibW9iaWxlIG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cIm1vYmlsZSBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmdyaWQuZ3JpZC5ncmlkOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0ucm93Om5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiBbY2xhc3MqPVwidGFibGV0IG9ubHlcIl0uY29sdW1uOm5vdCguY29tcHV0ZXIpLFxuICAudWkuZ3JpZC5ncmlkLmdyaWQgPiAucm93ID4gW2NsYXNzKj1cInRhYmxldCBvbmx5XCJdLmNvbHVtbjpub3QoLmNvbXB1dGVyKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmdyaWQgLnVpLnNlZ21lbnQuY29sdW1uLFxuLnVpLnBhZ2UuZ3JpZC5zZWdtZW50IHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbn1cblxuLnVpLmdyaWQuc2VnbWVudCA+IC5jb2x1bW46bm90KC5yb3cpIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi51aS5ncmlkLnNlZ21lbnQgPiAuY29sdW1uOm5vdCgucm93KTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gTWVudVxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IHtcbiAgbWFyZ2luOiAwIDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMGVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3gtc2hhZG93OiAycHggc29saWQgI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLnVpLm1lbnU6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkubWVudTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDByZW07XG59XG5cbi51aS5tZW51Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xufVxuXG4udWkubWVudSAubWVudSB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAubWVudSB7XG4gIGZvbnQtc2l6ZTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGV4dCBDb2xvciAqL1xuXG4udWkubWVudSAuaXRlbSB7XG4gIGNvbG9yOiAjMWI2ZDQ3O1xufVxuXG4udWkubWVudSAuaXRlbSAuaXRlbSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5tZW51IC5pdGVtIC5tZW51IGEuaXRlbTpob3Zlcixcbi51aS5tZW51IC5pdGVtIC5tZW51IC5saW5rLml0ZW06aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSXRlbXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzg1NzFlbSAwLjk1ZW07XG4gIGJvcmRlci10b3A6IDBlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogI2NiZWRkZDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xufVxuXG4vKiBGbG9hdGVkIENvbnRlbnQgKi9cblxuLnVpLm1lbnUgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMHB4IDBweCAwO1xufVxuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbS5sZWZ0LFxuLnVpLm1lbnU6bm90KC52ZXJ0aWNhbCkgLm1lbnUubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbS5yaWdodCxcbi51aS5tZW51Om5vdCgudmVydGljYWwpIC5tZW51LnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQm9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgcmlnaHQ6IDBweDtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuXG4udWkubWVudSA+IC5yaWdodC5tZW51OmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLm1lbnUgLm1lbnUucmlnaHQgLml0ZW06YmVmb3JlLFxuLnVpLm1lbnUgLml0ZW0ucmlnaHQ6YmVmb3JlIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBUZXh0IENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC50ZXh0Lml0ZW0gPiAqLFxuLnVpLm1lbnUgLml0ZW0gPiBhOm5vdCgudWkpLFxuLnVpLm1lbnUgLml0ZW0gPiBwOm9ubHktY2hpbGQge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbXMtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkubWVudSAuaXRlbSA+IHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4udWkubWVudSAuaXRlbSA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEljb25zXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbSA+IGkuaWNvbiB7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbn1cblxuLnVpLm1lbnUgLml0ZW0gPiBpLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudTpub3QoLnZlcnRpY2FsKSAuaXRlbSA+IC5idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTAuMDVlbTtcbiAgbWFyZ2luOiAtMC41NWVtIDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjU1ZW07XG4gIHBhZGRpbmctdG9wOiAwLjU1ZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBJbnB1dHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5pdGVtID4gLmlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS5tZW51Om5vdCgudmVydGljYWwpIC5pdGVtID4gLmlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDBlbTtcbiAgbWFyZ2luOiAtMC42ZW0gMGVtO1xufVxuXG4udWkubWVudSAuaXRlbSA+IC5pbnB1dCBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nLXRvcDogMC40ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjRlbTtcbn1cblxuLnVpLm1lbnUgLml0ZW0gPiAuaW5wdXQgLmJ1dHRvbixcbi51aS5tZW51IC5pdGVtID4gLmlucHV0IC5sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiAwLjRlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNGVtO1xufVxuXG4vKiBSZXNpemVzICovXG5cbi51aS5zbWFsbC5tZW51IC5pdGVtID4gLmlucHV0IGlucHV0IHtcbiAgdG9wOiAwZW07XG4gIHBhZGRpbmctdG9wOiAwLjRlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNGVtO1xufVxuXG4udWkuc21hbGwubWVudSAuaXRlbSA+IC5pbnB1dCAuYnV0dG9uLFxuLnVpLnNtYWxsLm1lbnUgLml0ZW0gPiAuaW5wdXQgLmxhYmVsIHtcbiAgcGFkZGluZy10b3A6IDAuNGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC40ZW07XG59XG5cbi51aS5sYXJnZS5tZW51IC5pdGVtID4gLmlucHV0IGlucHV0IHtcbiAgdG9wOiAtMC4xMjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNmVtO1xuICBwYWRkaW5nLXRvcDogMC42ZW07XG59XG5cbi51aS5sYXJnZS5tZW51IC5pdGVtID4gLmlucHV0IC5idXR0b24sXG4udWkubGFyZ2UubWVudSAuaXRlbSA+IC5pbnB1dCAubGFiZWwge1xuICBwYWRkaW5nLXRvcDogMC42ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjZlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tZW51IC5oZWFkZXIuaXRlbSxcbi51aS52ZXJ0aWNhbC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gIG1hcmdpbjogMGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9ybWFsO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERyb3Bkb3duc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRHJvcGRvd24gKi9cblxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duLml0ZW0udmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duLmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIE1lbnUgUG9zaXRpb24gKi9cblxuLnVpLm1lbnUgLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsZWZ0OiAwcHg7XG4gIG1hcmdpbjogMHB4IDBweCAwcHg7XG4gIG1pbi13aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLSAxcHgpO1xuICBtaW4td2lkdGg6IGNhbGMoMTAwJSAtIDFweCk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4udWkubWVudTpub3QoLnNlY29uZGFyeSkgLnBvaW50aW5nLmRyb3Bkb3duLml0ZW0gLm1lbnUge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLm1lbnUgLnNpbXBsZS5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgbWFyZ2luOiAwcHggIWltcG9ydGFudDtcbn1cblxuLyogU2Vjb25kYXJ5IE1lbnUgRHJvcGRvd24gKi9cblxuLnVpLnNlY29uZGFyeS5tZW51ID4gLm1lbnUgPiAuYWN0aXZlLmRyb3Bkb3duLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnVpLnNlY29uZGFyeS5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgbGVmdDogMHB4O1xuICBtaW4td2lkdGg6IDEwMCU7XG59XG5cbi8qIEV2ZW4gV2lkdGggTWVudSBEcm9wZG93biAqL1xuXG4udWkuaXRlbS5tZW51IC5kcm9wZG93biAubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW0gPiAubGFiZWwge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luOiAtMC4xNWVtIDBlbSAtMC4xNWVtIDAuNWVtO1xuICBwYWRkaW5nOiAwLjNlbSAwLjhlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4udWkubWVudSAuaXRlbSA+IC5mbG9hdGluZy5sYWJlbCB7XG4gIHBhZGRpbmc6IDAuM2VtIDAuOGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEltYWdlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLml0ZW0gPiBpbWc6b25seS1jaGlsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMGVtIGF1dG87XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpbmsubWVudSA+IC5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgPiAubGluay5pdGVtOmhvdmVyLFxuLnVpLm1lbnUgPiBhLml0ZW06aG92ZXIsXG4udWkubGluay5tZW51IC5tZW51ID4gLml0ZW06aG92ZXIsXG4udWkubWVudSAubWVudSA+IC5saW5rLml0ZW06aG92ZXIsXG4udWkubWVudSAubWVudSA+IGEuaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogIzJkYjQ3NTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUHJlc3NlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxpbmsubWVudSAuaXRlbTphY3RpdmUsXG4udWkubWVudSAubGluay5pdGVtOmFjdGl2ZSxcbi51aS5tZW51IGEuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJveC1zaGFkb3c6IDBlbSAwcHggMGVtIGluc2V0O1xufVxuXG4udWkubWVudSAuYWN0aXZlLml0ZW0gPiBpLmljb24ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuXG4udWkudmVydGljYWwubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIGJveC1zaGFkb3c6IDBweCAwZW0gMGVtIGluc2V0O1xufVxuXG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDBlbSAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51ID4gLmFjdGl2ZS5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMGVtO1xufVxuXG4udWkudmVydGljYWwubWVudSA+IC5hY3RpdmUuaXRlbTpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMCAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuaXRlbSAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW0gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgQWN0aXZlIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudmVydGljYWwubWVudSAuYWN0aXZlLml0ZW06aG92ZXIsXG4udWkubWVudSAuYWN0aXZlLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudSAuaXRlbS5kaXNhYmxlZCxcbi51aS5tZW51IC5pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmVydGljYWxcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52ZXJ0aWNhbC5tZW51IHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cblxuLyotLS0gSXRlbSAtLS0qL1xuXG4udWkudmVydGljYWwubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDBlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udWkudmVydGljYWwubWVudSA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBweCAwcHg7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51ID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMCAwO1xufVxuXG4vKi0tLSBMYWJlbCAtLS0qL1xuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKi0tLSBJY29uIC0tLSovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gaS5pY29uIHtcbiAgd2lkdGg6IDEuMThlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuNWVtO1xufVxuXG4udWkudmVydGljYWwubWVudSAuaXRlbSA+IC5sYWJlbCArIGkuaWNvbiB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDBlbSAwLjVlbSAwZW0gMGVtO1xufVxuXG4vKi0tLSBCb3JkZXIgLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC4wMykgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxLjVlbSwgcmdiYSgwLCAwLCAwLCAwLjAzKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMDMpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMS41ZW0sIHJnYmEoMCwgMCwgMCwgMC4wMykgMTAwJSk7XG4gIGhlaWdodDogMXB4O1xufVxuXG4udWkudmVydGljYWwubWVudSAuaXRlbTpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tIERyb3Bkb3duIC0tLSovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5hY3RpdmUuZHJvcGRvd24uaXRlbSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IHtcbiAgdG9wOiAwJSAhaW1wb3J0YW50O1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW46IDBweCAwcHggMHB4IDBweDtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMCAwIDA7XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtIC5tZW51IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkudmVydGljYWwubWVudSAuZHJvcGRvd24uaXRlbSAubWVudSAuaXRlbSBpLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLm1lbnUgLmRyb3Bkb3duLml0ZW0uYWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0gU3ViIE1lbnUgLS0tKi9cblxuLnVpLnZlcnRpY2FsLm1lbnUgLml0ZW06bm90KC5kcm9wZG93bikgPiAubWVudSB7XG4gIG1hcmdpbjogMC41ZW0gLTAuOTVlbSAwZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pID4gLm1lbnUgPiAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IC5pdGVtID4gLm1lbnUgPiAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFRpZXJlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRpZXJlZC5tZW51ID4gLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4udWkudGllcmVkLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZDogI2ZjZmNmYztcbn1cblxuLnVpLnRpZXJlZC5tZW51ID4gLm1lbnUgLml0ZW0uYWN0aXZlOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZmNmYztcbn1cblxuLyogU3ViIE1lbnUgKi9cblxuLnVpLnRpZXJlZC5tZW51IC5zdWIubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2ZjZmM7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnRpZXJlZC5tZW51ID4gLnN1Yi5tZW51ID4gLml0ZW0ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9ybWFsO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4vKiBTdWIgTWVudSBEaXZpZGVyICovXG5cbi51aS50aWVyZWQubWVudSAuc3ViLm1lbnUgLml0ZW06YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogU3ViIE1lbnUgSG92ZXIgKi9cblxuLnVpLnRpZXJlZC5tZW51IC5zdWIubWVudSAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIFN1YiBNZW51IEFjdGl2ZSAqL1xuXG4udWkudGllcmVkLm1lbnUgLnN1Yi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAwLjc4NTcxZW07XG4gIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3A6IG1lZGl1bSBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuXG4udWkudGllcmVkLm1lbnUgLnN1Yi5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEludmVydGVkIFRpZXJlZCBNZW51ICovXG5cbi51aS5pbnZlcnRlZC50aWVyZWQubWVudSA+IC5tZW51ID4gLml0ZW0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkuaW52ZXJ0ZWQudGllcmVkLm1lbnUgLnN1Yi5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4udWkuaW52ZXJ0ZWQudGllcmVkLm1lbnUgLnN1Yi5tZW51IC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnVpLmludmVydGVkLnRpZXJlZC5tZW51ID4gLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQudGllcmVkLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLnRpZXJlZC5tZW51ID4gLnN1Yi5tZW51ID4gLmFjdGl2ZS5pdGVtLFxuLnVpLmludmVydGVkLnRpZXJlZC5tZW51ID4gLm1lbnUgPiAuYWN0aXZlLml0ZW0ge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBUaWVyZWQgUG9pbnRpbmcgKi9cblxuLnVpLnBvaW50aW5nLnRpZXJlZC5tZW51ID4gLm1lbnUgPiAuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS5wb2ludGluZy50aWVyZWQubWVudSA+IC5zdWIubWVudSA+IC5pdGVtOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVGFidWxhclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYnVsYXIubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi51aS50YWJ1bGFyLmZsdWlkLm1lbnUge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAgMnB4ICkgIWltcG9ydGFudDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICAycHggKSAhaW1wb3J0YW50O1xufVxuXG4udWkudGFidWxhci5tZW51IC5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmctbGVmdDogMS40ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNGVtO1xuICBjb2xvcjogIzFiNmQ0Nztcbn1cblxuLnVpLnRhYnVsYXIubWVudSAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkudGFidWxhci5tZW51IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkudGFidWxhci5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1jb2xvcjogI2Q0ZDRkNTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMHB4IDBweDtcbn1cblxuLyogQ291cGxpbmcgd2l0aCBzZWdtZW50IGZvciBhdHRhY2htZW50ICovXG5cbi51aS5hdHRhY2hlZC50YWJ1bGFyLm1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi51aS50YWJ1bGFyLm1lbnUgKyAuYm90dG9tLmF0dGFjaGVkLnNlZ21lbnQsXG4udWkudGFidWxhci5tZW51IH4gLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50ICsgLmJvdHRvbS5hdHRhY2hlZC5zZWdtZW50IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWdpbmF0aW9uLm1lbnUge1xuICBtYXJnaW46IDBlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkucGFnaW5hdGlvbi5tZW51IC5pdGVtIHtcbiAgbWluLXdpZHRoOiAyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLnBhZ2luYXRpb24ubWVudSAuaWNvbi5pdGVtIGkuaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5wYWdpbmF0aW9uLm1lbnUuZmxvYXRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnBhZ2luYXRpb24ubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItdG9wOiBub25lO1xuICBwYWRkaW5nLXRvcDogMC43ODU3MWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTZWNvbmRhcnlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWNvbmRhcnkubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5tZW51ID4gLm1lbnUgPiAuaXRlbSxcbi51aS5zZWNvbmRhcnkubWVudSA+IC5pdGVtIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMC4yNWVtO1xuICBwYWRkaW5nOiAwLjVlbSAwLjhlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtO1xufVxuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgPiAubWVudSA+IC5pdGVtOmJlZm9yZSxcbi51aS5zZWNvbmRhcnkubWVudSA+IC5pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnVpLnNlY29uZGFyeS5tZW51IC5pdGVtID4gLmlucHV0IGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnVpLnNlY29uZGFyeS5tZW51IC5saW5rLml0ZW0sXG4udWkuc2Vjb25kYXJ5Lm1lbnUgYS5pdGVtIHtcbiAgb3BhY2l0eTogMC44O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi51aS5zZWNvbmRhcnkubWVudSAuaGVhZGVyLml0ZW0ge1xuICBib3JkZXItcmlnaHQ6IDAuMWVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkuc2Vjb25kYXJ5Lm1lbnUgLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkubWVudSBhLml0ZW06aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnNlY29uZGFyeS5tZW51ID4gLm1lbnUgPiAuYWN0aXZlLml0ZW0sXG4udWkuc2Vjb25kYXJ5Lm1lbnUgPiAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBvcGFjaXR5OiAxO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLm1lbnUgPiAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW07XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IGEuaXRlbSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5tZW51IGEuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbn1cblxuLyogRGlzYWJsZSB2YXJpYXRpb25zICovXG5cbi51aS5zZWNvbmRhcnkuaXRlbS5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLnVpLnNlY29uZGFyeS5hdHRhY2hlZC5tZW51IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeSBWZXJ0aWNhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLm1lbnUgPiAuaXRlbSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuM2VtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLm1lbnUgPiAuaGVhZGVyLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi8qIEludmVydGVkICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUge1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgPiAuaXRlbSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSA+IC5oZWFkZXIuaXRlbSB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSA+IC5tZW51ID4gLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xufVxuXG4vKiBQcmVzc2VkICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSA+IC5tZW51ID4gLml0ZW06YWN0aXZlLFxuLnVpLnNlY29uZGFyeS5pbnZlcnRlZC5wb2ludGluZy5tZW51ID4gLml0ZW06YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkuc2Vjb25kYXJ5LmludmVydGVkLnBvaW50aW5nLm1lbnUgPiAubWVudSA+IC5pdGVtLmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQucG9pbnRpbmcubWVudSA+IC5pdGVtLmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFNlY29uZGFyeSBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUge1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgPiAubWVudSA+IC5pdGVtLFxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbSAwZW0gLTNweDtcbiAgcGFkZGluZzogMC42ZW0gMC45NWVtO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLyogSXRlbSBUeXBlcyAqL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgLmhlYWRlci5pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwcHggIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSkgIWltcG9ydGFudDtcbn1cblxuLnVpLnNlY29uZGFyeS5wb2ludGluZy5tZW51IC50ZXh0Lml0ZW0ge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5tZW51ID4gLml0ZW06YWZ0ZXIsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgPiAuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5tZW51ID4gLmxpbmsuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5saW5rLml0ZW06aG92ZXIsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgPiAubWVudSA+IGEuaXRlbTpob3Zlcixcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IGEuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBQcmVzc2VkICovXG5cbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5tZW51ID4gLmxpbmsuaXRlbTphY3RpdmUsXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgPiAubGluay5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5tZW51ID4gYS5pdGVtOmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IGEuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIEFjdGl2ZSAqL1xuXG4udWkuc2Vjb25kYXJ5LnBvaW50aW5nLm1lbnUgPiAubWVudSA+IC5pdGVtLmFjdGl2ZSxcbi51aS5zZWNvbmRhcnkucG9pbnRpbmcubWVudSA+IC5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qIFNlY29uZGFyeSBWZXJ0aWNhbCBQb2ludGluZyAqL1xuXG4udWkuc2Vjb25kYXJ5LnZlcnRpY2FsLnBvaW50aW5nLm1lbnUge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5wb2ludGluZy5tZW51ID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbSAtM3B4IDBlbSAwZW07XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwZW07XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zZWNvbmRhcnkudmVydGljYWwucG9pbnRpbmcubWVudSA+IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG5cbi8qIFByZXNzZWQgKi9cblxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5wb2ludGluZy5tZW51ID4gLml0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLnNlY29uZGFyeS52ZXJ0aWNhbC5wb2ludGluZy5tZW51ID4gLml0ZW0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLyogSW52ZXJ0ZWQgVmVydGljYWwgUG9pbnRpbmcgU2Vjb25kYXJ5ICovXG5cbi51aS5zZWNvbmRhcnkuaW52ZXJ0ZWQudmVydGljYWwucG9pbnRpbmcubWVudSB7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFRleHQgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRleHQubWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAxcmVtIC0xcmVtO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS50ZXh0Lm1lbnUgPiAuaXRlbSB7XG4gIG9wYWNpdHk6IDAuODtcbiAgbWFyZ2luOiAwZW0gMWVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4udWkudGV4dC5tZW51ID4gLml0ZW06YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkudGV4dC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSg1MCwgNTAsIDUwLCAwLjgpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwYWRkaW5nOiAwZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkudGV4dC5tZW51IC50ZXh0Lml0ZW0ge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSg1MCwgNTAsIDUwLCAwLjgpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyotLS0gZmx1aWQgdGV4dCAtLS0qL1xuXG4udWkudGV4dC5pdGVtLm1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyotLS0gdmVydGljYWwgdGV4dCAtLS0qL1xuXG4udWkudmVydGljYWwudGV4dC5tZW51IHtcbiAgbWFyZ2luOiAxcmVtIDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLnRleHQubWVudTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDByZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW07XG59XG5cbi51aS52ZXJ0aWNhbC50ZXh0Lm1lbnUgLml0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGxlZnQ7XG4gIG1hcmdpbjogMC41ZW0gMGVtO1xufVxuXG4udWkudmVydGljYWwudGV4dC5tZW51IC5pdGVtID4gaS5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtIDAuNzg1NzFlbSAwZW0gMGVtO1xufVxuXG4udWkudmVydGljYWwudGV4dC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIG1hcmdpbjogMC44ZW0gMGVtO1xufVxuXG4vKi0tLSBob3ZlciAtLS0qL1xuXG4udWkudGV4dC5tZW51IC5pdGVtOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qLS0tIGFjdGl2ZSAtLS0qL1xuXG4udWkudGV4dC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIGRpc2FibGUgdmFyaWF0aW9ucyAqL1xuXG4udWkudGV4dC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS50ZXh0LmF0dGFjaGVkLm1lbnUge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51LFxuLnVpLmludmVydGVkLnRleHQubWVudSAuaXRlbSxcbi51aS5pbnZlcnRlZC50ZXh0Lm1lbnUgLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQudGV4dC5tZW51IC5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBGbHVpZCAqL1xuXG4udWkuZmx1aWQudGV4dC5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJY29uIE9ubHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pY29uLm1lbnUsXG4udWkudmVydGljYWwuaWNvbi5tZW51IHtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4udWkuaWNvbi5tZW51ID4gLml0ZW0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnVpLmljb24ubWVudSA+IC5pdGVtID4gLmljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwZW0gYXV0byAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4udWkuaWNvbi5tZW51IC5pY29uOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIEl0ZW0gSWNvbiBPbmx5ICovXG5cbi51aS5tZW51IC5pY29uLml0ZW0gLmljb24ge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLnVpLnZlcnRpY2FsLmljb24ubWVudSB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKi0tLSBpbnZlcnRlZCAtLS0qL1xuXG4udWkuaW52ZXJ0ZWQuaWNvbi5tZW51IC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnVpLmludmVydGVkLmljb24ubWVudSAuaWNvbiB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBMYWJlbGVkIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sYWJlbGVkLmljb24ubWVudSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmZsdWlkLmxhYmVsZWQuaWNvbi5tZW51ID4gLml0ZW0ge1xuICBtaW4td2lkdGg6IDBlbTtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5tZW51ID4gLml0ZW0ge1xuICBtaW4td2lkdGg6IDZlbTtcbn1cblxuLnVpLmxhYmVsZWQuaWNvbi5tZW51ID4gLml0ZW0gPiAuaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuNWVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIGF1dG8gMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0gTGlnaHQgQ29sb3JzICAtLS0qL1xuXG4udWkubWVudSAuYmx1ZS5hY3RpdmUuaXRlbSxcbi51aS5ibHVlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2I4M2MwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjM2I4M2MwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC5ncmVlbi5hY3RpdmUuaXRlbSxcbi51aS5ncmVlbi5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogIzJkYjQ3NSAhaW1wb3J0YW50O1xuICBjb2xvcjogIzJkYjQ3NSAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAub3JhbmdlLmFjdGl2ZS5pdGVtLFxuLnVpLm9yYW5nZS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1jb2xvcjogI2UwN2I1MyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2UwN2I1MyAhaW1wb3J0YW50O1xufVxuXG4udWkubWVudSAucGluay5hY3RpdmUuaXRlbSxcbi51aS5waW5rLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDk0OTlhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZDk0OTlhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC5wdXJwbGUuYWN0aXZlLml0ZW0sXG4udWkucHVycGxlLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTY0ZjhhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTY0ZjhhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC5yZWQuYWN0aXZlLml0ZW0sXG4udWkucmVkLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tZW51IC50ZWFsLmFjdGl2ZS5pdGVtLFxuLnVpLnRlYWwubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6ICMwMGI1YWQgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMGI1YWQgIWltcG9ydGFudDtcbn1cblxuLnVpLm1lbnUgLnllbGxvdy5hY3RpdmUuaXRlbSxcbi51aS55ZWxsb3cubWVudSAuYWN0aXZlLml0ZW0ge1xuICBib3JkZXItY29sb3I6ICNmMmM2MWYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmMmM2MWYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQubWVudSB7XG4gIGJhY2tncm91bmQ6ICMxYjFjMWQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5pbnZlcnRlZC5tZW51IC5oZWFkZXIuaXRlbSB7XG4gIG1hcmdpbjogMGVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtLFxuLnVpLmludmVydGVkLm1lbnUgLml0ZW0gPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtOm5vdCguZHJvcGRvd24pLm1lbnUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnVpLmludmVydGVkLm1lbnUgLml0ZW0gLml0ZW0sXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSAuaXRlbSA+IGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4udWkuaW52ZXJ0ZWQubWVudSAuZHJvcGRvd24gLm1lbnUgLml0ZW0ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLm1lbnUgLmRyb3Bkb3duIC5tZW51IC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbS5kaXNhYmxlZCxcbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cblxuLyotLS0gQm9yZGVyIC0tLSovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDEwMCUpO1xufVxuXG4udWkudmVydGljYWwuaW52ZXJ0ZWQubWVudSAuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTAwJSk7XG59XG5cbi8qLS0tIEhvdmVyIC0tLSovXG5cbi51aS5saW5rLmludmVydGVkLm1lbnUgLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgYS5pdGVtOmhvdmVyLFxuLnVpLmludmVydGVkLm1lbnUgLmRyb3Bkb3duLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSBhLml0ZW06aG92ZXIsXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSAubWVudSAubGluay5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLSBQcmVzc2VkIC0tLSovXG5cbi51aS5pbnZlcnRlZC5tZW51IGEuaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQubWVudSAuZHJvcGRvd24uaXRlbTphY3RpdmUsXG4udWkuaW52ZXJ0ZWQubWVudSAubGluay5pdGVtOmFjdGl2ZSxcbi51aS5pbnZlcnRlZC5tZW51IGEuaXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0gQWN0aXZlIC0tLSovXG5cbi51aS5pbnZlcnRlZC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudmVydGljYWwubWVudSAuaXRlbSAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tIFBvaW50ZXJzIC0tLSovXG5cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICM1QjVCNUI7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5pbnZlcnRlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICM0QTRBNEE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTZWxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWxlY3Rpb24ubWVudSA+IC5pdGVtIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLnNlbGVjdGlvbi5tZW51ID4gLml0ZW06aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4udWkuc2VsZWN0aW9uLm1lbnUgPiAuaXRlbS5hY3RpdmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLnVpLmludmVydGVkLnNlbGVjdGlvbi5tZW51ID4gLml0ZW0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xufVxuXG4udWkuaW52ZXJ0ZWQuc2VsZWN0aW9uLm1lbnUgPiAuaXRlbTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi51aS5pbnZlcnRlZC5zZWxlY3Rpb24ubWVudSA+IC5pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb2F0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGVkLm1lbnUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwcmVtIDAuNXJlbSAwcmVtIDByZW07XG59XG5cbi51aS5yaWdodC5mbG9hdGVkLm1lbnUge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMHJlbSAwcmVtIDByZW0gMC41cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gSW52ZXJ0ZWQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLSBMaWdodCBDb2xvcnMgIC0tLSovXG5cbi51aS5ncmV5Lm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xufVxuXG4vKi0tLSBJbnZlcnRlZCBDb2xvcnMgIC0tLSovXG5cbi8qIEJsdWUgKi9cblxuLnVpLmludmVydGVkLmJsdWUubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjgzYzA7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMDtcbn1cblxuLyogR3JlZW4gKi9cblxuLnVpLmludmVydGVkLmdyZWVuLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4ucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1O1xufVxuXG4vKiBPcmFuZ2UgKi9cblxuLnVpLmludmVydGVkLm9yYW5nZS5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwN2I1Mztcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMDdiNTM7XG59XG5cbi8qIFBpbmsgKi9cblxuLnVpLmludmVydGVkLnBpbmsubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTQ5OWE7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NDk5YTtcbn1cblxuLyogUHVycGxlICovXG5cbi51aS5pbnZlcnRlZC5wdXJwbGUubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjRmOGE7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY0ZjhhO1xufVxuXG4vKiBSZWQgKi9cblxuLnVpLmludmVydGVkLnJlZC5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLmludmVydGVkLnJlZC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzE4MWU7XG59XG5cbi8qIFRlYWwgKi9cblxuLnVpLmludmVydGVkLnRlYWwubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI1YWQ7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjVhZDtcbn1cblxuLyogWWVsbG93ICovXG5cbi51aS5pbnZlcnRlZC55ZWxsb3cubWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmM2MWY7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjNjFmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpdHRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLmZpdHRlZC5pdGVtIHtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkuaG9yaXpvbnRhbGx5LmZpdHRlZC5tZW51IC5pdGVtLFxuLnVpLmhvcml6b250YWxseS5maXR0ZWQubWVudSAuaXRlbSAubWVudSAuaXRlbSxcbi51aS5tZW51IC5ob3Jpem9udGFsbHkuZml0dGVkLml0ZW0ge1xuICBwYWRkaW5nLXRvcDogMC43ODU3MWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43ODU3MWVtO1xufVxuXG4udWkudmVydGljYWxseS5maXR0ZWQubWVudSAuaXRlbSxcbi51aS52ZXJ0aWNhbGx5LmZpdHRlZC5tZW51IC5pdGVtIC5tZW51IC5pdGVtLFxuLnVpLm1lbnUgLnZlcnRpY2FsbHkuZml0dGVkLml0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTVlbTtcbiAgcGFkZGluZy1yaWdodDogMC45NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBCb3JkZXJsZXNzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYm9yZGVybGVzcy5tZW51IC5pdGVtOmJlZm9yZSxcbi51aS5ib3JkZXJsZXNzLm1lbnUgLml0ZW0gLm1lbnUgLml0ZW06YmVmb3JlLFxuLnVpLm1lbnUgLmJvcmRlcmxlc3MuaXRlbTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3QubWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5jb21wYWN0LnZlcnRpY2FsLm1lbnUge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udWkuY29tcGFjdC52ZXJ0aWNhbC5tZW51IC5pdGVtOmxhc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUuZmx1aWQsXG4udWkudmVydGljYWwubWVudS5mbHVpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIEV2ZW5seSBTaXplZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbS5tZW51LFxuLnVpLml0ZW0ubWVudSAuaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkubWVudS50d28uaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS5tZW51LnRocmVlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMzMuMzMzJTtcbn1cblxuLnVpLm1lbnUuZm91ci5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLm1lbnUuZml2ZS5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpLm1lbnUuc2l4Lml0ZW0gLml0ZW0ge1xuICB3aWR0aDogMTYuNjY2JTtcbn1cblxuLnVpLm1lbnUuc2V2ZW4uaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxNC4yODUlO1xufVxuXG4udWkubWVudS5laWdodC5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDEyLjUwMCU7XG59XG5cbi51aS5tZW51Lm5pbmUuaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiAxMS4xMSU7XG59XG5cbi51aS5tZW51LnRlbi5pdGVtIC5pdGVtIHtcbiAgd2lkdGg6IDEwLjAlO1xufVxuXG4udWkubWVudS5lbGV2ZW4uaXRlbSAuaXRlbSB7XG4gIHdpZHRoOiA5LjA5JTtcbn1cblxuLnVpLm1lbnUudHdlbHZlLml0ZW0gLml0ZW0ge1xuICB3aWR0aDogOC4zMzMlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpeGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWVudS5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAxO1xuICBtYXJnaW46IDBlbTtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLm1lbnUuZml4ZWQsXG4udWkubWVudS5maXhlZCAuaXRlbTpmaXJzdC1jaGlsZCxcbi51aS5tZW51LmZpeGVkIC5pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnVpLmZpeGVkLm1lbnUsXG4udWkudG9wLmZpeGVkLm1lbnUge1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4udWkucmlnaHQuZml4ZWQubWVudSB7XG4gIHRvcDogMHB4O1xuICByaWdodDogMHB4O1xuICBsZWZ0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi51aS5ib3R0b20uZml4ZWQubWVudSB7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi51aS5sZWZ0LmZpeGVkLm1lbnUge1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKiBDb3VwbGluZyB3aXRoIEdyaWQgKi9cblxuLnVpLmZpeGVkLm1lbnUgKyAudWkuZ3JpZCB7XG4gIHBhZGRpbmctdG9wOiAyLjc1cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBQb2ludGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgbWFyZ2luOiAwZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiAwLjZlbTtcbiAgaGVpZ2h0OiAwLjZlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q0ZDRkNTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Q0ZDRkNTtcbiAgei1pbmRleDogMTE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xufVxuXG4vKiBEb24ndCBkb3VibGUgdXAgcG9pbnRlcnMgKi9cblxuLnVpLnBvaW50aW5nLm1lbnUgLmFjdGl2ZS5pdGVtIC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBtYXJnaW46IDBlbSAtMXB4IDBlbSAwZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkNGQ0ZDU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi8qIENvbG9ycyAqL1xuXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06aG92ZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xufVxuXG4udWkucG9pbnRpbmcubWVudSAuYWN0aXZlLml0ZW06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xufVxuXG4udWkudmVydGljYWwucG9pbnRpbmcubWVudSAuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG5cbi51aS52ZXJ0aWNhbC5wb2ludGluZy5tZW51IC5tZW51IC5hY3RpdmUuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1lbnUuYXR0YWNoZWQge1xuICBtYXJnaW46IDByZW07XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgLyogYXZvaWQgcmdiYSBtdWx0aXBseWluZyAqL1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2RkZGRkZDtcbn1cblxuLnVpLnRvcC5hdHRhY2hlZC5tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS5tZW51LmJvdHRvbS5hdHRhY2hlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbWFsbCAqL1xuXG4udWkuc21hbGwubWVudSAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi51aS5zbWFsbC52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IDEzcmVtO1xufVxuXG4vKiBNZWRpdW0gKi9cblxuLnVpLm1lbnUgLml0ZW0ge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi51aS52ZXJ0aWNhbC5tZW51IHtcbiAgd2lkdGg6IDE1cmVtO1xufVxuXG4vKiBMYXJnZSAqL1xuXG4udWkubGFyZ2UubWVudSAuaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi51aS5sYXJnZS5tZW51IC5pdGVtIC5pdGVtIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnVpLmxhcmdlLm1lbnUgLmRyb3Bkb3duIC5pdGVtIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UudmVydGljYWwubWVudSB7XG4gIHdpZHRoOiAxOHJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWVudSB7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8qIFRleHQgQ29sb3IgKi9cblxuLnVpLm1lbnUgLml0ZW0ge1xuICBjb2xvcjogIzFiNmQ0NztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnVpLnNpZGViYXIubWVudSAuaXRlbSB7XG4gIGNvbG9yOiAjODU4Njg2O1xufVxuXG4udWkubWVudSAuY2FwaXRhbGl6ZWQuaXRlbSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5uYXYudWkubWVudSAuaXRlbSB7XG4gIG1pbi13aWR0aDogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuNWVtIDA7XG59XG5cbm5hdi51aS5pbnZlcnRlZC5tZW51IC5pdGVtIHtcbiAgcGFkZGluZzogMC43ODU3MWVtIDAuOTVlbTtcbn1cblxuLyogQWN0aXZlICovXG5cbm5hdi51aS5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZGI0NzU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbm5hdi51aS5pbnZlcnRlZC5tZW51IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkuaW52ZXJ0ZWQubWVudSAuaXRlbSxcbi51aS5pbnZlcnRlZC5tZW51IC5pdGVtID4gYTpub3QoLnVpKSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbmEuYnJhbmQuaXRlbS5sZWZ0LmFsaWduZWQge1xuICBtYXgtd2lkdGg6IDEwLjhlbTtcbiAgcGFkZGluZzogMC4yNWVtO1xufVxuXG4ucHZyIHtcbiAgbWF4LWhlaWdodDogMTAwdmg7XG59XG5cbiNtYWluLW1lbnUge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBQYWdpbmF0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGFnaW5hdGlvbi5tZW51IHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLnBhZ2luYXRpb24ubWVudSAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkuZ3JpZC5zZWdtZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnVpLnBhZ2luYXRpb24ubWVudSAuaXRlbSB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIHBhZGRpbmc6IDFlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi51aS5wYWdpbmF0aW9uLm1lbnUgLml0ZW0uYWN0aXZlIHtcbiAgY29sb3I6ICMxYjFjMWQ7XG59XG5cbi51aS5wYWdpbmF0aW9uLm1lbnUgLml0ZW06aG92ZXIge1xuICBjb2xvcjogIzFiMWMxZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGluay5tZW51ID4gLml0ZW06aG92ZXIsXG4udWkubWVudSA+IC5saW5rLml0ZW06aG92ZXIsXG4udWkubWVudSA+IGEuaXRlbTpob3Zlcixcbi51aS5saW5rLm1lbnUgLm1lbnUgPiAuaXRlbTpob3Zlcixcbi51aS5tZW51IC5tZW51ID4gLmxpbmsuaXRlbTpob3Zlcixcbi51aS5tZW51IC5tZW51ID4gYS5pdGVtOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAjMmRiNDc1O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBNZXNzYWdlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBNZXNzYWdlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWVzc2FnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMWVtO1xuICBtYXJnaW46IDFlbSAwZW07XG4gIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gIHBhZGRpbmc6IDFlbSAxLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJhY2tncm91bmQgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSkgaW5zZXQsIDBweCAwcHggMHB4IDBweCB0cmFuc3BhcmVudDtcbn1cblxuLnVpLm1lc3NhZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSGVhZGVyICovXG5cbi51aS5tZXNzYWdlIC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjVyZW0gMGVtO1xufVxuXG4vKiBEZWZhdWx0IGZvbnQgc2l6ZSAqL1xuXG4udWkubWVzc2FnZSAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLyogUGFyYWdyYXBoICovXG5cbi51aS5tZXNzYWdlIHAge1xuICBvcGFjaXR5OiAwLjg1O1xuICBtYXJnaW46IDAuNzVlbSAwZW07XG59XG5cbi51aS5tZXNzYWdlIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLm1lc3NhZ2UgLmhlYWRlciArIHAge1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG59XG5cbi8qIExpc3QgKi9cblxuLnVpLm1lc3NhZ2UgdWwubGlzdCB7XG4gIG9wYWNpdHk6IDAuODU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgbWFyZ2luOiAwLjVlbSAwZW0gMGVtO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi51aS5tZXNzYWdlIHVsLmxpc3Q6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5tZXNzYWdlIHVsLmxpc3Q6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLm1lc3NhZ2UgdWwubGlzdCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDBlbSAwZW0gMC4zZW0gMWVtO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi51aS5tZXNzYWdlIHVsLmxpc3QgbGk6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAn4oCiJztcbiAgbGVmdDogLTFlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi51aS5tZXNzYWdlIHVsLmxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyogSWNvbiAqL1xuXG4udWkubWVzc2FnZSA+IC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjZlbTtcbn1cblxuLyogQ2xvc2UgSWNvbiAqL1xuXG4udWkubWVzc2FnZSA+IC5jbG9zZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMGVtO1xuICB0b3A6IDEuMTVlbTtcbiAgcmlnaHQ6IDAuNWVtO1xuICBvcGFjaXR5OiAwLjc7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGxpbmVhcjtcbn1cblxuLnVpLm1lc3NhZ2UgPiAuY2xvc2UuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIEZpcnN0IC8gTGFzdCBFbGVtZW50ICovXG5cbi51aS5tZXNzYWdlID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkubWVzc2FnZSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgVmlzaWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnZpc2libGUudmlzaWJsZS52aXNpYmxlLnZpc2libGUubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udWkuaWNvbi52aXNpYmxlLnZpc2libGUudmlzaWJsZS52aXNpYmxlLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBIaWRkZW5cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5oaWRkZW4uaGlkZGVuLmhpZGRlbi5oaWRkZW4ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3QubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYXR0YWNoZWQubWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwZW0gMGVtO1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAxcHggcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0O1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4udWkuYXR0YWNoZWQgKyAudWkuYXR0YWNoZWQubWVzc2FnZTpub3QoLnRvcCk6bm90KC5ib3R0b20pIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkuYm90dG9tLmF0dGFjaGVkLm1lc3NhZ2Uge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMXB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCwgMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWkuYm90dG9tLmF0dGFjaGVkLm1lc3NhZ2U6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLnVpLmF0dGFjaGVkLmljb24ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmljb24ubWVzc2FnZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLmljb24ubWVzc2FnZSA+IC5pY29uOm5vdCguY2xvc2UpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi51aS5pY29uLm1lc3NhZ2UgPiAuY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkuaWNvbi5tZXNzYWdlIC5pY29uOm5vdCguY2xvc2UpICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbn1cblxuLnVpLmljb24ubWVzc2FnZSAuY2lyY3VsYXIuaWNvbiB7XG4gIHdpZHRoOiAxZW07XG59XG5cbi51aS5pY29uLm1lc3NhZ2UgLmNpcmN1bGFyLmljb24gKyAuY29udGVudCB7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEZsb2F0aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmxvYXRpbmcubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSksIDBweCAwcHggMHB4IDFweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpIGluc2V0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJsYWNrLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBUeXBlc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUG9zaXRpdmUgKi9cblxuLnVpLnBvc2l0aXZlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmZmU3O1xuICBjb2xvcjogIzNjNzYzZDtcbn1cblxuLnVpLnBvc2l0aXZlLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQucG9zaXRpdmUubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjYjdjYWE3IGluc2V0LCAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51aS5wb3NpdGl2ZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzM1NmUzNjtcbn1cblxuLyogTmVnYXRpdmUgKi9cblxuLnVpLm5lZ2F0aXZlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmMGYwO1xuICBjb2xvcjogI2E5NDQ0Mjtcbn1cblxuLnVpLm5lZ2F0aXZlLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQubmVnYXRpdmUubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZGJiMWIxIGluc2V0LCAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51aS5uZWdhdGl2ZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzkxMmQyYjtcbn1cblxuLyogSW5mbyAqL1xuXG4udWkuaW5mby5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZmFmZjtcbiAgY29sb3I6ICMzMzdiOTI7XG59XG5cbi51aS5pbmZvLm1lc3NhZ2UsXG4udWkuYXR0YWNoZWQuaW5mby5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNhYWQ2ZGYgaW5zZXQsIDBweCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnVpLmluZm8ubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICMyOTcxODc7XG59XG5cbi8qIFdhcm5pbmcgKi9cblxuLnVpLndhcm5pbmcubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZiZTY7XG4gIGNvbG9yOiAjODc2YTM4O1xufVxuXG4udWkud2FybmluZy5tZXNzYWdlLFxuLnVpLmF0dGFjaGVkLndhcm5pbmcubWVzc2FnZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjZDljYWFiIGluc2V0LCAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51aS53YXJuaW5nLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjODI1YzAxO1xufVxuXG4vKiBFcnJvciAqL1xuXG4udWkuZXJyb3IubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYwZjA7XG4gIGNvbG9yOiAjYTk0NDQyO1xufVxuXG4udWkuZXJyb3IubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5lcnJvci5tZXNzYWdlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNkYmIxYjEgaW5zZXQsIDBweCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnVpLmVycm9yLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjOTEyZDJiO1xufVxuXG4vKiBTdWNjZXNzICovXG5cbi51aS5zdWNjZXNzLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmZmU3O1xuICBjb2xvcjogIzNjNzYzZDtcbn1cblxuLnVpLnN1Y2Nlc3MubWVzc2FnZSxcbi51aS5hdHRhY2hlZC5zdWNjZXNzLm1lc3NhZ2Uge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI2I3Y2FhNyBpbnNldCwgMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWkuc3VjY2Vzcy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzM1NmUzNjtcbn1cblxuLyogQ29sb3JzICovXG5cbi51aS5pbnZlcnRlZC5tZXNzYWdlLFxuLnVpLmJsYWNrLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmJsdWUubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmYwZmY7XG4gIGNvbG9yOiAjM2I4M2MwO1xufVxuXG4udWkuYmx1ZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzM1NzZhYztcbn1cblxuLnVpLmdyZWVuLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJmZmVkO1xuICBjb2xvcjogIzFlYmMzMDtcbn1cblxuLnVpLmdyZWVuLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjMWFhNjJhO1xufVxuXG4udWkub3JhbmdlLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZGRlO1xuICBjb2xvcjogI2UwN2I1Mztcbn1cblxuLnVpLm9yYW5nZS5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogI2RjNmEzZDtcbn1cblxuLnVpLnBpbmsubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmUzZmI7XG4gIGNvbG9yOiAjZDk0OTlhO1xufVxuXG4udWkucGluay5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogI2Q1MzQ4ZTtcbn1cblxuLnVpLnB1cnBsZS5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZTdmZjtcbiAgY29sb3I6ICM1NjRmOGE7XG59XG5cbi51aS5wdXJwbGUubWVzc2FnZSAuaGVhZGVyIHtcbiAgY29sb3I6ICM0YzQ2N2E7XG59XG5cbi51aS5yZWQubWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU4ZTY7XG4gIGNvbG9yOiAjY2MxODFlO1xufVxuXG4udWkucmVkLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjYjUxNTFiO1xufVxuXG4udWkudGVhbC5tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZmZmZjtcbiAgY29sb3I6ICMxMGEzYTM7XG59XG5cbi51aS50ZWFsLm1lc3NhZ2UgLmhlYWRlciB7XG4gIGNvbG9yOiAjMGU4YzhjO1xufVxuXG4udWkueWVsbG93Lm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGRiO1xuICBjb2xvcjogI2I1ODEwNTtcbn1cblxuLnVpLnllbGxvdy5tZXNzYWdlIC5oZWFkZXIge1xuICBjb2xvcjogIzljNmYwNDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNtYWxsLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNlbTtcbn1cblxuLnVpLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLm1lc3NhZ2Uge1xuICBmb250LXNpemU6IDEuMTQyODU3MTRlbTtcbn1cblxuLnVpLmh1Z2UubWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1NzE0M2VtO1xufVxuXG4udWkubWFzc2l2ZS5tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxLjcxNDI4NTcxZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gVGFibGVcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUYWJsZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogUHJvdG90eXBlICovXG5cbi51aS50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBtYXJnaW46IDFlbSAwZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci1zcGFjaW5nOiAwcHg7XG59XG5cbi51aS50YWJsZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLnRhYmxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgUGFydHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFRhYmxlIENvbnRlbnQgKi9cblxuLnVpLnRhYmxlIHRoLFxuLnVpLnRhYmxlIHRkIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xufVxuXG4vKiBIZWFkZXJzICovXG5cbi51aS50YWJsZSB0aGVhZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS50YWJsZSB0aGVhZCB0aCB7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgcGFkZGluZzogMC43ZW0gMC44ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc3R5bGU6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNGQ0ZDU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkudGFibGUgdGhlYWQgdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkudGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMGVtIDBlbSAwZW07XG59XG5cbi51aS50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCA+IHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMCAwZW0gMGVtO1xufVxuXG4udWkudGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgPiB0aDpvbmx5LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi8qIEZvb3RlciAqL1xuXG4udWkudGFibGUgdGZvb3Qge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudGFibGUgdGZvb3QgdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDRkNGQ1O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBwYWRkaW5nOiAwLjdlbSAwLjhlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDBlbSAwO1xufVxuXG4udWkudGFibGUgdGZvb3QgdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwIDBlbTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyOmZpcnN0LWNoaWxkID4gdGg6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4vKiBUYWJsZSBSb3cgKi9cblxuLnVpLnRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi51aS50YWJsZSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIFRhYmxlIENlbGxzICovXG5cbi51aS50YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDAuN2VtIDAuOGVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiBJY29ucyAqL1xuXG4udWkudGFibGUgPiAuaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLnVpLnRhYmxlID4gLmljb246b25seS1jaGlsZCB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4vKiBUYWJsZSBTZWdtZW50ICovXG5cbi51aS50YWJsZS5zZWdtZW50IHtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkudGFibGUuc2VnbWVudDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51aS50YWJsZS5zZWdtZW50LnN0YWNrZWQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogUmVzcG9uc2l2ZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGJvZHksXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0cixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGgsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkge1xuICAgIHBhZGRpbmc6IDBlbTtcbiAgfVxuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aGVhZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGgsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMjVlbSAwLjc1ZW07XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRoOmZpcnN0LWNoaWxkLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGg6bGFzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRkOmxhc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgfVxuXG4gIC8qIENsZWFyIEJHIENvbG9ycyAqL1xuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkLndhcm5pbmcsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkLmVycm9yLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZC5hY3RpdmUsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRkLnBvc2l0aXZlLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZC5uZWdhdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIERlZmluaXRpb24gVGFibGUgKi9cblxuICAudWkuZGVmaW5pdGlvbi50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmRlZmluaXRpb24udGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIH1cblxuICAudWkuZGVmaW5pdGlvbi50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciB0ZDpudGgtY2hpbGQobisyKSB7XG4gICAgcGFkZGluZy10b3A6IDFlbTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ291cGxpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFVJIEltYWdlICovXG5cbi51aS50YWJsZSB0aCAuaW1hZ2UsXG4udWkudGFibGUgdGggLmltYWdlIGltZyxcbi51aS50YWJsZSB0ZCAuaW1hZ2UsXG4udWkudGFibGUgdGQgLmltYWdlIGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbXBsZXhcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdHJ1Y3R1cmVkLnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLnVpLnN0cnVjdHVyZWQudGFibGUgdGhlYWQgdGgge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udWkuc3RydWN0dXJlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QwZDBkMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2QwZDBkMDtcbn1cblxuLnVpLnN0cnVjdHVyZWQuYmFzaWMudGFibGUgdGgge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udWkuc3RydWN0dXJlZC5jZWxsZWQudGFibGUgdHIgdGgsXG4udWkuc3RydWN0dXJlZC5jZWxsZWQudGFibGUgdHIgdGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkNGQ0ZDU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIERlZmluaXRpb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRoZWFkOm5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGJveC1zaGFkb3c6IC0xcHggLTFweCAwcHggMXB4ICNmZmZmZmY7XG59XG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRmb290Om5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGNvbG9yOiBub3JtYWw7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMHB4IDFweCAjZmZmZmZmO1xufVxuXG4vKiBSZW1vdmUgQm9yZGVyICovXG5cbi51aS5jZWxsZWQuZGVmaW5pdGlvbi50YWJsZSB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpIHRoOmZpcnN0LWNoaWxkIHtcbiAgYm94LXNoYWRvdzogMHB4IC0xcHggMHB4IDFweCAjZmZmZmZmO1xufVxuXG4udWkuY2VsbGVkLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMHB4IDFweCAjZmZmZmZmO1xufVxuXG4vKiBIaWdobGlnaHQgRGVmaW5pbmcgQ29sdW1uICovXG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEZpeCAybmQgQ29sdW1uICovXG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRoZWFkOm5vdCguZnVsbC13aWR0aCkgdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDBkMGQwO1xufVxuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0Zm9vdDpub3QoLmZ1bGwtd2lkdGgpIHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QwZDBkMDtcbn1cblxuLnVpLmRlZmluaXRpb24udGFibGUgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDBkMGQwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBvc2l0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGUgdHIucG9zaXRpdmUsXG4udWkudGFibGUgdGQucG9zaXRpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjYjdjYWE3IGluc2V0O1xufVxuXG4udWkudGFibGUgdHIucG9zaXRpdmUgdGQsXG4udWkudGFibGUgdGQucG9zaXRpdmUge1xuICBiYWNrZ3JvdW5kOiAjZWVmZmU3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjM2M3NjNkICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jZWxsZWQudGFibGUgdHIucG9zaXRpdmU6aG92ZXIgdGQsXG4udWkuY2VsbGVkLnRhYmxlIHRyOmhvdmVyIHRkLnBvc2l0aXZlIHtcbiAgYmFja2dyb3VuZDogI2UzZmZkOCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzM3NmMzOCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE5lZ2F0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGUgdHIubmVnYXRpdmUsXG4udWkudGFibGUgdGQubmVnYXRpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjZGJiMWIxIGluc2V0O1xufVxuXG4udWkudGFibGUgdHIubmVnYXRpdmUgdGQsXG4udWkudGFibGUgdGQubmVnYXRpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmMGYwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjY2QyOTI5ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jZWxsZWQudGFibGUgdHIubmVnYXRpdmU6aG92ZXIgdGQsXG4udWkuY2VsbGVkLnRhYmxlIHRyOmhvdmVyIHRkLm5lZ2F0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZTFlMSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2MwMjYyNiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBFcnJvclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmVycm9yLFxuLnVpLnRhYmxlIHRkLmVycm9yIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI2RiYjFiMSBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLmVycm9yIHRkLFxuLnVpLnRhYmxlIHRkLmVycm9yIHtcbiAgYmFja2dyb3VuZDogI2ZmZjBmMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkMjkyOSAhaW1wb3J0YW50O1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyLmVycm9yOmhvdmVyIHRkLFxuLnVpLmNlbGxlZC50YWJsZSB0cjpob3ZlciB0ZC5lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNmZmUxZTEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjMDI2MjYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXYXJuaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGUgdHIud2FybmluZyxcbi51aS50YWJsZSB0ZC53YXJuaW5nIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI2Q5Y2FhYiBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLndhcm5pbmcgdGQsXG4udWkudGFibGUgdGQud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmZiZTYgIWltcG9ydGFudDtcbiAgY29sb3I6ICM3ZDZjMDAgIWltcG9ydGFudDtcbn1cblxuLnVpLmNlbGxlZC50YWJsZSB0ci53YXJuaW5nOmhvdmVyIHRkLFxuLnVpLmNlbGxlZC50YWJsZSB0cjpob3ZlciB0ZC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmZjlkNyAhaW1wb3J0YW50O1xuICBjb2xvcjogIzZlNWYwMCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmFjdGl2ZSxcbi51aS50YWJsZSB0ZC5hY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDAuOSkgaW5zZXQ7XG59XG5cbi51aS50YWJsZSB0ci5hY3RpdmUgdGQsXG4udWkudGFibGUgdGQuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2UwZTBlMCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSg1MCwgNTAsIDUwLCAwLjkpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jZWxsZWQudGFibGUgdHIuYWN0aXZlOmhvdmVyIHRkLFxuLnVpLmNlbGxlZC50YWJsZSB0cjpob3ZlciB0ZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZTBlMGUwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuOSkgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLmRpc2FibGVkIHRkLFxuLnVpLnRhYmxlIHRyIHRkLmRpc2FibGVkLFxuLnVpLnRhYmxlIHRyLmRpc2FibGVkOmhvdmVyIHRkLFxuLnVpLnRhYmxlIHRyOmhvdmVyIHRkLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGJvZHksXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRoLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB7XG4gICAgcGFkZGluZzogMGVtO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGhlYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGZvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0ZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC43NWVtO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRoOmZpcnN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy10b3A6IDFlbTtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRoOmxhc3QtY2hpbGQsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRkOmxhc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgfVxuXG4gIC8qIENsZWFyIEJHIENvbG9ycyAqL1xuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQud2FybmluZyxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0ZC5lcnJvcixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0ZC5hY3RpdmUsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQucG9zaXRpdmUsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQubmVnYXRpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBEZWZpbml0aW9uIFRhYmxlICovXG5cbiAgLnVpLmRlZmluaXRpb25bY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLmRlZmluaXRpb25bY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgfVxuXG4gIC51aS5kZWZpbml0aW9uW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgdGQ6bnRoLWNoaWxkKG4rMikge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFibGVbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJsZWZ0IGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWkudGFibGVbY2xhc3MqPVwiY2VudGVyIGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkudGFibGVbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ29sbGFwc2luZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRoLmNvbGxhcHNpbmcsXG4udWkudGFibGUgdGQuY29sbGFwc2luZyB7XG4gIHdpZHRoOiAxcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQXR0YWNoZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEFsbCAqL1xuXG4udWkuYXR0YWNoZWQudGFibGUge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAgMnB4ICk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAgMnB4ICk7XG4gIG1hcmdpbjogMGVtIC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogVG9wICovXG5cbi51aVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl0udGFibGUge1xuICBtYXJnaW4tdG9wOiAxZW0gMGVtO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMGVtIDBlbTtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cInRvcCBhdHRhY2hlZFwiXTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLyogQm90dG9tICovXG5cbi51aS50YWJsZVtjbGFzcyo9XCJib3R0b20gYXR0YWNoZWRcIl0ge1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbSAwZW07XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4udWkudGFibGVbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3RyaXBlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGFibGUgU3RyaXBpbmcgKi9cblxuLnVpLnN0cmlwZWQudGFibGUgPiB0cjpudGgtY2hpbGQoMm4pLFxuLnVpLnN0cmlwZWQudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgNTAsIDAuMDMpO1xufVxuXG4vKiBTdHJpcGVzICovXG5cbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlID4gdHI6bnRoLWNoaWxkKDJuKSxcbi51aS5pbnZlcnRlZC5zdHJpcGVkLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJsYWNrLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzFiMWMxZDtcbn1cblxuLnVpLmJsdWUudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjM2I4M2MwO1xufVxuXG4udWkuZ3JlZW4udGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjMmRiNDc1O1xufVxuXG4udWkub3JhbmdlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgI2UwN2I1Mztcbn1cblxuLnVpLnBpbmsudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjZDk0OTlhO1xufVxuXG4udWkucHVycGxlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzU2NGY4YTtcbn1cblxuLnVpLnJlZC50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNjYzE4MWU7XG59XG5cbi51aS50ZWFsLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzAwYjVhZDtcbn1cblxuLnVpLnllbGxvdy50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNmMmM2MWY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgSW52ZXJ0ZWQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC50YWJsZSxcbi51aS5pbnZlcnRlZC5ibGFjay50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLmJsdWUudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I4M2MwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZGI0NzUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLm9yYW5nZS50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMDdiNTMgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnBpbmsudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk0OTlhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY0ZjhhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5yZWQudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MxODFlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC50ZWFsLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjVhZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQueWVsbG93LnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyYzYxZiAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIENvbHVtbiBDb3VudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogR3JpZCBCYXNlZCAqL1xuXG4udWkub25lLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkudHdvLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS50aHJlZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuXG4udWkuZm91ci5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWkuZml2ZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMjAlO1xufVxuXG4udWkuc2l4LmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG5cbi51aS5zZXZlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTQuMjg1NzE0MjklO1xufVxuXG4udWkuZWlnaHQuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4udWkubmluZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTEuMTExMTExMTElO1xufVxuXG4udWkudGVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi51aS5lbGV2ZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDkuMDkwOTA5MDklO1xufVxuXG4udWkudHdlbHZlLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzJTtcbn1cblxuLnVpLnRoaXJ0ZWVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA3LjY5MjMwNzY5JTtcbn1cblxuLnVpLmZvdXJ0ZWVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA3LjE0Mjg1NzE0JTtcbn1cblxuLnVpLmZpZnRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDYuNjY2NjY2NjclO1xufVxuXG4udWkuc2l4dGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNi4yNSU7XG59XG5cbi8qIENvbHVtbiBXaWR0aCAqL1xuXG4udWkudGFibGUgdGgub25lLndpZGUsXG4udWkudGFibGUgdGQub25lLndpZGUge1xuICB3aWR0aDogNi4yNSU7XG59XG5cbi51aS50YWJsZSB0aC50d28ud2lkZSxcbi51aS50YWJsZSB0ZC50d28ud2lkZSB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuLnVpLnRhYmxlIHRoLnRocmVlLndpZGUsXG4udWkudGFibGUgdGQudGhyZWUud2lkZSB7XG4gIHdpZHRoOiAxOC43NSU7XG59XG5cbi51aS50YWJsZSB0aC5mb3VyLndpZGUsXG4udWkudGFibGUgdGQuZm91ci53aWRlIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLnRhYmxlIHRoLmZpdmUud2lkZSxcbi51aS50YWJsZSB0ZC5maXZlLndpZGUge1xuICB3aWR0aDogMzEuMjUlO1xufVxuXG4udWkudGFibGUgdGguc2l4LndpZGUsXG4udWkudGFibGUgdGQuc2l4LndpZGUge1xuICB3aWR0aDogMzcuNSU7XG59XG5cbi51aS50YWJsZSB0aC5zZXZlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnNldmVuLndpZGUge1xuICB3aWR0aDogNDMuNzUlO1xufVxuXG4udWkudGFibGUgdGguZWlnaHQud2lkZSxcbi51aS50YWJsZSB0ZC5laWdodC53aWRlIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnVpLnRhYmxlIHRoLm5pbmUud2lkZSxcbi51aS50YWJsZSB0ZC5uaW5lLndpZGUge1xuICB3aWR0aDogNTYuMjUlO1xufVxuXG4udWkudGFibGUgdGgudGVuLndpZGUsXG4udWkudGFibGUgdGQudGVuLndpZGUge1xuICB3aWR0aDogNjIuNSU7XG59XG5cbi51aS50YWJsZSB0aC5lbGV2ZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5lbGV2ZW4ud2lkZSB7XG4gIHdpZHRoOiA2OC43NSU7XG59XG5cbi51aS50YWJsZSB0aC50d2VsdmUud2lkZSxcbi51aS50YWJsZSB0ZC50d2VsdmUud2lkZSB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi51aS50YWJsZSB0aC50aGlydGVlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnRoaXJ0ZWVuLndpZGUge1xuICB3aWR0aDogODEuMjUlO1xufVxuXG4udWkudGFibGUgdGguZm91cnRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5mb3VydGVlbi53aWRlIHtcbiAgd2lkdGg6IDg3LjUlO1xufVxuXG4udWkudGFibGUgdGguZmlmdGVlbi53aWRlLFxuLnVpLnRhYmxlIHRkLmZpZnRlZW4ud2lkZSB7XG4gIHdpZHRoOiA5My43NSU7XG59XG5cbi51aS50YWJsZSB0aC5zaXh0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuc2l4dGVlbi53aWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTb3J0YWJsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkLFxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZDpob3ZlciB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBvcGFjaXR5OiAwLjg7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC41ZW07XG4gIGZvbnQtZmFtaWx5OiAnSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbn1cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLmFzY2VuZGluZzphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGYwZDcnO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguZGVzY2VuZGluZzphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGYwZDgnO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkuc29ydGFibGUudGFibGUgdGguZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IGF1dG87XG4gIGNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuMyk7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIFNvcnRlZCAqL1xuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogU29ydGVkIEhvdmVyICovXG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBJbnZlcnRlZCAqL1xuXG4udWkuaW52ZXJ0ZWQuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3KSAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNykgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuc29ydGFibGUudGFibGUgdGhlYWQgdGgge1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogVGV4dCBDb2xvciAqL1xuXG4udWkuaW52ZXJ0ZWQudGFibGUge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIgdGQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIgdGQuZGlzYWJsZWQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHIuZGlzYWJsZWQ6aG92ZXIgdGQsXG4udWkuaW52ZXJ0ZWQudGFibGUgdHI6aG92ZXIgdGQuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMC4zKTtcbn1cblxuLyogRGVmaW5pdGlvbiAqL1xuXG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSB0Zm9vdDpub3QoLmZ1bGwtd2lkdGgpIHRoOmZpcnN0LWNoaWxkLFxuLnVpLmludmVydGVkLmRlZmluaXRpb24udGFibGUgdGhlYWQ6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5kZWZpbml0aW9uLnRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENvbGxhcHNpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb2xsYXBzaW5nLnRhYmxlIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMudGFibGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QwZDBkMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRoZWFkLFxuLnVpLmJhc2ljLnRhYmxlIHRmb290IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnVpLmJhc2ljLnN0cmlwZWQudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWltcG9ydGFudDtcbn1cblxuLyogVmVyeSBCYXNpYyAqL1xuXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0aCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGQge1xuICBwYWRkaW5nOiAwLjdlbSAwLjhlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0aDpmaXJzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGQ6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0aDpsYXN0LWNoaWxkLFxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0ZDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMGVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDZWxsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jZWxsZWQudGFibGUgdHIgdGgsXG4udWkuY2VsbGVkLnRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDRkNGQ1O1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkLFxuLnVpLmNlbGxlZC50YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBhZGRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnBhZGRlZC50YWJsZSB0aCB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG59XG5cbi51aS5wYWRkZWQudGFibGUgdGgsXG4udWkucGFkZGVkLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMWVtIDFlbTtcbn1cblxuLyogVmVyeSAqL1xuXG4udWlbY2xhc3MqPVwidmVyeSBwYWRkZWRcIl0udGFibGUgdGgge1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMS41ZW0gMS41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tcGFjdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbXBhY3QudGFibGUgdGgge1xuICBwYWRkaW5nLWxlZnQ6IDAuN2VtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjdlbTtcbn1cblxuLnVpLmNvbXBhY3QudGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjVlbSAwLjdlbTtcbn1cblxuLyogVmVyeSAqL1xuXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlIHRoIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjZlbTtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGNvbXBhY3RcIl0udGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjRlbSAwLjZlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNtYWxsICovXG5cbi51aS5zbWFsbC50YWJsZSB7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi8qIFN0YW5kYXJkICovXG5cbi51aS50YWJsZSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBMYXJnZSAqL1xuXG4udWkubGFyZ2UudGFibGUge1xuICBmb250LXNpemU6IDEuMWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5iYXNpYy50YWJsZSB7XG4gIGJvcmRlcjogMHB4IHNvbGlkICNkMGQwZDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0Ym9keSB0aCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0Ym9keSB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkICNmZmY7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gQWRcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTMgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIEFkdmVydGlzZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5hZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDFlbSAwZW07XG59XG5cbi51aS5hZDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkuYWQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbjogMGVtO1xufVxuXG4udWkuYWQgaWZyYW1lIHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbW1vblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVhZGVyYm9hcmQgKi9cblxuLnVpLmxlYWRlcmJvYXJkLmFkIHtcbiAgd2lkdGg6IDcyOHB4O1xuICBoZWlnaHQ6IDkwcHg7XG59XG5cbi8qIE1lZGl1bSBSZWN0YW5nbGUgKi9cblxuLnVpW2NsYXNzKj1cIm1lZGl1bSByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi8qIExhcmdlIFJlY3RhbmdsZSAqL1xuXG4udWlbY2xhc3MqPVwibGFyZ2UgcmVjdGFuZ2xlXCJdLmFkIHtcbiAgd2lkdGg6IDMzNnB4O1xuICBoZWlnaHQ6IDI4MHB4O1xufVxuXG4vKiBIYWxmIFBhZ2UgKi9cblxuLnVpW2NsYXNzKj1cImhhbGYgcGFnZVwiXS5hZCB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiA2MDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTcXVhcmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNxdWFyZSAqL1xuXG4udWkuc3F1YXJlLmFkIHtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuXG4vKiBTbWFsbCBTcXVhcmUgKi9cblxuLnVpW2NsYXNzKj1cInNtYWxsIHNxdWFyZVwiXS5hZCB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlY3RhbmdsZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU21hbGwgUmVjdGFuZ2xlICovXG5cbi51aVtjbGFzcyo9XCJzbWFsbCByZWN0YW5nbGVcIl0uYWQge1xuICB3aWR0aDogMTgwcHg7XG4gIGhlaWdodDogMTUwcHg7XG59XG5cbi8qIFZlcnRpY2FsIFJlY3RhbmdsZSAqL1xuXG4udWlbY2xhc3MqPVwidmVydGljYWwgcmVjdGFuZ2xlXCJdLmFkIHtcbiAgd2lkdGg6IDI0MHB4O1xuICBoZWlnaHQ6IDQwMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJ1dHRvbi5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA5MHB4O1xufVxuXG4udWlbY2xhc3MqPVwic3F1YXJlIGJ1dHRvblwiXS5hZCB7XG4gIHdpZHRoOiAxMjVweDtcbiAgaGVpZ2h0OiAxMjVweDtcbn1cblxuLnVpW2NsYXNzKj1cInNtYWxsIGJ1dHRvblwiXS5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTa3lzY3JhcGVyc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU2t5c2NyYXBlciAqL1xuXG4udWkuc2t5c2NyYXBlci5hZCB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA2MDBweDtcbn1cblxuLyogV2lkZSBTa3lzY3JhcGVyICovXG5cbi51aVtjbGFzcyo9XCJ3aWRlIHNreXNjcmFwZXJcIl0uYWQge1xuICB3aWR0aDogMTYwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQmFubmVyc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogQmFubmVyICovXG5cbi51aS5iYW5uZXIuYWQge1xuICB3aWR0aDogNDY4cHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLyogVmVydGljYWwgQmFubmVyICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ0aWNhbCBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMjQwcHg7XG59XG5cbi8qIFRvcCBCYW5uZXIgKi9cblxuLnVpW2NsYXNzKj1cInRvcCBiYW5uZXJcIl0uYWQge1xuICB3aWR0aDogOTMwcHg7XG4gIGhlaWdodDogMTgwcHg7XG59XG5cbi8qIEhhbGYgQmFubmVyICovXG5cbi51aVtjbGFzcyo9XCJoYWxmIGJhbm5lclwiXS5hZCB7XG4gIHdpZHRoOiAyMzRweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQm9hcmRzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMZWFkZXJib2FyZCAqL1xuXG4udWlbY2xhc3MqPVwibGFyZ2UgbGVhZGVyYm9hcmRcIl0uYWQge1xuICB3aWR0aDogOTcwcHg7XG4gIGhlaWdodDogOTBweDtcbn1cblxuLyogQmlsbGJvYXJkICovXG5cbi51aS5iaWxsYm9hcmQuYWQge1xuICB3aWR0aDogOTcwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQYW5vcmFtYVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogUGFub3JhbWEgKi9cblxuLnVpLnBhbm9yYW1hLmFkIHtcbiAgd2lkdGg6IDk4MHB4O1xuICBoZWlnaHQ6IDEyMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE5ldGJvYXJkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBOZXRib2FyZCAqL1xuXG4udWkubmV0Ym9hcmQuYWQge1xuICB3aWR0aDogNTgwcHg7XG4gIGhlaWdodDogNDAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTW9iaWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBMYXJnZSBNb2JpbGUgQmFubmVyICovXG5cbi51aVtjbGFzcyo9XCJsYXJnZSBtb2JpbGUgYmFubmVyXCJdLmFkIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuXG4vKiBNb2JpbGUgTGVhZGVyYm9hcmQgKi9cblxuLnVpW2NsYXNzKj1cIm1vYmlsZSBsZWFkZXJib2FyZFwiXS5hZCB7XG4gIHdpZHRoOiAzMjBweDtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBNb2JpbGUgU2l6ZXMgKi9cblxuLnVpLm1vYmlsZS5hZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLm1vYmlsZS5hZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmNlbnRlcmVkLmFkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnVpLnRlc3QuYWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG59XG5cbi51aS50ZXN0LmFkOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBjb250ZW50OiAnQWQnO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkubW9iaWxlLnRlc3QuYWQ6YWZ0ZXIge1xuICBmb250LXNpemU6IDAuODU3MTRlbTtcbn1cblxuLnVpLnRlc3QuYWRbZGF0YS10ZXh0XTphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBJdGVtXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc3NcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIENhcmRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMjkwcHg7XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogMGVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjZDRkNGQ1LCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIHotaW5kZXg6ICcnO1xufVxuXG4udWkuY2FyZCB7XG4gIG1hcmdpbjogMWVtIDBlbTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgYSxcbi51aS5jYXJkIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5jYXJkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuY2FyZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBDYXJkc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogLTAuODc1ZW0gLTAuNWVtO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAuODc1ZW0gMC41ZW07XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiBDbGVhcmluZyAqL1xuXG4udWkuY2FyZHM6YWZ0ZXIsXG4udWkuY2FyZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBDb25zZWN1dGl2ZSBDYXJkIEdyb3VwcyBQcmVzZXJ2ZSBSb3cgU3BhY2luZyAqL1xuXG4udWkuY2FyZHMgfiAudWkuY2FyZHMge1xuICBtYXJnaW4tdG9wOiAwLjg3NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIFJvdW5kZWQgRWRnZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gOmZpcnN0LWNoaWxkLFxuLnVpLmNhcmQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMGVtIDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IDpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSxcbi51aS5jYXJkID4gLmltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMGVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5pbWFnZSA+IGltZyxcbi51aS5jYXJkID4gLmltYWdlID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwZW0gMGVtO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmltYWdlOm9ubHktY2hpbGQgPiBpbWcsXG4udWkuY2FyZCA+IC5pbWFnZTpvbmx5LWNoaWxkID4gaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50LFxuLnVpLmNhcmQgPiAuY29udGVudCB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMWVtIDFlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMGVtO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50OmFmdGVyLFxuLnVpLmNhcmQgPiAuY29udGVudDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLyogRGVmYXVsdCBIZWFkZXIgU2l6ZSAqL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlcjpub3QoLnVpKSxcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIG1hcmdpbi10b3A6IC0wLjE2NWVtO1xuICBsaW5lLWhlaWdodDogMS4zM2VtO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLm1ldGEgKyAuZGVzY3JpcHRpb24sXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gLmhlYWRlciArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAubWV0YSArIC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuaGVhZGVyICsgLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJsZWZ0IGZsb2F0ZWRcIl0ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdLFxuLnVpLmNhcmQgW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSxcbi51aS5jYXJkIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0sXG4udWkuY2FyZCBbY2xhc3MqPVwicmlnaHQgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIENvbnRlbnQgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkIC5jb250ZW50IGltZyxcbi51aS5jYXJkIC5jb250ZW50IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIGltZy5hdmF0YXIsXG4udWkuY2FyZHMgPiAuY2FyZCAuYXZhdGFyIGltZyxcbi51aS5jYXJkIGltZy5hdmF0YXIsXG4udWkuY2FyZCAuYXZhdGFyIGltZyB7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZXNjcmlwdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCA+IC5kZXNjcmlwdGlvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiAuZGVzY3JpcHRpb24ge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCBwLFxuLnVpLmNhcmQgPiAuY29udGVudCBwIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCxcbi51aS5jYXJkID4gLmNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSxcbi51aS5jYXJkIC5tZXRhIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgLm1ldGEgKixcbi51aS5jYXJkIC5tZXRhICoge1xuICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSA6bGFzdC1jaGlsZCxcbi51aS5jYXJkIC5tZXRhIDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkIC5tZXRhIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLFxuLnVpLmNhcmQgLm1ldGEgW2NsYXNzKj1cInJpZ2h0IGZsb2F0ZWRcIl0ge1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuM2VtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogR2VuZXJpYyAqL1xuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IGE6bm90KC51aSksXG4udWkuY2FyZCA+IC5jb250ZW50IGE6bm90KC51aSkge1xuICBjb2xvcjogJyc7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgYTpub3QoLnVpKTpob3ZlciB7XG4gIGNvbG9yOiAnJztcbn1cblxuLyogSGVhZGVyICovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlcixcbi51aS5jYXJkID4gLmNvbnRlbnQgPiBhLmhlYWRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50ID4gYS5oZWFkZXI6aG92ZXIsXG4udWkuY2FyZCA+IC5jb250ZW50ID4gYS5oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogIzAwYjJmMztcbn1cblxuLyogTWV0YSAqL1xuXG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSA+IGE6bm90KC51aSksXG4udWkuY2FyZCAubWV0YSA+IGE6bm90KC51aSkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCAubWV0YSA+IGE6bm90KC51aSk6aG92ZXIsXG4udWkuY2FyZCAubWV0YSA+IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmJ1dHRvbnM6bGFzdC1jaGlsZCxcbi51aS5jYXJkID4gLmJ1dHRvbnM6bGFzdC1jaGlsZCxcbi51aS5jYXJkcyA+IC5jYXJkID4gLmJ1dHRvbjpsYXN0LWNoaWxkLFxuLnVpLmNhcmQgPiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW46IDBlbSAwZW0gLTFweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpbW1lclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgLmRpbW1lcixcbi51aS5jYXJkIC5kaW1tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAnJztcbiAgei1pbmRleDogMTA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgTGFiZWxzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLS0tU3Rhci0tLS0tICovXG5cbi8qIEljb24gKi9cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuc3Rhci5pY29uLFxuLnVpLmNhcmQgPiAuY29udGVudCAuc3Rhci5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjc1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG4udWkuY2FyZHMgPiAuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb246aG92ZXIsXG4udWkuY2FyZCA+IC5jb250ZW50IC5zdGFyLmljb246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI2ZmYjcwYTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAuYWN0aXZlLnN0YXIuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5zdGFyLmljb24ge1xuICBjb2xvcjogI2ZmZTYyMztcbn1cblxuLyotLS0tLUxpa2UtLS0tLSAqL1xuXG4vKiBJY29uICovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbixcbi51aS5jYXJkID4gLmNvbnRlbnQgLmxpa2UuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyLFxuLnVpLmNhcmQgPiAuY29udGVudCAubGlrZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNmZjI3MzM7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmNvbnRlbnQgLmFjdGl2ZS5saWtlLmljb24sXG4udWkuY2FyZCA+IC5jb250ZW50IC5hY3RpdmUubGlrZS5pY29uIHtcbiAgY29sb3I6ICNmZjI3MzM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLVxuICBFeHRyYSBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmV4dHJhLFxuLnVpLmNhcmQgPiAuZXh0cmEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDBlbSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMDtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDA7XG4gIGZsZXgtZ3JvdzogMDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMGVtIDBlbTtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51aS5jYXJkcyA+IC5jYXJkID4gLmV4dHJhIGE6bm90KC51aSksXG4udWkuY2FyZCA+IC5leHRyYSBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLmNhcmRzID4gLmNhcmQgPiAuZXh0cmEgYTpub3QoLnVpKTpob3Zlcixcbi51aS5jYXJkID4gLmV4dHJhIGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogIzAwYjJmMztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5jYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTk5OXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2FyZHMgYS5jYXJkOmhvdmVyLFxuLnVpLmxpbmsuY2FyZHMgLmNhcmQ6aG92ZXIsXG5hLnVpLmNhcmQ6aG92ZXIsXG4udWkubGluay5jYXJkOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA1O1xuICBiYWNrZ3JvdW5kOiAnJztcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggI2JlYmViZiwgMHB4IDBweCAwcHggMXB4IHJnYmEoMzksIDQxLCA0MywgMC4zKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ibGFjay5jYXJkcyA+IC5jYXJkLFxuLnVpLmNhcmRzID4gLmJsYWNrLmNhcmQsXG4udWkuYmxhY2suY2FyZCB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjMWIxYzFkLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLmJsdWUuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5ibHVlLmNhcmQsXG4udWkuYmx1ZS5jYXJkIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICMzYjgzYzAsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkuZ3JlZW4uY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5ncmVlbi5jYXJkLFxuLnVpLmdyZWVuLmNhcmQge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggIzJkYjQ3NSwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi51aS5vcmFuZ2UuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5vcmFuZ2UuY2FyZCxcbi51aS5vcmFuZ2UuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjZTA3YjUzLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLnBpbmsuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5waW5rLmNhcmQsXG4udWkucGluay5jYXJkIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICNkOTQ5OWEsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkucHVycGxlLmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAucHVycGxlLmNhcmQsXG4udWkucHVycGxlLmNhcmQge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggIzU2NGY4YSwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi51aS5yZWQuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC5yZWQuY2FyZCxcbi51aS5yZWQuY2FyZCB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjY2MxODFlLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLnRlYWwuY2FyZHMgPiAuY2FyZCxcbi51aS5jYXJkcyA+IC50ZWFsLmNhcmQsXG4udWkudGVhbC5jYXJkIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICMwMGI1YWQsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkueWVsbG93LmNhcmRzID4gLmNhcmQsXG4udWkuY2FyZHMgPiAueWVsbG93LmNhcmQsXG4udWkueWVsbG93LmNhcmQge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggI2YyYzYxZiwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5ibGFjay5jYXJkcyA+IC5jYXJkOmhvdmVyLFxuLnVpLmNhcmRzID4gLmJsYWNrLmNhcmQ6aG92ZXIsXG4udWkuYmxhY2suY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjMWIxYzFkLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLmJsdWUuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5ibHVlLmNhcmQ6aG92ZXIsXG4udWkuYmx1ZS5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICM0NThhYzYsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkuZ3JlZW4uY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5ncmVlbi5jYXJkOmhvdmVyLFxuLnVpLmdyZWVuLmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggIzMwYzA3ZCwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi51aS5vcmFuZ2UuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5vcmFuZ2UuY2FyZDpob3Zlcixcbi51aS5vcmFuZ2UuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjZTI4NTYwLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLnBpbmsuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5waW5rLmNhcmQ6aG92ZXIsXG4udWkucGluay5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICNkYzU2YTEsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkucHVycGxlLmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAucHVycGxlLmNhcmQ6aG92ZXIsXG4udWkucHVycGxlLmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggIzVjNTU5NCwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi51aS5yZWQuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC5yZWQuY2FyZDpob3Zlcixcbi51aS5yZWQuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMHB4IDBweCAjZGExYTIwLCAwcHggMHB4IDBweCAxcHggI2Q0ZDRkNTtcbn1cblxuLnVpLnRlYWwuY2FyZHMgPiAuY2FyZDpob3Zlcixcbi51aS5jYXJkcyA+IC50ZWFsLmNhcmQ6aG92ZXIsXG4udWkudGVhbC5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAwcHggMHB4ICMwMGM0YmMsIDBweCAwcHggMHB4IDFweCAjZDRkNGQ1O1xufVxuXG4udWkueWVsbG93LmNhcmRzID4gLmNhcmQ6aG92ZXIsXG4udWkuY2FyZHMgPiAueWVsbG93LmNhcmQ6aG92ZXIsXG4udWkueWVsbG93LmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDBweCAwcHggI2YzY2EyZCwgMHB4IDBweCAwcHggMXB4ICNkNGQ0ZDU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIENhcmQgQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5vbmUuY2FyZHMge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbn1cblxuLnVpLm9uZS5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS50d28uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xufVxuXG4udWkudHdvLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCA1MCUgIC0gIDJlbSApO1xuICB3aWR0aDogY2FsYyggNTAlICAtICAyZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbi51aS50d28uY2FyZHMgPiAuY2FyZDpudGgtY2hpbGQoMm4rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cblxuLnVpLnRocmVlLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gIG1hcmdpbi1yaWdodDogLTFlbTtcbn1cblxuLnVpLnRocmVlLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCAzMy4zMzMzMzMzMyUgIC0gIDJlbSApO1xuICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbi51aS50aHJlZS5jYXJkcyA+IC5jYXJkOm50aC1jaGlsZCgzbisxKSB7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4udWkuZm91ci5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjc1ZW07XG59XG5cbi51aS5mb3VyLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCAyNSUgIC0gIDEuNWVtICk7XG4gIHdpZHRoOiBjYWxjKCAyNSUgIC0gIDEuNWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogMC43NWVtO1xufVxuXG4udWkuZm91ci5jYXJkcyA+IC5jYXJkOm50aC1jaGlsZCg0bisxKSB7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4udWkuZml2ZS5jYXJkcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjc1ZW07XG59XG5cbi51aS5maXZlLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCAyMCUgIC0gIDEuNWVtICk7XG4gIHdpZHRoOiBjYWxjKCAyMCUgIC0gIDEuNWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogMC43NWVtO1xufVxuXG4udWkuZml2ZS5jYXJkcyA+IC5jYXJkOm50aC1jaGlsZCg1bisxKSB7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4udWkuc2l4LmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbn1cblxuLnVpLnNpeC5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYyggMTYuNjY2NjY2NjclICAtICAxLjVlbSApO1xuICB3aWR0aDogY2FsYyggMTYuNjY2NjY2NjclICAtICAxLjVlbSApO1xuICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbn1cblxuLnVpLnNpeC5jYXJkcyA+IC5jYXJkOm50aC1jaGlsZCg2bisxKSB7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4udWkuc2V2ZW4uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cblxuLnVpLnNldmVuLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCAxNC4yODU3MTQyOSUgIC0gIDFlbSApO1xuICB3aWR0aDogY2FsYyggMTQuMjg1NzE0MjklICAtICAxZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkuc2V2ZW4uY2FyZHMgPiAuY2FyZDpudGgtY2hpbGQoN24rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cblxuLnVpLmVpZ2h0LmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41ZW07XG59XG5cbi51aS5laWdodC5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYyggMTIuNSUgIC0gIDFlbSApO1xuICB3aWR0aDogY2FsYyggMTIuNSUgIC0gIDFlbSApO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuLnVpLmVpZ2h0LmNhcmRzID4gLmNhcmQ6bnRoLWNoaWxkKDhuKzEpIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cbi51aS5uaW5lLmNhcmRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41ZW07XG59XG5cbi51aS5uaW5lLmNhcmRzID4gLmNhcmQge1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKCAxMS4xMTExMTExMSUgIC0gIDFlbSApO1xuICB3aWR0aDogY2FsYyggMTEuMTExMTExMTElICAtICAxZW0gKTtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi51aS5uaW5lLmNhcmRzID4gLmNhcmQ6bnRoLWNoaWxkKDluKzEpIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cbi51aS50ZW4uY2FyZHMge1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbn1cblxuLnVpLnRlbi5jYXJkcyA+IC5jYXJkIHtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYyggMTAlICAtICAxZW0gKTtcbiAgd2lkdGg6IGNhbGMoIDEwJSAgLSAgMWVtICk7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cblxuLnVpLnRlbi5jYXJkcyA+IC5jYXJkOm50aC1jaGlsZCgxMG4rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICBEb3VibGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNb2JpbHkgT25seSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS50d28uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIH1cblxuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnRocmVlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkudGhyZWUuZG91YmxpbmcuY2FyZHMgLmNhcmQge1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5mb3VyLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZm91ci5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggNTAlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggNTAlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmZpdmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIHdpZHRoOiBjYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuc2l4LmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIHdpZHRoOiBjYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuc2V2ZW4uZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgfVxuXG4gIC51aS5zZXZlbi5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgLmNhcmQge1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoIDMzLjMzMzMzMzMzJSAgLSAgMmVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDMzLjMzMzMzMzMzJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5uaW5lLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkubmluZS5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG59XG5cbi8qIFRhYmxldCBPbmx5ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudWkudHdvLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogMGVtO1xuICAgIG1hcmdpbi1yaWdodDogMGVtO1xuICB9XG5cbiAgLnVpLnR3by5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDBlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgfVxuXG4gIC51aS50aHJlZS5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG5cbiAgLnVpLnRocmVlLmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIHdpZHRoOiBjYWxjKCA1MCUgIC0gIDJlbSApO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAudWkuZm91ci5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG5cbiAgLnVpLmZvdXIuZG91YmxpbmcuY2FyZHMgLmNhcmQge1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDUwJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5maXZlLmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZml2ZS5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLnNpeC5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICB9XG5cbiAgLnVpLnNpeC5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICB3aWR0aDogY2FsYyggMzMuMzMzMzMzMzMlICAtICAyZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG5cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIHtcbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIH1cblxuICAudWkuZWlnaHQuZG91YmxpbmcuY2FyZHMgLmNhcmQge1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoIDMzLjMzMzMzMzMzJSAgLSAgMmVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDMzLjMzMzMzMzMzJSAgLSAgMmVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuXG4gIC51aS5laWdodC5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xuICB9XG5cbiAgLnVpLmVpZ2h0LmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKCAyNSUgIC0gIDEuNWVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDI1JSAgLSAgMS41ZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG5cbiAgLnVpLm5pbmUuZG91YmxpbmcuY2FyZHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcbiAgfVxuXG4gIC51aS5uaW5lLmRvdWJsaW5nLmNhcmRzIC5jYXJkIHtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKCAyNSUgIC0gIDEuNWVtICk7XG4gICAgd2lkdGg6IGNhbGMoIDI1JSAgLSAgMS41ZW0gKTtcbiAgICBtYXJnaW4tbGVmdDogMC43NWVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43NWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC43NWVtO1xuICB9XG5cbiAgLnVpLnRlbi5kb3VibGluZy5jYXJkcyAuY2FyZCB7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYyggMjAlICAtICAxLjVlbSApO1xuICAgIHdpZHRoOiBjYWxjKCAyMCUgIC0gIDEuNWVtICk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFN0YWNrYWJsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zdGFja2FibGUuY2FyZHMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkuc3RhY2thYmxlLmNhcmRzIC5jYXJkOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5zdGFja2FibGUuY2FyZHMgPiAuY2FyZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDFlbSAxZW07XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoIDEwMCUgIC0gIDJlbSApICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGNhbGMoIDEwMCUgIC0gIDJlbSApICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNhcmRzID4gLmNhcmQge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBDb21tZW50XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc3NcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhbmRhcmRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiAxLjVlbSAwZW07XG4gIG1heC13aWR0aDogNjUwcHg7XG59XG5cbi51aS5jb21tZW50czpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmNvbW1lbnRzOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29tbWVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAuNWVtIDBlbSAwZW07XG4gIHBhZGRpbmc6IDAuNWVtIDBlbSAwZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBwYWRkaW5nLXRvcDogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgTmVzdGVkIENvbW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtIDAuNWVtO1xuICBwYWRkaW5nOiAxZW0gMGVtIDFlbSAxZW07XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuY29tbWVudHM6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmNvbW1lbnRzIC5jb21tZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hdmF0YXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAuMmVtIDBlbSAwZW07XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCBpbWcuYXZhdGFyLFxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hdmF0YXIgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogSWYgdGhlcmUgaXMgYW4gYXZhdGFyIG1vdmUgY29udGVudCBvdmVyICovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCA+IC5hdmF0YXIgfiAuY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAzLjVlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBdXRob3Jcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyAuY29tbWVudCAuYXV0aG9yIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgYS5hdXRob3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCBhLmF1dGhvcjpob3ZlciB7XG4gIGNvbG9yOiAjMDBiMmYzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIE1ldGFkYXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLm1ldGFkYXRhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5tZXRhZGF0YSA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwZW07XG59XG5cbi51aS5jb21tZW50cyAuY29tbWVudCAubWV0YWRhdGEgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIENvbW1lbnQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC50ZXh0IHtcbiAgbWFyZ2luOiAwLjI1ZW0gMGVtIDAuNWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFVzZXIgQWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbSAwLjc1ZW0gMGVtIDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLmNvbW1lbnRzIC5jb21tZW50IC5hY3Rpb25zIGE6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYS5hY3RpdmUsXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLmFjdGlvbnMgYTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIFJlcGx5IEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21tZW50cyA+IC5yZXBseS5mb3JtIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4udWkuY29tbWVudHMgLmNvbW1lbnQgLnJlcGx5LmZvcm0ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4udWkuY29tbWVudHMgLnJlcGx5LmZvcm0gdGV4dGFyZWEge1xuICBmb250LXNpemU6IDFlbTtcbiAgaGVpZ2h0OiAxMmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jb2xsYXBzZWQuY29tbWVudHMsXG4udWkuY29tbWVudHMgLmNvbGxhcHNlZC5jb21tZW50cyxcbi51aS5jb21tZW50cyAuY29sbGFwc2VkLmNvbW1lbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFRocmVhZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGhyZWFkZWQuY29tbWVudHMgLmNvbW1lbnQgLmNvbW1lbnRzIHtcbiAgbWFyZ2luOiAtMS41ZW0gMCAtMWVtIDEuMjVlbTtcbiAgcGFkZGluZzogM2VtIDBlbSAyZW0gMi4yNWVtO1xuICBib3gtc2hhZG93OiAtMXB4IDBweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBNaW5pbWFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubWluaW1hbC5jb21tZW50cyAuY29tbWVudCAuYWN0aW9ucyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGxlZnQ6IGF1dG87XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi51aS5taW5pbWFsLmNvbW1lbnRzIC5jb21tZW50ID4gLmNvbnRlbnQ6aG92ZXIgPiAuYWN0aW9ucyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNtYWxsLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnVpLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi51aS5sYXJnZS5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG59XG5cbi51aS5odWdlLmNvbW1lbnRzIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBVc2VyIFZhcmlhYmxlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBGZWVkXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc3NcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgQWN0aXZpdHkgRmVlZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmZlZWQge1xuICBtYXJnaW46IDFlbSAwZW07XG59XG5cbi51aS5mZWVkOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuZmVlZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRXZlbnQgKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNXJlbSAwZW07XG4gIG1hcmdpbjogMGVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDBweDtcbiAgcGFkZGluZy10b3A6IDBlbTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG59XG5cbi8qIEV2ZW50IExhYmVsICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmxhYmVsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IDIuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCAuaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1ZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAubGFiZWwgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5sYWJlbCArIC5jb250ZW50IHtcbiAgcGFkZGluZzogMC41ZW0gMGVtIDAuNWVtIDEuMjVlbTtcbn1cblxuLyogQ29udGVudCAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudDpsYXN0LWNoaWxkID4gLmNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMGVtO1xufVxuXG4vKiBMaW5rICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuZGF0ZSB7XG4gIG1hcmdpbjogLTAuNXJlbSAwZW0gMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3VtbWFyeVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSB7XG4gIG1hcmdpbjogMGVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIFN1bW1hcnkgSW1hZ2UgKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAuc3VtbWFyeSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDJlbTtcbiAgbWFyZ2luOiAtMC4yNWVtIDAuMjVlbSAwZW0gMGVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFVzZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLnVzZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tcmlnaHQ6IDBlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC51c2VyIGltZyB7XG4gIG1hcmdpbjogLTAuMjVlbSAwLjI1ZW0gMGVtIDBlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBJbmxpbmUgRGF0ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGF0ZSBpbnNpZGUgU3VtbWFyeSAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5zdW1tYXJ5ID4gLmRhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwLjVlbTtcbiAgcGFkZGluZzogMGVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIEV4dHJhIFN1bW1hcnlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLmV4dHJhIHtcbiAgbWFyZ2luOiAwLjVlbSAwZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIEltYWdlcyAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS5pbWFnZXMgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDBlbSAwLjI1ZW0gMGVtIDBlbTtcbiAgd2lkdGg6IDZlbTtcbn1cblxuLyogVGV4dCAqL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5leHRyYS50ZXh0IHtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBNZXRhXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIG1hcmdpbjogMC41ZW0gMGVtIDBlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogMC43NWVtO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhID4gKjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB0b3A6IDBlbTtcbiAgbGVmdDogLTFlbTtcbiAgb3BhY2l0eTogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5saWtlIHtcbiAgY29sb3I6ICcnO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgY29sb3IgZWFzZTtcbiAgdHJhbnNpdGlvbjogMC4ycyBjb2xvciBlYXNlO1xufVxuXG4udWkuZmVlZCA+IC5ldmVudCA+IC5jb250ZW50IC5tZXRhIC5saWtlOmhvdmVyIC5pY29uIHtcbiAgY29sb3I6ICNmZjI3MzM7XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgLmFjdGl2ZS5saWtlIC5pY29uIHtcbiAgY29sb3I6ICNlZjQwNGE7XG59XG5cbi8qIEZpcnN0IGVsZW1lbnQgKi9cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG59XG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiA6Zmlyc3QtY2hpbGQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQWN0aW9uICovXG5cbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgYSxcbi51aS5mZWVkID4gLmV2ZW50ID4gLmNvbnRlbnQgLm1ldGEgPiAuaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSBhOmhvdmVyLFxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSBhOmhvdmVyIC5pY29uLFxuLnVpLmZlZWQgPiAuZXZlbnQgPiAuY29udGVudCAubWV0YSA+IC5pY29uOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zbWFsbC5mZWVkIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnVpLmZlZWQge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmxhcmdlLmZlZWQge1xuICBmb250LXNpemU6IDEuMWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFVzZXIgVmFyaWFibGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIEl0ZW1cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3Jzc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGFuZGFyZFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSXRlbVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0ge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMGVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICB6LWluZGV4OiAnJztcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSXRlbXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyB7XG4gIG1hcmdpbjogMWVtIDA7XG59XG5cbi51aS5pdGVtczpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkuaXRlbXM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBJdGVtXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSB7XG4gIG1pbi13aWR0aDogMTAwJTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW06YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDBweDtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIG1heC1oZWlnaHQ6ICcnO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZTpvbmx5LWNoaWxkID4gaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnICc7XG4gIGhlaWdodDogMHB4O1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1hcmdpbi1sZWZ0OiAwZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogLTAuMTY1ZW0gMGVtIDBlbTtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4vKiBEZWZhdWx0IEhlYWRlciBTaXplICovXG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgPiAuaGVhZGVyOm5vdCgudWkpIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbG9hdGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIENvbnRlbnQgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIC5jb250ZW50IGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAnJztcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gaW1nLmF2YXRhcixcbi51aS5pdGVtcyA+IC5pdGVtIC5hdmF0YXIgaW1nIHtcbiAgd2lkdGg6ICcnO1xuICBoZWlnaHQ6ICcnO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIERlc2NyaXB0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC42ZW07XG4gIG1heC13aWR0aDogNTUwcHg7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS4zMztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFBhcmFncmFwaFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBwIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWV0YVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEge1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgKiB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhIDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5tZXRhIFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEdlbmVyaWMgKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCBhOm5vdCgudWkpIHtcbiAgY29sb3I6ICcnO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IGE6bm90KC51aSk6aG92ZXIge1xuICBjb2xvcjogJyc7XG59XG5cbi8qIEhlYWRlciAqL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50ID4gYS5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuY29udGVudCA+IGEuaGVhZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMwMGIyZjM7XG59XG5cbi8qIE1ldGEgKi9cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgPiBhOm5vdCgudWkpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gLm1ldGEgPiBhOm5vdCgudWkpOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBMYWJlbHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tLS1TdGFyLS0tLS0gKi9cblxuLyogSWNvbiAqL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5mYXZvcml0ZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjc1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5mYXZvcml0ZS5pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNmZmI3MGE7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmFjdGl2ZS5mYXZvcml0ZS5pY29uIHtcbiAgY29sb3I6ICNmZmU2MjM7XG59XG5cbi8qLS0tLS1MaWtlLS0tLS0gKi9cblxuLyogSWNvbiAqL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5saWtlLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmNvbnRlbnQgLmxpa2UuaWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjZmYyNzMzO1xufVxuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5jb250ZW50IC5hY3RpdmUubGlrZS5pY29uIHtcbiAgY29sb3I6ICNmZjI3MzM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLVxuICBFeHRyYSBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMC41cmVtIDBlbSAwZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbTtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gLmV4dHJhID4gKiB7XG4gIG1hcmdpbjogMC4yNXJlbSAwLjVyZW0gMC4yNXJlbSAwZW07XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtIC5leHRyYSA+IFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgbWFyZ2luOiAwLjI1cmVtIDBlbSAwLjI1cmVtIDAuNXJlbTtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gLmV4dHJhOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgUmVzcG9uc2l2ZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRGVmYXVsdCBJbWFnZSBXaWR0aCAqL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZTpub3QoLnVpKSB7XG4gIHdpZHRoOiAxNzVweDtcbn1cblxuLyogVGFibGV0IE9ubHkgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC51aS5pdGVtcyA+IC5pdGVtIHtcbiAgICBtYXJnaW46IDFlbSAwZW07XG4gIH1cblxuICAudWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZTpub3QoLnVpKSB7XG4gICAgd2lkdGg6IDE1MHB4O1xuICB9XG5cbiAgLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyAuY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMGVtIDBlbSAwZW0gMWVtO1xuICB9XG59XG5cbi8qIE1vYmlseSBPbmx5ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLml0ZW1zID4gLml0ZW0ge1xuICAgIG1hcmdpbjogMmVtIDBlbTtcbiAgfVxuXG4gIC51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAudWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSxcbiAgLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgPiBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogMjUwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuNWVtIDBlbSAwZW07XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgPiAuaXRlbSA+IC5pbWFnZSArIFtjbGFzcyo9XCJ0b3AgYWxpZ25lZFwiXS5jb250ZW50IHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLml0ZW1zID4gLml0ZW0gPiAuaW1hZ2UgKyBbY2xhc3MqPVwibWlkZGxlIGFsaWduZWRcIl0uY29udGVudCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5pdGVtcyA+IC5pdGVtID4gLmltYWdlICsgW2NsYXNzKj1cImJvdHRvbSBhbGlnbmVkXCJdLmNvbnRlbnQge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFJlbGF4ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5yZWxheGVkLml0ZW1zID4gLml0ZW0ge1xuICBtYXJnaW46IDEuNWVtIDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgcmVsYXhlZFwiXS5pdGVtcyA+IC5pdGVtIHtcbiAgbWFyZ2luOiAyZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgIERpdmlkZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMWVtIDBlbTtcbn1cblxuLnVpLmRpdmlkZWQuaXRlbXMgPiAuaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDBlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXRvcDogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5kaXZpZGVkLml0ZW1zID4gLml0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJlbGF4ZWQgRGl2aWRlZCAqL1xuXG4udWkucmVsYXhlZC5kaXZpZGVkLml0ZW1zID4gLml0ZW0ge1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMS41ZW0gMGVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSByZWxheGVkXCJdLmRpdmlkZWQuaXRlbXMgPiAuaXRlbSB7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAyZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaXRlbXMgYS5pdGVtOmhvdmVyLFxuLnVpLmxpbmsuaXRlbXMgPiAuaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVpLml0ZW1zIGEuaXRlbTpob3ZlciAuY29udGVudCAuaGVhZGVyLFxuLnVpLmxpbmsuaXRlbXMgPiAuaXRlbTpob3ZlciAuY29udGVudCAuaGVhZGVyIHtcbiAgY29sb3I6ICMwMGIyZjM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpemVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pdGVtcyA+IC5pdGVtIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gU3RhdGlzdGljXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc3NcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBTdGF0aXN0aWNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFN0YW5kYWxvbmUgKi9cblxuLnVpLnN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICBtYXgtd2lkdGg6IDE3NXB4O1xufVxuXG4udWkuc3RhdGlzdGljICsgLnVpLnN0YXRpc3RpYyB7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMWVtO1xufVxuXG4udWkuc3RhdGlzdGljOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuc3RhdGlzdGljOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwZW07XG59XG5cbi8qIEdyb3VwZWQgKi9cblxuLnVpLnN0YXRpc3RpY3MgPiAuc3RhdGlzdGljIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDBlbSAxZW0gMmVtO1xuICBtYXgtd2lkdGg6IDE3NXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgR3JvdXBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zdGF0aXN0aWNzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMWVtIC0xZW07XG59XG5cbi8qIENsZWFyaW5nICovXG5cbi51aS5zdGF0aXN0aWNzOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAwcHg7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51aS5zdGF0aXN0aWNzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuc3RhdGlzdGljczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBjb2xvcjogIzFiMWMxZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLmxhYmVsLFxuLnVpLnN0YXRpc3RpYyA+IC5sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogVG9wIExhYmVsICovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwgfiAudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLmxhYmVsIH4gLnZhbHVlIHtcbiAgbWFyZ2luLXRvcDogMHJlbTtcbn1cblxuLyogQm90dG9tIExhYmVsICovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUgfiAubGFiZWwsXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIH4gLmxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgSWNvbiBWYWx1ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSAuaWNvbixcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUgLmljb24ge1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFRleHQgVmFsdWVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIG1pbi1oZWlnaHQ6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwsXG4udWkuc3RhdGlzdGljID4gLnRleHQudmFsdWUgKyAubGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEltYWdlIFZhbHVlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIGltZyxcbi51aS5zdGF0aXN0aWMgPiAudmFsdWUgaW1nIHtcbiAgbWF4LWhlaWdodDogM3JlbTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgSG9yaXpvbnRhbFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbTtcbiAgbWF4LXdpZHRoOiA5OTk5cHg7XG59XG5cbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDFlbSAwZW07XG4gIG1heC13aWR0aDogOTk5OXB4O1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgPiAuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBtaW4taGVpZ2h0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIC5pY29uIHtcbiAgd2lkdGg6IDEuMThlbTtcbn1cblxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAubGFiZWwsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC43NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJsdWUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMzYjgzYzA7XG59XG5cbi51aS5ncmVlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmdyZWVuLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjMmRiNDc1O1xufVxuXG4udWkub3JhbmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5vcmFuZ2Uuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLm9yYW5nZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI2UwN2I1Mztcbn1cblxuLnVpLnBpbmsuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNkOTQ5OWE7XG59XG5cbi51aS5wdXJwbGUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkucHVycGxlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjNTY0ZjhhO1xufVxuXG4udWkucmVkLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5yZWQuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnJlZC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLnRlYWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnRlYWwuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnRlYWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICMwMGI1YWQ7XG59XG5cbi51aS55ZWxsb3cuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkueWVsbG93LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjZjJjNjFmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXS5zdGF0aXN0aWMge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW0gMmVtIDFlbSAwZW07XG59XG5cbi51aVtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdLnN0YXRpc3RpYyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbSAyZW07XG59XG5cbi51aS5mbG9hdGVkLnN0YXRpc3RpYzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5zdGF0aXN0aWMgLnZhbHVlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC5zdGF0aXN0aWMgLmxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnVpLmludmVydGVkLmJsdWUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLmJsdWUuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICM1NGM4ZmY7XG59XG5cbi51aS5pbnZlcnRlZC5ncmVlbi5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljcyAuaW52ZXJ0ZWQuZ3JlZW4uc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLmdyZWVuLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjY2JlZGRkO1xufVxuXG4udWkuaW52ZXJ0ZWQub3JhbmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5vcmFuZ2Uuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLm9yYW5nZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI2ZmODUxYjtcbn1cblxuLnVpLmludmVydGVkLnBpbmsuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnBpbmsuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICNmZjhlZGY7XG59XG5cbi51aS5pbnZlcnRlZC5wdXJwbGUuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnB1cnBsZS5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQucHVycGxlLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjY2RjNmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5zdGF0aXN0aWNzIC5pbnZlcnRlZC5yZWQuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnJlZC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBjb2xvcjogI2ZmNjk1ZTtcbn1cblxuLnVpLmludmVydGVkLnRlYWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnRlYWwuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmludmVydGVkLnRlYWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgY29sb3I6ICM2ZGZmZmY7XG59XG5cbi51aS5pbnZlcnRlZC55ZWxsb3cuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnN0YXRpc3RpY3MgLmludmVydGVkLnllbGxvdy5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaW52ZXJ0ZWQueWVsbG93LnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGNvbG9yOiAjZmZlMjFmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNaW5pICovXG5cbi51aS5taW5pLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5taW5pLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4udWkubWluaS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5taW5pLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi51aS5taW5pLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLm1pbmkuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi8qIFRpbnkgKi9cblxuLnVpLnRpbnkuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnRpbnkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4udWkudGlueS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS50aW55Lmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4udWkudGlueS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS50aW55LnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKiBTbWFsbCAqL1xuXG4udWkuc21hbGwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLnNtYWxsLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4udWkuc21hbGwuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnRleHQudmFsdWUsXG4udWkuc21hbGwuc3RhdGlzdGljID4gLnRleHQudmFsdWUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLyogTWVkaXVtICovXG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiA0cmVtO1xufVxuXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudmFsdWUsXG4udWkuaG9yaXpvbnRhbC5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDNyZW07XG59XG5cbi51aS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuLyogTGFyZ2UgKi9cblxuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5sYXJnZS5zdGF0aXN0aWMgPiAudmFsdWUge1xuICBmb250LXNpemU6IDVyZW07XG59XG5cbi51aS5sYXJnZS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5sYXJnZS5ob3Jpem9udGFsLnN0YXRpc3RpYyA+IC52YWx1ZSB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbn1cblxuLnVpLmxhcmdlLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlLFxuLnVpLmxhcmdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG5cbi8qIEh1Z2UgKi9cblxuLnVpLmh1Z2Uuc3RhdGlzdGljcyAuc3RhdGlzdGljID4gLnZhbHVlLFxuLnVpLmh1Z2Uuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiA2cmVtO1xufVxuXG4udWkuaHVnZS5ob3Jpem9udGFsLnN0YXRpc3RpY3MgLnN0YXRpc3RpYyA+IC52YWx1ZSxcbi51aS5odWdlLmhvcml6b250YWwuc3RhdGlzdGljID4gLnZhbHVlIHtcbiAgZm9udC1zaXplOiA1cmVtO1xufVxuXG4udWkuaHVnZS5zdGF0aXN0aWNzIC5zdGF0aXN0aWMgPiAudGV4dC52YWx1ZSxcbi51aS5odWdlLnN0YXRpc3RpYyA+IC50ZXh0LnZhbHVlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgVXNlciBWYXJpYWJsZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gQWNjb3JkaW9uXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBBY2NvcmRpb25cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5hY2NvcmRpb24sXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24ge1xuICBtYXJnaW46IDFlbSAwZW0gMGVtO1xuICBwYWRkaW5nOiAwZW07XG59XG5cbi8qIFRpdGxlICovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlLFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogRGVmYXVsdCBTdHlsaW5nICovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlOm5vdCgudWkpIHtcbiAgcGFkZGluZzogMC41ZW0gMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogQ29udGVudCAqL1xuXG4udWkuYWNjb3JkaW9uIC50aXRsZSB+IC5jb250ZW50LFxuLnVpLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB+IC5jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogRGVmYXVsdCBTdHlsaW5nICovXG5cbi51aS5hY2NvcmRpb246bm90KC5zdHlsZWQpIC50aXRsZSB+IC5jb250ZW50Om5vdCgudWkpLFxuLnVpLmFjY29yZGlvbjpub3QoLnN0eWxlZCkgLmFjY29yZGlvbiAudGl0bGUgfiAuY29udGVudDpub3QoLnVpKSB7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwLjVlbSAwZW0gMWVtO1xufVxuXG4udWkuYWNjb3JkaW9uOm5vdCguc3R5bGVkKSAudGl0bGUgfiAuY29udGVudDpub3QoLnVpKTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDBlbTtcbn1cblxuLyogQXJyb3cgKi9cblxuLnVpLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb24sXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDEuMjVlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIG1hcmdpbjogMGVtIDAuMjVyZW0gMGVtIDByZW07XG4gIHBhZGRpbmc6IDBlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4ycyBlYXNlLCBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvdXBsaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNZW51ICovXG5cbi51aS5hY2NvcmRpb24ubWVudSAuaXRlbSAudGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMGVtO1xufVxuXG4udWkuYWNjb3JkaW9uLm1lbnUgLml0ZW0gLnRpdGxlID4gLmRyb3Bkb3duLmljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMC4xNjVlbSAwZW0gMGVtIDFlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuLyogSGVhZGVyICovXG5cbi51aS5hY2NvcmRpb24gLnVpLmhlYWRlciAuZHJvcGRvd24uaWNvbiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDBlbSAwLjI1cmVtIDBlbSAwcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUgLmRyb3Bkb3duLmljb24sXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLmFjdGl2ZS50aXRsZSAuZHJvcGRvd24uaWNvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi51aS5hY2NvcmRpb24ubWVudSAuaXRlbSAuYWN0aXZlLnRpdGxlID4gLmRyb3Bkb3duLmljb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3R5bGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3R5bGVkLmFjY29yZGlvbiB7XG4gIHdpZHRoOiA2MDBweDtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24sXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSksIDBweCAwcHggMHB4IDFweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAudGl0bGUsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZSB7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAwLjc1ZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gPiAudGl0bGU6Zmlyc3QtY2hpbGQsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC50aXRsZTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8qIENvbnRlbnQgKi9cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmNvbnRlbnQsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5jb250ZW50IHtcbiAgbWFyZ2luOiAwZW07XG4gIHBhZGRpbmc6IDAuNWVtIDFlbSAxLjVlbTtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAuY29udGVudCB7XG4gIHBhZGRpbmc6IDBlbTtcbiAgcGFkZGluZzogMC41ZW0gMWVtIDEuNWVtO1xufVxuXG4vKiBIb3ZlciAqL1xuXG4udWkuc3R5bGVkLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlLFxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAudGl0bGU6aG92ZXIsXG4udWkuc3R5bGVkLmFjY29yZGlvbiAuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5zdHlsZWQuYWNjb3JkaW9uIC5hY3RpdmUudGl0bGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLnN0eWxlZC5hY2NvcmRpb24gLmFjY29yZGlvbiAuYWN0aXZlLnRpdGxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWNjb3JkaW9uIC5hY3RpdmUuY29udGVudCxcbi51aS5hY2NvcmRpb24gLmFjY29yZGlvbiAuYWN0aXZlLmNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLmFjY29yZGlvbixcbi51aS5mbHVpZC5hY2NvcmRpb24gLmFjY29yZGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEludmVydGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQuYWNjb3JkaW9uIC50aXRsZTpub3QoLnVpKSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBY2NvcmRpb24nO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nZ2pCNUFBQUFDOEFBQUFZR050WVhBUGZPSUtBQUFCSEFBQUFFeG5ZWE53QUFBQUVBQUFBV2dBQUFBSVoyeDVacnlqNkhnQUFBRndBQUFBeUdobFlXVC8wSWhIQUFBQ09BQUFBRFpvYUdWaEFwa0I1d0FBQW5BQUFBQWthRzEwZUFKdUFCSUFBQUtVQUFBQUdHeHZZMkVBakFCV0FBQUNyQUFBQUE1dFlYaHdBQWdBRmdBQUFyd0FBQUFnYm1GdFpmQzFuMDRBQUFMY0FBQUJQSEJ2YzNRQUF3QUFBQUFFR0FBQUFDQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUR3MmdIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBRGdBQUFBS0FBZ0FBZ0FDQUFFQUlQRGEvLzMvL3dBQUFBQUFJUERaLy8zLy93QUIvK01QS3dBREFBRUFBQUFBQUFBQUFBQUFBQUVBQWYvL0FBOEFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQVNBRWtBdHdGdUFCTUFBRGMwUHdFMkZ6WVhGaDBCRkFjR0p3WXZBU1kxRWdhQUJRZ0hCUVlHQlFjSUJZQUcyd2NHZndjQkFRY0VDZjhJQkFjQkFRZC9CZ1lBQUFBQUFRQUFBRWtBcFFGdUFCTUFBRGNSTkRjMk16SWZBUllWRkE4QkJpTWlKeVkxQUFVR0J3Z0ZnQVlHZ0FVSUJ3WUZXd0VBQ0FVR0JvQUZDQWNGZ0FZR0JRY0FBQUFCQUFBQUFRQUFxV1lsczE4UFBQVUFDd0lBQUFBQUFNLzlvKzRBQUFBQXovMmo3Z0FBQUFBQXR3RnVBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBSGcvK0FBQUFJQUFBQUFBQUMzQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFHQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUMzQUJJQXR3QUFBQUFBQUFBS0FCUUFIZ0JDQUdRQUFBQUJBQUFBQmdBVUFBRUFBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFEQUFBQUFFQUFBQUFBQUlBRGdCQUFBRUFBQUFBQUFNQURBQWlBQUVBQUFBQUFBUUFEQUJPQUFFQUFBQUFBQVVBRmdBTUFBRUFBQUFBQUFZQUJnQXVBQUVBQUFBQUFBb0FOQUJhQUFNQUFRUUpBQUVBREFBQUFBTUFBUVFKQUFJQURnQkFBQU1BQVFRSkFBTUFEQUFpQUFNQUFRUUpBQVFBREFCT0FBTUFBUVFKQUFVQUZnQU1BQU1BQVFRSkFBWUFEQUEwQUFNQUFRUUpBQW9BTkFCYUFISUFZUUIwQUdrQWJnQm5BRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCeUFHRUFkQUJwQUc0QVozSmhkR2x1WndCeUFHRUFkQUJwQUc0QVp3QlNBR1VBWndCMUFHd0FZUUJ5QUhJQVlRQjBBR2tBYmdCbkFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFcIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUms5VVZFOEFBQVN3QUFvQUFBQUFCR2dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRSa1lnQUFBQTlBQUFBUzBBQUFFdEZwb3Z1RTlUTHpJQUFBSWtBQUFBWUFBQUFHQUlJd2VRWTIxaGNBQUFBb1FBQUFCTUFBQUFUQTk4NGdwbllYTndBQUFDMEFBQUFBZ0FBQUFJQUFBQUVHaGxZV1FBQUFMWUFBQUFOZ0FBQURiLzBJaEhhR2hsWVFBQUF4QUFBQUFrQUFBQUpBS1pBZWRvYlhSNEFBQUROQUFBQUJnQUFBQVlBbTRBRW0xaGVIQUFBQU5NQUFBQUJnQUFBQVlBQmxBQWJtRnRaUUFBQTFRQUFBRThBQUFCUFBDMW4wNXdiM04wQUFBRWtBQUFBQ0FBQUFBZ0FBTUFBQUVBQkFRQUFRRUJCM0poZEdsdVp3QUJBZ0FCQURyNEhBTDRHd1A0R0FRZUNnQVpVLytMaXg0S0FCbFQvNHVMREFlTGEvaVUrSFFGSFFBQUFIa1BIUUFBQUg0UkhRQUFBQWtkQUFBQkpCSUFCd0VCQncwUEVSUVpIbkpoZEdsdVozSmhkR2x1WjNVd2RURjFNakIxUmpCRU9YVkdNRVJCQUFBQ0FZa0FCQUFHQVFFRUJ3b05WcDM4bEE3OGxBNzhsQTc3bEE3NzNaMzNieFdMa0kyUWo0NEk5eFQzRkFXT2o1Q05rSXVRaTQrSmpvZVBpSTJHaTRZSWkvdVVCWXVHaVllSGlJaUhoNG1HaTRhTGhvMklqd2o3RlBjVUJZZU9pWStMa0FnTys5Mkw1aFdMOTVRRmk1Q05rSTZPajQrUGpaQ0xrSXVRaVk2SENQY1UreFFGajRpTmhvdUdpNGFKaDRlSUNQc1UreFFGaUllR2lZYUxob3VIalllUGlJNkpqNHVRQ0E3NGxCVDRsQldMREFvQUFBQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUR3MmdIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBRGdBQUFBS0FBZ0FBZ0FDQUFFQUlQRGEvLzMvL3dBQUFBQUFJUERaLy8zLy93QUIvK01QS3dBREFBRUFBQUFBQUFBQUFBQUFBQUVBQWYvL0FBOEFBUUFBQUFFQUFEZllPSlpmRHp6MUFBc0NBQUFBQUFEUC9hUHVBQUFBQU0vOW8rNEFBQUFBQUxjQmJnQUFBQWdBQWdBQUFBQUFBQUFCQUFBQjRQL2dBQUFDQUFBQUFBQUF0d0FCQUFBQUFBQUFBQUFBQUFBQUFBQUFCZ0FBQUFBQUFBQUFBQUFBQUFFQUFBQUF0d0FTQUxjQUFBQUFVQUFBQmdBQUFBQUFEZ0N1QUFFQUFBQUFBQUVBREFBQUFBRUFBQUFBQUFJQURnQkFBQUVBQUFBQUFBTUFEQUFpQUFFQUFBQUFBQVFBREFCT0FBRUFBQUFBQUFVQUZnQU1BQUVBQUFBQUFBWUFCZ0F1QUFFQUFBQUFBQW9BTkFCYUFBTUFBUVFKQUFFQURBQUFBQU1BQVFRSkFBSUFEZ0JBQUFNQUFRUUpBQU1BREFBaUFBTUFBUVFKQUFRQURBQk9BQU1BQVFRSkFBVUFGZ0FNQUFNQUFRUUpBQVlBREFBMEFBTUFBUVFKQUFvQU5BQmFBSElBWVFCMEFHa0FiZ0JuQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQnlBR0VBZEFCcEFHNEFaM0poZEdsdVp3QnlBR0VBZEFCcEFHNEFad0JTQUdVQVp3QjFBR3dBWVFCeUFISUFZUUIwQUdrQWJnQm5BRVlBYndCdUFIUUFJQUJuQUdVQWJnQmxBSElBWVFCMEFHVUFaQUFnQUdJQWVRQWdBRWtBWXdCdkFFMEFid0J2QUc0QUxnQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBXCIpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qIERyb3Bkb3duIEljb24gKi9cblxuLnVpLmFjY29yZGlvbiAudGl0bGUgLmRyb3Bkb3duLmljb24sXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uIHtcbiAgZm9udC1mYW1pbHk6IEFjY29yZGlvbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWkuYWNjb3JkaW9uIC50aXRsZSAuZHJvcGRvd24uaWNvbjpiZWZvcmUsXG4udWkuYWNjb3JkaW9uIC5hY2NvcmRpb24gLnRpdGxlIC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwZGEnIDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVXNlciBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5hY2NvcmRpb24gLnRpdGxlOm5vdCgudWkpIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnVpLmFjY29yZGlvbiAuZHJvcGRvd24uaWNvbiB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gQ2hlY2tib3hcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgQ2hlY2tib3hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMTdweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgbWluLXdpZHRoOiAxN3B4O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgQm94XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggLmJveCxcbi51aS5jaGVja2JveCBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMS43NWVtO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4udWkuY2hlY2tib3ggbGFiZWwge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnVpLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdpZHRoOiAxN3B4O1xuICBoZWlnaHQ6IDE3cHg7XG4gIHRvcDogMGVtO1xuICBsZWZ0OiAwZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UsIGJvcmRlciAwLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSwgYm9yZGVyIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNGQ0ZDU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDaGVja21hcmtcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGxhYmVsOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIExhYmVsXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbnNpZGUgKi9cblxuLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qIE91dHNpZGUgKi9cblxuLnVpLmNoZWNrYm94ICsgbGFiZWwge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEhvdmVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggLmJveDpob3Zlcjo6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG59XG5cbi51aS5jaGVja2JveCBsYWJlbDpob3Zlcixcbi51aS5jaGVja2JveCArIGxhYmVsOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRG93blxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmNoZWNrYm94IC5ib3g6YWN0aXZlOjpiZWZvcmUsXG4udWkuY2hlY2tib3ggbGFiZWw6YWN0aXZlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjMpO1xufVxuXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmFjdGl2ZSB+IGxhYmVsLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTphY3RpdmUgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIH4gLmJveDpiZWZvcmUsXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIH4gbGFiZWw6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG59XG5cbi51aS5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgfiBsYWJlbCxcbi51aS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgUmVhZC1Pbmx5XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucmVhZC1vbmx5LmNoZWNrYm94LFxuLnVpLnJlYWQtb25seS5jaGVja2JveCBsYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRpc2FibGVkLmNoZWNrYm94IC5ib3g6YWZ0ZXIsXG4udWkuZGlzYWJsZWQuY2hlY2tib3ggbGFiZWwsXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdW2Rpc2FibGVkXSB+IC5ib3g6YWZ0ZXIsXG4udWkuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdW2Rpc2FibGVkXSB+IGxhYmVsLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXVtkaXNhYmxlZF0gfiAuYm94OmFmdGVyLFxuLnVpLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXVtkaXNhYmxlZF0gfiBsYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC41O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBSYWRpb1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnJhZGlvLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogMTRweDtcbn1cblxuLyogQm94ICovXG5cbi51aS5yYWRpby5jaGVja2JveCAuYm94OmJlZm9yZSxcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qIENpcmNsZSAqL1xuXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwcHg7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuXG4vKiBSYWRpbyBDaGVja2JveCAqL1xuXG4udWkucmFkaW8uY2hlY2tib3ggLmJveDphZnRlcixcbi51aS5yYWRpby5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNDI4NTcxNDMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjQyODU3MTQzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjQyODU3MTQzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNsaWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWluLWhlaWdodDogMS4yNXJlbTtcbn1cblxuLnVpLnNsaWRlci5jaGVja2JveCAuYm94LFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLyogTGluZSAqL1xuXG4udWkuc2xpZGVyLmNoZWNrYm94IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDpiZWZvcmUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDAuNHJlbTtcbiAgbGVmdDogMGVtO1xuICB6LWluZGV4OiAxO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAwLjI1cmVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuXG4vKiBIYW5kbGUgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnNsaWRlci5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmYgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRvcDogLTAuMjVyZW07XG4gIGxlZnQ6IDBlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZSAwcztcbn1cblxuLyogRm9jdXMgKi9cblxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIH4gbGFiZWw6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgfiAuYm94OmJlZm9yZSxcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzIH4gbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5zbGlkZXIuY2hlY2tib3ggLmJveDpob3Zlcixcbi51aS5zbGlkZXIuY2hlY2tib3ggbGFiZWw6aG92ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc2xpZGVyLmNoZWNrYm94IC5ib3g6aG92ZXI6OmJlZm9yZSxcbi51aS5zbGlkZXIuY2hlY2tib3ggbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuYm94LFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IGxhYmVsLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IC5ib3gsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmJveDpiZWZvcmUsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gbGFiZWw6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLnNsaWRlci5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5ib3g6YWZ0ZXIsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIsXG4udWkuc2xpZGVyLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIH4gLmJveDphZnRlcixcbi51aS5zbGlkZXIuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IDJyZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgVG9nZ2xlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtaW4taGVpZ2h0OiAxLjVyZW07XG59XG5cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveCxcbi51aS50b2dnbGUuY2hlY2tib3ggbGFiZWwge1xuICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy10b3A6IDAuMTVlbTtcbn1cblxuLyogU3dpdGNoICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggLmJveDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMHJlbTtcbiAgei1pbmRleDogMTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKiBIYW5kbGUgKi9cblxuLnVpLnRvZ2dsZS5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmYgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwcHggMHB4IDBweCAxcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KSBpbnNldDtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRvcDogMHJlbTtcbiAgbGVmdDogMGVtO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UgMHMsXG4gICAgbGVmdCAwLjNzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlIDBzLFxuICAgIGxlZnQgMC4zcyBlYXNlIDBzO1xufVxuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB+IC5ib3g6YWZ0ZXIsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB+IGxhYmVsOmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gfiAuYm94OmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gfiBsYWJlbDphZnRlciB7XG4gIGxlZnQ6IC0wLjA1cmVtO1xufVxuXG4vKiBGb2N1cyAqL1xuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgfiBsYWJlbDpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyB+IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLnRvZ2dsZS5jaGVja2JveCAuYm94OmhvdmVyOjpiZWZvcmUsXG4udWkudG9nZ2xlLmNoZWNrYm94IGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLyogQWN0aXZlICovXG5cbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuYm94LFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IGxhYmVsLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IC5ib3gsXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIH4gbGFiZWwge1xuICBjb2xvcjogIzJkYjQ3NTtcbn1cblxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5ib3g6YmVmb3JlLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IGxhYmVsOmJlZm9yZSxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgfiAuYm94OmJlZm9yZSxcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgfiBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1O1xufVxuXG4udWkudG9nZ2xlLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmJveDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiBsYWJlbDphZnRlcixcbi51aS50b2dnbGUuY2hlY2tib3ggaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgfiAuYm94OmFmdGVyLFxuLnVpLnRvZ2dsZS5jaGVja2JveCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IGxhYmVsOmFmdGVyIHtcbiAgbGVmdDogMi4wNXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRml0dGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZml0dGVkLmNoZWNrYm94IC5ib3gsXG4udWkuZml0dGVkLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmZpdHRlZC50b2dnbGUuY2hlY2tib3gsXG4udWkuZml0dGVkLnRvZ2dsZS5jaGVja2JveCB7XG4gIHdpZHRoOiAzLjVyZW07XG59XG5cbi51aS5maXR0ZWQuc2xpZGVyLmNoZWNrYm94LFxuLnVpLmZpdHRlZC5zbGlkZXIuY2hlY2tib3gge1xuICB3aWR0aDogMy41cmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdDaGVja2JveCc7XG4gIHNyYzogdXJsKFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFPQUlBQUF3QmdUMU12TWozaFNRRUFBQURzQUFBQVZtTnRZWERRRWhtM0FBQUJSQUFBQVVwamRuUWdCa24vbEFBQUJ1d0FBQUFjWm5CbmJZb0tlRHNBQUFjSUFBQUprV2RoYzNBQUFBQVFBQUFHNUFBQUFBaG5iSGxtMzJjRWRnQUFBcEFBQUFDMmFHVmhaQUVyUEhzQUFBTklBQUFBTm1ob1pXRUhVd05OQUFBRGdBQUFBQ1JvYlhSNEN5a0FBQUFBQTZRQUFBQU1iRzlqWVFBNEFGc0FBQU93QUFBQUNHMWhlSEFBcGdtOEFBQUR1QUFBQUNCdVlXMWx6SjBhSEFBQUE5Z0FBQUxOY0c5emRLNjlRSmdBQUFhb0FBQUFPM0J5WlhDU29aci9BQUFRbkFBQUFGWUFBUU80QVpBQUJRQUlBbm9DdkFBQUFJd0NlZ0s4QUFBQjRBQXhBUUlBQUFJQUJRTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVUdaRlpBQkE2QURvQVFOUy8yb0FXZ01MQUU4QUFBQUJBQUFBQUFBQUFBQUFBd0FBQUFNQUFBQWNBQUVBQUFBQUFFUUFBd0FCQUFBQUhBQUVBQ2dBQUFBR0FBUUFBUUFDQUFEb0FmLy9BQUFBQU9nQS8vOEFBQmdCQUFFQUFBQUFBQUFBQUFFR0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFEcEFLWUFCVUFIRUFaRHdFQUFRRkNBQUlCQW1vQUFRQUJhZ0FBQUdFVUZ4UURFaXNCRkFjQkJpSW5BU1kwUHdFMk1oOEJBVFl5SHdFV0E2UVAvaUFRTEJEKzZnOFBUQkFzRUtRQmJoQXNFRXdQQWhZV0VQNGdEdzhCRmhBc0VFd1FFS1VCYnhBUVRCQUFBQUgvL2YreEExOERDd0FNQUJKQUR3QUJBUXBEQUFBQUN3QkVGUk1DRVNzQkZBNEJJaTRDUGdFeUhnRURXWExHNk1odUJucTg5THArQVY1MXhIUjB4T3JFZEhURUFBQUFBQUVBQUFBQkFBRERlUnBkWHc4ODlRQUxBK2dBQUFBQXp6V1lqUUFBQUFEUE5XQk4vLzMvc1FPa0F3c0FBQUFJQUFJQUFBQUFBQUFBQVFBQUExTC9hZ0JhQStnQUFQLzNBNlFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQU1ENkFBQUErZ0FBQU5aQUFBQUFBQUFBRGdBV3dBQkFBQUFBd0FXQUFFQUFBQUFBQUlBQmdBVEFHNEFBQUF0Q1pFQUFBQUFBQUFBRWdEZUFBRUFBQUFBQUFBQU5RQUFBQUVBQUFBQUFBRUFDQUExQUFFQUFBQUFBQUlBQndBOUFBRUFBQUFBQUFNQUNBQkVBQUVBQUFBQUFBUUFDQUJNQUFFQUFBQUFBQVVBQ3dCVUFBRUFBQUFBQUFZQUNBQmZBQUVBQUFBQUFBb0FLd0JuQUFFQUFBQUFBQXNBRXdDU0FBTUFBUVFKQUFBQWFnQ2xBQU1BQVFRSkFBRUFFQUVQQUFNQUFRUUpBQUlBRGdFZkFBTUFBUVFKQUFNQUVBRXRBQU1BQVFRSkFBUUFFQUU5QUFNQUFRUUpBQVVBRmdGTkFBTUFBUVFKQUFZQUVBRmpBQU1BQVFRSkFBb0FWZ0Z6QUFNQUFRUUpBQXNBSmdISlEyOXdlWEpwWjJoMElDaERLU0F5TURFMElHSjVJRzl5YVdkcGJtRnNJR0YxZEdodmNuTWdRQ0JtYjI1MFpXeHNieTVqYjIxbWIyNTBaV3hzYjFKbFozVnNZWEptYjI1MFpXeHNiMlp2Ym5SbGJHeHZWbVZ5YzJsdmJpQXhMakJtYjI1MFpXeHNiMGRsYm1WeVlYUmxaQ0JpZVNCemRtY3lkSFJtSUdaeWIyMGdSbTl1ZEdWc2JHOGdjSEp2YW1WamRDNW9kSFJ3T2k4dlptOXVkR1ZzYkc4dVkyOXRBRU1BYndCd0FIa0FjZ0JwQUdjQWFBQjBBQ0FBS0FCREFDa0FJQUF5QURBQU1RQTBBQ0FBWWdCNUFDQUFid0J5QUdrQVp3QnBBRzRBWVFCc0FDQUFZUUIxQUhRQWFBQnZBSElBY3dBZ0FFQUFJQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFMZ0JqQUc4QWJRQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVVnQmxBR2NBZFFCc0FHRUFjZ0JtQUc4QWJnQjBBR1VBYkFCc0FHOEFaZ0J2QUc0QWRBQmxBR3dBYkFCdkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFSd0JsQUc0QVpRQnlBR0VBZEFCbEFHUUFJQUJpQUhrQUlBQnpBSFlBWndBeUFIUUFkQUJtQUNBQVpnQnlBRzhBYlFBZ0FFWUFid0J1QUhRQVpRQnNBR3dBYndBZ0FIQUFjZ0J2QUdvQVpRQmpBSFFBTGdCb0FIUUFkQUJ3QURvQUx3QXZBR1lBYndCdUFIUUFaUUJzQUd3QWJ3QXVBR01BYndCdEFBQUFBQUlBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUF3QUFBUUlCQXdsamFHVmphMjFoY21zR1kybHlZMnhsQUFBQUFBRUFBZi8vQUE4QUFBQUFBQUFBQUFBQUFBQUFBQUFBQURJQU1nTUwvN0VEQy8reHNBQXNzQ0JnWmkyd0FTd2daQ0N3d0ZDd0JDWmFzQVJGVzFnaEl5RWJpbGdnc0ZCUVdDR3dRRmtiSUxBNFVGZ2hzRGhaV1NDd0NrVmhaTEFvVUZnaHNBcEZJTEF3VUZnaHNEQlpHeUN3d0ZCWUlHWWdpb3BoSUxBS1VGaGdHeUN3SUZCWUliQUtZQnNnc0RaUVdDR3dObUFiWUZsWldSdXdBQ3RaV1NPd0FGQllaVmxaTGJBQ0xDQkZJTEFFSldGa0lMQUZRMUJZc0FValFyQUdJMEliSVNGWnNBRmdMYkFETENNaEl5RWdaTEVGWWtJZ3NBWWpRcklLQUFJcUlTQ3dCa01naWlDS3NBQXJzVEFGSllwUldHQlFHMkZTV1ZnaldTRWdzRUJUV0xBQUt4c2hzRUJaSTdBQVVGaGxXUzJ3QkN5d0IwTXJzZ0FDQUVOZ1FpMndCU3l3QnlOQ0l5Q3dBQ05DWWJDQVlyQUJZTEFFS2kyd0Jpd2dJRVVnc0FKRlk3QUJSV0pnUkxBQllDMndCeXdnSUVVZ3NBQXJJN0VDQkNWZ0lFV0tJMkVnWkNDd0lGQllJYkFBRzdBd1VGaXdJQnV3UUZsWkk3QUFVRmhsV2JBREpTTmhSRVN3QVdBdHNBZ3NzUVVGUmJBQllVUXRzQWtzc0FGZ0lDQ3dDVU5Lc0FCUVdDQ3dDU05DV2JBS1EwcXdBRkpZSUxBS0kwSlpMYkFLTENDNEJBQmlJTGdFQUdPS0kyR3dDME5nSUlwZ0lMQUxJMElqTGJBTExFdFVXTEVIQVVSWkpMQU5aU040TGJBTUxFdFJXRXRUV0xFSEFVUlpHeUZaSkxBVFpTTjRMYkFOTExFQURFTlZXTEVNREVPd0FXRkNzQW9yV2JBQVE3QUNKVUt4Q1FJbFFyRUtBaVZDc0FFV0l5Q3dBeVZRV0xFQkFFTmdzQVFsUW9xS0lJb2pZYkFKS2lFanNBRmhJSW9qWWJBSktpRWJzUUVBUTJDd0FpVkNzQUlsWWJBSktpRlpzQWxEUjdBS1EwZGdzSUJpSUxBQ1JXT3dBVVZpWUxFQUFCTWpSTEFCUTdBQVBySUJBUUZEWUVJdHNBNHNzUUFGUlZSWUFMQU1JMElnWUxBQlliVU5EUUVBQ3dCQ1FvcGdzUTBGSzdCdEt4c2lXUzJ3RHl5eEFBNHJMYkFRTExFQkRpc3RzQkVzc1FJT0t5MndFaXl4QXc0ckxiQVRMTEVFRGlzdHNCUXNzUVVPS3kyd0ZTeXhCZzRyTGJBV0xMRUhEaXN0c0Jjc3NRZ09LeTJ3R0N5eENRNHJMYkFaTExBSUs3RUFCVVZVV0FDd0RDTkNJR0N3QVdHMURRMEJBQXNBUWtLS1lMRU5CU3V3YlNzYklsa3RzQm9zc1FBWkt5MndHeXl4QVJrckxiQWNMTEVDR1NzdHNCMHNzUU1aS3kyd0hpeXhCQmtyTGJBZkxMRUZHU3N0c0NBc3NRWVpLeTJ3SVN5eEJ4a3JMYkFpTExFSUdTc3RzQ01zc1FrWkt5MndKQ3dnUExBQllDMndKU3dnWUxBTllDQkRJN0FCWUVPd0FpVmhzQUZnc0NRcUlTMndKaXl3SlN1d0pTb3RzQ2NzSUNCSElDQ3dBa1Zqc0FGRlltQWpZVGdqSUlwVldDQkhJQ0N3QWtWanNBRkZZbUFqWVRnYklWa3RzQ2dzc1FBRlJWUllBTEFCRnJBbktyQUJGVEFiSWxrdHNDa3NzQWdyc1FBRlJWUllBTEFCRnJBbktyQUJGVEFiSWxrdHNDb3NJRFd3QVdBdHNDc3NBTEFEUldPd0FVVmlzQUFyc0FKRlk3QUJSV0t3QUN1d0FCYTBBQUFBQUFCRVBpTTRzU29CRlNvdHNDd3NJRHdnUnlDd0FrVmpzQUZGWW1Dd0FFTmhPQzJ3TFN3dUZ6d3RzQzRzSUR3Z1J5Q3dBa1Zqc0FGRlltQ3dBRU5oc0FGRFl6Z3RzQzhzc1FJQUZpVWdMaUJIc0FBalFyQUNKVW1LaWtjalJ5TmhJRmhpR3lGWnNBRWpRckl1QVFFVkZDb3RzREFzc0FBV3NBUWxzQVFsUnlOSEkyR3dCa1VyWllvdUl5QWdQSW80TGJBeExMQUFGckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckFHUlNzZ3NHQlFXQ0N3UUZGWXN3SWdBeUFic3dJbUF4cFpRa0lqSUxBSVF5Q0tJMGNqUnlOaEkwWmdzQVJEc0lCaVlDQ3dBQ3NnaW9waElMQUNRMkJrSTdBRFEyRmtVRml3QWtOaEc3QURRMkJac0FNbHNJQmlZU01nSUxBRUppTkdZVGdiSTdBSVEwYXdBaVd3Q0VOSEkwY2pZV0Fnc0FSRHNJQmlZQ01nc0FBckk3QUVRMkN3QUN1d0JTVmhzQVVsc0lCaXNBUW1ZU0N3QkNWZ1pDT3dBeVZnWkZCWUlSc2pJVmtqSUNDd0JDWWpSbUU0V1Myd01peXdBQllnSUNDd0JTWWdMa2NqUnlOaEl6dzRMYkF6TExBQUZpQ3dDQ05DSUNBZ1JpTkhzQUFySTJFNExiQTBMTEFBRnJBREpiQUNKVWNqUnlOaHNBQlVXQzRnUENNaEc3QUNKYkFDSlVjalJ5TmhJTEFGSmJBRUpVY2pSeU5oc0FZbHNBVWxTYkFDSldHd0FVVmpJeUJZWWhzaFdXT3dBVVZpWUNNdUl5QWdQSW80SXlGWkxiQTFMTEFBRmlDd0NFTWdMa2NqUnlOaElHQ3dJR0Jtc0lCaUl5QWdQSW80TGJBMkxDTWdMa2F3QWlWR1VsZ2dQRmt1c1NZQkZDc3RzRGNzSXlBdVJyQUNKVVpRV0NBOFdTNnhKZ0VVS3kyd09Dd2pJQzVHc0FJbFJsSllJRHhaSXlBdVJyQUNKVVpRV0NBOFdTNnhKZ0VVS3kyd09TeXdNQ3NqSUM1R3NBSWxSbEpZSUR4WkxyRW1BUlFyTGJBNkxMQXhLNG9nSUR5d0JDTkNpamdqSUM1R3NBSWxSbEpZSUR4WkxyRW1BUlFyc0FSRExyQW1LeTJ3T3l5d0FCYXdCQ1d3QkNZZ0xrY2pSeU5oc0FaRkt5TWdQQ0F1SXppeEpnRVVLeTJ3UEN5eENBUWxRckFBRnJBRUpiQUVKU0F1UnlOSEkyRWdzQVFqUXJBR1JTc2dzR0JRV0NDd1FGRllzd0lnQXlBYnN3SW1BeHBaUWtJaklFZXdCRU93Z0dKZ0lMQUFLeUNLaW1FZ3NBSkRZR1Fqc0FORFlXUlFXTEFDUTJFYnNBTkRZRm13QXlXd2dHSmhzQUlsUm1FNEl5QThJemdiSVNBZ1JpTkhzQUFySTJFNElWbXhKZ0VVS3kyd1BTeXdNQ3N1c1NZQkZDc3RzRDRzc0RFcklTTWdJRHl3QkNOQ0l6aXhKZ0VVSzdBRVF5NndKaXN0c0Q4c3NBQVZJRWV3QUNOQ3NnQUJBUlVVRXk2d0xDb3RzRUFzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TENvdHNFRXNzUUFCRkJPd0xTb3RzRUlzc0M4cUxiQkRMTEFBRmtVaklDNGdSb29qWVRpeEpnRVVLeTJ3UkN5d0NDTkNzRU1yTGJCRkxMSUFBRHdyTGJCR0xMSUFBVHdyTGJCSExMSUJBRHdyTGJCSUxMSUJBVHdyTGJCSkxMSUFBRDByTGJCS0xMSUFBVDByTGJCTExMSUJBRDByTGJCTUxMSUJBVDByTGJCTkxMSUFBRGtyTGJCT0xMSUFBVGtyTGJCUExMSUJBRGtyTGJCUUxMSUJBVGtyTGJCUkxMSUFBRHNyTGJCU0xMSUFBVHNyTGJCVExMSUJBRHNyTGJCVUxMSUJBVHNyTGJCVkxMSUFBRDRyTGJCV0xMSUFBVDRyTGJCWExMSUJBRDRyTGJCWUxMSUJBVDRyTGJCWkxMSUFBRG9yTGJCYUxMSUFBVG9yTGJCYkxMSUJBRG9yTGJCY0xMSUJBVG9yTGJCZExMQXlLeTZ4SmdFVUt5MndYaXl3TWl1d05pc3RzRjhzc0RJcnNEY3JMYkJnTExBQUZyQXlLN0E0S3kyd1lTeXdNeXN1c1NZQkZDc3RzR0lzc0RNcnNEWXJMYkJqTExBeks3QTNLeTJ3WkN5d015dXdPQ3N0c0dVc3NEUXJMckVtQVJRckxiQm1MTEEwSzdBMkt5MndaeXl3TkN1d055c3RzR2dzc0RRcnNEZ3JMYkJwTExBMUt5NnhKZ0VVS3kyd2FpeXdOU3V3TmlzdHNHc3NzRFVyc0RjckxiQnNMTEExSzdBNEt5MndiU3dyc0FobHNBTWtVSGl3QVJVd0xRQUFBRXU0QU1oU1dMRUJBWTVadVFnQUNBQmpJTEFCSTBTd0F5TndzZ1FvQ1VWU1JMSUtBZ2Nxc1FZQlJMRWtBWWhSV0xCQWlGaXhCZ05Fc1NZQmlGRll1QVFBaUZpeEJnRkVXVmxaV2JnQi80V3dCSTJ4QlFCRUFBQT1cIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUmdBQkFBQUFBQW9VQUE0QUFBQUFFUFFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQlBVeTh5QUFBQlJBQUFBRVFBQUFCV1BlRkpBV050WVhBQUFBR0lBQUFBT2dBQUFVclFFaG0zWTNaMElBQUFBY1FBQUFBVUFBQUFIQVpKLzVSbWNHZHRBQUFCMkFBQUJQa0FBQW1SaWdwNE8yZGhjM0FBQUFiVUFBQUFDQUFBQUFnQUFBQVFaMng1WmdBQUJ0d0FBQUN1QUFBQXR0OW5CSFpvWldGa0FBQUhqQUFBQURVQUFBQTJBU3M4ZTJob1pXRUFBQWZFQUFBQUlBQUFBQ1FIVXdOTmFHMTBlQUFBQitRQUFBQU1BQUFBREFzcEFBQnNiMk5oQUFBSDhBQUFBQWdBQUFBSUFEZ0FXMjFoZUhBQUFBZjRBQUFBSUFBQUFDQUFwZ204Ym1GdFpRQUFDQmdBQUFGM0FBQUN6Y3lkR2h4d2IzTjBBQUFKa0FBQUFDb0FBQUE3cnIxQW1IQnlaWEFBQUFtOEFBQUFWZ0FBQUZhU29aci9lSnhqWUdUZXdUaUJnWldCZzZtS2FROERBME1QaEdaOHdHREl5TVRBd01UQXlzeUFGUVNrdWFZd09MeGdlTUhJSFBRL2l5R0ttWnZCSHlqTUNKSURBUGU5QzJCNG5HTmdZR0JtZ0dBWkJrWUdFSEFCOGhqQmZCWUdEU0ROQnFRWkdaZ1lHRjR3L3Y4UFV2Q0NBVVJMTUVMVkF3RWpHOE9JQndCazVBYXZBQUI0bkdOZ1FBTkdERWJNM1A4M2dqQUFFTFFENFhpY25WWFpkdE5XRkpVOFpIQVNPbVNnb0E3WDNEaFE2OHFFS1Jnd2FTckZkaUVkSEFpdEJCMmtESFRrbmNjKzYydU9RcnRXSC9tMDduMDlKTFIwcmJZc2xzKytSMXRuMkRyblJod2pLbjBhaUd2VW9aS1hBNm1zUFpaSzkwbGMxM1V2ajVVTUJuRmR0aEpQU1p1b25TUkthdDNzVUM3eFdPc3FXU2RZSitQbElGWlBWWjVub0F6aUZCNWxTVVFiUkJ1cGx5Wko0b25qSjRrV1p4QWZKVWtnSmFNUXA5TElVRUkxR3NSUzFhRk02ZENyMXhOeDAwREtScU1lZFZoVTkwUEZKOGMxcDlTc0EwWXFWem5DRmV2VlJyNGJwd012ZTVERU9zR3pyWWN4SG5pc2ZwUXFrSXFSNmNnL2RrcE9sSWFCVkhIVW9WYmk2RENUWC9lUlRDck5RS2FNWWtXbDdvRzQzZjEwMnhZeFBYUTZ2aTVLbFVhcXVybk9LSnJ0MGZHb2d5Z1AyY2JwcE56UTJmYnc1UmxUVkt0ZGNiUHRRR1lOWEVySmJIU2ZSQUFkSmxMajZRRk9OWndDcVJuMVI4WFo1ODhCRXNsY2xLbzhWVEtIZWdPWk16dDdjVEh0YmllcnNuQ2tud2N5YjNaMjQ1MkhRNmRYaDMvUitoZE00Y3hIaitKaWZqNUMrbEJxZmlKT0pLVkdXTXp5cDRZZmNWY2dRcmt4aUFzWHl1QlRoRGwwUmRyWlpsM2p0VEgyaHMvNVNxbGhQUW5hNktQNGZncjlUaVFySEdkUm8vVkluTTFqMTNXdDNHZFFTN1c3RnpzeXIwT1ZJdTd2Q3d1dU0rZUVZWjRXQzFWZm52bmVCVFQvQm9obi9FRGVOSVZMKzVZcFNyUnZtNkpNdTJpS0N1MFNWS1ZkTnNVVTdZb3BwbW5QbW1LRzloMVR6TktlTXpMai84dmM1NUg3SE43eGtKdjJYZVNtZlErNWFkOUhidG9Qa0p0V0lUZHRIYmxwTHlBM3JVWnUybFdqT25ZRUdnWnBGMUlWUWRBMHN2cGgzRmFiOVVEV2pEUjhhV0R5TG1MSSt1cEVSNTIxdGNvZnhYOTE0Z3NIY21taXA3c2lGNXZpTHEvYkZqNDgzZTZyajVwRzNiRFYrTWFSOGpBZVJub2NtdEJaK2MzaHYrMU4zUzZhN2pLcU11Z0JGVXdLd0FCbDdVQUMwenJiQ2FUMW1xZjQ4Z2RnWElaNHprcER0VlNmTzRhbTcrVjVYL2V4T2ZHK3grM0dMcmRjZDNrSldkWU5jbVAyOE45U1pLcnJIK1V0clZRblI2d3JKNDlWYXhoREtyd291cjZTbEh1MHRSdS9LS215OGw2VTFzcm5rNUNiUFlNYlFsdTI3bUd3STB4cHlpVWVYbE9sS0QzVVVvNnlReXh2S2NvODRKU0xDMXFHeExnT2RROXFhOFRwb1hvWUd3c2hocUcwdlJCd1NDbGRGZCsweW5meEhxdHIyT2o0eFJYaDZYcHlFaEdmNGlyN1VmQlUxMGI5NkE3YXZHYmRNb01wVmFxbis0eFBzYS9iOWxGWmFhU09zeGUzVkFmWE5Pc2FPUlhUVCtScjRIUnZPR2pkQXoxVWZEUkJJMVUxeCtqR0tHTTBsalhsM3dSME1WWit3MmpWWXZzOTNFK2RwRldzdVV1WTdKc1Q5K0MwdS8wcSs3V2NXMGJXL2RjR3ZXM2tpcDhqTWI4dEN2dzdCMkszWkEzVU81T0JHQXZJV2RBWXhoWW1keGl1ZzIzRWJmWS9KcWYvMzRhRlJYSlhPeHE3ZWVyRDFaTlJKWGZaOHJqTFRYWloxNk0yUjlWT0d2c0lqUzBQTitiWTRYSXN0c1JnUWJiK3dmOHg3Z0YzYVZFQzRORElaWmlJMm5TaG51cmg2aDZyc1cwNFZ4SUJkczJ4NDNRQWVnQXVRZDhjdTliekNZRDEzQ1BuTHNCOWNnaDJ5Q0g0bEJ5Q3o4aTVCZkE1T1FSZmtFTXdJSWRnbDV3N0FBL0lJWGhJRHNFZU9RU1B5TmtFK0pJY2dxL0lJWWpKSVVqSXVRM3dtQnlDSitRUWZFME93VGRHcms1ay9wWUgyUUQ2enFLYlFLbWRHaHphT0dSR3JrM1krenhZOW9GRlpCOWFST3FSa2VzVDZsTWVMUFY3aTBqOXdTSlNmelJ5WTBMOWlRZEwvZGtpVW4reGlOUm54cGVaSXltdkRwN3pqZzcrQkpmcXJWNEFBQUFBQVFBQi8vOEFEM2ljWTJCa0FBTG1KVXd6R0VRWlpCd2srUmtaR0JtZEdKZ1ltYklZZ013c29HU2lpTGdJczVBMm93ZzdJNXVTT3FPYWlUMmptWkU4STVnUVkxN0MvMDlCUUVmZzN5dCtmaDhndllReEQwajY4RE9KaVFuOFUrRG5aeFFEY1FVRWxqTG1Dd0JwQmdiRy8zLy9iMlNPWitabTRHRVFjdUFIMnNibERMU0VtOEZGVkpoSkVHZ0xINk9TSHBNZG81RWNJM05rMGJFWEovTFlxdlo4MlZYSEdGZDZwS1RreUNzUXdRQUFxK1FrcUFBQWVKeGpZR1JnWUFEaXc1VlNzZkg4Tmw4WnVKbGZBRVVZenB2TzZJWFFDYjcvLy83ZnlMeUVtUnZJNVdCZ0Fva0NBRmIvREpBQUFBQjRuR05nWkdCZ0R2cWZ4UkRGL0lLQjRmOTM1aVVNUUJFVXdBd0FpNVlGcGdQb0FBQUQ2QUFBQTFrQUFBQUFBQUFBT0FCYkFBRUFBQUFEQUJZQUFRQUFBQUFBQWdBR0FCTUFiZ0FBQUMwSmtRQUFBQUI0bkhXUXkyckNRQlNHLy9IU2kwSmJXdWkyc3lwS2FieGdONElnV0hUVGJxUzRMVEhHSkJJek1oa0ZYNlB2MElmcFMvUlorcHVNcFNoTm1NeDN2amx6NW1RQVhPTWJBdm56eEpHendCbWpuQXM0UmM5eWtmN1pjb244WXJtTUt0NHNuOUMvVzY3Z0FZSGxLbTd3d1FxaWRNNW9nVS9MQWxmaTBuSUJGK0xPY3BIKzBYS0ozTE5jeHExNHRYeEM3MW11WUNKU3kxWGNpNitCV20xMUZJUkcxZ1oxMlc2Mk9uSzZsWW9xU3R4WXVtc1RLcDNLdnB5cnhQaHhyQnhQTGZjODlvTjE3T3A5dUo4bnZrNGpsY2lXMDl5cmtaLzQyalgrYkZjOTNRUnRZK1p5cnRWU0RtMkdYR20xOEQzamhNYXN1bzNHMy9Nd2dNSUtXMmhFdktvUUJoSTEyanJuTnBwb29VT2FNa015TTgrS2tNQkZUT05pelIxaHRwSXk3blBNR1NXMFBqTmlzZ09QMytXUkg1TUM3bzlaUlIrdEhzWVQwdTZNS1BPU2ZUbnM3akJyUkVxeVREZXpzOS9lVTJ4NFdwdldjTmV1UzUxMUpURThxQ0Y1SDd1MUJZMUg3MlMzWW1pN2FQRDk1LzkrQU4xZmhFc0FlSnhqWUdLQUFDNEc3SUNaZ1lHUmlaR1pNemtqTlRrN043RW9teTA1c3lnNUo1V0JBUUJFMVFaQkFBQkx1QURJVWxpeEFRR09XYmtJQUFnQVl5Q3dBU05Fc0FNamNMSUVLQWxGVWtTeUNnSUhLckVHQVVTeEpBR0lVVml3UUloWXNRWURSTEVtQVloUldMZ0VBSWhZc1FZQlJGbFpXVm00QWYrRnNBU05zUVVBUkFBQVwiKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuLnVpLmNoZWNrYm94IGxhYmVsOmJlZm9yZSxcbi51aS5jaGVja2JveCAuYm94OmJlZm9yZSxcbi51aS5jaGVja2JveCBsYWJlbDphZnRlcixcbi51aS5jaGVja2JveCAuYm94OmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6ICdDaGVja2JveCc7XG59XG5cbi51aS5jaGVja2JveCBsYWJlbDphZnRlcixcbi51aS5jaGVja2JveCAuYm94OmFmdGVyIHtcbiAgY29udGVudDogJ1xcZTgwMCc7XG59XG5cbi8qICBVVEYgUmVmZXJlbmNlXG4uY2hlY2s6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMCc7IH0gICfuoIAnXG4uY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDEnOyB9XG4ub2stY2lyY2xlZDpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA2JzsgfVxuLm9rLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA1JzsgfVxuLmNhbmNlbC1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNyc7IH1cbi5jYW5jZWwtY2lyY2xlLTE6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNCc7IH1cbi5lbXB0eS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMic7IH1cbi5yYWRpbzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAzJzsgfVxuXG4qL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gRGltbWVyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEaW1tZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5kaW1tYWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVpLmRpbW1lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwZW0gIWltcG9ydGFudDtcbiAgbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgb3BhY2l0eTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgbGluZWFyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgei1pbmRleDogMTAwMDtcbn1cblxuLyogRGltbWVyIENvbnRlbnQgKi9cblxuLnVpLmRpbW1lciA+IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIC1tb3otdXNlci1zZWxlY3Q6IHRleHQ7XG4gIC1tcy11c2VyLXNlbGVjdDogdGV4dDtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG59XG5cbi51aS5kaW1tZXIgPiAuY29udGVudCA+IGRpdiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKiBMb29zZSBDb3VwbGluZyAqL1xuXG4udWkuc2VnbWVudCA+IC51aS5kaW1tZXIge1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5hbmltYXRpbmcuZGltbWFibGU6bm90KGJvZHkpLFxuLmRpbW1lZC5kaW1tYWJsZTpub3QoYm9keSkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLmFuaW1hdGluZy5kaW1tZXIsXG4uZGltbWVkLmRpbW1hYmxlID4gLnVpLnZpc2libGUuZGltbWVyLFxuLnVpLmFjdGl2ZS5kaW1tZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbn1cblxuLnVpLmRpc2FibGVkLmRpbW1lciB7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucGFnZS5kaW1tZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiAnJztcbiAgdHJhbnNmb3JtLXN0eWxlOiAnJztcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMjAwMHB4O1xuICBwZXJzcGVjdGl2ZTogMjAwMHB4O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG5ib2R5LmFuaW1hdGluZy5pbi5kaW1tYWJsZSxcbmJvZHkuZGltbWVkLmRpbW1hYmxlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keS5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8qXG5ib2R5LmRpbW1hYmxlID4gOm5vdCguZGltbWVyKSB7XG4gIGZpbHRlcjogQGVsZW1lbnRTdGFydEZpbHRlcjtcbn1cbmJvZHkuZGltbWVkLmRpbW1hYmxlID4gOm5vdCguZGltbWVyKSB7XG4gIGZpbHRlcjogQGVsZW1lbnRFbmRGaWx0ZXI7XG4gIHRyYW5zaXRpb246IEBlbGVtZW50VHJhbnNpdGlvbjtcbn1cbiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBbGlnbmVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGltbWVyID4gLnRvcC5hbGlnbmVkLmNvbnRlbnQgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmRpbW1lciA+IC5ib3R0b20uYWxpZ25lZC5jb250ZW50ID4gKiB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBJbnZlcnRlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG59XG5cbi51aS5pbnZlcnRlZC5kaW1tZXIgPiAuY29udGVudCA+ICoge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaW1wbGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIERpc3BsYXlzIHdpdGhvdXQgamF2YXNjcmlwdCAqL1xuXG4udWkuc2ltcGxlLmRpbW1lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMCU7XG4gIHotaW5kZXg6IC0xMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmRpbW1lciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4udWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG5cbi5kaW1tZWQuZGltbWFibGUgPiAudWkuc2ltcGxlLmludmVydGVkLmRpbW1lciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIERyb3Bkb3duXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBEcm9wZG93blxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItcmFkaXVzIDAuMXMgZWFzZSwgd2lkdGggMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItcmFkaXVzIDAuMXMgZWFzZSwgd2lkdGggMC4ycyBlYXNlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luOiAwZW0gMGVtO1xuICBwYWRkaW5nOiAwZW0gMGVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggNHB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHotaW5kZXg6IDExO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIEhpZGRlbiBJbnB1dFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gaW5wdXQ6bm90KC5zZWFyY2gpOmZpcnN0LWNoaWxkLFxuLnVpLmRyb3Bkb3duID4gc2VsZWN0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gRHJvcGRvd24gSWNvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIC5kcm9wZG93bi5pY29uICsgLnRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgVGV4dFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gLnRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBNZW51IEl0ZW1cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgcGFkZGluZzogMC43MTQyODU3MWVtIDEuMTQyODU3MTRlbSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIEZsb2F0ZWQgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBbY2xhc3MqPVwicmlnaHQgZmxvYXRlZFwiXSxcbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IFtjbGFzcyo9XCJyaWdodCBmbG9hdGVkXCJdIHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBbY2xhc3MqPVwibGVmdCBmbG9hdGVkXCJdLFxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gW2NsYXNzKj1cImxlZnQgZmxvYXRlZFwiXSB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAxZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51IC5pdGVtID4gLmljb24uZmxvYXRlZCxcbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IC5mbGFnLmZsb2F0ZWQsXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gPiAuaW1hZ2UuZmxvYXRlZCxcbi51aS5kcm9wZG93biAubWVudSAuaXRlbSA+IGltZy5mbG9hdGVkIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gIE1lbnUgRGl2aWRlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmhlYWRlciB7XG4gIG1hcmdpbjogMXJlbSAwcmVtIDAuNzVyZW07XG4gIHBhZGRpbmc6IDBlbSAxLjE0Mjg1NzE0ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgaGVpZ2h0OiAwZW07XG4gIG1hcmdpbjogMC41ZW0gMGVtO1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQge1xuICBtYXJnaW46IDAuNzVyZW0gMS4xNDI4NTcxNGVtO1xuICBtaW4td2lkdGg6IDIwMHB4O1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaGVhZGVyICsgLmlucHV0IHtcbiAgbWFyZ2luLXRvcDogMGVtO1xufVxuXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaW5wdXQ6bm90KC50cmFuc3BhcmVudCkgaW5wdXQge1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG59XG5cbi51aS5kcm9wZG93biAubWVudSA+IC5pbnB1dDpub3QoLnRyYW5zcGFyZW50KSAuYnV0dG9uLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5pY29uLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLmlucHV0Om5vdCgudHJhbnNwYXJlbnQpIC5sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tXG4gIEl0ZW0gRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5kZXNjcmlwdGlvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdWIgTWVudVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51IC5tZW51IHtcbiAgdG9wOiAwJSAhaW1wb3J0YW50O1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuNWVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwIDAgMGVtICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDIxICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhpZGUgQXJyb3cgKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51IC5tZW51OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBTdWIgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEljb25zIC8gRmxhZ3MgLyBMYWJlbHMgLyBJbWFnZSAqL1xuXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pY29uLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAubGFiZWwsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5mbGFnLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiBpbWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDBlbTtcbn1cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaWNvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZmxhZyxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmljb24sXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IC5sYWJlbCxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmZsYWcsXG4udWkuZHJvcGRvd24gPiAudGV4dCA+IGltZyxcbi51aS5kcm9wZG93biA+IC50ZXh0ID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuaWNvbixcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmxhYmVsLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiAuZmxhZyxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gLmltYWdlLFxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0gPiBpbWcge1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSW1hZ2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biA+IC50ZXh0ID4gaW1nLFxuLnVpLmRyb3Bkb3duID4gLnRleHQgPiAuaW1hZ2UsXG4udWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbSA+IC5pbWFnZSxcbi51aS5kcm9wZG93biAubWVudSA+IC5pdGVtID4gaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LWhlaWdodDogMi41ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIE1lbnVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFJlbW92ZSBNZW51IEl0ZW0gRGl2aWRlciAqL1xuXG4udWkuZHJvcGRvd24gLnVpLm1lbnUgPiAuaXRlbTpiZWZvcmUsXG4udWkubWVudSAudWkuZHJvcGRvd24gLm1lbnUgPiAuaXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBQcmV2ZW50IE1lbnUgSXRlbSBCb3JkZXIgKi9cblxuLnVpLm1lbnUgLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4vKiBBdXRvbWF0aWNhbGx5IGZsb2F0IGRyb3Bkb3duIG1lbnUgcmlnaHQgb24gbGFzdCBtZW51IGl0ZW0gKi9cblxuLnVpLm1lbnUgLnJpZ2h0Lm1lbnUgLmRyb3Bkb3duOmxhc3QtY2hpbGQgLm1lbnUsXG4udWkubWVudSAucmlnaHQuZHJvcGRvd24uaXRlbSAubWVudSxcbi51aS5idXR0b25zID4gLnVpLmRyb3Bkb3duOmxhc3QtY2hpbGQgLm1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTm8gTWFyZ2luIE9uIEljb24gQnV0dG9uICovXG5cbi51aS5kcm9wZG93bi5pY29uLmJ1dHRvbiA+IC5kcm9wZG93bi5pY29uIHtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi51aS5kcm9wZG93bi5idXR0b246bm90KC5wb2ludGluZyk6bm90KC5mbG9hdGluZykuYWN0aXZlLFxuLnVpLmRyb3Bkb3duLmJ1dHRvbjpub3QoLnBvaW50aW5nKTpub3QoLmZsb2F0aW5nKS52aXNpYmxlIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMGVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFNlbGVjdGlvblxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzcGxheXMgbGlrZSBhIHNlbGVjdCBib3ggKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBvdXRsaW5lOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWigwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDBkZWcpO1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuOGVtIDEuMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1yYWRpdXMgMC4xcyBlYXNlLCB3aWR0aCAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXIgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItcmFkaXVzIDAuMXMgZWFzZSwgd2lkdGggMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyIDAuMnMgZWFzZTtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi52aXNpYmxlLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5hY3RpdmUge1xuICB6LWluZGV4OiAxMDtcbn1cblxuc2VsZWN0LnVpLmRyb3Bkb3duIHtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC50ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAyZW07XG59XG5cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gPiAuc2VhcmNoLmljb24sXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRlbGV0ZS5pY29uLFxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogLTAuOGVtO1xuICBwYWRkaW5nOiAwLjhlbTtcbiAgcmlnaHQ6IDEuMWVtO1xuICBvcGFjaXR5OiAwLjg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4vKiBDb21wYWN0ICovXG5cbi51aS5jb21wYWN0LnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIG1pbi13aWR0aDogMHB4O1xufVxuXG4vKiAgU2VsZWN0aW9uIE1lbnUgKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBib3JkZXItdG9wLXdpZHRoOiAwcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMHB4IC0xcHg7XG4gIG1pbi13aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAgMnB4ICk7XG4gIG1pbi13aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlciAwLjJzIGVhc2U7XG59XG5cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24gLm1lbnU6YWZ0ZXIsXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFNjcm9sbGJhciBpbiBJRSAqL1xuXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWluLXdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtICAxNXB4ICk7XG4gICAgbWluLXdpZHRoOiBjYWxjKDEwMCUgLSAgMTVweCApO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogNy40OTk5MTQyOWVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogOS45OTk4ODU3MWVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVpLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTQuOTk5ODI4NTdlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51IHtcbiAgICBtYXgtaGVpZ2h0OiAxOS45OTk3NzE0M2VtO1xuICB9XG59XG5cbi8qIE1lbnUgSXRlbSAqL1xuXG4udWkuc2VsZWN0aW9uLmRyb3Bkb3duIC5tZW51ID4gLml0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgcGFkZGluZy1sZWZ0OiAxLjFlbSAhaW1wb3J0YW50O1xuICAvKiBBZGQgaW4gc3BhY2luZyBmb3Igc2Nyb2xsIGJhciAqL1xuICBwYWRkaW5nLXJpZ2h0OiAtd2Via2l0LWNhbGMoIDEuMWVtICArIDFlbSkgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogY2FsYyggMS4xZW0gICsgMWVtKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzOSwgNDEsIDQzLCAwLjMpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLyogRGlzYWJsZWQgKi9cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5kaXNhYmxlZCxcbi51aS5zZWxlY3Rpb24uZHJvcGRvd24uZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIG9wYWNpdHk6IDAuMyAhaW1wb3J0YW50O1xufVxuXG4vKiBWaXNpYmxlICovXG5cbi51aS5zZWxlY3Rpb24uZHJvcGRvd24udmlzaWJsZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzOSwgNDEsIDQzLCAwLjMpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnVpLnNlbGVjdGlvbi52aXNpYmxlLmRyb3Bkb3duIC5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNnB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4vKiBWaXNpYmxlIEhvdmVyICovXG5cbi51aS5zZWxlY3Rpb24udmlzaWJsZS5kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgzOSwgNDEsIDQzLCAwLjMpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnVpLnNlbGVjdGlvbi52aXNpYmxlLmRyb3Bkb3duIC5tZW51IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNnB4IDBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4vKiBBY3RpdmUgSXRlbSAqL1xuXG4udWkuc2VsZWN0aW9uLmFjdGl2ZS5kcm9wZG93biA+IC50ZXh0Om5vdCguZGVmYXVsdCksXG4udWkuc2VsZWN0aW9uLnZpc2libGUuZHJvcGRvd24gPiAudGV4dDpub3QoLmRlZmF1bHQpIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogRHJvcGRvd24gSWNvbiAqL1xuXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uLFxuLnVpLnZpc2libGUuc2VsZWN0aW9uLmRyb3Bkb3duID4gLmRyb3Bkb3duLmljb24ge1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAzO1xufVxuXG4vKiBDb25uZWN0aW5nIEJvcmRlciAqL1xuXG4udWkuYWN0aXZlLnNlbGVjdGlvbi5kcm9wZG93bixcbi51aS52aXNpYmxlLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNlYXJjaGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNlYXJjaCBTZWxlY3Rpb24gKi9cblxuLnVpLnNlYXJjaC5kcm9wZG93biB7XG4gIG1pbi13aWR0aDogJyc7XG59XG5cbi8qIFNlYXJjaCBEcm9wZG93biAqL1xuXG4udWkuc2VhcmNoLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwZW0gIWltcG9ydGFudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDBlbTtcbiAgbGVmdDogMGVtO1xuICB3aWR0aDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBwYWRkaW5nOiBpbmhlcml0O1xufVxuXG4vKiBUZXh0IExheWVyaW5nICovXG5cbi51aS5zZWFyY2guZHJvcGRvd24gPiBpbnB1dC5zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi51aS5zZWFyY2guZHJvcGRvd24gPiAudGV4dCB7XG4gIGN1cnNvcjogdGV4dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuXG4vKiBTZWFyY2ggU2VsZWN0aW9uICovXG5cbi51aS5zZWFyY2guc2VsZWN0aW9uLmRyb3Bkb3duID4gaW5wdXQuc2VhcmNoIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjE0MmVtO1xuICBwYWRkaW5nOiAwLjY5MjllbSAxLjFlbTtcbn1cblxuLyogQWN0aXZlL1Zpc2libGUgU2VhcmNoICovXG5cbi51aS5zZWFyY2guZHJvcGRvd24uYWN0aXZlID4gaW5wdXQuc2VhcmNoLFxuLnVpLnNlYXJjaC5kcm9wZG93bi52aXNpYmxlID4gaW5wdXQuc2VhcmNoIHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4udWkuc2VhcmNoLmRyb3Bkb3duLmFjdGl2ZSA+IC50ZXh0LFxuLnVpLnNlYXJjaC5kcm9wZG93bi52aXNpYmxlID4gLnRleHQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnVpLmFjdGl2ZS5zZWFyY2guZHJvcGRvd24gPiBpbnB1dC5zZWFyY2g6Zm9jdXMgKyAudGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCkgIWltcG9ydGFudDtcbn1cblxuLyogU2VhcmNoIE1lbnUgKi9cblxuLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDcuNDk5OTE0MjllbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDkuOTk5ODg1NzFlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zZWFyY2guZHJvcGRvd24gLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDE0Ljk5OTgyODU3ZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnVpLnNlYXJjaC5kcm9wZG93biAubWVudSB7XG4gICAgbWF4LWhlaWdodDogMTkuOTk5NzcxNDNlbTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIElubGluZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmlubGluZS5kcm9wZG93biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnVpLmlubGluZS5kcm9wZG93biAuZHJvcGRvd24uaWNvbiB7XG4gIG1hcmdpbjogMGVtIDAuNWVtIDBlbSAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51aS5pbmxpbmUuZHJvcGRvd24gPiAudGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkuaW5saW5lLmRyb3Bkb3duIC5tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNZW51IEl0ZW0gSG92ZXIgKi9cblxuLnVpLmRyb3Bkb3duIC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB6LWluZGV4OiAxMztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBNZW51IEl0ZW0gQWN0aXZlICovXG5cbi51aS5kcm9wZG93biAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHotaW5kZXg6IDEyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIERlZmF1bHQgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5kcm9wZG93biA+IC5kZWZhdWx0LnRleHQsXG4udWkuZGVmYXVsdC5kcm9wZG93biA+IC50ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLnVpLmRyb3Bkb3duOmhvdmVyID4gLmRlZmF1bHQudGV4dCxcbi51aS5kZWZhdWx0LmRyb3Bkb3duOmhvdmVyID4gLnRleHQge1xuICBjb2xvcjogcmdiYSgxNDAsIDE0MCwgMTQwLCAwLjcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubG9hZGluZy5kcm9wZG93biA+IC50ZXh0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4udWkuZHJvcGRvd24gPiAubG9hZGluZy5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBLZXlib2FyZCBTZWxlY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWxlY3RlZCBJdGVtICovXG5cbi51aS5kcm9wZG93bi5zZWxlY3RlZCxcbi51aS5kcm9wZG93biAubWVudSAuc2VsZWN0ZWQuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTZWFyY2ggRmlsdGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGaWx0ZXJlZCBJdGVtICovXG5cbi51aS5kcm9wZG93biA+IC5maWx0ZXJlZC50ZXh0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWkuZHJvcGRvd24gLmZpbHRlcmVkLml0ZW0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZHJvcGRvd24uZXJyb3IsXG4udWkuZHJvcGRvd24uZXJyb3IgPiAudGV4dCxcbi51aS5kcm9wZG93bi5lcnJvciA+IC5kZWZhdWx0LnRleHQge1xuICBjb2xvcjogI2E5NDQ0Mjtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjA7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbn1cblxuLnVpLnNlbGVjdGlvbi5kcm9wZG93bi5lcnJvcjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbn1cblxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUsXG4udWkuZHJvcGRvd24uZXJyb3IgPiAubWVudSAubWVudSB7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbn1cblxuLnVpLmRyb3Bkb3duLmVycm9yID4gLm1lbnUgPiAuaXRlbSB7XG4gIGNvbG9yOiAjZDk1YzVjO1xufVxuXG4vKiBJdGVtIEhvdmVyICovXG5cbi51aS5kcm9wZG93bi5lcnJvciA+IC5tZW51ID4gLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmMmYyO1xufVxuXG4vKiBJdGVtIEFjdGl2ZSAqL1xuXG4udWkuZHJvcGRvd24uZXJyb3IgPiAubWVudSAuYWN0aXZlLml0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRjZmNmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRGlzYWJsZWQgKi9cblxuLnVpLmRpc2FibGVkLmRyb3Bkb3duIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC4zO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBGbHlvdXQgRGlyZWN0aW9uICovXG5cbi51aS5kcm9wZG93biAubWVudSB7XG4gIGxlZnQ6IDBweDtcbn1cblxuLyogRGVmYXVsdCBTaWRlIChSaWdodCkgKi9cblxuLnVpLmRyb3Bkb3duIC5yaWdodC5tZW51ID4gLm1lbnUsXG4udWkuZHJvcGRvd24gLm1lbnUgLnJpZ2h0Lm1lbnUge1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIExlZnQgRmx5b3V0IE1lbnUgKi9cblxuLnVpLmRyb3Bkb3duID4gLmxlZnQubWVudSAubWVudSxcbi51aS5kcm9wZG93biAubWVudSAubGVmdC5tZW51IHtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZHJvcGRvd24gLml0ZW0gLmxlZnQuZHJvcGRvd24uaWNvbixcbi51aS5kcm9wZG93biAubGVmdC5tZW51IC5pdGVtIC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDBlbSAwLjc1ZW0gMGVtIDBlbTtcbn1cblxuLnVpLmRyb3Bkb3duIC5pdGVtIC5sZWZ0LmRyb3Bkb3duLmljb24sXG4udWkuZHJvcGRvd24gLmxlZnQubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwZW0gMC43NWVtIDBlbSAwZW07XG59XG5cbi51aS5kcm9wZG93biAuaXRlbSAubGVmdC5kcm9wZG93bi5pY29uICsgLnRleHQsXG4udWkuZHJvcGRvd24gLmxlZnQubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbiArIC50ZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBVcHdhcmRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS51cHdhcmQuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDRweCAwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi8qIEFjdGl2ZSBVcHdhcmQgKi9cblxuLnVpLnNpbXBsZS51cHdhcmQuYWN0aXZlLmRyb3Bkb3duLFxuLnVpLnNpbXBsZS51cHdhcmQuZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMGVtIDBlbSAhaW1wb3J0YW50O1xufVxuXG4udWkudXB3YXJkLmRyb3Bkb3duLmJ1dHRvbjpub3QoLnBvaW50aW5nKTpub3QoLmZsb2F0aW5nKS5hY3RpdmUsXG4udWkudXB3YXJkLmRyb3Bkb3duLmJ1dHRvbjpub3QoLnBvaW50aW5nKTpub3QoLmZsb2F0aW5nKS52aXNpYmxlIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi8qIFNlbGVjdGlvbiAqL1xuXG4udWkudXB3YXJkLnNlbGVjdGlvbi5kcm9wZG93biAubWVudSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnVpLnVwd2FyZC5zZWxlY3Rpb24uZHJvcGRvd246aG92ZXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnVpLnVwd2FyZC5zZWxlY3Rpb24udmlzaWJsZS5kcm9wZG93bjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWkuYWN0aXZlLnVwd2FyZC5zZWxlY3Rpb24uZHJvcGRvd24sXG4udWkudmlzaWJsZS51cHdhcmQuc2VsZWN0aW9uLmRyb3Bkb3duIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwIDAgIWltcG9ydGFudDtcbn1cblxuLnVpLnVwd2FyZC5zZWxlY3Rpb24uZHJvcGRvd24udmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4udWkudXB3YXJkLnNlbGVjdGlvbi52aXNpYmxlLmRyb3Bkb3duOmhvdmVyIC5tZW51IHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2ltcGxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBEaXNwbGF5cyB3aXRob3V0IGphdmFzY3JpcHQgKi9cblxuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudTpiZWZvcmUsXG4udWkuc2ltcGxlLmRyb3Bkb3duIC5tZW51OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLnNpbXBsZS5kcm9wZG93biAubWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogLTk5OTlweCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbn1cblxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24sXG4udWkuc2ltcGxlLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLnNpbXBsZS5hY3RpdmUuZHJvcGRvd24gPiAubWVudSxcbi51aS5zaW1wbGUuZHJvcGRvd246aG92ZXIgPiAubWVudSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDEwMCUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnVpLnNpbXBsZS5kcm9wZG93biA+IC5tZW51ID4gLml0ZW06YWN0aXZlID4gLm1lbnUsXG4udWkuc2ltcGxlLmRyb3Bkb3duOmhvdmVyID4gLm1lbnUgPiAuaXRlbTpob3ZlciA+IC5tZW51IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMCUgIWltcG9ydGFudDtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4udWkuc2ltcGxlLmRpc2FibGVkLmRyb3Bkb3duOmhvdmVyIC5tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwcHg7XG4gIHdpZHRoOiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIFZpc2libGUgKi9cblxuLnVpLnNpbXBsZS52aXNpYmxlLmRyb3Bkb3duID4gLm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbHVpZC5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwZW07XG59XG5cbi51aS5mbHVpZC5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRmxvYXRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG9hdGluZy5kcm9wZG93biAubWVudSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLnVpLmZsb2F0aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICBtYXJnaW4tdG9wOiAwLjVlbSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50aW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC43NWVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWkucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiAnJztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgd2lkdGg6IDAuNWVtO1xuICBoZWlnaHQ6IDAuNWVtO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDI7XG59XG5cbi51aS5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgdG9wOiAtMC4yNWVtO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gLTAuMjVlbTtcbn1cblxuLyogVG9wIExlZnQgUG9pbnRpbmcgKi9cblxuLnVpLnRvcC5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDFlbSAwZW0gMGVtO1xufVxuXG4udWkudG9wLmxlZnQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMWVtIDBlbSAwZW07XG59XG5cbi51aS50b3AubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgdG9wOiAtMC4yNWVtO1xuICBsZWZ0OiAxZW07XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDBlbTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLyogVG9wIFJpZ2h0ICBQb2ludGluZyAqL1xuXG4udWkudG9wLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgcmlnaHQ6IDAlO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW46IDFlbSAwZW0gMGVtO1xufVxuXG4udWkudG9wLnJpZ2h0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IC0wLjI1ZW07XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxZW07XG4gIG1hcmdpbjogMGVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4vKiBMZWZ0IFBvaW50aW5nICovXG5cbi51aS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IDAlO1xuICBsZWZ0OiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAxZW07XG59XG5cbi51aS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IDFlbTtcbiAgbGVmdDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi8qIFJpZ2h0IFBvaW50aW5nICovXG5cbi51aS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51IHtcbiAgdG9wOiAwJTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMGVtIDFlbSAwZW0gMGVtO1xufVxuXG4udWkucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudTphZnRlciB7XG4gIHRvcDogMWVtO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTAuMjVlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDBlbSAwZW07XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG59XG5cbi8qIEJvdHRvbSBQb2ludGluZyAqL1xuXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnU6YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogLTAuMjVlbTtcbiAgcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMGVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xufVxuXG4vKiBSZXZlcnNlIFN1Yi1NZW51IERpcmVjdGlvbiAqL1xuXG4udWkuYm90dG9tLnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUgLm1lbnUge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwcHggIWltcG9ydGFudDtcbn1cblxuLyogQm90dG9tIExlZnQgKi9cblxuLnVpLmJvdHRvbS5sZWZ0LnBvaW50aW5nLmRyb3Bkb3duID4gLm1lbnUge1xuICBsZWZ0OiAwJTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi51aS5ib3R0b20ubGVmdC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgbGVmdDogMWVtO1xuICByaWdodDogYXV0bztcbn1cblxuLyogQm90dG9tIFJpZ2h0ICovXG5cbi51aS5ib3R0b20ucmlnaHQucG9pbnRpbmcuZHJvcGRvd24gPiAubWVudSB7XG4gIHJpZ2h0OiAwJTtcbiAgbGVmdDogYXV0bztcbn1cblxuLnVpLmJvdHRvbS5yaWdodC5wb2ludGluZy5kcm9wZG93biA+IC5tZW51OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRHJvcGRvd24gQ2FyZXRzICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb3Bkb3duJztcbiAgc3JjOiB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQUxBSUFBQXdBd1QxTXZNZ2dqQjVBQUFBQzhBQUFBWUdOdFlYQVBmdUlJQUFBQkhBQUFBRXhuWVhOd0FBQUFFQUFBQVdnQUFBQUlaMng1WmpvODJMZ0FBQUZ3QUFBQlZHaGxZV1FBUTg4YkFBQUN4QUFBQURab2FHVmhBd2NCNlFBQUF2d0FBQUFrYUcxMGVBUzRBQklBQUFNZ0FBQUFJR3h2WTJFQk5nRGVBQUFEUUFBQUFCSnRZWGh3QUFvQUZnQUFBMVFBQUFBZ2JtRnRaVmNacHU0QUFBTjBBQUFCUlhCdmMzUUFBd0FBQUFBRXZBQUFBQ0FBQXdJQUFaQUFCUUFBQVV3QlpnQUFBRWNCVEFGbUFBQUE5UUFaQUlRQUFBQUFBQUFBQUFBQUFBQUFBQUFCRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFEdzJnSGcvK0QvNEFIZ0FDQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFDQUFBQUF3QUFBQlFBQXdBQkFBQUFGQUFFQURnQUFBQUtBQWdBQWdBQ0FBRUFJUERhLy8zLy93QUFBQUFBSVBEWC8vMy8vd0FCLytNUExRQURBQUVBQUFBQUFBQUFBQUFBQUFFQUFmLy9BQThBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUlBQkpRRWxBQk1BQUJNME56WTNCVFlYRmhVVUR3RUdKd1l2QVNZMUFBVUdCd0VBQ0FVR0JvQUZDQWNHZ0FVQkVnY0dCUUVCQVFjRUNRWUhmd1lCQVFaL0J3WUFBUUFBQUc0QkpRRVNBQk1BQURjMFB3RTJNeklmQVJZVkZBY0dJeUVpSnlZMUFBV0FCZ2NJQllBR0JnVUkvd0FIQmdXQUJ3YUFCUVdBQmdjSEJnVUZCZ2NBQUFBQkFCSUFTUUMzQVc0QUV3QUFOelEvQVRZWE5oY1dIUUVVQndZbkJpOEJKalVTQm9BRkNBY0ZCZ1lGQndnRmdBYmJCd1ovQndFQkJ3UUovd2dFQndFQkIzOEdCZ0FBQUFBQkFBQUFTUUNsQVc0QUV3QUFOeEUwTnpZek1oOEJGaFVVRHdFR0l5SW5KalVBQlFZSENBV0FCZ2FBQlFnSEJnVmJBUUFJQlFZR2dBVUlCd1dBQmdZRkJ3QUFBQUVBQUFBQkFBRFp1YUtPWHc4ODlRQUxBZ0FBQUFBQTBBQkhXQUFBQUFEUUFFZFlBQUFBQUFFbEFXNEFBQUFJQUFJQUFBQUFBQUFBQVFBQUFlRC80QUFBQWdBQUFBQUFBU1VBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQkFBQUFBU1VBQUFFbEFBQUF0d0FTQUxjQUFBQUFBQUFBQ2dBVUFCNEFRZ0JrQUlnQXFnQUFBQUVBQUFBSUFCUUFBUUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU9BSzRBQVFBQUFBQUFBUUFPQUFBQUFRQUFBQUFBQWdBT0FFY0FBUUFBQUFBQUF3QU9BQ1FBQVFBQUFBQUFCQUFPQUZVQUFRQUFBQUFBQlFBV0FBNEFBUUFBQUFBQUJnQUhBRElBQVFBQUFBQUFDZ0EwQUdNQUF3QUJCQWtBQVFBT0FBQUFBd0FCQkFrQUFnQU9BRWNBQXdBQkJBa0FBd0FPQUNRQUF3QUJCQWtBQkFBT0FGVUFBd0FCQkFrQUJRQVdBQTRBQXdBQkJBa0FCZ0FPQURrQUF3QUJCQWtBQ2dBMEFHTUFhUUJqQUc4QWJRQnZBRzhBYmdCV0FHVUFjZ0J6QUdrQWJ3QnVBQ0FBTVFBdUFEQUFhUUJqQUc4QWJRQnZBRzhBYm1samIyMXZiMjRBYVFCakFHOEFiUUJ2QUc4QWJnQlNBR1VBWndCMUFHd0FZUUJ5QUdrQVl3QnZBRzBBYndCdkFHNEFSZ0J2QUc0QWRBQWdBR2NBWlFCdUFHVUFjZ0JoQUhRQVpRQmtBQ0FBWWdCNUFDQUFTUUJqQUc4QVRRQnZBRzhBYmdBdUFBQUFBQU1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPVwiKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybChcImRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSazlVVkU4QUFBVndBQW9BQUFBQUJTZ0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCRFJrWWdBQUFBOUFBQUFka0FBQUhaTERYRS8wOVRMeklBQUFMUUFBQUFZQUFBQUdBSUl3ZVFZMjFoY0FBQUF6QUFBQUJNQUFBQVRBOSs0Z2huWVhOd0FBQURmQUFBQUFnQUFBQUlBQUFBRUdobFlXUUFBQU9FQUFBQU5nQUFBRFlBUTg4YmFHaGxZUUFBQTd3QUFBQWtBQUFBSkFNSEFlbG9iWFI0QUFBRDRBQUFBQ0FBQUFBZ0JMZ0FFbTFoZUhBQUFBUUFBQUFBQmdBQUFBWUFDRkFBYm1GdFpRQUFCQWdBQUFGRkFBQUJSVmNacHU1d2IzTjBBQUFGVUFBQUFDQUFBQUFnQUFNQUFBRUFCQVFBQVFFQkNHbGpiMjF2YjI0QUFRSUFBUUE2K0J3QytCc0QrQmdFSGdvQUdWUC9pNHNlQ2dBWlUvK0xpd3dIaTJ2NGxQaDBCUjBBQUFDSUR4MEFBQUNORVIwQUFBQUpIUUFBQWRBU0FBa0JBUWdQRVJNV0d5QWxLbWxqYjIxdmIyNXBZMjl0YjI5dWRUQjFNWFV5TUhWR01FUTNkVVl3UkRoMVJqQkVPWFZHTUVSQkFBQUNBWWtBQmdBSUFnQUJBQVFBQndBS0FBMEFWZ0NmQU9nQkwveVVEdnlVRHZ5VUR2dVVEdnR2aS9lbUZZdVFqWkNPam8rUGo0MlFpd2ozbElzRmtJdVFpWTZIajRpTmhvdUdpNGFKaDRlSENQc1UreFFGaUlpR2lZYUxob3VIalllT0NQc1U5eFFGaUkrSmo0dVFDQTc3YjR2M0ZCV0xrSTJQam84STl4VDNGQVdQam8rTmtJdVFpNUNKam9nSTl4VDdGQVdQaDQySGk0YUxob21IaDRlSWlJYUpob3NJKzVTTEJZYUxoNDJIam9pUGlZK0xrQWdPKzkyZDkyOFZpNUNOa0krT0NQY1U5eFFGam8rUWpaQ0xrSXVQaVk2SGo0aU5ob3VHQ0l2N2xBV0xob21IaDRpSWg0ZUpob3VHaTRhTmlJOEkreFQzRkFXSGpvbVBpNUFJRHZ2ZGkrWVZpL2VVQll1UWpaQ09qbytQajQyUWk1Q0xrSW1PaHdqM0ZQc1VCWStJallhTGhvdUdpWWVIaUFqN0ZQc1VCWWlIaG9tR2k0YUxoNDJIajRpT2lZK0xrQWdPK0pRVStKUVZpd3dLQUFBQUFBTUNBQUdRQUFVQUFBRk1BV1lBQUFCSEFVd0JaZ0FBQVBVQUdRQ0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFSQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUE4Tm9CNFAvZy8rQUI0QUFnQUFBQUFRQUFBQUFBQUFBQUFBQUFJQUFBQUFBQUFnQUFBQU1BQUFBVUFBTUFBUUFBQUJRQUJBQTRBQUFBQ2dBSUFBSUFBZ0FCQUNEdzJ2LzkvLzhBQUFBQUFDRHcxLy85Ly84QUFmL2pEeTBBQXdBQkFBQUFBQUFBQUFBQUFBQUJBQUgvL3dBUEFBRUFBQUFCQUFBNWVtb3pYdzg4OVFBTEFnQUFBQUFBMEFCSFdBQUFBQURRQUVkWUFBQUFBQUVsQVc0QUFBQUlBQUlBQUFBQUFBQUFBUUFBQWVELzRBQUFBZ0FBQUFBQUFTVUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFCQUFBQUFTVUFBQUVsQUFBQXR3QVNBTGNBQUFBQVVBQUFDQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFEZ0FBQUFFQUFBQUFBQUlBRGdCSEFBRUFBQUFBQUFNQURnQWtBQUVBQUFBQUFBUUFEZ0JWQUFFQUFBQUFBQVVBRmdBT0FBRUFBQUFBQUFZQUJ3QXlBQUVBQUFBQUFBb0FOQUJqQUFNQUFRUUpBQUVBRGdBQUFBTUFBUVFKQUFJQURnQkhBQU1BQVFRSkFBTUFEZ0FrQUFNQUFRUUpBQVFBRGdCVkFBTUFBUVFKQUFVQUZnQU9BQU1BQVFRSkFBWUFEZ0E1QUFNQUFRUUpBQW9BTkFCakFHa0FZd0J2QUcwQWJ3QnZBRzRBVmdCbEFISUFjd0JwQUc4QWJnQWdBREVBTGdBd0FHa0FZd0J2QUcwQWJ3QnZBRzVwWTI5dGIyOXVBR2tBWXdCdkFHMEFid0J2QUc0QVVnQmxBR2NBZFFCc0FHRUFjZ0JwQUdNQWJ3QnRBRzhBYndCdUFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBXCIpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9wZG93bic7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDFlbTtcbiAgd2lkdGg6IDEuMjNlbTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi51aS5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwZDcnO1xufVxuXG4vKiBTdWIgTWVudSAqL1xuXG4udWkuZHJvcGRvd24gLm1lbnUgLml0ZW0gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBkYScgO1xufVxuXG4udWkuZHJvcGRvd24gLml0ZW0gLmxlZnQuZHJvcGRvd24uaWNvbjpiZWZvcmUsXG4udWkuZHJvcGRvd24gLmxlZnQubWVudSAuaXRlbSAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOVwiIDtcbn1cblxuLyogVXB3YXJkIERyb3Bkb3duICovXG5cbi51aS51cHdhcmQuZHJvcGRvd24gPiAuZHJvcGRvd24uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOFwiO1xufVxuXG4vKiBWZXJ0aWNhbCBNZW51IERyb3Bkb3duICovXG5cbi51aS52ZXJ0aWNhbC5tZW51IC5kcm9wZG93bi5pdGVtID4gLmRyb3Bkb3duLmljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIiA7XG59XG5cbi8qIEljb25zIGZvciBSZWZlcmVuY2Vcbi5kcm9wZG93bi5kb3duLmljb24ge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuLmRyb3Bkb3duLnVwLmljb24ge1xuICBjb250ZW50OiBcIlxcZjBkOFwiO1xufVxuLmRyb3Bkb3duLmxlZnQuaWNvbiB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ5XCI7XG59XG4uZHJvcGRvd24uaWNvbi5pY29uIHtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbn1cbiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucHJvZHVjdC5hY2NvcmRpb24gLnVpLmRyb3Bkb3duIC5kZWZhdWx0LnRleHQge1xuICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4udWkucHJvZHVjdC5hY2NvcmRpb24gLnVpLnNlbGVjdGlvbi5kcm9wZG93biA+IC50ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgei1pbmRleDogOTk5OTtcbn1cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBNb2RhbFxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE1vZGFsXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDE7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNDUlO1xuICBiYWNrZ3JvdW5kOiAjZTJlMmUyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDRweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAtbXMtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICB3aWxsLWNoYW5nZTogdG9wLCBsZWZ0LCBtYXJnaW4sIHRyYW5zZm9ybSwgb3BhY2l0eTtcbn1cblxuLnVpLm1vZGFsID4gOmZpcnN0LWNoaWxkOm5vdCguaWNvbiksXG4udWkubW9kYWwgPiAuaWNvbjpmaXJzdC1jaGlsZCArICoge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnVpLm1vZGFsID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvbnRlbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2xvc2Vcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5tb2RhbCA+IC5jbG9zZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0yLjVyZW07XG4gIHJpZ2h0OiAtMi41cmVtO1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAwLjg7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMHJlbSAwcmVtIDByZW07XG59XG5cbi51aS5tb2RhbCA+IC5jbG9zZTpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubW9kYWwgPiAuaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKSAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpICNmZmZmZmY7XG4gIG1hcmdpbjogMGVtO1xuICBwYWRkaW5nOiAxLjJyZW0gMnJlbTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBmb250LXNpemU6IDEuNmVtO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1vZGFsID4gLmNvbnRlbnQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nOiAycmVtO1xuICBiYWNrZ3JvdW5kOiAjZTJlMmUyO1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHdpZHRoOiAnJztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaW1hZ2VbY2xhc3MqPVwidG9wIGFsaWduZWRcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZVtjbGFzcyo9XCJtaWRkbGUgYWxpZ25lZFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIERlc2NyaXB0aW9uICovXG5cbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLm1vZGFsID4gLmNvbnRlbnQgPiAuaWNvbiArIC5kZXNjcmlwdGlvbixcbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmltYWdlICsgLmRlc2NyaXB0aW9uIHtcbiAgbWluLXdpZHRoOiAnJztcbiAgd2lkdGg6IDgwJTtcbiAgcGFkZGluZy1sZWZ0OiAyZW07XG59XG5cbi8qcnRsOmlnbm9yZSovXG5cbi51aS5tb2RhbCA+IC5jb250ZW50ID4gLmltYWdlID4gaS5pY29uIHtcbiAgZm9udC1zaXplOiA4cmVtO1xuICBtYXJnaW46IDBlbTtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1vZGFsIC5hY3Rpb25zIHtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi51aS5tb2RhbCAuYWN0aW9ucyA+IC5idXR0b24ge1xuICBtYXJnaW4tbGVmdDogMC43NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBSZXNwb25zaXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE1vZGFsIFdpZHRoICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVpLm1vZGFsIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTQ3LjUlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVpLm1vZGFsIHtcbiAgICB3aWR0aDogODglO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTQ0JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5tb2RhbCB7XG4gICAgd2lkdGg6IDc0JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC0zNyU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLnVpLm1vZGFsIHtcbiAgICB3aWR0aDogNTYlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTI4JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkubW9kYWwge1xuICAgIHdpZHRoOiA0MiU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtMjElO1xuICB9XG59XG5cbi8qIFRhYmxldCBhbmQgTW9iaWxlICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLnVpLm1vZGFsID4gLmhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMi4yNXJlbTtcbiAgfVxuXG4gIC51aS5tb2RhbCA+IC5jbG9zZSB7XG4gICAgdG9wOiAwLjkwNXJlbTtcbiAgICByaWdodDogMXJlbTtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB9XG59XG5cbi8qIE1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5tb2RhbCA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5tb2RhbCA+IC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkubW9kYWwgPiAuY2xvc2Uge1xuICAgIHRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLypydGw6aWdub3JlKi9cblxuICAudWkubW9kYWwgLmNvbnRlbnQgPiAuaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDBlbSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDByZW0gMHJlbSAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkubW9kYWwgPiAuY29udGVudCA+IC5pbWFnZSA+IGkuaWNvbiB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC8qcnRsOmlnbm9yZSovXG5cbiAgLnVpLm1vZGFsIC5jb250ZW50ID4gLmRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMXJlbSAwcmVtICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qIExldCBCdXR0b25zIFN0YWNrICovXG5cbiAgLnVpLm1vZGFsID4gLmFjdGlvbnMge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWkubW9kYWwgLmFjdGlvbnMgPiAuYnV0dG9ucyxcbiAgLnVpLm1vZGFsIC5hY3Rpb25zID4gLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYmFzaWMubW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIsXG4udWkuYmFzaWMubW9kYWwgPiAuY29udGVudCxcbi51aS5iYXNpYy5tb2RhbCA+IC5hY3Rpb25zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5iYXNpYy5tb2RhbCA+IC5oZWFkZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmJhc2ljLm1vZGFsID4gLmNsb3NlIHtcbiAgdG9wOiAxcmVtO1xuICByaWdodDogMS41cmVtO1xufVxuXG4vKiBUYWJsZXQgYW5kIE1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC51aS5iYXNpYy5tb2RhbCA+IC5jbG9zZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEEgbW9kYWwgdGhhdCBjYW5ub3QgZml0IG9uIHRoZSBwYWdlICovXG5cbi5zY3JvbGxpbmcuZGltbWFibGUuZGltbWVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcm9sbGluZy5kaW1tYWJsZS5kaW1tZWQgPiAuZGltbWVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnNjcm9sbGluZy5kaW1tYWJsZSA+IC5kaW1tZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi51aS5zY3JvbGxpbmcubW9kYWwge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW46IDMuNXJlbSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLnVpLnNjcm9sbGluZy5tb2RhbCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYWN0aXZlLm1vZGFsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIEZ1bGwgU2NyZWVuXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZnVsbHNjcmVlbi5tb2RhbCB7XG4gIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgbGVmdDogMi41JSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDFlbSBhdXRvO1xufVxuXG4udWkuZnVsbHNjcmVlbi5zY3JvbGxpbmcubW9kYWwge1xuICBsZWZ0OiAwZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuaGVhZGVyIHtcbiAgcGFkZGluZy1yaWdodDogMi4yNXJlbTtcbn1cblxuLnVpLmZ1bGxzY3JlZW4ubW9kYWwgPiAuY2xvc2Uge1xuICB0b3A6IDAuOTA1cmVtO1xuICByaWdodDogMXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgU2l6ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm1vZGFsIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKiBTbWFsbCAqL1xuXG4udWkuc21hbGwubW9kYWwgPiAuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbn1cblxuLyogU21hbGwgTW9kYWwgV2lkdGggKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAtNDcuNSU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWkuc21hbGwubW9kYWwge1xuICAgIHdpZHRoOiA1Mi44JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC0yNi40JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDQ0LjQlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTIyLjIlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDMzLjYlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTE2LjglO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC51aS5zbWFsbC5tb2RhbCB7XG4gICAgd2lkdGg6IDI1LjIlO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gLTEyLjYlO1xuICB9XG59XG5cbi8qIExhcmdlIE1vZGFsIFdpZHRoICovXG5cbi51aS5sYXJnZS5tb2RhbCA+IC5oZWFkZXIge1xuICBmb250LXNpemU6IDEuNmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDk1JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC00Ny41JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS5sYXJnZS5tb2RhbCB7XG4gICAgd2lkdGg6IDg4JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC00NCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiA4OC44JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC00NC40JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiA2Ny4yJTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC0zMy42JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAudWkubGFyZ2UubW9kYWwge1xuICAgIHdpZHRoOiA1MC40JTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIC0yNS4yJTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5uZXctcHZyLmxhcmdlLm1vZGFsIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi51aS5uZXctcHZyLm1vZGFsIC5mb3JtIC5maWVsZCB0ZXh0YXJlYSB7XG4gIGhlaWdodDogOGVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi51aS5tb2RhbCAuZm9ybSBpbnB1dCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51aS5oZWxwLm1vZGFsIHtcbiAgcGFkZGluZzogMWVtO1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIE5hZ1xuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIE5hZ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm5hZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDAuOTU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwZW07XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogOTk5O1xuICBtaW4taGVpZ2h0OiAwZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgYmFja2dyb3VuZDogIzU1NTU1NTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgYmFja2dyb3VuZCBlYXNlO1xuICB0cmFuc2l0aW9uOiAwLjJzIGJhY2tncm91bmQgZWFzZTtcbn1cblxuYS51aS5uYWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS5uYWcgPiAudGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMGVtIDAuNWVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLm5hZyA+IC5jbG9zZS5pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IC0wLjVlbSAwZW0gMGVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBIb3ZlciAqL1xuXG4udWkubmFnOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzU1NTU1NTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnVpLm5hZyAuY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN0YXRpY1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLm92ZXJsYXkubmFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBGaXhlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZpeGVkLm5hZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBCb3R0b21cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ib3R0b20ubmFncyxcbi51aS5ib3R0b20ubmFnIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2hpdGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcsXG4udWkuaW52ZXJ0ZWQubmFnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi51aS5pbnZlcnRlZC5uYWdzIC5uYWcgLmNsb3NlLFxuLnVpLmludmVydGVkLm5hZ3MgLm5hZyAudGl0bGUsXG4udWkuaW52ZXJ0ZWQubmFnIC5jbG9zZSxcbi51aS5pbnZlcnRlZC5uYWcgLnRpdGxlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgR3JvdXBzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubmFncyAubmFnIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS5uYWdzIC5uYWc6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4udWkuYm90dG9tLm5hZ3MgLm5hZzpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFBvcHVwXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBQb3B1cFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgLyogRml4ZXMgY29udGVudCBiZWluZyBzcXVpc2hlZCB3aGVuIGlubGluZSAobW96IG9ubHkpICovXG4gIG1pbi13aWR0aDogLW1vei1tYXgtY29udGVudDtcbiAgei1pbmRleDogMTkwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC44MzNlbSAxZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udWkucG9wdXAgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMGVtO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udWkucG9wdXAgPiAuaGVhZGVyICsgLmNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG59XG5cbi51aS5wb3B1cDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMC43NWVtO1xuICBoZWlnaHQ6IDAuNzVlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgei1pbmRleDogMjtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAwcHggMHB4ICNiM2IzYjM7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTcGFjaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucG9wdXAge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLnVpLnBvcHVwLmJvdHRvbSB7XG4gIG1hcmdpbjogMC43NWVtIDBlbSAwZW07XG59XG5cbi51aS5wb3B1cC50b3Age1xuICBtYXJnaW46IDBlbSAwZW0gMC43NWVtO1xufVxuXG4udWkucG9wdXAubGVmdC5jZW50ZXIge1xuICBtYXJnaW46IDBlbSAwLjc1ZW0gMGVtIDBlbTtcbn1cblxuLnVpLnBvcHVwLnJpZ2h0LmNlbnRlciB7XG4gIG1hcmdpbjogMGVtIDBlbSAwZW0gMC43NWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFBvaW50ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qLS0tIEJlbG93IC0tLSovXG5cbi51aS5ib3R0b20uY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMjVlbTtcbiAgdG9wOiAtMC4zMjVlbTtcbiAgbGVmdDogNTAlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYjNiM2IzO1xufVxuXG4udWkuYm90dG9tLmxlZnQucG9wdXAge1xuICBtYXJnaW4tbGVmdDogMGVtO1xufVxuXG4udWkuYm90dG9tLmxlZnQucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiAtMC4zMjVlbTtcbiAgbGVmdDogMWVtO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYjNiM2IzO1xufVxuXG4udWkuYm90dG9tLnJpZ2h0LnBvcHVwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwZW07XG59XG5cbi51aS5ib3R0b20ucmlnaHQucG9wdXA6YmVmb3JlIHtcbiAgdG9wOiAtMC4zMjVlbTtcbiAgcmlnaHQ6IDFlbTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMGVtO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDBweCAjYjNiM2IzO1xufVxuXG4vKi0tLSBBYm92ZSAtLS0qL1xuXG4udWkudG9wLmNlbnRlci5wb3B1cDpiZWZvcmUge1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IC0wLjMyNWVtO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMjVlbTtcbn1cblxuLnVpLnRvcC5sZWZ0LnBvcHVwIHtcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLnRvcC5sZWZ0LnBvcHVwOmJlZm9yZSB7XG4gIGJvdHRvbTogLTAuMzI1ZW07XG4gIGxlZnQ6IDFlbTtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLnVpLnRvcC5yaWdodC5wb3B1cCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWkudG9wLnJpZ2h0LnBvcHVwOmJlZm9yZSB7XG4gIGJvdHRvbTogLTAuMzI1ZW07XG4gIHJpZ2h0OiAxZW07XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDBlbTtcbn1cblxuLyotLS0gTGVmdCBDZW50ZXIgLS0tKi9cblxuLnVpLmxlZnQuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICByaWdodDogLTAuMzI1ZW07XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuMzI1ZW07XG4gIGJveC1zaGFkb3c6IDFweCAtMXB4IDBweCAwcHggI2IzYjNiMztcbn1cblxuLyotLS0gUmlnaHQgQ2VudGVyICAtLS0qL1xuXG4udWkucmlnaHQuY2VudGVyLnBvcHVwOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAtMC4zMjVlbTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTAuMzI1ZW07XG4gIGJveC1zaGFkb3c6IC0xcHggMXB4IDBweCAwcHggI2IzYjNiMztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBJbW1lZGlhdGUgTmVzdGVkIEdyaWQgKi9cblxuLnVpLnBvcHVwID4gLnVpLmdyaWQ6bm90KC5wYWRkZWQpIHtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlICsgMS43NXJlbSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxLjc1cmVtKTtcbiAgbWFyZ2luOiAtMC43cmVtIC0wLjg3NXJlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmxvYWRpbmcucG9wdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLnVpLmFuaW1hdGluZy5wb3B1cCxcbi51aS52aXNpYmxlLnBvcHVwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJhc2ljXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYmFzaWMucG9wdXA6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXaWRlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkud2lkZS5wb3B1cCB7XG4gIG1heC13aWR0aDogMzUwcHg7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ucG9wdXAge1xuICBtYXgtd2lkdGg6IDU1MHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZmx1aWQucG9wdXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW52ZXJ0ZWQgY29sb3JzICAqL1xuXG4udWkuaW52ZXJ0ZWQucG9wdXAge1xuICBiYWNrZ3JvdW5kOiAjMWIxYzFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkuaW52ZXJ0ZWQucG9wdXAgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQucG9wdXA6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWMxZDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZsb3dpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mbG93aW5nLnBvcHVwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc21hbGwucG9wdXAge1xuICBmb250LXNpemU6IDAuNzg1NzE0cmVtO1xufVxuXG4udWkucG9wdXAge1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG59XG5cbi51aS5sYXJnZS5wb3B1cCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLmh1Z2UucG9wdXAge1xuICBmb250LXNpemU6IDEuMTQyODVyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFByb2dyZXNzIEJhclxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFByb2dyZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkucHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG4gIG1hcmdpbjogMWVtIDBlbSAyLjVlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgcGFkZGluZzogMC4yODU3ZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi51aS5wcm9ncmVzczpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMGVtIDBlbSAyLjVlbTtcbn1cblxuLnVpLnByb2dyZXNzOmxhc3QtY2hpbGQge1xuICBtYXJnaW46IDBlbSAwZW0gMS41ZW07XG59XG5cbi8qIEluZGljYXRpbmcgKi9cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZSo9XCJ3aWR0aDogMVwiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGUqPVwid2lkdGg6IDJcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1YzVjO1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlKj1cIndpZHRoOiAzXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5YTY1Yztcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZSo9XCJ3aWR0aDogNFwiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGUqPVwid2lkdGg6IDVcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZiYjQ4O1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlKj1cIndpZHRoOiA2XCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkYzkyODtcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZSo9XCJ3aWR0aDogN1wiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGUqPVwid2lkdGg6IDhcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRkOTVjO1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlKj1cIndpZHRoOiA5XCJdLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZSo9XCJ3aWR0aDogMTAwXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2ZGE4MTtcbn1cblxuLyogSW5kaWNhdGluZyBMYWJlbCAqL1xuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiMlwiXSAubGFiZWwge1xuICBjb2xvcjogI2Q5NWM1Yztcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjNcIl0gLmxhYmVsIHtcbiAgY29sb3I6ICNkOWE2NWM7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI0XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI1XCJdIC5sYWJlbCB7XG4gIGNvbG9yOiAjZTZiYjQ4O1xufVxuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnRePVwiNlwiXSAubGFiZWwge1xuICBjb2xvcjogI2RkYzkyODtcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjdcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50Xj1cIjhcIl0gLmxhYmVsIHtcbiAgY29sb3I6ICNiNGQ5NWM7XG59XG5cbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCI5XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudF49XCIxMDBcIl0gLmxhYmVsIHtcbiAgY29sb3I6ICM2NmRhODE7XG59XG5cbi8qIFNpbmdsZSBEaWdpdHMgKi9cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZV49XCJ3aWR0aDogMSVcIl0sXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlXj1cIndpZHRoOiAyJVwiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGVePVwid2lkdGg6IDMlXCJdLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZV49XCJ3aWR0aDogNCVcIl0sXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlXj1cIndpZHRoOiA1JVwiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGVePVwid2lkdGg6IDYlXCJdLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3MgLmJhcltzdHlsZV49XCJ3aWR0aDogNyVcIl0sXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcyAuYmFyW3N0eWxlXj1cIndpZHRoOiA4JVwiXSxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzIC5iYXJbc3R5bGVePVwid2lkdGg6IDklXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NWM1Yztcbn1cblxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiMVwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCIyXCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjNcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiNFwiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI1XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjZcIl0gLmxhYmVsLFxuLnVpLmluZGljYXRpbmcucHJvZ3Jlc3NbZGF0YS1wZXJjZW50PVwiN1wiXSAubGFiZWwsXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzc1tkYXRhLXBlcmNlbnQ9XCI4XCJdIC5sYWJlbCxcbi51aS5pbmRpY2F0aW5nLnByb2dyZXNzW2RhdGEtcGVyY2VudD1cIjlcIl0gLmxhYmVsIHtcbiAgY29sb3I6ICNkOTVjNWM7XG59XG5cbi8qIEluZGljYXRpbmcgU3VjY2VzcyAqL1xuXG4udWkuaW5kaWNhdGluZy5wcm9ncmVzcy5zdWNjZXNzIC5sYWJlbCB7XG4gIGNvbG9yOiAjMzU2ZTM2O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgQ29udGVudFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQWN0aXZpdHkgQmFyICovXG5cbi51aS5wcm9ncmVzcyAuYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAwJTtcbiAgbWluLXdpZHRoOiAyZW07XG4gIGJhY2tncm91bmQ6ICM4ODg4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLyogUGVyY2VudCBDb21wbGV0ZSAqL1xuXG4udWkucHJvZ3Jlc3MgLmJhciA+IC5wcm9ncmVzcyB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHRvcDogNTAlO1xuICByaWdodDogMC41ZW07XG4gIGxlZnQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qIExhYmVsICovXG5cbi51aS5wcm9ncmVzcyA+IC5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDAuMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC40cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGVhc2U7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN1Y2Nlc3Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wcm9ncmVzcy5zdWNjZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wcm9ncmVzcy5zdWNjZXNzIC5iYXIsXG4udWkucHJvZ3Jlc3Muc3VjY2VzcyAuYmFyOjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkucHJvZ3Jlc3Muc3VjY2VzcyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjMzU2ZTM2O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFdhcm5pbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wcm9ncmVzcy53YXJuaW5nIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjMDM3ICFpbXBvcnRhbnQ7XG59XG5cbi51aS5wcm9ncmVzcy53YXJuaW5nIC5iYXIsXG4udWkucHJvZ3Jlc3Mud2FybmluZyAuYmFyOjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udWkucHJvZ3Jlc3Mud2FybmluZyA+IC5sYWJlbCB7XG4gIGNvbG9yOiAjODI1YzAxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEVycm9yXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkucHJvZ3Jlc3MuZXJyb3IgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzE4MWUgIWltcG9ydGFudDtcbn1cblxuLnVpLnByb2dyZXNzLmVycm9yIC5iYXIsXG4udWkucHJvZ3Jlc3MuZXJyb3IgLmJhcjo6YWZ0ZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnVpLnByb2dyZXNzLmVycm9yID4gLmxhYmVsIHtcbiAgY29sb3I6ICM5MTJkMmI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuYWN0aXZlLnByb2dyZXNzIC5iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi13aWR0aDogMmVtO1xufVxuXG4udWkuYWN0aXZlLnByb2dyZXNzIC5iYXI6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBwcm9ncmVzcy1hY3RpdmUgMnMgZWFzZSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1hY3RpdmUgMnMgZWFzZSBpbmZpbml0ZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWFjdGl2ZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYWN0aXZlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIERpc2FibGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGlzYWJsZWQucHJvZ3Jlc3Mge1xuICBvcGFjaXR5OiAwLjM1O1xufVxuXG4udWkuZGlzYWJsZWQucHJvZ3Jlc3MgLmJhcixcbi51aS5kaXNhYmxlZC5wcm9ncmVzcyAuYmFyOjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5pbnZlcnRlZC5wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kOiAjODg4ODg4O1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciA+IC5wcm9ncmVzcyB7XG4gIGNvbG9yOiAjZmFmYWZhO1xufVxuXG4udWkuaW52ZXJ0ZWQucHJvZ3Jlc3MgPiAubGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLnByb2dyZXNzLnN1Y2Nlc3MgPiAubGFiZWwge1xuICBjb2xvcjogIzJkYjQ3NTtcbn1cblxuLnVpLmludmVydGVkLnByb2dyZXNzLndhcm5pbmcgPiAubGFiZWwge1xuICBjb2xvcjogI2YyYzAzNztcbn1cblxuLnVpLmludmVydGVkLnByb2dyZXNzLmVycm9yID4gLmxhYmVsIHtcbiAgY29sb3I6ICNjYzE4MWU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBBdHRhY2hlZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogYm90dG9tIGF0dGFjaGVkICovXG5cbi51aS5wcm9ncmVzcy5hdHRhY2hlZCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwZW07XG59XG5cbi51aS5wcm9ncmVzcy5hdHRhY2hlZCxcbi51aS5wcm9ncmVzcy5hdHRhY2hlZCAuYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC4ycmVtO1xuICBwYWRkaW5nOiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwO1xufVxuXG4udWkucHJvZ3Jlc3MuYXR0YWNoZWQgLmJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLyogdG9wIGF0dGFjaGVkICovXG5cbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQsXG4udWkucHJvZ3Jlc3MudG9wLmF0dGFjaGVkIC5iYXIge1xuICB0b3A6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS5wcm9ncmVzcy50b3AuYXR0YWNoZWQgLmJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbTtcbn1cblxuLyogQ291cGxpbmcgKi9cblxuLnVpLnNlZ21lbnQgPiAudWkuYXR0YWNoZWQucHJvZ3Jlc3MsXG4udWkuY2FyZCA+IC51aS5hdHRhY2hlZC5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udWkuc2VnbWVudCA+IC51aS5ib3R0b20uYXR0YWNoZWQucHJvZ3Jlc3MsXG4udWkuY2FyZCA+IC51aS5ib3R0b20uYXR0YWNoZWQucHJvZ3Jlc3Mge1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ibGFjay5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWMxZDtcbn1cblxuLnVpLmJsdWUucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjgzYzA7XG59XG5cbi51aS5ncmVlbi5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkYjQ3NTtcbn1cblxuLnVpLm9yYW5nZS5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwN2I1Mztcbn1cblxuLnVpLnBpbmsucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTQ5OWE7XG59XG5cbi51aS5wdXJwbGUucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjRmOGE7XG59XG5cbi51aS5yZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzE4MWU7XG59XG5cbi51aS50ZWFsLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNWFkO1xufVxuXG4udWkueWVsbG93LnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjNjFmO1xufVxuXG4udWkuYmxhY2suaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG59XG5cbi51aS5ibHVlLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTRjOGZmO1xufVxuXG4udWkuZ3JlZW4uaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYmVkZGQ7XG59XG5cbi51aS5vcmFuZ2UuaW52ZXJ0ZWQucHJvZ3Jlc3MgLmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjg1MWI7XG59XG5cbi51aS5waW5rLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY4ZWRmO1xufVxuXG4udWkucHVycGxlLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RjNmZmO1xufVxuXG4udWkucmVkLmludmVydGVkLnByb2dyZXNzIC5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY2OTVlO1xufVxuXG4udWkudGVhbC5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkZmZmZjtcbn1cblxuLnVpLnllbGxvdy5pbnZlcnRlZC5wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTIxZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRpbnkucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IDAuODU3MTQyODZyZW07XG59XG5cbi51aS50aW55LnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDAuNWVtO1xufVxuXG4udWkuc21hbGwucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IDAuOTI4NTcxNDNyZW07XG59XG5cbi51aS5zbWFsbC5wcm9ncmVzcyAuYmFyIHtcbiAgaGVpZ2h0OiAxZW07XG59XG5cbi51aS5wcm9ncmVzcyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVpLnByb2dyZXNzIC5iYXIge1xuICBoZWlnaHQ6IDEuNzVlbTtcbn1cblxuLnVpLmxhcmdlLnByb2dyZXNzIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xufVxuXG4udWkubGFyZ2UucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogMi41ZW07XG59XG5cbi51aS5iaWcucHJvZ3Jlc3Mge1xuICBmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbi51aS5iaWcucHJvZ3Jlc3MgLmJhciB7XG4gIGhlaWdodDogMy41ZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBQcm9ncmVzc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFJhdGluZ1xuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBSYXRpbmdcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5yYXRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51aS5yYXRpbmc6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMGVtO1xufVxuXG4udWkucmF0aW5nOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKiBJY29uICovXG5cbi51aS5yYXRpbmcgLmljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMGVtO1xuICB3aWR0aDogMS4xZW07XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN0YXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogSW5hY3RpdmUgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5pY29uIHtcbiAgd2lkdGg6IDEuMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLyogQWN0aXZlIFN0YXIgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5hY3RpdmUuaWNvbiB7XG4gIGNvbG9yOiAjZmZlNjIzICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggI2NmYTMwMCwgLTFweCAwcHggMHB4ICNjZmEzMDAsIDBweCAxcHggMHB4ICNjZmEzMDAsIDFweCAwcHggMHB4ICNjZmEzMDA7XG59XG5cbi8qIFNlbGVjdGVkIFN0YXIgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLnN0YXIucmF0aW5nIC5pY29uLnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZiNzBhICFpbXBvcnRhbnQ7XG59XG5cbi51aS5zdGFyLnJhdGluZy5wYXJ0aWFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4udWkuc3Rhci5yYXRpbmcucGFydGlhbDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSGVhcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmhlYXJ0LnJhdGluZyAuaWNvbiB7XG4gIHdpZHRoOiAxLjI1ZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4vKiBBY3RpdmUgSGVhcnQgKi9cblxuLnVpLmhlYXJ0LnJhdGluZyAuYWN0aXZlLmljb24ge1xuICBjb2xvcjogI2ZmMjczMyAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4ICM5ZTAwMDAsIC0xcHggMHB4IDBweCAjOWUwMDAwLCAwcHggMXB4IDBweCAjOWUwMDAwLCAxcHggMHB4IDBweCAjOWUwMDAwO1xufVxuXG4vKiBTZWxlY3RlZCBIZWFydCAqL1xuXG4udWkuaGVhcnQucmF0aW5nIC5pY29uLnNlbGVjdGVkLFxuLnVpLmhlYXJ0LnJhdGluZyAuaWNvbi5zZWxlY3RlZC5hY3RpdmUge1xuICBjb2xvcjogI2ZmMjczMyAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSW5hY3RpdmUgSWNvbiAqL1xuXG4udWkucmF0aW5nIC5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi8qIEFjdGl2ZSBJY29uICovXG5cbi51aS5yYXRpbmcgLmFjdGl2ZS5pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG59XG5cbi8qIFNlbGVjdGVkIEljb24gKi9cblxuLnVpLnJhdGluZyAuaWNvbi5zZWxlY3RlZCxcbi51aS5yYXRpbmcgLmljb24uc2VsZWN0ZWQuYWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogZGlzYWJsZWQgcmF0aW5nICovXG5cbi51aS5kaXNhYmxlZC5yYXRpbmcgLmljb24ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBJbnRlcmFjdGluZyAoQWN0aXZlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWxlY3RlZCBSYXRpbmcgKi9cblxuLnVpLnJhdGluZy5zZWxlY3RlZCAuYWN0aXZlLmljb24ge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi51aS5yYXRpbmcuc2VsZWN0ZWQgLmljb24uc2VsZWN0ZWQsXG4udWkucmF0aW5nIC5pY29uLnNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBWYXJpYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkubWluaS5yYXRpbmcgLmljb24ge1xuICBmb250LXNpemU6IDAuN3JlbTtcbn1cblxuLnVpLnRpbnkucmF0aW5nIC5pY29uIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG5cbi51aS5zbWFsbC5yYXRpbmcgLmljb24ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4udWkucmF0aW5nIC5pY29uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4udWkubGFyZ2UucmF0aW5nIC5pY29uIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5cbi51aS5odWdlLnJhdGluZyAuaWNvbiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4udWkubWFzc2l2ZS5yYXRpbmcgLmljb24ge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JhdGluZyc7XG4gIHNyYzogdXJsKFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWdnakNCc0FBQUM4QUFBQVlHTnRZWENqMnBtOEFBQUJIQUFBQUtSbllYTndBQUFBRUFBQUFjQUFBQUFJWjJ4NVpsSmJYTVlBQUFISUFBQVJuR2hsWVdRQkdBZTVBQUFUWkFBQUFEWm9hR1ZoQStJQi9RQUFFNXdBQUFBa2FHMTBlQ3pnQUVNQUFCUEFBQUFBY0d4dlkyRXdYQ3hPQUFBVU1BQUFBRHB0WVhod0FDSUFuQUFBRkd3QUFBQWdibUZ0WmZDMW4wNEFBQlNNQUFBQlBIQnZjM1FBQXdBQUFBQVZ5QUFBQUNBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHhaUUhnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFKQUFBQUFnQUNBQUJBQUFBQUVBSU9ZRjhBYndEZkFqOEM3d2J2Qnc4SXJ3bC9DYzhTUHhaZi85Ly84QUFBQUFBQ0RtQVBBRThBendJL0F1OEc3d2NQQ0g4SmZ3blBFajhXVC8vZi8vQUFILzR4b0VFQVlRQVEvc0QrSVBvdytpRDR3UGdBOThEdllPdGdBREFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBSC8vd0FQQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUlBQVAvdEFnQUIwd0FLQUJVQUFBRXZBUThCRndjM0Z5YzNCUWMzSno4Qkh3RUhGeWNDQUxGUFQ3R0FIcDZlSG9EL0FIQVdXMzA0T0gxYkZuQUJHUnFnb0JwOHNGTlRzSHl5T254WUVuRnhFbGg4T2dBQUFBQUNBQUQvN1FJQUFkTUFDZ0FTQUFBQkx3RVBBUmNITnhjbk53VXhFUjhCQnhjbkFnQ3hUMCt4Z0I2ZW5oNkEvd0E0ZlZzV2NBRVpHcUNnR255d1UxT3dmTElCSFhFU1dIdzZBQUFBQVFBQS8rMENBQUhUQUFvQUFBRXZBUThCRndjM0Z5YzNBZ0N4VDAreGdCNmVuaDZBQVJrYW9LQWFmTEJUVTdCOEFBQUFBQUVBQUFBQUFnQUJ3QUFyQUFBQkZBNENCekVIRGdNaklpNENMd0V1QXpVMFBnSXpNaDRDRno0RE16SWVBaFVDQUFjTUVndWdCZ3dNREFZR0RBd01CcUFMRWd3SEZ5ZzJIaEFmR3hrS0Noa2JIeEFlTmlnWEFTMFFIeHNaQ3FBR0N3a0dCUWtMQnFBS0dSc2ZFQjQyS0JjSERCSUxDeElNQnhjb05oNEFBQUFBQWdBQUFBQUNBQUhBQUNzQVdBQUFBVFF1QWlNaURnSUhMZ01qSWc0Q0ZSUWVBaGN4Rng0RE16SStBajhCUGdNMUR3RWlGQ0lHTVRBbUlqUWpKeTRETlRRK0FqTXlIZ0lmQVRjK0F6TXlIZ0lWRkE0Q0J3SUFGeWcySGhBZkd4a0tDaGtiSHhBZU5pZ1hCd3dTQzZBR0RBd01CZ1lNREF3R29Bc1NEQWRib2dFQkFRRUJBYUlHQ2djRURSY2VFUWtSRUE0R0x5OEdEaEFSQ1JFZUZ3MEVCd29HQVMwZU5pZ1hCd3dTQ3dzU0RBY1hLRFllRUI4YkdRcWdCZ3NKQmdVSkN3YWdDaGtiSHhBK29nRUJBUUdpQmc0UUVRa1JIaGNOQkFjS0JqUTBCZ29IQkEwWEhoRUpFUkFPQmdBQkFBQUFBQUlBQWNBQU1RQUFBUlFPQWdjeEJ3NERJeUl1QWk4QkxnTTFORDRDTXpJZUFoY0hGd2MzSnpjK0F6TXlIZ0lWQWdBSERCSUxvQVlNREF3R0Jnd01EQWFnQ3hJTUJ4Y29OaDRLRlJNU0NDOXdRTEJ3SndVSkNna0ZIallvRndFdEVCOGJHUXFnQmdzSkJnVUpDd2FnQ2hrYkh4QWVOaWdYQXdVSUJVdEFvTUJBT3dFQ0FRRVhLRFllQUFBQkFBQUFBQUlBQWJjQUtnQUFFelEzTmpNeUZ4WVhGaGNXRnpZM05qYzJOell6TWhjV0ZSUVBBUVlqSWk4QkppY21KeVluSmljbU5RQWtKVUFSRXhJUUVBc01DZ29NQ3hBUUVoTVJRQ1VrUWJJR0J3Y0dzZ01GQlFzS0NRa0dCd0V4UHlNa0JnWUxDZ2tLQ2dvS0NRb0xCZ1lrSXo4L1Fhd0ZCYXdDQmdVTkRnNE9GUlFUQUFBQUFRQUFBQTBCMndIU0FDWUFBQk0wUHdJMkZ6WWZBaFlWRkE4QkZ4UVZGQWNHQnlZdkFRY0dCeVluSmpVMFB3RW5KalVBRUk5QkJRa0lCa0NQRUFkb0dRTURCZ1VHZ0lFR0JRWURBd0VZYUFjQkl3c0NGb0VNQVFFTWdSWUNDd1lJWkpBQkJRVUZBd0VCQWtWRkFnRUJBd1VGQXdPUVpBa0ZBQUFBQUFJQUFBQU5BZHNCMGdBa0FDNEFBQk0wUHdJMkZ6WWZBaFlWRkE4QkZ4UVZGQWNtTHdFSEJnY21KeVkxTkQ4Qkp5WTFId0VITnhjbk55OEJCd0FRajBFRkNRZ0dRSThRQjJnWkRBVUdnSUVHQlFZREF3RVlhQWMvV0JWc2F4UlhlRFkyQVNNTEFoYUJEQUVCRElFV0Fnc0dDR1NRQVFVTkFRRUNSVVVDQVFFREJRVURBNUJrQ1FVUlZYZzRPSGhWRVc1dUFBQUJBQ01BS1FIZEFYd0FHZ0FBTnpRL0FUWVhOaDhCTnpZWE5oOEJGaFVVRHdFR0J5WXZBU1kxSXdnbUNBd0xDRlM4Q0FzTUNDWUlDUFVJREFzSWpnalNDd2ttQ1FFQkNWUzdDUUVCQ1NZSkNnMEg5Z2NCQVFlUEJ3d0FBQUVBSHdBZkFYTUJjd0FzQUFBM05EOEJKeVkxTkQ4Qk5qTXlId0UzTmpNeUh3RVdGUlFQQVJjV0ZSUVBBUVlqSWk4QkJ3WWpJaThCSmpVZkNGUlVDQWduQ0F3TENGUlVDQXdMQ0NjSUNGUlVDQWduQ0FzTUNGUlVDQXNNQ0NjSVlnc0lWRlFJREFzSUp3Z0lWRlFJQ0NjSUN3d0lWRlFJQ3d3SUp3Z0lWRlFJQ0NjSURBQUFBQUFDQUFBQUpRRkpBYmNBSHdBckFBQTNOVFEzTmpzQk5UUTNOak15RnhZZEFUTXlGeFlkQVJRSEJpTWhJaWNtTlRjek5UUW5KaU1pQndZZEFRQUlDQXNLSlNZMU5DWW1DUXNJQ0FnSUMvN3RDd2dJVzVNV0ZSNGZGUlpBcFFzSUNEYzBKaVltSmpRM0NBZ0xwUXNJQ0FnSUM4QTNIaFlWRlJZZU53QUFBUUFBQUFjQmJnRzNBQ0VBQURjUk5EYzJOell6SVRJWEZoY1dGUkVVQndZSEJpTWlMd0VIQmlNaUp5WW5KalVBQmdVS0JnWUJMQVlHQ2dVR0JnVUtCUWNPQ241K0NnNEdCZ29GQmljQmNBb0lDQU1EQXdNSUNBcitrQW9JQ0FRQ0NYbDVDUUlFQ0FnS0FBQUFBd0FBQUNVQ0FBRnVBQmdBTVFCS0FBQTNORGMyTnpZek1oY1dGeFlWRkFjR0J3WWpJaWNtSnlZMU14WVhGak15TnpZM0ppY1dGUlFIQmlNaUp5WTFORGNHQnpjVUZ4WXpNamMyTlRRM05qTXlOelkxTkNjbUl5SUhCaFVBQmloRFJFdExSRU1vQmdZb1EwUkxTMFJES0FZbEpqazVRME01T1NZclFSRW1KVFUxSlNZUlFTdUVCQVFHQmdRRUVSRVpCZ1FFQkFRR0pCa2F5UW9LUVNnb0tDaEJDZ29LQ2tFb0p5Y29RUW9LT2lNakl5TTZSQ0VlSWpVbUpTVW1OU0llSVVRbEJnUUVCQVFHR0JJUkJBUUdCZ1FFR2hvakFBQUFCUUFBQUFrQ0FBR0pBQ3dBT0FCUkFHZ0FjQUFBTnpRM05qYzJNeklYTnpZek1oY1dGeFlYRmhjV0Z4WVZGREVHQndZUEFRWWpJaWNtTlRRM0ppY21KeVkxTXhZWE55WW5KalUwTndZSE54UVhGak15TnpZMU5EYzJNekkzTmpVMEp5WWpJZ2NHRlJjM05qYzJOeVluTnhZWEZoY1dGUlFIQmdjR0J3WWpQd0VXRlJRSEJnY0FCaXRCUVUwWkdoQURCUUVFQkFVRkJBVUVCUUVFSGp3OEhnNERCUVFpQlEwcEl5SVpCaVV2U3hZWkRnNFJRU3VFQkFRR0JnUUVFUkVaQmdRRUJBUUdKQmthVnhVOU16UWlJREFTR3hrWkVBWUdDeFFyT0RrL0xsQUNGeFlseVFzSlF5Y25CUndFQWdFREF3SURBd0lCQXdVQ05teHNOaGtGRkFNRkJCVVRIaDhuQ1F0S0lTZ1NIQnNmSWg0aFJDVUdCQVFFQkFZWUVoRUVCQVlHQkFRYUdpUEpKUVVpSWpZeklTQVNHaGtiQ2dvS0NoSVhNUnNiVVpBTkN5Z2hJQThBQUFNQUFBQUFBYmNCMndBNUFFb0FsQUFBTnpVME56WTdBVFkzTmpjMk56WTNOamMyTXpJWEZoY1dGUlFITXpJWEZoVVVCeFlWRkFjVUZSUUhGZ2NHS3dFaUp5WW5KaXNCSWljbU5UY1VGeFl6TWpjMk5UUW5KaU1pQndZVkZ6TXlGeFlYRmhjV0Z4WVhGaGNXT3dFeU5UUW5OamMyTlRRbk5qVTBKeVluTmpjMk5UUW5KaXNCTkRjMk5UUW5KaU1HQndZSEJnY0dCd1lIQmdjR0J3WUhCZ2NHQndZckFSVUFDd29RVGdvZEVRNEdCQU1GQmd3TER4Z1RFd29LRGpNZEZoWU9BZ29SQVJrWktDVWJHeHNqSVFaU0VBb0xKUVVGQ0FjR0JRVUdCd2dGQlVrSkJBVUZCQVFIQndNREJ3Y0NQQ1VqTndJSkJRVUZEd01EQkFrR0Jnc0xEbVVPRGdvSkd3Z0RBd1lGREFZUUFRVUdBd1FHQmdZRkJnVUdCZ1FKU2JjUEN3c0dKaFVQQ0JFUkV4TU1DZ2tKRkJRaEd4d1dGUjRaRlFvS0ZoTUdCaDBXS0JjWEJnY01EQW9MRHhJSEJRWUdCUWNJQlFZR0JRZ1NBUUVCQVFJQ0FRRURBZ0VVTHdnSUJRb0xDZ3NKRGhRSENRa0VBUTBOQ2c4TEN4QWRIUkVjRFE0SUVCRVRFdzBHRkFFSEJ3VUVDQWdGQlFVRkFnTzNBQUFEQUFELzJ3RzNBYmNBUEFCTkFKa0FBRGMxTkRjMk93RXlOelkzTmpzQk1oY1dCeFVXRlJRVkZoVVVCeFlWRkFjR0t3RVdGUlFIQmdjR0l5SW5KaWNtSnlZbkppY21KeVluSXlJbkpqVTNGQmNXTXpJM05qVTBKeVlqSWdjR0ZSY3pNaGNXRnhZWEZoY1dGeFlYRmhjV0Z4WVhGaGNXRnpJM05qVTBKeVkxTXpJM05qVTBKeVlqTmpjMk5UUW5OalUwSnlZbk5qVTBKeVlyQVNJSElnY0dCd1lIQmdjR0l3WXJBUlVBQ3dvUVVnWWhKUnNiSGlBb0dSa0JFUW9DRGhZV0hUTU9DZ29URXhnUEN3b0ZCZ0lCQkFNRkRoRWRDazRRQ2dzbEJRVUlCd1lGQlFZSENBVUZTUWtFQmdZRkJnVUdCZ1lFQXdZRkFSQUdEQVVHQXdNSUd3a0tEZzVsRGdzTEJnWUpCQU1ERHdVRkJRa0NEZzRaSlNVOEFnY0hBd01IQndRRUJRVUVDYmUzRHdzS0RBd0hCaGNXSndJV0hRWUdFeFlLQ2hVWkhoWVZIUm9pRXhRSkNnc0pEZzRNREF3TkJnNFdKUWNMQ3cra0J3VUdCZ1VIQ0FVR0JnVUlwQU1DQlFZRkJRY0lCQVVIQndJVEJ3d1RFeEVSQncwT0hCRWRIUkFMQ3c4S0RRMEZDUWtIRkE0SkN3b0xDZ1VJQ0JnTUN4VURBZ0VCQWdNQkFRRzNBQUFBQVFBQUFBMEE3Z0hTQUJRQUFCTTBQd0kyRnhFSEJnY21KeVkxTkQ4Qkp5WTFBQkNQUVFVSmdRWUZCZ01EQVJob0J3RWpDd0lXZ1F3Qi9vTkZBZ0VCQXdVRkF3T1FaQWtGQUFBQUFBSUFBQUFBQWdBQnR3QXFBRmtBQUJNME56WXpNaGNXRnhZWEZoYzJOelkzTmpjMk16SVhGaFVVRHdFR0l5SXZBU1luSmljbUp5WW5KalV6RkI4Qk56WTFOQ2NtSnlZbkppY21JeUlIQmdjR0J3WUhCaU1pSnlZbkppY21KeVlqSWdjR0J3WUhCZ2NHRlFBa0pVQVJFeElRRUFzTUNnb01DeEFRRWhNUlFDVWtRYklHQndjR3NnTUZCUXNLQ1FrR0J5VTFwcVkxQmdZSkNnNE5EZzBQRGhJUkRnOEtDZ2NGQ1FrRkJ3b0tEdzRSRWc0UERRNE5EZ29KQmdZQk1UOGpKQVlHQ3dvSkNnb0tDZ2tLQ3dZR0pDTS9QMEdzQlFXc0FnWUZEUTRPRGhVVUV6QTFvSjgyTUJjU0Vnb0xCZ2NDQWdjSEN3c0tDUWdIQndnSkNnc0xCd2NDQWdjR0N3b1NFaGNBQUFBQ0FBQUFCd0Z1QWJjQUlRQW9BQUEzRVRRM05qYzJNeUV5RnhZWEZoVVJGQWNHQndZaklpOEJCd1lqSWljbUp5WTFQd0VmQVJFaEVRQUdCUW9HQmdFc0JnWUtCUVlHQlFvRkJ3NEtmbjRLRGdZR0NnVUdKWklaZWY3Y0p3RndDZ2dJQXdNREF3Z0lDdjZRQ2dnSUJBSUplWGtKQWdRSUNBb0lqUmwwQVdQK25RQUFBQUFCQUFBQUpRSGJBYmNBTWdBQU56VTBOelk3QVRVME56WXpNaGNXSFFFVUJ3WXJBU0luSmowQk5DY21JeUlIQmgwQk16SVhGaDBCRkFjR0l5RWlKeVkxQUFnSUM4QW1KalExSmlVRkJRZ1NDQVVGRmhVZkhoVVdIQXNJQ0FnSUMvN3RDd2dJUUtVTENBZzNOU1VtSmlVMVNRZ0ZCZ1lGQ0VrZUZoVVZGaDQzQ0FnTHBRc0lDQWdJQ3dBQUFBSUFBUUFOQWRzQjBnQWlBQzBBQUJNMlB3STJNeklmQWhZWEZnOEJGeFlIQmlNaUx3RUhCaU1pSnlZL0FTY21OeDhDTHdFL0FTOENFd0VEREpCQUJnZ0pCVUdPRGdJRENtY1lBZ1FDQ0FNSWY0SUZCZ1lFQWdFWmFRZ0M3aEJiRWdJTlNua0lMZ0VCSmdnQ0ZZSUxDNElWQWdnSUNXV1BDZ1VGQTBSRUF3VUZDbzlsQ1FpcENUQm1FdzFIRWhGYy91MEFBQUFEQUFBQUFBSEpBYmNBRkFBbEFIa0FBRGMxTkRjMk93RXlGeFlkQVJRSEJpc0JJaWNtTlRjVUZ4WXpNamMyTlRRbkppTWlCd1lWRnpVME56WXpOamMyTnpZM05qYzJOelkzTmpjMk56WTNOak15RnhZWEZoY1dGeFlYRmhVVUZSUUhCZ2NHQnhRSEJnY0dCek15RnhZVkZBY1dGUllIRmdjR0J4WUhCZ2NqSWljbUp5WW5KaWNpSnlZMUFBVUdCMU1IQlFZR0JRZFRCd1lGSlFVRkNBY0dCUVVHQndnRkJXUUZCUWdHRHc4T0ZBa0ZCQVFCQVFNQ0FRSUVCQVlGQnc0S0NnY0hCUVFDQXdFQkFnTURBZ1lDQWdJQkFVOFhFQkFRQlFFT0JRVUVDd01SRWlZbEV4WVhEQXdXSkFvSEJRWTN0d2NHQlFVR0I3Y0lCUVVGQlFna0J3WUZCUVlIQ0FVR0JnVUlKTGNIQlFZQkVCQVRHUWtGQ1FnR0JRd0xCZ2NJQ1FVR0F3TUZCQWNIQmdZSUNRUUVCd3NMQ3dZR0NnSURCQU1DQkJFUUZoa1NEQW9WRWhBUkVBc2dGQlVCQkFVRUJBY01BUVVGQ0FBQUFBQURBQUQvMndISkFaSUFGQUFsQUhrQUFEY1VGeFlYTnhZM05qMEJOQ2NtQnljR0J3WWRBVGMwTnpZM0ZoY1dGUlFIQmljR0p5WTFGelUwTnpZM0ZqYzJOelkzTmpjWE5oY1dCeFlYRmdjV0J4UUhGaFVVQndZSEp4WVhGaGNXRlJZWEZoY1dGUlFWRkFjR0J3WUhCZ2NHQndZbkJpY21KeVluSmljbUp5WW5KaWNtSnlZbkppY2lKeVkxQUFVR0IxTUhCUVlHQlFkVEJ3WUZKUVVGQ0FjR0JRVUdCd2dGQldRR0JRY0tKQllNREJjV0V5VW1FaEVEQ3dRRkJRNEJCUkFRRUJkUEFRRUNBZ0lHQWdNREFnRUJBd0lFQlFjSENnb09Cd1VHQkFRQ0FRSURBUUVFQkFVSkZBNFBEd1lJQlFXbEJ3WUZBUUVCQndRSnRRa0VCd0VCQVFVR0I3ZVRCd1lFQVFFRUJnY0pCQVlCQVFZRUNaUzRCd1lFQWdFTkJ3VUNCZ01CQVFFWEV5RUpFaEFSRUJjSURoQWFGaEVQQVFFRkFnUUNCUUVMQlFjS0RBa0lCQVVIQ2dVR0J3Z0RCZ0lFQVFFSEJRa0lCd1VNQ3djRUNnY0dDUm9SRVE4Q0JnUUlBQUFBQVFBQUFBRUFBSnRoNTdkZkR6ejFBQXNDQUFBQUFBRFAvR09EQUFBQUFNLzhZNE1BQVAvYkFnQUIyd0FBQUFnQUFnQUFBQUFBQUFBQkFBQUI0UC9nQUFBQ0FBQUFBQUFDQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBSEFBQUFBQUFBQUFBQUFBQUFBRUFBQUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWR3QUFBSGNBQUFDQUFBakFaTUFId0ZKQUFBQmJnQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQUFBRUFBQUFDQUFBQUFXNEFBQUhjQUFBQjNBQUJBZHdBQUFIY0FBQUFBQUFBQUFvQUZBQWVBRW9BY0FDS0FNb0JRQUdJQWN3Q0NnSlVBb0lDeGdNRUF6b0RwZ1JLQlJnRjdBWVNCcGdHMmdjZ0Iyb0lHQWpPQUFBQUFRQUFBQndBbWdBRkFBQUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0QXJnQUJBQUFBQUFBQkFBd0FBQUFCQUFBQUFBQUNBQTRBUUFBQkFBQUFBQUFEQUF3QUlnQUJBQUFBQUFBRUFBd0FUZ0FCQUFBQUFBQUZBQllBREFBQkFBQUFBQUFHQUFZQUxnQUJBQUFBQUFBS0FEUUFXZ0FEQUFFRUNRQUJBQXdBQUFBREFBRUVDUUFDQUE0QVFBQURBQUVFQ1FBREFBd0FJZ0FEQUFFRUNRQUVBQXdBVGdBREFBRUVDUUFGQUJZQURBQURBQUVFQ1FBR0FBd0FOQUFEQUFFRUNRQUtBRFFBV2dCeUFHRUFkQUJwQUc0QVp3QldBR1VBY2dCekFHa0Fid0J1QUNBQU1RQXVBREFBY2dCaEFIUUFhUUJ1QUdkeVlYUnBibWNBY2dCaEFIUUFhUUJ1QUdjQVVnQmxBR2NBZFFCc0FHRUFjZ0J5QUdFQWRBQnBBRzRBWndCR0FHOEFiZ0IwQUNBQVp3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCSkFHTUFid0JOQUc4QWJ3QnVBQzRBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUms5VVZFOEFBQmNVQUFvQUFBQUFGc3dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRSa1lnQUFBQTlBQUFFdUVBQUJMaG82VHZJRTlUTHpJQUFCUFlBQUFBWUFBQUFHQUlJd2diWTIxaGNBQUFGRGdBQUFDa0FBQUFwS1BhbWJ4bllYTndBQUFVM0FBQUFBZ0FBQUFJQUFBQUVHaGxZV1FBQUJUa0FBQUFOZ0FBQURZQkdBZTVhR2hsWVFBQUZSd0FBQUFrQUFBQUpBUGlBZjFvYlhSNEFBQVZRQUFBQUhBQUFBQndMT0FBUTIxaGVIQUFBQld3QUFBQUJnQUFBQVlBSEZBQWJtRnRaUUFBRmJnQUFBRThBQUFCUFBDMW4wNXdiM04wQUFBVzlBQUFBQ0FBQUFBZ0FBTUFBQUVBQkFRQUFRRUJCM0poZEdsdVp3QUJBZ0FCQURyNEhBTDRHd1A0R0FRZUNnQVpVLytMaXg0S0FCbFQvNHVMREFlTFp2aVUrSFFGSFFBQUFQMFBIUUFBQVFJUkhRQUFBQWtkQUFBUzJCSUFIUUVCQncwUEVSUVpIaU1vTFRJM1BFRkdTMUJWV2w5a2FXNXplSDJDaDR4eVlYUnBibWR5WVhScGJtZDFNSFV4ZFRJd2RVVTJNREIxUlRZd01YVkZOakF5ZFVVMk1ETjFSVFl3TkhWRk5qQTFkVVl3TURSMVJqQXdOWFZHTURBMmRVWXdNRU4xUmpBd1JIVkdNREl6ZFVZd01rVjFSakEyUlhWR01EY3dkVVl3T0RkMVJqQTRPSFZHTURnNWRVWXdPRUYxUmpBNU4zVkdNRGxEZFVZeE1qTjFSakUyTkhWR01UWTFBQUFDQVlrQUdnQWNBZ0FCQUFRQUJ3QUtBQTBBVmdDV0FMMEJBZ0dNQWVRQ2J3THdBNGNENVFSMEJRTUZkZ1pnQjhNSmtRdHhDN29NMlExakRnZ09tUkFZRVpyOGxBNzhsQTc4bEE3N2xBNzRsUGV0RmZ0RnBUejNORHo3TlB0RmNmY1UreEJ0KzBUM010NzNNamh0OTBUM0ZQY1FCZnVVKzBZVit3UlJvZmNRTU9QM0VaM0Q5d1hEK3dYM0VYa3dNNkg3RVBzRXhRVU8rSlQzclJYN1JhVTg5elE4K3pUN1JYSDNGUHNRYmZ0RTl6TGU5ekk0YmZkRTl4VDNFQVg3bFB0R0ZZdUxpL2V4dy9zRjl4RjVNRE9oK3hEN0JNVUZEdmlVOTYwViswV2xQUGMwUFBzMCswVng5eFQ3RUczN1JQY3kzdmN5T0czM1JQY1U5eEFGRHZpVTk4RVZpMkI0Wkc1d0NJdUwrelQ3TkFWN2UzdDdlNHQ3aTN1YmU1c0krelQzTkFWdXBuaXlpN2FMM00zTjNJdTJpN0o0cG02bXFMS2V0b3ZjaTgxSml6b0lEdmlVOThFVmk5eEp6VHFMWUl0a2VIQnVjS2hrbm1DTE9vdEpTWXM2aTJDZVpLaHdDSXVMOXpUN05BV2JlNXQ3bTR1Ymk1dWJtNXNJOXpUM05BV29wcDZ5aTdZSU1FMFYremI3TmdXS2lvcUtpb3VLaTRxTWlvd0kremIzTmdWNm00R2hpNk9MdWJDd3VZdWppNkdCbTNvSXVsZTZ2d1dibktHVm80dTVpN0JtaTEyTGM0RjFlbnNJRHZpVTk4RVZpMkI0Wkc1d0NJdUwrelQ3TkFWN2UzdDdlNHQ3aTN1YmU1c0krelQzTkFWdXBuaXlpN2FMM00zTjNJdW5pNldEb1g0SVhFRDNCRXRMK3pUM1JQZFUrd1RMc3NZRmw0NllqWmlMM0l2TlNZczZDQTZMOThVVmk3V1hyS09pbzZPdGw3YUxsb3VYaVppSGw0ZVdoWmFFbG9TVWhaS0ZrNFNTaFpLRWtwS1NrWk9Ta3BHVWtaYVNDSmFTbHBHWGo1aVBsNDJXaTdhTHJYK2pjNk4wbDJxTFlZdGhkV0JnWUFqN1J2dEFCWWVJaDRtR2k0YUxoNDJIamdqN1J2ZEFCWW1OaVkySGo0aU9ocEdEbElTVWhaV0ZsSVdWaHBhSG1ZYVlpWmlMbUFnT1o0djN0eFdMa3BDUGxvMEk5eU9nelBjV0JZNlNrSStSaTVDTGtJZVBoQWpMK3hiM0kzWUZsb21RaDR1RWk0YUpoNGFHQ0NNbXBQc2pCWXVLaTRtTGlJdUhpb2lKaUltSWlJcUhpNGlMaDR5SGpRajdGTS83RlVjRmg0bUhpb2lMaDR1SWpJbU9pWTZLam91UGk0eUxqWXlPQ0tQM0l5UHdCWWFRaVpDTGp3Z09aNHYzdHhXTGtwQ1BsbzBJOXlPZ3pQY1dCWTZTa0krUmk1Q0xrSWVQaEFqTCt4YjNJM1lGbG9tUWg0dUVpNGFKaDRhR0NDTW1wUHNqQll1S2k0bUxpSXVDaDRhRGk0aUxoNHlIalFqN0ZNLzdGVWNGaDRtSGlvaUxoNHVJakltT2lZNktqb3VQaTR5TGpZeU9DS1AzSXlQd0JZYVFpWkNMandqS2VSWGpOM2I3RGZjQXhQWlNkL2NONHQvN0RKMVY5d0ZWK3dFRkRxNzNaaFdMazQyUmtaRUlzYklGa1pDUmpwT0xrb3VTaUpDR0NOODI5MUQzVUFXUWtKS09rb3VUaTVHSWtZWUlzV1FGa1lhTmhJdUVpNE9KaFlXRkNQdUorNGtGaFlXRmlZT0xoSXVFallhUkNQc2k5eUlGaFpDSmtvdVNDQTc3QWFydEZZdVNqcEtRa0FqZjN6ZmZCWWFRaUpLTGs0dVNqcEtRa0FpeXNnV1JrSkdPazR1U2k1S0lrSVlJM3pmZjN3V1FrSktPazR1U2k1S0lrSVlJc21RRmtJYU9oSXVFaTRPSWhJYUdDRGMzM3pjRmtJYU9oSXVFaTRPSWhZYUZDR1JrQllhR2hJaUVpNE9MaEk2R2tBZzMzemMzQllhR2hJaUVpNE9MaFk2RmtBaGtzZ1dHa1lpUmk1TUlEdnRMaThzVmkvYzVCWXVTanBLUWtKQ1FrbzZTaXdpVmk0dkNCWXV1bDZta3BLU2txcGl1aTY2THFYNmtjcVJ5bUcyTGFBaUxWSlNMQlpLTGtvaVFocENHam9TTGhBaUwremtGaTRPSWhZYUdob1dFaVlTTENQdW5pd1dFaTRTTmhwR0drSWlSaTVNSTV2ZFVGZmNuaTR2Q0JZdWZoSng4bW4yWmVwSjNpM2FMZW9SOWZYMThnM3FMZHdpTFZBVU8reWFMc2hXTCtBUUZpNUdOa1krUmpwQ1FqNUtOajQyUGpJK0xDUGZBaXdXUGk0K0tqNG1SaVpDSGo0YVBoWTJGaTRVSWkvd0VCWXVFaVlXSGhvZUdob2VGaUlpS2hvcUhpNEdMaEk2RWtRajdFdmNOK3hMN0RRV0VoWU9JZ291SGk0ZUxoNDJFam9hUGlKQ0hrSW1SaTVJSURvdjNYUldMa28yUmo1S2x0cSt2dUtXNHBidVp2WXU5aTd0OXVIRzRjYTlucFdDUGhJMkZpNFNMaFltRWg0UnhZR2RvWG5BSVhuRmJmbG1MV1l0Ym1GNmxYcVpucm5HMmg1S0prb3VSQ0xDTEZhUmtxMnl4ZExGMHRIKzRpN2lMdEpleG9yR2lxNnFrc202NFo2MWdvWloza1hhTGRJdG5mbTF5Y25KeWJYOW9pd2hvaTIyWGNxUnlwSDZwaTYrTG9wR2dscDlnZFdkcGJsNEk5eGl3Rll1SGpJaU9pSTZJam9xUGk0K0xqb3lPam8yT2pZNkxqNHVia0ptWGw1ZVdtWkdiaTQrTGpveU9qbzJPalk2TGp3aUxqNG1PaVk2SWpZaU5oNHR6aTNlQ2VucDZlb0ozaTNNSURvdjNYUldMa28yU2o1R291Syt1dHFXM3BicVl2b3VjaTV5Sm5JZ0ltNmNGalk2TmpJK0xqSXVOaTQySmpZcU9pbytKam9tT2lZNktqb21PaVk2SmpvcU5pb3lLam9tTWlZdUhpNHFMaW91TENIZG5iVlZqUTJORGJWVjNad2g5Y2dXSmlJaUppSXVKaTM2U2RKaUlqWW1PaTQ2TGpZK1VsSmx2bDNLY2RKOTBvSGVpZTZXSGtZbVNpNUlJc0lzVnFscTBaNzExQ0tHekJYcVhmcHFDbm9LZGhwNkxvSXVpa2FDV24yQjFaMmx1WGdqM0dMQVZpNGVNaUk2SWpvaU9pbytMajR1T2pJNk9qWTZOam91UGk1dVFtWmVYbDVhWmtadUxqNHVPakk2T2pZNk5qb3VQQ0l1UGlZNkpqb2lOaUkySGkzT0xkNEo2ZW5wNmduZUxjd2ppKzEwVm9MQUZ0SSt3bUsyaHJxS25xS0t2ZHExd3AydWhDSjJyQloxL25IeWNlcHg2bUhxV2VZK0VqWVdMaEl1RWlZV0hoSVIvZ0gxK2ZHOXFhWEptZVdWNVk0Smhpd2k1M0JYYjl5UUZqSUtNZzR1RWkzQ0RjM3gxZkhWM2ZIT0JDQTZMMUJXTDkwc0ZpNVdQbEpLU2twS1RqNWFMQ05tTEJaS1BtSnFlcEphWmxaZVZsWStRajVPTmw0MldqcGVPbUkrWWtaV1RrNU9TazQ2Vmk1dUxtWWlZaFppRmxJR1NmZ2lTZm81NWkzV0xlWWQ1Z1hnSXZvc0ZuNHVjaEpsOG1uMlNlb3QzaTNxR2ZJSjlqWVNMaFl1RWkzeUlmb1IraTRlTGg0dUhpM2VHZW45OWkzQ0RkbnQ4Q0h0OGRZTndpd2htaXdWNWkzbU5lWTk1a0hlUmM1TjFrMzZQaDRzSU9Zc0ZnSXVEam9TU2hKS0hsSXVWQ0xDZEZZdUdqSWVQaUkrSGo0bVFpNUNMajQyUGo0Nk9qWStMa0l1UWlaQ0lqb2VQaDQyR2k0YUxoNG1IaDRlSWlvYUxoZ2pVZVJXVWl3V05pNDZMajRxT2k0K0tqWXFPaTQrS2o0bVFpbzZLallxTmlvK0tqNG1RaW82S2pJcXpmcXVFcElzSXJvc0ZyNHVlbW91cmk1Q0trWXFRa1k2UWtJNlNqcEtOa291U2k1S0prb2lSbFpXUWxvdVlpNUNLa0ltUmlaR0pqNGlPQ0pHTWtJK1BsSStValpLTGtvdVZpSk9EazRTU2dvK0Npd2dtaXdXTGxwQ2FsSjZVbnBDYmk1YUxub2lZaEpTRmxIK1FlWXVHaG9lRGlZQ0pmNGgvaDMrSWZvV0JnNEtIaDRTQ2dINElpNHFJaVlpR2g0YUloNG1JaUlpSWg0ZUdoNGFIaDRlSGlJaUhpSWVIaUlpSGlJZUtoNG1JaW9pTENJS0xpL3RMQlE2TDkwc1ZpL2RMQll1Vmo1T1NrNUtTazQ2V2l3amRpd1dQaTVpUG9aT2trNkNSblpDZGo1Nk5uNHNJcTRzRnBvdWdnNXg4bTN5VGQ0dHhDSXVKQlpkOGtIdUxkNHVIaTRlTGg1SitqbjZMZkl1RWk0U0poWlI5a0h5TGVvdDNoSHA4ZkgxOWVvUjNpd2hZaXdXVmVJOTVpM21MZEloNmhINkVmb0tCZm9WK2hYMkhlNHVCaTRPUGc1S0ZrWWFUaDVTSGxZaVRpcE9LazRxVGlKTUlpWlNJa1lpUGdaU0JsNENhZUtSK21vU1BDRDJMQllDTGc0K0Vrb1NTaDVTTGxRaXc5emdWaTRhTWg0K0lqNGVQaVpDTGtJdVBqWStQam82Tmo0dVFpNUNKa0lpT2g0K0hqWWFMaG91SGlZZUhoNGlLaG91R0NOVDdPQldVaXdXT2k0NktqNG1QaW8rSWpvaVBoNCtJam9lUGlJK0hqNGFQaG82SGpvaU5pSTZIajRhT2hvNklpNHFXZnBLRGo0WUlrNE9SZ1k1K2ozNk9nSTEvallDUGc1Q0duWXVYajVHVWtwU09tWXVlaTVhR21vS2ZncDZHbW91V0NQQ0xCWlNMbEkrU2twT1RqcE9MbFl1U2laS0hsSWVVaG8rRmk0NlBqWStOa1kyUmpKQ0xrSXVZaHBhQmxZNlJqWktMa2dpTGtvbVNpSktJa29hUWhZNk1rSXlSaTVDTG00YVhncE9Ca242UGU0c0lab3NGY290cmhHTjlpb3VJaW9hSmg0cUhpb21LaVlxSWlvYUtoNG1IaW9pS2lZdUhpb2lMaDRxSWk0bUxDSUtMaS90TEJRNzdsSXYzdHhXTGtwQ1BsbzBJOXlPZ3pQY1dCWTZTa0krUml3aUwvQkw3RlVjRmg0bUhpb2lMaDR1SWpJbU9pWTZLam91UGk0eUxqWXlPQ0tQM0l5UHdCWWFRaVpDTGp3Z09pL2ZGRll1MWw2eWpvcU9qclplMmk1YUxsNG1ZaDVlSGxvV1doSmFFbElXU2haT0Vrb1dTaEpLU2twR1RrcEtSbEpHV2tnaVdrcGFSbDQrWWo1ZU5sb3UyaTYxL28zT2pkSmRxaTJHTFlYVmdZR0FJKzBiN1FBV0hpSWVKaG91R2k0ZU5oNDRJKzBiM1FBV0pqWW1OaDQrSWpvYVJnNVNFbElXVmhaU0ZsWWFXaDVtR21JbVlpNWdJc0lzVmkydWNhYTlvQ1BjNit6VDNPdmN6QmErdm5LMkxxNHViaVppSGw0ZVhocFNGa29TU2c1R0NqNEtRZ28yQ2pZT05nWXVCaTRLTGdJbC9ob0NHZ0lXQ2hBaUJnNE9GaElTRWhZYUZob2FJaG9hSmhZdUZpNGFOaUpDR2tJYVJoSkdFa29PUmdaT0Nrb0NSZ0pCL2tJQ05nb3NJZ1l1Qmk0T0pnb21DaVlLR2dvZURoWVNFaFlTR2dvZC9oMytKZm90N0NBNzdKb3V5Rll2NEJBV0xrWTJSajVHT2tKQ1BrbzJQalkrTWo0c0k5OENMQlkrTGo0cVBpWkdKa0llUGhvK0ZqWVdMaFFpTC9BUUZpNFNKaFllR2g0YUdoNFdJaUlxR2lvZUxnWXVFam9TUkNQc1M5dzM3RXZzTkJZU0ZnNGlDaTRlTGg0dUhqWVNPaG8rSWtJZVFpWkdMa2dpd2t4WDNKdmNocEhMM0Rmc0lpL2YzKzdpTGkvdjNCUTVuaThzVmkvYzVCWXVTanBLUWtKQ1FrbzZTaXdqM1ZJdUx3Z1dMcnBpcHBLU2twS21Zcm91dmk2bCtwSEtrY3BkdGkyZ0lpMElGaTRhS2hvZUloNGVIaVlhTENIbUxCWWFMaDQySGo0ZU9pcENMa0FpTDFBV0xuNE9jZlpwOW1YcVNkb3QzaTNxRWZYMThmSVI2aTNjSWkxU25pd1dTaTVLSWtJYVFobzZFaTRRSWkvczVCWXVEaUlXR2hvYUZoSW1FaXdqN3A0c0ZoSXVFallhUmhwQ0lrWXVUQ0E1bmpQZTZGWXlRa0k2VWpRajNJNkRNOXhZRmo1S1BqNUdMa0l1UWg0K0VDTXY3RnZjamRnV1VpWkNJallhTmhvaUZoWVVJSXlhayt5TUZqSVdLaG9tSGlZaUlpWWFMaUl1SGpJZU5DUHNVei9zVlJ3V0hpWWVLaUl1SGk0ZU5pWTZKajR1UWpKRUlvL2NqSS9BRmhaR0prWTJRQ1BlQit6MFZuSUxsVzNyeGlKNlptTlRTK3d5ZGdweGU1NHY3cHdVT1o0dkNGWXYzU3dXTGtJMlBqbytQam8rTmtJc0kzb3NGa0l1UGlZNklqNGVOaDR1R0NJdjdTd1dMaG9tSGg0ZUloNGVLaG9zSU9Jc0Zob3VIakllUGlJK0pqNHVRQ0xDdkZZdUdqSWVQaDQ2SWtJbVFpNUNMajQyUGpvNlBqWStMa0l1UWlaQ0lqb2VQaDQyR2k0YUxob21JaDRlSWlvYUxoZ2p2WnhXTDkwc0ZpNUNOajQ2T2o0K1BqWkNMajR5U2tKV1dsWmFWbDVTWG1KdVZsNUdSam82T2tJNlJqWkNOa0l5UGpJNk1rWTJUQ0l5U2pKR01qNHlQalpDT2tZNlJqcENQam82UGo0MlFpNVNMazRxU2laS0prWWlQaUpDSWpvaVBobzZHalllTWh3aU5oNHlHaklhTWhZdUhpNGlMaUl1SGk0ZUxnNHVFaVlTSmhJbUZpWWVKaDRtRmg0V0xpb3FKaW9tSmlJcUppb2tJaTRxS2lJcUpDTnFMQlpxTG1JV1dnSmFBa0grTGZJdDZobjJBZjQ2RGpZU0xoSXQ5aDM2Q2Y0K0JpMytIZ0ltQWhZS0VoSTEyaG5tQWZnaC9mWGlEY29zSVpvc0Zmb3Qrakh5T2ZJNS9qb09PZzQxL2ozMlFjNU44ajRTTWhvdUhqWWlPaDQrSmo0dVFDQTVuaS9jNUZZdUdqWWFPaUkrSGo0bVFpd2plaXdXUWk0K05qbytQam8yUWk1QUlpL2RLQll1UWlaQ0hqb2lQaDQyR2l3ZzRpd1dHaTRlSmg0ZUlpSW1HaTRZSWkvdEtCYkQzSmhXTGtJeVBqNCtPanBDTmtJdVFpNCtKajRpT2g0MkhpNGFMaG9tSGlJZUhoNGVLaG91R2k0YU1pSStIajRxUGk1QUk3L3NuRll2M1N3V0xrSTJRajQ2T2o0K05rSXVTaTVxUG81T1prSmVQazQ2VGpaZU9tbzZhanBpTW1Jc0lzSXNGcEl1ZWc1ZDlsbjZRZW9sMWtvU1JnbzJBajRDTGdJZUFsSCtQZm90OWk0V0poSWlDbG9DUWZJdDdpM3lGZm9HQUNJQ0Fmb1o4aXdnOGl3V01pSXlKaTRtTWlZeUpqWW1NaUl5S2k0bVBoSTJHalllTmg0MkdqWU9NaEl5RWk0U0xob3VIaTRpTGlZdUdpb1lJaW9XS2hvbUhpb2VKaDRpR2g0ZUloNGFJaDRpRmlJU0poSW1EaW9LTGhvdUhqWWlQaDQrSWo0aVJpSkdKa0lxUENJcVBpcEdLa29tVGlwR0tqNHFPaVpDSmtZaVFpSkNJam9XU2daWituSUtYZ1phQmxvR1doSkdIaTRhTGg0Mkhqd2lJam9tUWk0OElEdmlVRlBpVUZZc01DZ0FBQUFBREFnQUJrQUFGQUFBQlRBRm1BQUFBUndGTUFXWUFBQUQxQUJrQWhBQUFBQUFBQUFBQUFBQUFBQUFBQUFFUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFQRmxBZUQvNFAvZ0FlQUFJQUFBQUFFQUFBQUFBQUFBQUFBQUFDQUFBQUFBQUFJQUFBQURBQUFBRkFBREFBRUFBQUFVQUFRQWtBQUFBQ0FBSUFBRUFBQUFBUUFnNWdYd0J2QU44Q1B3THZCdThIRHdpdkNYOEp6eEkvRmwvLzMvL3dBQUFBQUFJT1lBOEFUd0RQQWo4Qzd3YnZCdzhJZndsL0NjOFNQeFpQLzkvLzhBQWYvakdnUVFCaEFCRCt3UDRnK2pENklQakErQUQzd085ZzYyQUFNQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFmLy9BQThBQVFBQUFBRUFBSnJWbExKZkR6ejFBQXNDQUFBQUFBRFAvR09EQUFBQUFNLzhZNE1BQVAvYkFnQUIyd0FBQUFnQUFnQUFBQUFBQUFBQkFBQUI0UC9nQUFBQ0FBQUFBQUFDQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBSEFBQUFBQUFBQUFBQUFBQUFBRUFBQUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWR3QUFBSGNBQUFDQUFBakFaTUFId0ZKQUFBQmJnQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQUFBRUFBQUFDQUFBQUFXNEFBQUhjQUFBQjNBQUJBZHdBQUFIY0FBQUFBRkFBQUJ3QUFBQUFBQTRBcmdBQkFBQUFBQUFCQUF3QUFBQUJBQUFBQUFBQ0FBNEFRQUFCQUFBQUFBQURBQXdBSWdBQkFBQUFBQUFFQUF3QVRnQUJBQUFBQUFBRkFCWUFEQUFCQUFBQUFBQUdBQVlBTGdBQkFBQUFBQUFLQURRQVdnQURBQUVFQ1FBQkFBd0FBQUFEQUFFRUNRQUNBQTRBUUFBREFBRUVDUUFEQUF3QUlnQURBQUVFQ1FBRUFBd0FUZ0FEQUFFRUNRQUZBQllBREFBREFBRUVDUUFHQUF3QU5BQURBQUVFQ1FBS0FEUUFXZ0J5QUdFQWRBQnBBRzRBWndCV0FHVUFjZ0J6QUdrQWJ3QnVBQ0FBTVFBdUFEQUFjZ0JoQUhRQWFRQnVBR2R5WVhScGJtY0FjZ0JoQUhRQWFRQnVBR2NBVWdCbEFHY0FkUUJzQUdFQWNnQnlBR0VBZEFCcEFHNEFad0JHQUc4QWJnQjBBQ0FBWndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFDNEFBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9PVwiKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4udWkucmF0aW5nIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6ICdSYXRpbmcnO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIEVtcHR5IFN0YXIgKi9cblxuLnVpLnJhdGluZyAuaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA2Jztcbn1cblxuLyogQWN0aXZlIFN0YXIgKi9cblxuLnVpLnJhdGluZyAuYWN0aXZlLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjAwNSc7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTdGFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFVuZmlsbGVkIFN0YXIgKi9cblxuLnVpLnN0YXIucmF0aW5nIC5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDUnO1xufVxuXG4vKiBBY3RpdmUgU3RhciAqL1xuXG4udWkuc3Rhci5yYXRpbmcgLmFjdGl2ZS5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDUnO1xufVxuXG4vKiBQYXJ0aWFsICovXG5cbi51aS5zdGFyLnJhdGluZyAucGFydGlhbC5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDYnO1xufVxuXG4udWkuc3Rhci5yYXRpbmcgLnBhcnRpYWwuaWNvbiB7XG4gIGNvbnRlbnQ6ICdcXGYwMDUnO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgSGVhcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogRW1wdHkgSGVhcnRcbi51aS5oZWFydC5yYXRpbmcgLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA4YSc7XG59XG4qL1xuXG4udWkuaGVhcnQucmF0aW5nIC5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDQnO1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLmhlYXJ0LnJhdGluZyAuYWN0aXZlLmljb246YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjAwNCc7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBTZWFyY2hcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTZWFyY2hcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51aS5zZWFyY2ggPiAucHJvbXB0IHtcbiAgbWFyZ2luOiAwZW07XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAwLjY4NTcxZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwZW0gMGVtIHRyYW5zcGFyZW50IGluc2V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLnNlYXJjaCAucHJvbXB0IHtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEljb25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggLnByb21wdCB+IC5zZWFyY2guaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlc3VsdHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIHdpZHRoOiAxNmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHotaW5kZXg6IDk5ODtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFJlc3VsdFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBsaW5lLWhlaWdodDogMS4zMztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBJbWFnZSAqL1xuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAuaW1hZ2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiA1ZW07XG4gIGhlaWdodDogM2VtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0IC5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgSW5mb1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLmltYWdlICsgLmNvbnRlbnQge1xuICBtYXJnaW46IDBlbSA2ZW0gMGVtIDBlbTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQgLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgLnJlc3VsdCAucHJpY2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbG9yOiAjMmRiNDc1O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzID4gLm1lc3NhZ2Uge1xuICBwYWRkaW5nOiAxZW0gMWVtO1xufVxuXG4udWkuc2VhcmNoID4gLnJlc3VsdHMgPiAubWVzc2FnZSAuaGVhZGVyIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjE0MjhlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5tZXNzYWdlIC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBWaWV3IEFsbCBSZXN1bHRzICovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyA+IC5hY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcuc2VhcmNoIC5pbnB1dCA+IC5pY29uOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTAuNjQyODVlbSAwZW0gMGVtIC0wLjY0Mjg1ZW07XG4gIHdpZHRoOiAxLjI4NTdlbTtcbiAgaGVpZ2h0OiAxLjI4NTdlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmxvYWRpbmcuc2VhcmNoIC5pbnB1dCA+IC5pY29uOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMC42NDI4NWVtIDBlbSAwZW0gLTAuNjQyODVlbTtcbiAgd2lkdGg6IDEuMjg1N2VtO1xuICBoZWlnaHQ6IDEuMjg1N2VtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIGFuaW1hdGlvbjogYnV0dG9uLXNwaW4gMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MDByZW07XG4gIGJvcmRlci1jb2xvcjogI2FhYWFhYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBIb3ZlclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQ6aG92ZXIsXG4udWkuY2F0ZWdvcnkuc2VhcmNoID4gLnJlc3VsdHMgLmNhdGVnb3J5IC5yZXN1bHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xufVxuXG4udWkuc2VhcmNoIC5hY3Rpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTBlMGUwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeS5hY3RpdmUgPiAubmFtZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0LmFjdGl2ZSxcbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkgLnJlc3VsdC5hY3RpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgYm94LXNoYWRvdzogM3B4IDBweCAzcHggMHB4IHJnYmEoMzksIDQxLCA0MywgMC4xNSk7XG59XG5cbi51aS5zZWFyY2ggPiAucmVzdWx0cyAucmVzdWx0LmFjdGl2ZSAudGl0bGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuLnVpLnNlYXJjaCA+IC5yZXN1bHRzIC5yZXN1bHQuYWN0aXZlIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENhdGVnb3JpZXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jYXRlZ29yeS5zZWFyY2ggLnJlc3VsdHMge1xuICB3aWR0aDogMjhlbTtcbn1cblxuLyogQ2F0ZWdvcnkgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyogQ2F0ZWdvcnkgUmVzdWx0ICovXG5cbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkgLnJlc3VsdCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi51aS5jYXRlZ29yeS5zZWFyY2ggPiAucmVzdWx0cyAuY2F0ZWdvcnkgLnJlc3VsdDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyogQ2F0ZWdvcnkgUmVzdWx0IE5hbWUgKi9cblxuLnVpLmNhdGVnb3J5LnNlYXJjaCA+IC5yZXN1bHRzIC5jYXRlZ29yeSA+IC5uYW1lIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZmxvYXQ6IDFlbTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNGVtIDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBMZWZ0IC8gUmlnaHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXS5zZWFyY2ggPiAucmVzdWx0cyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwJTtcbn1cblxuLnVpW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0uc2VhcmNoID4gLnJlc3VsdHMge1xuICByaWdodDogMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBGbHVpZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZsdWlkLnNlYXJjaCAucmVzdWx0cyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udWkubGFyZ2Uuc2VhcmNoIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFNoYXBlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgIFNoYXBlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuc2hhcGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMjAwMHB4O1xuICBwZXJzcGVjdGl2ZTogMjAwMHB4O1xufVxuXG4udWkuc2hhcGUgLnNpZGVzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4udWkuc2hhcGUgLnNpZGUge1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwZW0gIWltcG9ydGFudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVpLnNoYXBlIC5zaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVpLnNoYXBlIC5zaWRlID4gKiB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS5jdWJlLnNoYXBlIC5zaWRlIHtcbiAgbWluLXdpZHRoOiAxNWVtO1xuICBoZWlnaHQ6IDE1ZW07XG4gIHBhZGRpbmc6IDJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4udWkuY3ViZS5zaGFwZSAuc2lkZSA+IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1vei11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1zLXVzZXItc2VsZWN0OiB0ZXh0O1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbn1cblxuLnVpLmN1YmUuc2hhcGUgLnNpZGUgPiAuY29udGVudCA+IGRpdiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi51aS50ZXh0LnNoYXBlLmFuaW1hdGluZyAuc2lkZXMge1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4udWkudGV4dC5zaGFwZSAuc2lkZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS50ZXh0LnNoYXBlIC5zaWRlID4gKiB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmxvYWRpbmcuc2hhcGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgbGVmdDogLTk5OTlweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEFuaW1hdGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNoYXBlIC5hbmltYXRpbmcuc2lkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMTAwO1xufVxuXG4udWkuc2hhcGUgLmhpZGRlbi5zaWRlIHtcbiAgb3BhY2l0eTogMC40O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBDU1Ncbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaGFwZS5hbmltYXRpbmcge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC42cyBlYXNlLWluLW91dDtcbn1cblxuLnVpLnNoYXBlLmFuaW1hdGluZyAuc2lkZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi51aS5zaGFwZS5hbmltYXRpbmcgLnNpZGVzIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC42cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZS1pbi1vdXQ7XG59XG5cbi51aS5zaGFwZS5hbmltYXRpbmcgLnNpZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2UtaW4tb3V0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEFjdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnNoYXBlIC5hY3RpdmUuc2lkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgVGhlbWUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBVc2VyIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBTaWRlYmFyXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc3NcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU2lkZWJhclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogU2lkZWJhciBNZW51ICovXG5cbi51aS5zaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBlbSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogR1BVIExheWVycyBmb3IgQ2hpbGQgRWxlbWVudHMgKi9cblxuLnVpLnNpZGViYXIgPiAqIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVooMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlWigwZGVnKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgRGlyZWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkubGVmdC5zaWRlYmFyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi51aS5yaWdodC5zaWRlYmFyIHtcbiAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCUsIDApO1xufVxuXG4udWkudG9wLnNpZGViYXIsXG4udWkuYm90dG9tLnNpZGViYXIge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4udWkudG9wLnNpZGViYXIge1xuICB0b3A6IDBweCAhaW1wb3J0YW50O1xuICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG59XG5cbi51aS5ib3R0b20uc2lkZWJhciB7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICBib3R0b206IDBweCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgUHVzaGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLyogV2hvbGUgUGFnZSAqL1xuXG5ib2R5LnB1c2hhYmxlIHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMyAhaW1wb3J0YW50O1xufVxuXG4vKiBQYWdlIENvbnRleHQgKi9cblxuLnB1c2hhYmxlOm5vdChib2R5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnB1c2hhYmxlOm5vdChib2R5KSA+IC51aS5zaWRlYmFyLFxuLnB1c2hhYmxlOm5vdChib2R5KSA+IC5maXhlZCxcbi5wdXNoYWJsZTpub3QoYm9keSkgPiAucHVzaGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEZpeGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUgPiAuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWdlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVzaGFibGUgPiAucHVzaGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB6LWluZGV4OiAyO1xufVxuXG5ib2R5LnB1c2hhYmxlID4gLnB1c2hlciB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi5wdXNoYWJsZSA+IC5wdXNoZXIge1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERpbW1lclxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnB1c2hhYmxlID4gLnB1c2hlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHdpZHRoOiAwcHg7XG4gIGhlaWdodDogMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zLCBvcGFjaXR5IDUwMG1zO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMsIG9wYWNpdHkgNTAwbXM7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICB6LWluZGV4OiAxMDAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgQ291cGxpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zaWRlYmFyLm1lbnUgLml0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwZW0gIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBEaW1tZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5wdXNoYWJsZSA+IC5wdXNoZXIuZGltbWVkOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIEFuaW1hdGluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmFuaW1hdGluZy5zaWRlYmFyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBWaXNpYmxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudmlzaWJsZS5zaWRlYmFyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4vKiBTaGFkb3cgRGlyZWN0aW9uICovXG5cbi51aS5sZWZ0LnZpc2libGUuc2lkZWJhcixcbi51aS5yaWdodC52aXNpYmxlLnNpZGViYXIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbn1cblxuLnVpLnRvcC52aXNpYmxlLnNpZGViYXIsXG4udWkuYm90dG9tLnZpc2libGUuc2lkZWJhciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xufVxuXG4vKiBWaXNpYmxlIE9uIExvYWQgKi9cblxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNjBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjYwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI2MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjYwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS50b3Auc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRvcC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzNnB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzNnB4LCAwKTtcbn1cblxuLnVpLnZpc2libGUuYm90dG9tLnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5ib3R0b20uc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTM2cHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zNnB4LCAwKTtcbn1cblxuLyogb3Bwb3NpdGUgc2lkZXMgdmlzaWJsZSBmb3JjZXMgY29udGVudCBvdmVybGF5ICovXG5cbi51aS52aXNpYmxlLmxlZnQuc2lkZWJhciB+IC51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAudWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnB1c2hlcixcbi51aS52aXNpYmxlLnJpZ2h0LnNpZGViYXIgfiAudWkudmlzaWJsZS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS5yaWdodC5zaWRlYmFyIH4gLnVpLnZpc2libGUubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgIGlPU1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLypcbiAgaU9TIGluY29ycmVjdGx5IHNpemVzIGRvY3VtZW50IHdoZW4gY29udGVudFxuICBpcyBwcmVzZW50ZWQgb3V0c2lkZSBvZiB2aWV3IHdpdGggMkR0cmFuc2xhdGVcbiovXG5cbmh0bWwuaW9zIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBXaWR0aFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGVmdCAvIFJpZ2h0ICovXG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ubGVmdC5zaWRlYmFyLFxuLnVpW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIHtcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi51aS50aGluLmxlZnQuc2lkZWJhcixcbi51aS50aGluLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogMTUwcHg7XG59XG5cbi51aS5sZWZ0LnNpZGViYXIsXG4udWkucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiAyNjBweDtcbn1cblxuLnVpLndpZGUubGVmdC5zaWRlYmFyLFxuLnVpLndpZGUucmlnaHQuc2lkZWJhciB7XG4gIHdpZHRoOiAzNTBweDtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5sZWZ0LnNpZGViYXIsXG4udWlbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnJpZ2h0LnNpZGViYXIge1xuICB3aWR0aDogNDc1cHg7XG59XG5cbi8qIExlZnQgVmlzaWJsZSAqL1xuXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHRoaW5cIl0ubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB0aGluXCJdLmxlZnQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNjBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNjBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlLnRoaW4ubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUudGhpbi5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlLndpZGUubGVmdC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGUud2lkZS5sZWZ0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDM1MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzNTBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgd2lkZVwiXS5sZWZ0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg0NzVweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNDc1cHgsIDAsIDApO1xufVxuXG4vKiBSaWdodCBWaXNpYmxlICovXG5cbi51aS52aXNpYmxlW2NsYXNzKj1cInZlcnkgdGhpblwiXS5yaWdodC5zaWRlYmFyIH4gLmZpeGVkLFxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB0aGluXCJdLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC02MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNjBweCwgMCwgMCk7XG59XG5cbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLnRoaW4ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwcHgsIDAsIDApO1xufVxuXG4udWkudmlzaWJsZS53aWRlLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZS53aWRlLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zNTBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTM1MHB4LCAwLCAwKTtcbn1cblxuLnVpLnZpc2libGVbY2xhc3MqPVwidmVyeSB3aWRlXCJdLnJpZ2h0LnNpZGViYXIgfiAuZml4ZWQsXG4udWkudmlzaWJsZVtjbGFzcyo9XCJ2ZXJ5IHdpZGVcIl0ucmlnaHQuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTQ3NXB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDc1cHgsIDAsIDApO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIEFuaW1hdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBPdmVybGF5XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZXQtdXAgKi9cblxuLnVpLm92ZXJsYXkuc2lkZWJhciB7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogSW5pdGlhbCAqL1xuXG4udWkubGVmdC5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCUsIDApO1xufVxuXG4udWkucmlnaHQub3ZlcmxheS5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwJSwgMCk7XG59XG5cbi51aS50b3Aub3ZlcmxheS5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIC0xMDAlLCAwKTtcbn1cblxuLnVpLmJvdHRvbS5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbn1cblxuLyogQW5pbWF0aW9uICovXG5cbi5hbmltYXRpbmcudWkub3ZlcmxheS5zaWRlYmFyLFxuLnVpLnZpc2libGUub3ZlcmxheS5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyogRW5kIC0gU2lkZWJhciAqL1xuXG4udWkudmlzaWJsZS5sZWZ0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG59XG5cbi51aS52aXNpYmxlLnJpZ2h0Lm92ZXJsYXkuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG59XG5cbi51aS52aXNpYmxlLnRvcC5vdmVybGF5LnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xufVxuXG4udWkudmlzaWJsZS5ib3R0b20ub3ZlcmxheS5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbn1cblxuLyogRW5kIC0gUHVzaGVyICovXG5cbi51aS52aXNpYmxlLm92ZXJsYXkuc2lkZWJhciB+IC5maXhlZCxcbi51aS52aXNpYmxlLm92ZXJsYXkuc2lkZWJhciB+IC5wdXNoZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBQdXNoXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbml0aWFsICovXG5cbi51aS5wdXNoLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB6LWluZGV4OiAxMDI7XG59XG5cbi8qIFNpZGViYXIgLSBJbml0aWFsICovXG5cbi51aS5sZWZ0LnB1c2guc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4udWkucmlnaHQucHVzaC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4udWkudG9wLnB1c2guc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG59XG5cbi51aS5ib3R0b20ucHVzaC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG59XG5cbi8qIEVuZCAqL1xuXG4udWkudmlzaWJsZS5wdXNoLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIFVuY292ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEluaXRpYWwgKi9cblxuLnVpLnVuY292ZXIuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTtcbn1cblxuLyogRW5kICovXG5cbi51aS52aXNpYmxlLnVuY292ZXIuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2xpZGUgQWxvbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEluaXRpYWwgKi9cblxuLnVpLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiBTaWRlYmFyIC0gSW5pdGlhbCAqL1xuXG4udWkubGVmdC5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xufVxuXG4udWkucmlnaHQuc2xpZGUuYWxvbmcuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG59XG5cbi51aS50b3Auc2xpZGUuYWxvbmcuc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbn1cblxuLnVpLmJvdHRvbS5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuLnVpLmFuaW1hdGluZy5zbGlkZS5hbG9uZy5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyogRW5kICovXG5cbi51aS52aXNpYmxlLnNsaWRlLmFsb25nLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgU2xpZGUgT3V0XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBJbml0aWFsICovXG5cbi51aS5zbGlkZS5vdXQuc2lkZWJhciB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qIFNpZGViYXIgLSBJbml0aWFsICovXG5cbi51aS5sZWZ0LnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDUwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNTAlLCAwLCAwKTtcbn1cblxuLnVpLnJpZ2h0LnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApO1xufVxuXG4udWkudG9wLnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCA1MCUsIDApO1xufVxuXG4udWkuYm90dG9tLnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTUwJSwgMCk7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuXG4udWkuYW5pbWF0aW5nLnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbn1cblxuLyogRW5kICovXG5cbi51aS52aXNpYmxlLnNsaWRlLm91dC5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgIFNjYWxlIERvd25cbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEluaXRpYWwgKi9cblxuLnVpLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHotaW5kZXg6IDEwMjtcbn1cblxuLyogU2lkZWJhciAtIEluaXRpYWwgICovXG5cbi51aS5sZWZ0LnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4udWkucmlnaHQuc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4udWkudG9wLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgLTEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAtMTAwJSwgMCk7XG59XG5cbi51aS5ib3R0b20uc2NhbGUuZG93bi5zaWRlYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMTAwJSwgMCk7XG59XG5cbi8qIFB1c2hlciAtIEluaXRpYWwgKi9cblxuLnVpLnNjYWxlLmRvd24ubGVmdC5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNzUlIDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDc1JSA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDc1JSA1MCU7XG59XG5cbi51aS5zY2FsZS5kb3duLnJpZ2h0LnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAyNSUgNTAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMjUlIDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMjUlIDUwJTtcbn1cblxuLnVpLnNjYWxlLmRvd24udG9wLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNzUlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDc1JTtcbn1cblxuLnVpLnNjYWxlLmRvd24uYm90dG9tLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMjUlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDI1JTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDI1JTtcbn1cblxuLyogQW5pbWF0aW9uICovXG5cbi51aS5hbmltYXRpbmcuc2NhbGUuZG93biA+IC52aXNpYmxlLnVpLnNpZGViYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuXG4udWkudmlzaWJsZS5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyLFxuLnVpLmFuaW1hdGluZy5zY2FsZS5kb3duLnNpZGViYXIgfiAucHVzaGVyIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRW5kICovXG5cbi51aS52aXNpYmxlLnNjYWxlLmRvd24uc2lkZWJhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnVpLnZpc2libGUuc2NhbGUuZG93bi5zaWRlYmFyIH4gLnB1c2hlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBTdGlja3lcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0aWNreVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLCBoZWlnaHQgMC4ycyBlYXNlLCB0b3AgMC4ycyBlYXNlLCBib3R0b20gMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2UsIGhlaWdodCAwLjJzIGVhc2UsIHRvcCAwLjJzIGVhc2UsIGJvdHRvbSAwLjJzIGVhc2U7XG4gIHotaW5kZXg6IDgwMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogQm91bmQgKi9cblxuLnVpLnN0aWNreS5ib3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8qIEZpeGVkICovXG5cbi51aS5zdGlja3kuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBCb3VuZC9GaXhlZCBQb3NpdGlvbiAqL1xuXG4udWkuc3RpY2t5LmJvdW5kLnRvcCxcbi51aS5zdGlja3kuZml4ZWQudG9wIHtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLnVpLnN0aWNreS5ib3VuZC5ib3R0b20sXG4udWkuc3RpY2t5LmZpeGVkLmJvdHRvbSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLm5hdGl2ZS5zdGlja3kge1xuICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gIHBvc2l0aW9uOiAtbW96LXN0aWNreTtcbiAgcG9zaXRpb246IC1tcy1zdGlja3k7XG4gIHBvc2l0aW9uOiAtby1zdGlja3k7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIVxuICogIyBTZW1hbnRpYyBVSSAxLjExLjUgLSBUYWJcbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVUkgVGFic1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnRhYiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudGFiLmFjdGl2ZSxcbi51aS50YWIub3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgTG9hZGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYi5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMjUwcHg7XG59XG5cbi51aS50YWIubG9hZGluZyAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IC0xMDAwMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51aS50YWIubG9hZGluZzpiZWZvcmUsXG4udWkudGFiLmxvYWRpbmcuc2VnbWVudDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuMjVlbSAwZW0gMGVtIC0xLjI1ZW07XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXI6IDAuMmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLnRhYi5sb2FkaW5nOmFmdGVyLFxuLnVpLnRhYi5sb2FkaW5nLnNlZ21lbnQ6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IDEwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEuMjVlbSAwZW0gMGVtIC0xLjI1ZW07XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IGJ1dHRvbi1zcGluIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBib3JkZXItY29sb3I6ICNhYWFhYWEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCB0cmFuc3BhcmVudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRhYiBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFVzZXIgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFRhYmxlXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVGFibGVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIFByb3RvdHlwZSAqL1xuXG4udWkudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbWFyZ2luOiAxZW0gMGVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDBkMGQwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICBib3JkZXItc3BhY2luZzogMHB4O1xufVxuXG4udWkudGFibGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi51aS50YWJsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgIFBhcnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBUYWJsZSBDb250ZW50ICovXG5cbi51aS50YWJsZSB0aCxcbi51aS50YWJsZSB0ZCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLyogSGVhZGVycyAqL1xuXG4udWkudGFibGUgdGhlYWQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWkudGFibGUgdGhlYWQgdGgge1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHBhZGRpbmc6IDAuN2VtIDAuOGVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXN0eWxlOiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDRkNGQ1O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDBlbSAwZW0gMGVtO1xufVxuXG4udWkudGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDAgMGVtIDBlbTtcbn1cblxuLnVpLnRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkID4gdGg6b25seS1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwZW0gMGVtO1xufVxuXG4vKiBGb290ZXIgKi9cblxuLnVpLnRhYmxlIHRmb290IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRoIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q0ZDRkNTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgcGFkZGluZzogMC43ZW0gMC44ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi51aS50YWJsZSB0Zm9vdCB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi51aS50YWJsZSB0Zm9vdCB0cjpmaXJzdC1jaGlsZCA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMGVtIDBlbSAwZW0gMDtcbn1cblxuLnVpLnRhYmxlIHRmb290IHRyOmZpcnN0LWNoaWxkID4gdGg6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwZW0gMCAwZW07XG59XG5cbi51aS50YWJsZSB0Zm9vdCB0cjpmaXJzdC1jaGlsZCA+IHRoOm9ubHktY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbn1cblxuLyogVGFibGUgUm93ICovXG5cbi51aS50YWJsZSB0ciB0ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDRkNGQ1O1xufVxuXG4udWkudGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4vKiBUYWJsZSBDZWxscyAqL1xuXG4udWkudGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjdlbSAwLjhlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogSWNvbnMgKi9cblxuLnVpLnRhYmxlID4gLmljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi51aS50YWJsZSA+IC5pY29uOm9ubHktY2hpbGQge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyogVGFibGUgU2VnbWVudCAqL1xuXG4udWkudGFibGUuc2VnbWVudCB7XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLnVpLnRhYmxlLnNlZ21lbnQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkudGFibGUuc2VnbWVudC5zdGFja2VkOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFJlc3BvbnNpdmUgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRib2R5LFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRoLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZCB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHtcbiAgICBwYWRkaW5nOiAwZW07XG4gIH1cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGhlYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRmb290IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ciA+IHRoLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC43NWVtO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICB9XG5cbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRoOmxhc3QtY2hpbGQsXG4gIC51aS50YWJsZTpub3QoLnVuc3RhY2thYmxlKSB0ZDpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIH1cblxuICAvKiBDbGVhciBCRyBDb2xvcnMgKi9cblxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZC53YXJuaW5nLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZC5lcnJvcixcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGQuYWN0aXZlLFxuICAudWkudGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgPiB0ZC5wb3NpdGl2ZSxcbiAgLnVpLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyID4gdGQubmVnYXRpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBEZWZpbml0aW9uIFRhYmxlICovXG5cbiAgLnVpLmRlZmluaXRpb24udGFibGU6bm90KC51bnN0YWNrYWJsZSkgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5kZWZpbml0aW9uLnRhYmxlOm5vdCgudW5zdGFja2FibGUpIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICB9XG5cbiAgLnVpLmRlZmluaXRpb24udGFibGU6bm90KC51bnN0YWNrYWJsZSkgdHIgdGQ6bnRoLWNoaWxkKG4rMikge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIENvdXBsaW5nXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBVSSBJbWFnZSAqL1xuXG4udWkudGFibGUgdGggLmltYWdlLFxuLnVpLnRhYmxlIHRoIC5pbWFnZSBpbWcsXG4udWkudGFibGUgdGQgLmltYWdlLFxuLnVpLnRhYmxlIHRkIC5pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICAgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBDb21wbGV4XG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuc3RydWN0dXJlZC50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi51aS5zdHJ1Y3R1cmVkLnRhYmxlIHRoZWFkIHRoIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLnVpLnN0cnVjdHVyZWQuc29ydGFibGUudGFibGUgdGhlYWQgdGgge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkMGQwZDA7XG59XG5cbi51aS5zdHJ1Y3R1cmVkLmJhc2ljLnRhYmxlIHRoIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlIHRyIHRoLFxuLnVpLnN0cnVjdHVyZWQuY2VsbGVkLnRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDRkNGQ1O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDRkNGQ1O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBEZWZpbml0aW9uXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpIHRoOmZpcnN0LWNoaWxkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMHB4IDFweCAjZmZmZmZmO1xufVxuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0Zm9vdDpub3QoLmZ1bGwtd2lkdGgpIHRoOmZpcnN0LWNoaWxkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBjb2xvcjogbm9ybWFsO1xuICBib3gtc2hhZG93OiAxcHggMXB4IDBweCAxcHggI2ZmZmZmZjtcbn1cblxuLyogUmVtb3ZlIEJvcmRlciAqL1xuXG4udWkuY2VsbGVkLmRlZmluaXRpb24udGFibGUgdGhlYWQ6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IDBweCAtMXB4IDBweCAxcHggI2ZmZmZmZjtcbn1cblxuLnVpLmNlbGxlZC5kZWZpbml0aW9uLnRhYmxlIHRmb290Om5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICBib3gtc2hhZG93OiAwcHggMXB4IDBweCAxcHggI2ZmZmZmZjtcbn1cblxuLyogSGlnaGxpZ2h0IERlZmluaW5nIENvbHVtbiAqL1xuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBGaXggMm5kIENvbHVtbiAqL1xuXG4udWkuZGVmaW5pdGlvbi50YWJsZSB0aGVhZDpub3QoLmZ1bGwtd2lkdGgpIHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QwZDBkMDtcbn1cblxuLnVpLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpudGgtY2hpbGQoMikge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkMGQwZDA7XG59XG5cbi51aS5kZWZpbml0aW9uLnRhYmxlIHRkOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QwZDBkMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgICBTdGF0ZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBQb3NpdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLnBvc2l0aXZlLFxuLnVpLnRhYmxlIHRkLnBvc2l0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI2I3Y2FhNyBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLnBvc2l0aXZlIHRkLFxuLnVpLnRhYmxlIHRkLnBvc2l0aXZlIHtcbiAgYmFja2dyb3VuZDogI2VlZmZlNyAhaW1wb3J0YW50O1xuICBjb2xvcjogIzNjNzYzZCAhaW1wb3J0YW50O1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyLnBvc2l0aXZlOmhvdmVyIHRkLFxuLnVpLmNlbGxlZC50YWJsZSB0cjpob3ZlciB0ZC5wb3NpdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNlM2ZmZDggIWltcG9ydGFudDtcbiAgY29sb3I6ICMzNzZjMzggIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBOZWdhdGl2ZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLm5lZ2F0aXZlLFxuLnVpLnRhYmxlIHRkLm5lZ2F0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggI2RiYjFiMSBpbnNldDtcbn1cblxuLnVpLnRhYmxlIHRyLm5lZ2F0aXZlIHRkLFxuLnVpLnRhYmxlIHRkLm5lZ2F0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjBmMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NkMjkyOSAhaW1wb3J0YW50O1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyLm5lZ2F0aXZlOmhvdmVyIHRkLFxuLnVpLmNlbGxlZC50YWJsZSB0cjpob3ZlciB0ZC5uZWdhdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmUxZTEgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjMDI2MjYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0ci5lcnJvcixcbi51aS50YWJsZSB0ZC5lcnJvciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4ICNkYmIxYjEgaW5zZXQ7XG59XG5cbi51aS50YWJsZSB0ci5lcnJvciB0ZCxcbi51aS50YWJsZSB0ZC5lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNjZDI5MjkgIWltcG9ydGFudDtcbn1cblxuLnVpLmNlbGxlZC50YWJsZSB0ci5lcnJvcjpob3ZlciB0ZCxcbi51aS5jZWxsZWQudGFibGUgdHI6aG92ZXIgdGQuZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiAjZmZlMWUxICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjYzAyNjI2ICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgV2FybmluZ1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlIHRyLndhcm5pbmcsXG4udWkudGFibGUgdGQud2FybmluZyB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4ICNkOWNhYWIgaW5zZXQ7XG59XG5cbi51aS50YWJsZSB0ci53YXJuaW5nIHRkLFxuLnVpLnRhYmxlIHRkLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmZmYmU2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjN2Q2YzAwICFpbXBvcnRhbnQ7XG59XG5cbi51aS5jZWxsZWQudGFibGUgdHIud2FybmluZzpob3ZlciB0ZCxcbi51aS5jZWxsZWQudGFibGUgdHI6aG92ZXIgdGQud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmY5ZDcgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2ZTVmMDAgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBBY3RpdmVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0ci5hY3RpdmUsXG4udWkudGFibGUgdGQuYWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSg1MCwgNTAsIDUwLCAwLjkpIGluc2V0O1xufVxuXG4udWkudGFibGUgdHIuYWN0aXZlIHRkLFxuLnVpLnRhYmxlIHRkLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNlMGUwZTAgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoNTAsIDUwLCA1MCwgMC45KSAhaW1wb3J0YW50O1xufVxuXG4udWkuY2VsbGVkLnRhYmxlIHRyLmFjdGl2ZTpob3ZlciB0ZCxcbi51aS5jZWxsZWQudGFibGUgdHI6aG92ZXIgdGQuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2UwZTBlMCAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSg1MCwgNTAsIDUwLCAwLjkpICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRGlzYWJsZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0ci5kaXNhYmxlZCB0ZCxcbi51aS50YWJsZSB0ciB0ZC5kaXNhYmxlZCxcbi51aS50YWJsZSB0ci5kaXNhYmxlZDpob3ZlciB0ZCxcbi51aS50YWJsZSB0cjpob3ZlciB0ZC5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICBTdGFja2FibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRib2R5LFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0cixcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0aCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgPiB0ZCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUge1xuICAgIHBhZGRpbmc6IDBlbTtcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRmb290IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGgsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4yNWVtIDAuNzVlbTtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0aDpmaXJzdC1jaGlsZCxcbiAgLnVpW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0aDpsYXN0LWNoaWxkLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgICBib3gtc2hhZG93OiAwcHggLTFweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIH1cblxuICAvKiBDbGVhciBCRyBDb2xvcnMgKi9cblxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRkLndhcm5pbmcsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQuZXJyb3IsXG4gIC51aVtjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyID4gdGQuYWN0aXZlLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRkLnBvc2l0aXZlLFxuICAudWlbY2xhc3MqPVwidGFibGV0IHN0YWNrYWJsZVwiXS50YWJsZSB0ciA+IHRkLm5lZ2F0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogRGVmaW5pdGlvbiBUYWJsZSAqL1xuXG4gIC51aS5kZWZpbml0aW9uW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51aS5kZWZpbml0aW9uW2NsYXNzKj1cInRhYmxldCBzdGFja2FibGVcIl0udGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIH1cblxuICAudWkuZGVmaW5pdGlvbltjbGFzcyo9XCJ0YWJsZXQgc3RhY2thYmxlXCJdLnRhYmxlIHRyIHRkOm50aC1jaGlsZChuKzIpIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWxpZ25lZFxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLnRhYmxlW2NsYXNzKj1cImxlZnQgYWxpZ25lZFwiXSxcbi51aS50YWJsZSBbY2xhc3MqPVwibGVmdCBhbGlnbmVkXCJdIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cImNlbnRlciBhbGlnbmVkXCJdLFxuLnVpLnRhYmxlIFtjbGFzcyo9XCJjZW50ZXIgYWxpZ25lZFwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0sXG4udWkudGFibGUgW2NsYXNzKj1cInJpZ2h0IGFsaWduZWRcIl0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIENvbGxhcHNpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS50YWJsZSB0aC5jb2xsYXBzaW5nLFxuLnVpLnRhYmxlIHRkLmNvbGxhcHNpbmcge1xuICB3aWR0aDogMXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEF0dGFjaGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBBbGwgKi9cblxuLnVpLmF0dGFjaGVkLnRhYmxlIHtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlICsgIDJweCApO1xuICB3aWR0aDogY2FsYygxMDAlICsgIDJweCApO1xuICBtYXJnaW46IDBlbSAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFRvcCAqL1xuXG4udWlbY2xhc3MqPVwidG9wIGF0dGFjaGVkXCJdLnRhYmxlIHtcbiAgbWFyZ2luLXRvcDogMWVtIDBlbTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDBlbSAwZW07XG59XG5cbi51aS50YWJsZVtjbGFzcyo9XCJ0b3AgYXR0YWNoZWRcIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwZW07XG59XG5cbi8qIEJvdHRvbSAqL1xuXG4udWkudGFibGVbY2xhc3MqPVwiYm90dG9tIGF0dGFjaGVkXCJdIHtcbiAgbWFyZ2luLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW0gMGVtO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMGVtIDAgMDtcbn1cblxuLnVpLnRhYmxlW2NsYXNzKj1cImJvdHRvbSBhdHRhY2hlZFwiXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIFN0cmlwZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRhYmxlIFN0cmlwaW5nICovXG5cbi51aS5zdHJpcGVkLnRhYmxlID4gdHI6bnRoLWNoaWxkKDJuKSxcbi51aS5zdHJpcGVkLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDUwLCAwLjAzKTtcbn1cblxuLyogU3RyaXBlcyAqL1xuXG4udWkuaW52ZXJ0ZWQuc3RyaXBlZC50YWJsZSA+IHRyOm50aC1jaGlsZCgybiksXG4udWkuaW52ZXJ0ZWQuc3RyaXBlZC50YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoMm4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5ibGFjay50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICMxYjFjMWQ7XG59XG5cbi51aS5ibHVlLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzNiODNjMDtcbn1cblxuLnVpLmdyZWVuLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgIzJkYjQ3NTtcbn1cblxuLnVpLm9yYW5nZS50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICNlMDdiNTM7XG59XG5cbi51aS5waW5rLnRhYmxlIHtcbiAgYm9yZGVyLXRvcDogMC4yZW0gc29saWQgI2Q5NDk5YTtcbn1cblxuLnVpLnB1cnBsZS50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICM1NjRmOGE7XG59XG5cbi51aS5yZWQudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjY2MxODFlO1xufVxuXG4udWkudGVhbC50YWJsZSB7XG4gIGJvcmRlci10b3A6IDAuMmVtIHNvbGlkICMwMGI1YWQ7XG59XG5cbi51aS55ZWxsb3cudGFibGUge1xuICBib3JkZXItdG9wOiAwLjJlbSBzb2xpZCAjZjJjNjFmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIEludmVydGVkIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuaW52ZXJ0ZWQudGFibGUsXG4udWkuaW52ZXJ0ZWQuYmxhY2sudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxYzFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5ibHVlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiODNjMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQuZ3JlZW4udGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRiNDc1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5vcmFuZ2UudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA3YjUzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS5pbnZlcnRlZC5waW5rLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NDk5YSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucHVycGxlLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NGY4YSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQucmVkLnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMTgxZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udWkuaW52ZXJ0ZWQudGVhbC50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI1YWQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnllbGxvdy50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmM2MWYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICBDb2x1bW4gQ291bnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEdyaWQgQmFzZWQgKi9cblxuLnVpLm9uZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLnR3by5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWkudGhyZWUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cblxuLnVpLmZvdXIuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLmZpdmUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpLnNpeC5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4udWkuc2V2ZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI5JTtcbn1cblxuLnVpLmVpZ2h0LmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuLnVpLm5pbmUuY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDExLjExMTExMTExJTtcbn1cblxuLnVpLnRlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogMTAlO1xufVxuXG4udWkuZWxldmVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA5LjA5MDkwOTA5JTtcbn1cblxuLnVpLnR3ZWx2ZS5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi51aS50aGlydGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNy42OTIzMDc2OSU7XG59XG5cbi51aS5mb3VydGVlbi5jb2x1bW4udGFibGUgdGQge1xuICB3aWR0aDogNy4xNDI4NTcxNCU7XG59XG5cbi51aS5maWZ0ZWVuLmNvbHVtbi50YWJsZSB0ZCB7XG4gIHdpZHRoOiA2LjY2NjY2NjY3JTtcbn1cblxuLnVpLnNpeHRlZW4uY29sdW1uLnRhYmxlIHRkIHtcbiAgd2lkdGg6IDYuMjUlO1xufVxuXG4vKiBDb2x1bW4gV2lkdGggKi9cblxuLnVpLnRhYmxlIHRoLm9uZS53aWRlLFxuLnVpLnRhYmxlIHRkLm9uZS53aWRlIHtcbiAgd2lkdGg6IDYuMjUlO1xufVxuXG4udWkudGFibGUgdGgudHdvLndpZGUsXG4udWkudGFibGUgdGQudHdvLndpZGUge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aS50YWJsZSB0aC50aHJlZS53aWRlLFxuLnVpLnRhYmxlIHRkLnRocmVlLndpZGUge1xuICB3aWR0aDogMTguNzUlO1xufVxuXG4udWkudGFibGUgdGguZm91ci53aWRlLFxuLnVpLnRhYmxlIHRkLmZvdXIud2lkZSB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi51aS50YWJsZSB0aC5maXZlLndpZGUsXG4udWkudGFibGUgdGQuZml2ZS53aWRlIHtcbiAgd2lkdGg6IDMxLjI1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnNpeC53aWRlLFxuLnVpLnRhYmxlIHRkLnNpeC53aWRlIHtcbiAgd2lkdGg6IDM3LjUlO1xufVxuXG4udWkudGFibGUgdGguc2V2ZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5zZXZlbi53aWRlIHtcbiAgd2lkdGg6IDQzLjc1JTtcbn1cblxuLnVpLnRhYmxlIHRoLmVpZ2h0LndpZGUsXG4udWkudGFibGUgdGQuZWlnaHQud2lkZSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS50YWJsZSB0aC5uaW5lLndpZGUsXG4udWkudGFibGUgdGQubmluZS53aWRlIHtcbiAgd2lkdGg6IDU2LjI1JTtcbn1cblxuLnVpLnRhYmxlIHRoLnRlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnRlbi53aWRlIHtcbiAgd2lkdGg6IDYyLjUlO1xufVxuXG4udWkudGFibGUgdGguZWxldmVuLndpZGUsXG4udWkudGFibGUgdGQuZWxldmVuLndpZGUge1xuICB3aWR0aDogNjguNzUlO1xufVxuXG4udWkudGFibGUgdGgudHdlbHZlLndpZGUsXG4udWkudGFibGUgdGQudHdlbHZlLndpZGUge1xuICB3aWR0aDogNzUlO1xufVxuXG4udWkudGFibGUgdGgudGhpcnRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC50aGlydGVlbi53aWRlIHtcbiAgd2lkdGg6IDgxLjI1JTtcbn1cblxuLnVpLnRhYmxlIHRoLmZvdXJ0ZWVuLndpZGUsXG4udWkudGFibGUgdGQuZm91cnRlZW4ud2lkZSB7XG4gIHdpZHRoOiA4Ny41JTtcbn1cblxuLnVpLnRhYmxlIHRoLmZpZnRlZW4ud2lkZSxcbi51aS50YWJsZSB0ZC5maWZ0ZWVuLndpZGUge1xuICB3aWR0aDogOTMuNzUlO1xufVxuXG4udWkudGFibGUgdGguc2l4dGVlbi53aWRlLFxuLnVpLnRhYmxlIHRkLnNpeHRlZW4ud2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgU29ydGFibGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDBkMGQwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZCxcbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0ZWQ6aG92ZXIge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGg6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgb3BhY2l0eTogMC44O1xuICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuNWVtO1xuICBmb250LWZhbWlseTogJ0ljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG59XG5cbi51aS5zb3J0YWJsZS50YWJsZSB0aGVhZCB0aC5hc2NlbmRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiAnXFxmMGQ3Jztcbn1cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLmRlc2NlbmRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiAnXFxmMGQ4Jztcbn1cblxuLyogSG92ZXIgKi9cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBhdXRvO1xuICBjb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjMpO1xufVxuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGg6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4vKiBTb3J0ZWQgKi9cblxuLnVpLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qIFNvcnRlZCBIb3ZlciAqL1xuXG4udWkuc29ydGFibGUudGFibGUgdGhlYWQgdGguc29ydGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLyogSW52ZXJ0ZWQgKi9cblxuLnVpLmludmVydGVkLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoLnNvcnRlZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNykgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDcpIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuc29ydGFibGUudGFibGUgdGhlYWQgdGg6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmludmVydGVkLnNvcnRhYmxlLnRhYmxlIHRoZWFkIHRoIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSW52ZXJ0ZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFRleHQgQ29sb3IgKi9cblxuLnVpLmludmVydGVkLnRhYmxlIHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnVpLmludmVydGVkLnRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMikgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuLnVpLmludmVydGVkLnRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMikgIWltcG9ydGFudDtcbn1cblxuLnVpLmludmVydGVkLnRhYmxlIHRyLmRpc2FibGVkIHRkLFxuLnVpLmludmVydGVkLnRhYmxlIHRyIHRkLmRpc2FibGVkLFxuLnVpLmludmVydGVkLnRhYmxlIHRyLmRpc2FibGVkOmhvdmVyIHRkLFxuLnVpLmludmVydGVkLnRhYmxlIHRyOmhvdmVyIHRkLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDIyNSwgMjI1LCAyMjUsIDAuMyk7XG59XG5cbi8qIERlZmluaXRpb24gKi9cblxuLnVpLmludmVydGVkLmRlZmluaXRpb24udGFibGUgdGZvb3Q6bm90KC5mdWxsLXdpZHRoKSB0aDpmaXJzdC1jaGlsZCxcbi51aS5pbnZlcnRlZC5kZWZpbml0aW9uLnRhYmxlIHRoZWFkOm5vdCguZnVsbC13aWR0aCkgdGg6Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuXG4udWkuaW52ZXJ0ZWQuZGVmaW5pdGlvbi50YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICBDb2xsYXBzaW5nXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY29sbGFwc2luZy50YWJsZSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBCYXNpY1xuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmJhc2ljLnRhYmxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0aGVhZCxcbi51aS5iYXNpYy50YWJsZSB0Zm9vdCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi51aS5iYXNpYy50YWJsZSB0aCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnVpLmJhc2ljLnRhYmxlIHRkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi51aS5iYXNpYy5zdHJpcGVkLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFZlcnkgQmFzaWMgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGgsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpIHRkIHtcbiAgcGFkZGluZzogMC43ZW0gMC44ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGg6Zmlyc3QtY2hpbGQsXG4udWlbY2xhc3MqPVwidmVyeSBiYXNpY1wiXS50YWJsZTpub3QoLnNvcnRhYmxlKTpub3QoLnN0cmlwZWQpIHRkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGg6bGFzdC1jaGlsZCxcbi51aVtjbGFzcyo9XCJ2ZXJ5IGJhc2ljXCJdLnRhYmxlOm5vdCguc29ydGFibGUpOm5vdCguc3RyaXBlZCkgdGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDBlbTtcbn1cblxuLnVpW2NsYXNzKj1cInZlcnkgYmFzaWNcIl0udGFibGU6bm90KC5zb3J0YWJsZSk6bm90KC5zdHJpcGVkKSB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCB7XG4gIHBhZGRpbmctdG9wOiAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQ2VsbGVkXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuY2VsbGVkLnRhYmxlIHRyIHRoLFxuLnVpLmNlbGxlZC50YWJsZSB0ciB0ZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q0ZDRkNTtcbn1cblxuLnVpLmNlbGxlZC50YWJsZSB0ciB0aDpmaXJzdC1jaGlsZCxcbi51aS5jZWxsZWQudGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgICBQYWRkZWRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5wYWRkZWQudGFibGUgdGgge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuXG4udWkucGFkZGVkLnRhYmxlIHRoLFxuLnVpLnBhZGRlZC50YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDFlbSAxZW07XG59XG5cbi8qIFZlcnkgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgcGFkZGVkXCJdLnRhYmxlIHRoIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMS41ZW07XG59XG5cbi51aVtjbGFzcyo9XCJ2ZXJ5IHBhZGRlZFwiXS50YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDEuNWVtIDEuNWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbXBhY3Rcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5jb21wYWN0LnRhYmxlIHRoIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjdlbTtcbiAgcGFkZGluZy1yaWdodDogMC43ZW07XG59XG5cbi51aS5jb21wYWN0LnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC41ZW0gMC43ZW07XG59XG5cbi8qIFZlcnkgKi9cblxuLnVpW2NsYXNzKj1cInZlcnkgY29tcGFjdFwiXS50YWJsZSB0aCB7XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNmVtO1xufVxuXG4udWlbY2xhc3MqPVwidmVyeSBjb21wYWN0XCJdLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC40ZW0gMC42ZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNpemVzXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbWFsbCAqL1xuXG4udWkuc21hbGwudGFibGUge1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4vKiBTdGFuZGFyZCAqL1xuXG4udWkudGFibGUge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogTGFyZ2UgKi9cblxuLnVpLmxhcmdlLnRhYmxlIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFRoZW1lIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgIFNpdGUgT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udWkuYmFzaWMudGFibGUge1xuICBib3JkZXI6IDBweCBzb2xpZCAjZDBkMGQwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGJvZHkgdGgge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGJvZHkgdGQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZmZmO1xufVxuXG4udWkuYmFzaWMudGFibGUgdGhlYWQgdGgge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFRyYW5zaXRpb25cbiAqIGh0dHA6Ly9naXRodWIuY29tL3NlbWFudGljLW9yZy9zZW1hbnRpYy11aS9cbiAqXG4gKlxuICogQ29weXJpZ2h0IDIwMTQgQ29udHJpYnV0b3Jzc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgVHJhbnNpdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBBbmltYXRpbmcgKi9cblxuLmFuaW1hdGluZy50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBMb2FkaW5nICovXG5cbi5sb2FkaW5nLnRyYW5zaXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTk5cHg7XG4gIGxlZnQ6IC05OTk5OXB4O1xufVxuXG4vKiBIaWRkZW4gKi9cblxuLmhpZGRlbi50cmFuc2l0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBWaXNpYmxlICovXG5cbi52aXNpYmxlLnRyYW5zaXRpb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbi8qIERpc2FibGVkICovXG5cbi5kaXNhYmxlZC50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFZhcmlhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5sb29waW5nLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICBUcmFuc2l0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLypcbiAgU29tZSB0cmFuc2l0aW9ucyBhZGFwdGVkIGZyb20gQW5pbWF0ZSBDU1NcbiAgaHR0cHM6Ly9naXRodWIuY29tL2RhbmVkZW4vYW5pbWF0ZS5jc3NcblxuICBBZGRpdGlvbmFsIHRyYW5zaXRpb25zIGFkYXB0ZWQgZnJvbSBHbGlkZVxuICBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlXG4qL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIEJyb3dzZVxuLS0tLS0tLS0tLS0tLS0tKi9cblxuLnRyYW5zaXRpb24uYnJvd3NlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xufVxuXG4udHJhbnNpdGlvbi5icm93c2UuaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBicm93c2VJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGJyb3dzZUluO1xufVxuXG4udHJhbnNpdGlvbi5icm93c2Uub3V0LFxuLnRyYW5zaXRpb24uYnJvd3NlLmxlZnQub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYnJvd3NlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJyb3dzZU91dExlZnQ7XG59XG5cbi50cmFuc2l0aW9uLmJyb3dzZS5yaWdodC5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBicm93c2VPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJyb3dzZU91dFJpZ2h0O1xufVxuXG4vKiBJbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYnJvd3NlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVaKDBweCk7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYnJvd3NlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVaKDBweCk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWigwcHgpO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpIHRyYW5zbGF0ZVooMHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVaKDBweCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVaKDBweCk7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG59XG5cbi8qIE91dCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYnJvd3NlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgei1pbmRleDogLTE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBicm93c2VPdXRMZWZ0IHtcbiAgMCUge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDUlKSByb3RhdGVZKDM1ZGVnKSByb3RhdGVYKDEwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYnJvd3NlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICA1MCUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpIHJvdGF0ZVkoMzVkZWcpIHJvdGF0ZVgoMTBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgei1pbmRleDogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVooLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBicm93c2VPdXRSaWdodCB7XG4gIDAlIHtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgei1pbmRleDogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDUlKSByb3RhdGVZKDM1ZGVnKSByb3RhdGVYKDEwZGVnKSB0cmFuc2xhdGVaKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSkgcm90YXRlWSgzNWRlZykgcm90YXRlWCgxMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWigtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIERyb3Bcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5kcm9wLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzQsIDEuNjEsIDAuNywgMSk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM0LCAxLjYxLCAwLjcsIDEpO1xufVxuXG4uZHJvcC50cmFuc2l0aW9uLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZHJvcEluO1xuICBhbmltYXRpb24tbmFtZTogZHJvcEluO1xufVxuXG4uZHJvcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGRyb3BPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBkcm9wT3V0O1xufVxuXG4vKiBEcm9wICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkcm9wSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3BPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkcm9wT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIEZhZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLmZhZGUuaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIGRvd25cIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBsZWZ0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgcmlnaHRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xufVxuXG4udHJhbnNpdGlvbi5mYWRlLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHVwXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmFkZSBkb3duXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZhZGUgbGVmdFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmYWRlIHJpZ2h0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5cbi8qIE91dCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgRmxpcHNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5mbGlwLnRyYW5zaXRpb24uaW4sXG4uZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA2MDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2MDBtcztcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMjAwMHB4O1xuICBwZXJzcGVjdGl2ZTogMjAwMHB4O1xufVxuXG4uaG9yaXpvbnRhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBob3Jpem9udGFsRmxpcEluO1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBJbjtcbn1cblxuLmhvcml6b250YWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhvcml6b250YWxGbGlwT3V0O1xuICBhbmltYXRpb24tbmFtZTogaG9yaXpvbnRhbEZsaXBPdXQ7XG59XG5cbi52ZXJ0aWNhbC5mbGlwLnRyYW5zaXRpb24uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2ZXJ0aWNhbEZsaXBJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcEluO1xufVxuXG4udmVydGljYWwuZmxpcC50cmFuc2l0aW9uLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcE91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHZlcnRpY2FsRmxpcE91dDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhvcml6b250YWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdmVydGljYWxGbGlwSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHZlcnRpY2FsRmxpcEluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyogT3V0ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBob3Jpem9udGFsRmxpcE91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhvcml6b250YWxGbGlwT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2ZXJ0aWNhbEZsaXBPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHZlcnRpY2FsRmxpcE91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgIFNjYWxlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc2NhbGUudHJhbnNpdGlvbi5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNjYWxlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBzY2FsZUluO1xufVxuXG4uc2NhbGUudHJhbnNpdGlvbi5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzY2FsZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNjYWxlT3V0O1xufVxuXG4vKiBJbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4vKiBPdXQgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNjYWxlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgICBGbHlcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIElud2FyZCAqL1xuXG4udHJhbnNpdGlvbi5mbHkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC42cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4udHJhbnNpdGlvbi5mbHkuaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseUluO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJblVwO1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5VcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGRvd25cIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlJbkRvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBsZWZ0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5SW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5MZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbHlJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmx5SW5SaWdodDtcbn1cblxuLyogT3V0d2FyZCAqL1xuXG4udHJhbnNpdGlvbi5mbHkub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0O1xuICBhbmltYXRpb24tbmFtZTogZmx5T3V0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgdXBcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRVcDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwiZmx5IGRvd25cIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZseU91dERvd247XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cImZseSBsZWZ0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZseU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRMZWZ0O1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJmbHkgcmlnaHRcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmx5T3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbHlPdXRSaWdodDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cblxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTUwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbHlJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxNTAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1MDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTUwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNTAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1MDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5SW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1MDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZseUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNTAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTUwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZseUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1MDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5SW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLyogT3V0ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXQge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDUwJSwgNTUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cblxuICA1MCUsIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5T3V0VXAge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0VXAge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXREb3duIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0RG93biB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmx5T3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmx5T3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbHlPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZseU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU2xpZGVcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnNsaWRlLmluLFxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgZG93blwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5ZO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHVwXCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblk7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgbGVmdFwiXS5pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5YO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHJpZ2h0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblg7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluWDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbn1cblxuLnRyYW5zaXRpb24uc2xpZGUub3V0LFxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgZG93blwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHVwXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic2xpZGUgbGVmdFwiXS5vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG59XG5cbi50cmFuc2l0aW9uW2NsYXNzKj1cInNsaWRlIHJpZ2h0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0WDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbn1cblxuLyogSW4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5ZIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5ZIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblgge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJblgge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG59XG5cbi8qIE91dCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRZIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0WSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0WCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFgge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgU3dpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi50cmFuc2l0aW9uLnN3aW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDgwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDgwMG1zO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBkb3duXCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmdJblg7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgdXBcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWDtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5YO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBsZWZ0XCJdLmluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmdJblk7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgcmlnaHRcIl0uaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZ0luWTtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nSW5ZO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4udHJhbnNpdGlvbi5zd2luZy5vdXQsXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBkb3duXCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgdXBcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmdPdXRYO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdPdXRYO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gY2VudGVyO1xufVxuXG4udHJhbnNpdGlvbltjbGFzcyo9XCJzd2luZyBsZWZ0XCJdLm91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WTtcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nT3V0WTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbn1cblxuLnRyYW5zaXRpb25bY2xhc3MqPVwic3dpbmcgcmlnaHRcIl0ub3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmdPdXRZO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmdPdXRZO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBsZWZ0O1xufVxuXG4vKiBJbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmdJblgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE1ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtNy41ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2luZ0luWCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgxNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgwZGVnKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmdJblkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTE3LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xNy41ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSg3LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dpbmdJblkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoLTE3LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xNy41ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSg3LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICB9XG59XG5cbi8qIE91dCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmdPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTcuNWRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoMTcuNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3aW5nT3V0WCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDBkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC03LjVkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE3LjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKDE3LjVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVYKC0zMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nT3V0WSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3aW5nT3V0WSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDBkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDcuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNy41ZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIFN0YXRpYyBBbmltYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgRW1waGFzaXNcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi5mbGFzaC50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xufVxuXG4uc2hha2UudHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbn1cblxuLmJvdW5jZS50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG59XG5cbi50YWRhLnRyYW5zaXRpb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG4gIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xufVxuXG4ucHVsc2UudHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbn1cblxuLmppZ2dsZS50cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqaWdnbGU7XG4gIGFuaW1hdGlvbi1uYW1lOiBqaWdnbGU7XG59XG5cbi8qIEZsYXNoICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGFzaCB7XG4gIDAlLCA1MCUsIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsIDc1JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qIFNoYWtlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG59XG5cbi8qIEJvdW5jZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5cbi8qIFRhZGEgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4vKiBQdWxzZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiBSdWJiZXJiYW5kICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBqaWdnbGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICB9XG5cbiAgNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGppZ2dsZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cblxuICA2NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnByb2R1Y3QuYWNjb3JkaW9uIC50cmFuc2l0aW9uLnZpc2libGUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLyohXG4gKiAjIFNlbWFudGljIFVJIDEuMTEuNSAtIFZpZGVvXG4gKiBodHRwOi8vZ2l0aHViLmNvbS9zZW1hbnRpYy1vcmcvc2VtYW50aWMtdWkvXG4gKlxuICpcbiAqIENvcHlyaWdodCAyMDE0IENvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKiBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgICBWaWRlb1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLnZpZGVvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRkZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFBsYWNlaG9sZGVyIEltYWdlICovXG5cbi51aS52aWRlbyAucGxhY2Vob2xkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xufVxuXG4vKiBQbGF5IEljb24gT3ZlcmxheSAqL1xuXG4udWkudmlkZW8gLnBsYXkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMTA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuODtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cblxuLnVpLnZpZGVvIC5wbGF5Lmljb246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxMTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB3aWR0aDogOHJlbTtcbiAgaGVpZ2h0OiA4cmVtO1xuICBsaW5lLWhlaWdodDogOHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiA4cmVtO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnVpLnZpZGVvIC5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIElGcmFtZSBFbWJlZCAqL1xuXG4udWkudmlkZW8gLmVtYmVkIGlmcmFtZSxcbi51aS52aWRlbyAuZW1iZWQgZW1iZWQsXG4udWkudmlkZW8gLmVtYmVkIG9iamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBtYXJnaW46IDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgU3RhdGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tXG4gICAgSG92ZXJcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS52aWRlbyAucGxheTpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS1cbiAgICAgQWN0aXZlXG4tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkudmlkZW8uYWN0aXZlIC5wbGF5LFxuLnVpLnZpZGVvLmFjdGl2ZSAucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWkudmlkZW8uYWN0aXZlIC5lbWJlZCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVmlkZW8gT3ZlcnJpZGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgU2l0ZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiFcbiAqICMgU2VtYW50aWMgVUkgMS4xMS41IC0gRm9ybVxuICogaHR0cDovL2dpdGh1Yi5jb20vc2VtYW50aWMtb3JnL3NlbWFudGljLXVpL1xuICpcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBDb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgICAgRWxlbWVudHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSA+IHAge1xuICBtYXJnaW46IDFlbSAwZW07XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRmllbGRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZHMgLmZpZWxkLFxuLnVpLmZvcm0gLmZpZWxkIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMGVtIDBlbSAxZW07XG59XG5cbi51aS5mb3JtIC5maWVsZHM6bGFzdC1jaGlsZCxcbi51aS5mb3JtIC5maWVsZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIExhYmVsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkID4gbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwZW0gMGVtIDAuMjg1N3JlbSAwZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtc2l6ZTogMC45Mjg1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnVpLmZvcm0gLmdyb3VwZWQuZmllbGRzID4gbGFiZWwge1xuICBtYXJnaW46IDBlbSAwZW0gMC4yODU3cmVtIDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC1zaXplOiAwLjkyODVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyA+IGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDBlbSAxZW0gMGVtIDBlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC1zaXplOiAwLjkyODVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgU3RhbmRhcmQgSW5wdXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSB0ZXh0YXJlYSxcbi51aS5mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInVybFwiXSxcbi51aS5mb3JtIC51aS5pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWkuZm9ybSBpbnB1dDpub3QoW3R5cGVdKSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDBlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBsaW5lLWhlaWdodDogMS4yMTQyZW07XG4gIHBhZGRpbmc6IDAuNjc4NjFlbSAxZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM5LCA0MSwgNDMsIDAuMTUpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTdyZW07XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMGVtIDBlbSB0cmFuc3BhcmVudCBpbnNldDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi51aS50ZXh0YXJlYSxcbi51aS5mb3JtIHRleHRhcmVhIHtcbiAgbWFyZ2luOiAwZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgcGFkZGluZzogMC43ODU3MWVtIDFlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtO1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAwZW0gdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICBmb250LXNpemU6IDFlbTtcbiAgaGVpZ2h0OiAxMmVtO1xuICBtaW4taGVpZ2h0OiA4ZW07XG4gIG1heC1oZWlnaHQ6IDI0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI4NTc7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi51aS5mb3JtIHRleHRhcmVhLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBJbnB1dCB3LyBhdHRhY2hlZCBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIGlucHV0LmF0dGFjaGVkIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgQmFzaWMgU2VsZWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSBzZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzOSwgNDEsIDQzLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yODU3cmVtO1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDBlbSAwZW0gdHJhbnNwYXJlbnQgaW5zZXQ7XG4gIHBhZGRpbmc6IDAuNjJlbSAxZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgRHJvcGRvd25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZCA+IC5zZWxlY3Rpb24uZHJvcGRvd24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnNlbGVjdGlvbi5kcm9wZG93biA+IC5kcm9wZG93bi5pY29uIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXZpZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmRpdmlkZXIge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAxZW0gMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBUeXBlcyBvZiBNZXNzYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLnN1Y2Nlc3MubWVzc2FnZSxcbi51aS5mb3JtIC53YXJuaW5nLm1lc3NhZ2UsXG4udWkuZm9ybSAuZXJyb3IubWVzc2FnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEFzc3VtcHRpb25zICovXG5cbi51aS5mb3JtIC5tZXNzYWdlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBWYWxpZGF0aW9uIFByb21wdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkIC5wcm9tcHQubGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkIC5wcm9tcHQge1xuICBtYXJnaW46IC0wLjVlbSAwZW0gLTAuNWVtIDFlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZCAucHJvbXB0OmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IC0wLjNlbTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDBlbTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgIFN0YXRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgUGxhY2Vob2xkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIGJyb3dzZXJzIHJlcXVpcmUgdGhlc2UgcnVsZXMgc2VwYXJhdGUgKi9cblxuLnVpLmZvcm0gOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTQwLCAxNDAsIDE0MCwgMC44KTtcbn1cblxuLnVpLmZvcm0gOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMTQwLCAxNDAsIDE0MCwgMC44KTtcbn1cblxuLnVpLmZvcm0gOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoODksIDg5LCA4OSwgMC44KTtcbn1cblxuLnVpLmZvcm0gOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoODksIDg5LCA4OSwgMC44KTtcbn1cblxuLyogRXJyb3IgUGxhY2Vob2xkZXIgKi9cblxuLnVpLmZvcm0gLmVycm9yIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTczMDM2O1xufVxuXG4udWkuZm9ybSAuZXJyb3IgOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlNzMwMzY7XG59XG5cbi51aS5mb3JtIC5lcnJvciA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2UzMWIyMTtcbn1cblxuLnVpLmZvcm0gLmVycm9yIDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTMxYjIxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZvY3VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSBpbnB1dDpub3QoW3R5cGVdKTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLnVpLmZvcm0gaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4udWkuZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbi51aS5mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTdyZW0gMC4yODU3cmVtIDBlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMXB4IDBlbSAwZW0gMGVtIHJnYmEoMzksIDQxLCA0MywgMC4zKSBpbnNldDtcbn1cblxuLnVpLmZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDM5LCA0MSwgNDMsIDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDBlbSAwLjI4NTdyZW0gMC4yODU3cmVtIDBlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMXB4IDBlbSAwZW0gMGVtIHJnYmEoMzksIDQxLCA0MywgMC4zKSBpbnNldDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIFN1Y2Nlc3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE9uIEZvcm0gKi9cblxuLnVpLmZvcm0uc3VjY2VzcyAuc3VjY2Vzcy5tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE9uIEZvcm0gKi9cblxuLnVpLmZvcm0ud2FybmluZyAud2FybmluZy5tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgV2FybmluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogT24gRm9ybSAqL1xuXG4udWkuZm9ybS5lcnJvciAuZXJyb3IubWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBPbiBGaWVsZChzKSAqL1xuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBsYWJlbCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBsYWJlbCxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5pbnB1dCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuaW5wdXQge1xuICBjb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNvcm5lci5sYWJlbCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY29ybmVyLmxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2MxODFlO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBzZWxlY3QsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dDpub3QoW3R5cGVdKSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWEsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0LFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmMGYwO1xuICBib3JkZXItY29sb3I6ICNkYmIxYjE7XG4gIGNvbG9yOiAjY2MxODFlO1xuICBib3JkZXItcmFkaXVzOiAwZW0gMC4yODU3cmVtIDAuMjg1N3JlbSAwZW07XG4gIGJveC1zaGFkb3c6IDJweCAwZW0gMGVtIDBlbSAjY2MxODFlIGluc2V0O1xufVxuXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgdGV4dGFyZWE6Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3Igc2VsZWN0OmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi51aS5mb3JtIC5maWVsZC5lcnJvciBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZmZmMGYwO1xuICBib3JkZXItY29sb3I6ICNkYmIxYjE7XG4gIGNvbG9yOiAjZGExYTIwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDJweCAwZW0gMGVtIDBlbSAjZGExYTIwIGluc2V0O1xufVxuXG4vKiBQcmVzZXJ2ZSBOYXRpdmUgU2VsZWN0IFN0eWxpbmdzICovXG5cbi51aS5mb3JtIC5maWVsZC5lcnJvciBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0LWJ1dHRvbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBEcm9wZG93biBFcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24sXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd24gLml0ZW0sXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biAudGV4dCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLml0ZW0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmMGYwO1xuICBjb2xvcjogI2NjMTgxZTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC51aS5kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAudWkuZHJvcGRvd246aG92ZXIsXG4udWkuZm9ybSAuZmllbGQuZXJyb3IgLnVpLmRyb3Bkb3duOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGJiMWIxICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93bjpob3ZlciAubWVudSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd246aG92ZXIgLm1lbnUge1xuICBib3JkZXItY29sb3I6ICNkYmIxYjE7XG59XG5cbi8qIEhvdmVyICovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC51aS5kcm9wZG93biAubWVudSAuaXRlbTpob3Zlcixcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLml0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJlN2U3O1xufVxuXG4vKiBBY3RpdmUgKi9cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLnVpLmRyb3Bkb3duIC5tZW51IC5hY3RpdmUuaXRlbSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAudWkuZHJvcGRvd24gLm1lbnUgLmFjdGl2ZS5pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkY2ZjZiAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ2hlY2tib3ggRXJyb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsLFxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94Om5vdCgudG9nZ2xlKTpub3QoLnNsaWRlcikgLmJveCxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94IHtcbiAgY29sb3I6ICNjYzE4MWU7XG59XG5cbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveDpub3QoLnRvZ2dsZSk6bm90KC5zbGlkZXIpIGxhYmVsOmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSBsYWJlbDpiZWZvcmUsXG4udWkuZm9ybSAuZmllbGRzLmVycm9yIC5maWVsZCAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSxcbi51aS5mb3JtIC5maWVsZC5lcnJvciAuY2hlY2tib3g6bm90KC50b2dnbGUpOm5vdCguc2xpZGVyKSAuYm94OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNmZmYwZjA7XG4gIGJvcmRlci1jb2xvcjogI2RiYjFiMTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcy5lcnJvciAuZmllbGQgLmNoZWNrYm94IGxhYmVsOmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5maWVsZHMuZXJyb3IgLmZpZWxkIC5jaGVja2JveCAuYm94OmFmdGVyLFxuLnVpLmZvcm0gLmZpZWxkLmVycm9yIC5jaGVja2JveCAuYm94OmFmdGVyIHtcbiAgY29sb3I6ICNjYzE4MWU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBEaXNhYmxlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmZvcm0gLmZpZWxkIDpkaXNhYmxlZCxcbi51aS5mb3JtIC5maWVsZC5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkLmRpc2FibGVkIGxhYmVsIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4udWkuZm9ybSAuZmllbGQuZGlzYWJsZWQgOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLVxuICAgIExvYWRpbmdcbi0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5sb2FkaW5nLmZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnQtZXZlbnRzOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi51aS5sb2FkaW5nLmZvcm06YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAwJTtcbiAgbGVmdDogMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4udWkubG9hZGluZy5mb3JtOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMS41ZW0gMGVtIDBlbSAtMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGhlaWdodDogM2VtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZm9ybS1zcGluIDAuNnMgbGluZWFyO1xuICBhbmltYXRpb246IGZvcm0tc3BpbiAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjYWFhYWFhIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggdHJhbnNwYXJlbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZvcm0tc3BpbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmb3JtLXNwaW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBFbGVtZW50IFR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIFJlcXVpcmVkIEZpZWxkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzID4gLmZpZWxkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiBsYWJlbDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZHMgPiAuZmllbGQgPiAuY2hlY2tib3g6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiAuY2hlY2tib3g6YWZ0ZXIge1xuICBtYXJnaW46IC0wLjJlbSAwZW0gMGVtIDAuMmVtO1xuICBjb250ZW50OiAnKic7XG4gIGNvbG9yOiAjY2MxODFlO1xufVxuXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGRzID4gLmZpZWxkID4gbGFiZWw6YWZ0ZXIsXG4udWkuZm9ybSAucmVxdWlyZWQuZmllbGQgPiBsYWJlbDphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVpLmZvcm0gLnJlcXVpcmVkLmZpZWxkcyA+IC5maWVsZCA+IC5jaGVja2JveDphZnRlcixcbi51aS5mb3JtIC5yZXF1aXJlZC5maWVsZCA+IC5jaGVja2JveDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwJTtcbiAgbGVmdDogMTAwJTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgICAgVmFyaWF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEludmVydGVkIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLmludmVydGVkLmZvcm0gbGFiZWwsXG4udWkuZm9ybSAuaW52ZXJ0ZWQuc2VnbWVudCBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IC51aS5jaGVja2JveCBsYWJlbCxcbi51aS5mb3JtIC5pbnZlcnRlZC5zZWdtZW50IC51aS5jaGVja2JveCAuYm94LFxuLnVpLmludmVydGVkLmZvcm0gLnVpLmNoZWNrYm94IGxhYmVsLFxuLnVpLmludmVydGVkLmZvcm0gLnVpLmNoZWNrYm94IC5ib3gge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBGaWVsZCBHcm91cHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIEdyb3VwZWQgVmVydGljYWxseSAqL1xuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMge1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbn1cblxuLnVpLmZvcm0gLmdyb3VwZWQuZmllbGRzID4gbGFiZWwge1xuICBmb250LXNpemU6IDAuOTI4NWVtO1xufVxuXG4udWkuZm9ybSAuZ3JvdXBlZC5maWVsZHMgLmZpZWxkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAuNWVtIDBlbTtcbiAgcGFkZGluZzogMGVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgIEZpZWxkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3BsaXQgZmllbGRzICovXG5cbi51aS5mb3JtIC5maWVsZHMge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnVpLmZvcm0gLmZpZWxkczphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbi51aS5mb3JtIC5maWVsZHMgPiAuZmllbGQge1xuICBjbGVhcjogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuXG4udWkuZm9ybSAuZmllbGRzID4gLmZpZWxkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIE90aGVyIENvbWJpbmF0aW9ucyAqL1xuXG4udWkuZm9ybSAudHdvLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAudHdvLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnRocmVlLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi51aS5mb3JtIC5mb3VyLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWkuZm9ybSAuZml2ZS5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLmZpdmUuZmllbGRzID4gLmZpZWxkIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVpLmZvcm0gLnNpeC5maWVsZHMgPiAuZmllbGRzLFxuLnVpLmZvcm0gLnNpeC5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4udWkuZm9ybSAuc2V2ZW4uZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5zZXZlbi5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTQuMjg1NzE0MjklO1xufVxuXG4udWkuZm9ybSAuZWlnaHQuZmllbGRzID4gLmZpZWxkcyxcbi51aS5mb3JtIC5laWdodC5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi51aS5mb3JtIC5uaW5lLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAubmluZS5maWVsZHMgPiAuZmllbGQge1xuICB3aWR0aDogMTEuMTExMTExMTElO1xufVxuXG4udWkuZm9ybSAudGVuLmZpZWxkcyA+IC5maWVsZHMsXG4udWkuZm9ybSAudGVuLmZpZWxkcyA+IC5maWVsZCB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi8qIFN3YXAgdG8gZnVsbCB3aWR0aCBvbiBtb2JpbGUgKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWkuZm9ybSAudHdvLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLnRocmVlLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLmZvdXIuZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLmZvdXIuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAuZml2ZS5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuZml2ZS5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5zaXguZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLnNpeC5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5zZXZlbi5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuc2V2ZW4uZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAuZWlnaHQuZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLmVpZ2h0LmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLm5pbmUuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAudGVuLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC50ZW4uZmllbGRzID4gLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMGVtIDBlbSAxZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwJTtcbiAgfVxufVxuXG4udWkuZm9ybSAuZmllbGRzIC5maWVsZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMCU7XG59XG5cbi51aS5mb3JtIC5maWVsZHMgLmZpZWxkOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAwJTtcbn1cblxuLyogU2l6aW5nIENvbWJpbmF0aW9ucyAqL1xuXG4udWkuZm9ybSAuZmllbGRzIC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDYuMjUlO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cblxuLnVpLmZvcm0gLmZpZWxkcyAud2lkZS5maWVsZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMCU7XG59XG5cbi51aS5mb3JtIC5maWVsZHMgLndpZGUuZmllbGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAlO1xufVxuXG4udWkuZm9ybSAub25lLndpZGUuZmllbGQge1xuICB3aWR0aDogNi4yNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnR3by53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC50aHJlZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDE4Ljc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZm91ci53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZml2ZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDMxLjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuc2l4LndpZGUuZmllbGQge1xuICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLnNldmVuLndpZGUuZmllbGQge1xuICB3aWR0aDogNDMuNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC5laWdodC53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAubmluZS53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDU2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAudGVuLndpZGUuZmllbGQge1xuICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbn1cblxuLnVpLmZvcm0gLmVsZXZlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDY4Ljc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAudHdlbHZlLndpZGUuZmllbGQge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi51aS5mb3JtIC50aGlydGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDgxLjI1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZm91cnRlZW4ud2lkZS5maWVsZCB7XG4gIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuZmlmdGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDkzLjc1JSAhaW1wb3J0YW50O1xufVxuXG4udWkuZm9ybSAuc2l4dGVlbi53aWRlLmZpZWxkIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLyogU3dhcCB0byBmdWxsIHdpZHRoIG9uIG1vYmlsZSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51aS5mb3JtIC50d28uZmllbGRzID4gLmZpZWxkcyxcbiAgLnVpLmZvcm0gLnR3by5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC50aHJlZS5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAudGhyZWUuZmllbGRzID4gLmZpZWxkLFxuICAudWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGRzLFxuICAudWkuZm9ybSAuZm91ci5maWVsZHMgPiAuZmllbGQsXG4gIC51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZHMsXG4gIC51aS5mb3JtIC5maXZlLmZpZWxkcyA+IC5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC50d28ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC50aHJlZS53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLmZvdXIud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5maXZlLndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuc2l4LndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuc2V2ZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5laWdodC53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLm5pbmUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC50ZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC5lbGV2ZW4ud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC50d2VsdmUud2lkZS5maWVsZCxcbiAgLnVpLmZvcm0gLmZpZWxkcyA+IC50aGlydGVlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLmZvdXJ0ZWVuLndpZGUuZmllbGQsXG4gIC51aS5mb3JtIC5maWVsZHMgPiAuZmlmdGVlbi53aWRlLmZpZWxkLFxuICAudWkuZm9ybSAuZmllbGRzID4gLnNpeHRlZW4ud2lkZS5maWVsZCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMWVtO1xuICAgIHBhZGRpbmctbGVmdDogMCU7XG4gICAgcGFkZGluZy1yaWdodDogMCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIElubGluZSBGaWVsZHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMWVtIDBlbSAwZW07XG4gIHBhZGRpbmc6IDBlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiBwLFxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiAudWkuaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gbGFiZWwsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gcCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiBpbnB1dCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiAudWkuaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwZW07XG4gIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAwLjkyODVlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkcyAuZmllbGQgPiAudWkuaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gaW5wdXQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gLnVpLmlucHV0IHtcbiAgZm9udC1zaXplOiAwLjkyODVlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gLnVpLmNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjc1ZW07XG59XG5cbi8qIExhYmVsICovXG5cbi51aS5mb3JtIC5pbmxpbmUuZmllbGRzIC5maWVsZCA+IDpmaXJzdC1jaGlsZCxcbi51aS5mb3JtIC5pbmxpbmUuZmllbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDBlbSAwLjI4NTdyZW0gMGVtIDBlbTtcbn1cblxuLnVpLmZvcm0gLmlubGluZS5maWVsZHMgLmZpZWxkID4gOm9ubHktY2hpbGQsXG4udWkuZm9ybSAuaW5saW5lLmZpZWxkID4gOm9ubHktY2hpbGQge1xuICBtYXJnaW46IDBlbTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICBTaXplc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogU3RhbmRhcmQgKi9cblxuLnVpLnNtYWxsLmZvcm0ge1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbi8qIE1lZGl1bSAqL1xuXG4udWkuZm9ybSB7XG4gIGZvbnQtc2l6ZTogYXV0bztcbn1cblxuLyogTGFyZ2UgKi9cblxuLnVpLmxhcmdlLmZvcm0ge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG59XG5cbi8qIEh1Z2UgKi9cblxuLnVpLmh1Z2UuZm9ybSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBUaGVtZSBPdmVycmlkZXNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICBTaXRlIE92ZXJyaWRlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnVpLmZvcm0gLmZpZWxkcyAuZmllbGQsXG4udWkuZm9ybSAuZmllbGQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4udWkubW9kYWwgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KSAhaW1wb3J0YW50O1xufVxuXG4udWkubW9kYWwgOi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE4LSAqL1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb2RhbCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE5KyAqL1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG59XG5cbi51aS5tb2RhbCA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KSAhaW1wb3J0YW50O1xufSIsIi8qKlxuICogc2VsZWN0aXplLmNzcyAodjAuMTIuMClcbiAqIENvcHlyaWdodCAoYykgMjAxM+KAkzIwMTUgQnJpYW4gUmVhdmlzICYgY29udHJpYnV0b3JzXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXNcbiAqIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OlxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRlxuICogQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICpcbiAqIEBhdXRob3IgQnJpYW4gUmVhdmlzIDxicmlhbkB0aGlyZHJvdXRlLmNvbT5cbiAqL1xuXG4uc2VsZWN0aXplLWNvbnRyb2wucGx1Z2luLXJlbW92ZV9idXR0b24gW2RhdGEtdmFsdWVdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG59XG4uc2VsZWN0aXplLWNvbnRyb2wucGx1Z2luLXJlbW92ZV9idXR0b24gW2RhdGEtdmFsdWVdIC5yZW1vdmUge1xuICB6LWluZGV4OiAxO1xuICAvKiBmaXhlcyBpZSBidWcgKHNlZSAjMzkyKSAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDE3cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAycHggMCAwIDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QwZDBkMDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcbiAgYm9yZGVyLXJhZGl1czogMCAycHggMnB4IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLnNlbGVjdGl6ZS1jb250cm9sLnBsdWdpbi1yZW1vdmVfYnV0dG9uIFtkYXRhLXZhbHVlXSAucmVtb3ZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5wbHVnaW4tcmVtb3ZlX2J1dHRvbiBbZGF0YS12YWx1ZV0uYWN0aXZlIC5yZW1vdmUge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2NhY2FjYTtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5wbHVnaW4tcmVtb3ZlX2J1dHRvbiAuZGlzYWJsZWQgW2RhdGEtdmFsdWVdIC5yZW1vdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnNlbGVjdGl6ZS1jb250cm9sLnBsdWdpbi1yZW1vdmVfYnV0dG9uIC5kaXNhYmxlZCBbZGF0YS12YWx1ZV0gLnJlbW92ZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmZmZmO1xufVxuLnNlbGVjdGl6ZS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93bixcbi5zZWxlY3RpemUtaW5wdXQsXG4uc2VsZWN0aXplLWlucHV0IGlucHV0IHtcbiAgY29sb3I6ICMzMDMwMzA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0O1xufVxuLnNlbGVjdGl6ZS1pbnB1dCxcbi5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjdXJzb3I6IHRleHQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5zZWxlY3RpemUtaW5wdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDBkMGQwO1xuICBwYWRkaW5nOiA4cHggOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaGFzLWl0ZW1zIHtcbiAgcGFkZGluZzogNnB4IDhweCAzcHg7XG59XG4uc2VsZWN0aXplLWlucHV0LmZ1bGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuLnNlbGVjdGl6ZS1pbnB1dC5kaXNhYmxlZCxcbi5zZWxlY3RpemUtaW5wdXQuZGlzYWJsZWQgKiB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuLnNlbGVjdGl6ZS1pbnB1dC5mb2N1cyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLnNlbGVjdGl6ZS1pbnB1dC5kcm9wZG93bi1hY3RpdmUge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweCAzcHggMCAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweCAzcHggMCAwO1xuICBib3JkZXItcmFkaXVzOiAzcHggM3B4IDAgMDtcbn1cbi5zZWxlY3RpemUtaW5wdXQgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBkaXNwbGF5OiAtbW96LWlubGluZS1zdGFjaztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQgPiBkaXYge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMCAzcHggM3B4IDA7XG4gIHBhZGRpbmc6IDJweCA2cHg7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGNvbG9yOiAjMzAzMDMwO1xuICBib3JkZXI6IDAgc29saWQgI2QwZDBkMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0ID4gZGl2LmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMyREI0NzU7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDAgc29saWQgI2NhY2FjYTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuZGlzYWJsZWQgPiBkaXYsXG4uc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5kaXNhYmxlZCA+IGRpdi5hY3RpdmUge1xuICBjb2xvcjogIzdkN2Q3ZDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAwIHNvbGlkICNmZmZmZmY7XG59XG4uc2VsZWN0aXplLWlucHV0ID4gaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAycHggMCAwICFpbXBvcnRhbnQ7XG4gIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNlbGVjdGl6ZS1pbnB1dCA+IGlucHV0OjotbXMtY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlbGVjdGl6ZS1pbnB1dCA+IGlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNlbGVjdGl6ZS1pbnB1dDo6YWZ0ZXIge1xuICBjb250ZW50OiAnICc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogbGVmdDtcbn1cbi5zZWxlY3RpemUtaW5wdXQuZHJvcGRvd24tYWN0aXZlOjpiZWZvcmUge1xuICBjb250ZW50OiAnICc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIGhlaWdodDogMXB4O1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIG1hcmdpbjogLTFweCAwIDAgMDtcbiAgYm9yZGVyLXRvcDogMCBub25lO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAzcHggM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCAzcHggM3B4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgM3B4IDNweDtcbn1cbi5zZWxlY3RpemUtZHJvcGRvd24gW2RhdGEtc2VsZWN0YWJsZV0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uc2VsZWN0aXplLWRyb3Bkb3duIFtkYXRhLXNlbGVjdGFibGVdIC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEyNSwgMTY4LCAyMDgsIDAuMik7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93biBbZGF0YS1zZWxlY3RhYmxlXSxcbi5zZWxlY3RpemUtZHJvcGRvd24gLm9wdGdyb3VwLWhlYWRlciB7XG4gIHBhZGRpbmc6IDVweCA4cHg7XG59XG4uc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRncm91cDpmaXJzdC1jaGlsZCAub3B0Z3JvdXAtaGVhZGVyIHtcbiAgYm9yZGVyLXRvcDogMCBub25lO1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93biAub3B0Z3JvdXAtaGVhZGVyIHtcbiAgY29sb3I6ICMzMDMwMzA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5zZWxlY3RpemUtZHJvcGRvd24gLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWZhZmQ7XG4gIGNvbG9yOiAjNDk1YzY4O1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93biAuYWN0aXZlLmNyZWF0ZSB7XG4gIGNvbG9yOiAjNDk1YzY4O1xufVxuLnNlbGVjdGl6ZS1kcm9wZG93biAuY3JlYXRlIHtcbiAgY29sb3I6IHJnYmEoNDgsIDQ4LCA0OCwgMC41KTtcbn1cbi5zZWxlY3RpemUtZHJvcGRvd24tY29udGVudCB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG59XG4uc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQsXG4uc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgaW5wdXQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlLFxuLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZSBpbnB1dCB7XG4gIGN1cnNvcjogdGV4dDtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dDphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxNXB4O1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggMCA1cHg7XG4gIGJvcmRlci1jb2xvcjogIzgwODA4MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5kcm9wZG93bi1hY3RpdmU6YWZ0ZXIge1xuICBtYXJnaW4tdG9wOiAtNHB4O1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzgwODA4MCB0cmFuc3BhcmVudDtcbn1cbi5zZWxlY3RpemUtY29udHJvbC5ydGwuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQ6YWZ0ZXIge1xuICBsZWZ0OiAxNXB4O1xuICByaWdodDogYXV0bztcbn1cbi5zZWxlY3RpemUtY29udHJvbC5ydGwgLnNlbGVjdGl6ZS1pbnB1dCA+IGlucHV0IHtcbiAgbWFyZ2luOiAwIDRweCAwIC0ycHggIWltcG9ydGFudDtcbn1cbi5zZWxlY3RpemUtY29udHJvbCAuc2VsZWN0aXplLWlucHV0LmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRCQVNFLVBJQ0tFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTm90ZTogdGhlIHJvb3QgcGlja2VyIGVsZW1lbnQgc2hvdWxkICpOT1QqIGJlIHN0eWxlZCBtb3JlIHRoYW4gd2hhdOKAmXMgaGVyZS5cbiAqL1xuLnBpY2tlciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwMDA7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4vKipcbiAqIFRoZSBwaWNrZXIgaW5wdXQgZWxlbWVudC5cbiAqL1xuLnBpY2tlcl9faW5wdXQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4vKipcbiAqIFdoZW4gdGhlIHBpY2tlciBpcyBvcGVuZWQsIHRoZSBpbnB1dCBlbGVtZW50IGlzIOKAnGFjdGl2YXRlZOKAnS5cbiAqL1xuLnBpY2tlcl9faW5wdXQucGlja2VyX19pbnB1dC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjO1xufVxuLyoqXG4gKiBUaGUgaG9sZGVyIGlzIHRoZSBvbmx5IOKAnHNjcm9sbGFibGXigJ0gdG9wLWxldmVsIGNvbnRhaW5lciBlbGVtZW50LlxuICovXG4ucGlja2VyX19ob2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4vKiFcbiAqIENsYXNzaWMgcGlja2VyIHN0eWxpbmcgZm9yIHBpY2thZGF0ZS5qc1xuICogRGVtbzogaHR0cDovL2Ftc3VsLmdpdGh1Yi5pby9waWNrYWRhdGUuanNcbiAqL1xuLyoqXG4gKiBOb3RlOiB0aGUgcm9vdCBwaWNrZXIgZWxlbWVudCBzaG91bGQgKk5PVCogYmUgc3R5bGVkIG1vcmUgdGhhbiB3aGF04oCZcyBoZXJlLlxuICovXG4ucGlja2VyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKipcbiAqIFRoZSBob2xkZXIgaXMgdGhlIGJhc2Ugb2YgdGhlIHBpY2tlci5cbiAqL1xuLnBpY2tlcl9faG9sZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhYWFhO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgNXB4IDVweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLXdpZHRoOiAxNzZweDtcbiAgbWF4LXdpZHRoOiA0NjZweDtcbiAgbWF4LWhlaWdodDogMDtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIC1tb3otb3BhY2l0eTogMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFlbSkgcGVyc3BlY3RpdmUoNjAwcHgpIHJvdGF0ZVgoMTBkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKSBwZXJzcGVjdGl2ZSg2MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMTVzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0LCBtYXgtaGVpZ2h0IDBzIDAuMTVzLCBib3JkZXItd2lkdGggMHMgMC4xNXM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dCwgb3BhY2l0eSAwLjE1cyBlYXNlLW91dCwgbWF4LWhlaWdodCAwcyAwLjE1cywgYm9yZGVyLXdpZHRoIDBzIDAuMTVzO1xufVxuLyoqXG4gKiBUaGUgZnJhbWUgYW5kIHdyYXAgd29yayB0b2dldGhlciB0byBlbnN1cmUgdGhhdFxuICogY2xpY2tzIHdpdGhpbiB0aGUgcGlja2VyIGRvbuKAmXQgcmVhY2ggdGhlIGhvbGRlci5cbiAqL1xuLnBpY2tlcl9fZnJhbWUge1xuICBwYWRkaW5nOiAxcHg7XG59XG4ucGlja2VyX193cmFwIHtcbiAgbWFyZ2luOiAtMXB4O1xufVxuLyoqXG4gKiBXaGVuIHRoZSBwaWNrZXIgb3BlbnMuLi5cbiAqL1xuLnBpY2tlci0tb3BlbmVkIC5waWNrZXJfX2hvbGRlciB7XG4gIG1heC1oZWlnaHQ6IDI1ZW07XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgLW1vei1vcGFjaXR5OiAxO1xuICBvcGFjaXR5OiAxO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcGVyc3BlY3RpdmUoNjAwcHgpIHJvdGF0ZVgoMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDApO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dCwgb3BhY2l0eSAwLjE1cyBlYXNlLW91dCwgbWF4LWhlaWdodCAwcywgYm9yZGVyLXdpZHRoIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQsIG1heC1oZWlnaHQgMHMsIGJvcmRlci13aWR0aCAwcztcbiAgYm94LXNoYWRvdzogMCA2cHggMThweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQkFTRS1EQVRFLVBJQ0tFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogVGhlIHBpY2tlciBib3guXG4gKi9cbi5waWNrZXJfX2JveCB7XG4gIHBhZGRpbmc6IDAgMWVtO1xufVxuLyoqXG4gKiBUaGUgaGVhZGVyIGNvbnRhaW5pbmcgdGhlIG1vbnRoIGFuZCB5ZWFyIHN0dWZmLlxuICovXG4ucGlja2VyX19oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogLjc1ZW07XG59XG4vKipcbiAqIFRoZSBtb250aCBhbmQgeWVhciBsYWJlbHMuXG4gKi9cbi5waWNrZXJfX21vbnRoLFxuLnBpY2tlcl9feWVhciB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IC4yNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4yNWVtO1xufVxuLnBpY2tlcl9feWVhciB7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBmb250LXNpemU6IC44ZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi8qKlxuICogVGhlIG1vbnRoIGFuZCB5ZWFyIHNlbGVjdG9ycy5cbiAqL1xuLnBpY2tlcl9fc2VsZWN0LS1tb250aCxcbi5waWNrZXJfX3NlbGVjdC0teWVhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiN2I3Yjc7XG4gIGhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAuNWVtO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIG1hcmdpbi1yaWdodDogLjI1ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjQuNWVtKSB7XG4gIC5waWNrZXJfX3NlbGVjdC0tbW9udGgsXG4gIC5waWNrZXJfX3NlbGVjdC0teWVhciB7XG4gICAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICB9XG59XG4ucGlja2VyX19zZWxlY3QtLW1vbnRoIHtcbiAgd2lkdGg6IDM1JTtcbn1cbi5waWNrZXJfX3NlbGVjdC0teWVhciB7XG4gIHdpZHRoOiAyMi41JTtcbn1cbi5waWNrZXJfX3NlbGVjdC0tbW9udGg6Zm9jdXMsXG4ucGlja2VyX19zZWxlY3QtLXllYXI6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG59XG4vKipcbiAqIFRoZSBtb250aCBuYXZpZ2F0aW9uIGJ1dHRvbnMuXG4gKi9cbi5waWNrZXJfX25hdi0tcHJldixcbi5waWNrZXJfX25hdi0tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogLjVlbSAxLjI1ZW07XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgdG9wOiAtMC4yNWVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDI0LjVlbSkge1xuICAucGlja2VyX19uYXYtLXByZXYsXG4gIC5waWNrZXJfX25hdi0tbmV4dCB7XG4gICAgdG9wOiAtMC4zM2VtO1xuICB9XG59XG4ucGlja2VyX19uYXYtLXByZXYge1xuICBsZWZ0OiAtMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjQuNWVtKSB7XG4gIC5waWNrZXJfX25hdi0tcHJldiB7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gIH1cbn1cbi5waWNrZXJfX25hdi0tbmV4dCB7XG4gIHJpZ2h0OiAtMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyNC41ZW0pIHtcbiAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICB9XG59XG4ucGlja2VyX19uYXYtLXByZXY6YmVmb3JlLFxuLnBpY2tlcl9fbmF2LS1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBib3JkZXItdG9wOiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAuNzVlbSBzb2xpZCAjMDAwMDAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ucGlja2VyX19uYXYtLW5leHQ6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMC43NWVtIHNvbGlkICMwMDAwMDA7XG59XG4ucGlja2VyX19uYXYtLXByZXY6aG92ZXIsXG4ucGlja2VyX19uYXYtLW5leHQ6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xufVxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZCxcbi5waWNrZXJfX25hdi0tZGlzYWJsZWQ6aG92ZXIsXG4ucGlja2VyX19uYXYtLWRpc2FibGVkOmJlZm9yZSxcbi5waWNrZXJfX25hdi0tZGlzYWJsZWQ6YmVmb3JlOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNmNWY1ZjU7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZjVmNWY1O1xufVxuLyoqXG4gKiBUaGUgY2FsZW5kYXIgdGFibGUgb2YgZGF0ZXNcbiAqL1xuLnBpY2tlcl9fdGFibGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAuNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbn1cbkBtZWRpYSAobWluLWhlaWdodDogMzMuODc1ZW0pIHtcbiAgLnBpY2tlcl9fdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IC43NWVtO1xuICB9XG59XG4ucGlja2VyX190YWJsZSB0ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi8qKlxuICogVGhlIHdlZWtkYXkgbGFiZWxzXG4gKi9cbi5waWNrZXJfX3dlZWtkYXkge1xuICB3aWR0aDogMTQuMjg1NzE0Mjg2JTtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IC4yNWVtO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgLyogSW5jcmVhc2UgdGhlIHNwYWNpbmcgYSB0YWQgKi9cbn1cbkBtZWRpYSAobWluLWhlaWdodDogMzMuODc1ZW0pIHtcbiAgLnBpY2tlcl9fd2Vla2RheSB7XG4gICAgcGFkZGluZy1ib3R0b206IC41ZW07XG4gIH1cbn1cbi8qKlxuICogVGhlIGRheXMgb24gdGhlIGNhbGVuZGFyXG4gKi9cbi5waWNrZXJfX2RheSB7XG4gIHBhZGRpbmc6IC4zMTI1ZW0gMDtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ucGlja2VyX19kYXktLXRvZGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnBpY2tlcl9fZGF5LS10b2RheTpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgcmlnaHQ6IDJweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMC41ZW0gc29saWQgIzAwNTliYztcbiAgYm9yZGVyLWxlZnQ6IC41ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ucGlja2VyX19kYXktLWRpc2FibGVkOmJlZm9yZSB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNhYWFhYWE7XG59XG4ucGlja2VyX19kYXktLW91dGZvY3VzIHtcbiAgY29sb3I6ICNkZGRkZGQ7XG59XG4ucGlja2VyX19kYXktLWluZm9jdXM6aG92ZXIsXG4ucGlja2VyX19kYXktLW91dGZvY3VzOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbn1cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQge1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG59XG4ucGlja2VyX19kYXktLWhpZ2hsaWdodGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19kYXktLWhpZ2hsaWdodGVkIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbn1cbi5waWNrZXJfX2RheS0tc2VsZWN0ZWQsXG4ucGlja2VyX19kYXktLXNlbGVjdGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19kYXktLXNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogIzAwODllYztcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4ucGlja2VyX19kYXktLWRpc2FibGVkLFxuLnBpY2tlcl9fZGF5LS1kaXNhYmxlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fZGF5LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlci1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6ICNkZGRkZGQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQucGlja2VyX19kYXktLWRpc2FibGVkLFxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZC5waWNrZXJfX2RheS0tZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjYmJiYmJiO1xufVxuLyoqXG4gKiBUaGUgZm9vdGVyIGNvbnRhaW5pbmcgdGhlIFwidG9kYXlcIiwgXCJjbGVhclwiLCBhbmQgXCJjbG9zZVwiIGJ1dHRvbnMuXG4gKi9cbi5waWNrZXJfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXksXG4ucGlja2VyX19idXR0b24tLWNsZWFyLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgcGFkZGluZzogLjY2ZW0gMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHdpZHRoOiAzMyU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXk6aG92ZXIsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmhvdmVyLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMWRjZmI7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5OmZvY3VzLFxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpmb2N1cyxcbi5waWNrZXJfX2J1dHRvbi0tY2xvc2U6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZTpiZWZvcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBtYXJnaW4tcmlnaHQ6IC40NWVtO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUge1xuICB0b3A6IC0wLjA1ZW07XG4gIHdpZHRoOiAwO1xuICBib3JkZXItdG9wOiAwLjY2ZW0gc29saWQgIzAwNTliYztcbiAgYm9yZGVyLWxlZnQ6IC42NmVtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpiZWZvcmUge1xuICB0b3A6IC0wLjI1ZW07XG4gIHdpZHRoOiAuNjZlbTtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNlZTIyMDA7XG59XG4ucGlja2VyX19idXR0b24tLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxEN1wiO1xuICB0b3A6IC0wLjFlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMzVlbTtcbiAgY29sb3I6ICM3Nzc3Nzc7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5W2Rpc2FibGVkXSxcbi5waWNrZXJfX2J1dHRvbi0tdG9kYXlbZGlzYWJsZWRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheVtkaXNhYmxlZF06YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2FhYWFhYTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRDTEFTU0lDLURBVEUtUElDS0VSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuIiwiLnB2ci10aWxlLmFjdGl2ZSBpLmdyZWVuLmljb24ge1xuXHRjb2xvcjogI2YwZjBmMCAhaW1wb3J0YW50O1xufVxuLnVpLmhlYWRlciAuaWNvbjpvbmx5LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xufVxuLnVpLm1vZGFsIC5mb3JtIGlucHV0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogUGlja2FkYXRlIGZpeCAqL1xuLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgICBtaW4td2lkdGg6IDQuNWVtO1xufSIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuLyogQ1NTIERvY3VtZW50ICovXHJcbiNUQ0FMaWdodEJveF9iZ3tcclxuXHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcblx0YmFja2dyb3VuZC1jb2xvcjojMDAwO1xyXG5cdHBvc2l0aW9uOmZpeGVkO1xyXG5cdHotaW5kZXg6MTAwMDA7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRoZWlnaHQ6MTAwJTtcclxuXHRkaXNwbGF5Om5vbmU7XHJcblx0b3BhY2l0eTowLjQ7XHJcblx0ZmlsdGVyOmFscGhhKG9wYWNpdHk9NDApO1xyXG5cdHRvcDowcHg7XHJcbn1cclxuLlRDQUxpZ2h0Qm94X2Zne1xyXG5cdGJhY2tncm91bmQtY29sb3I6I0ZGRkZGRjtcclxuXHRwb3NpdGlvbjpmaXhlZDtcclxuXHRib3JkZXI6bm9uZTtcclxuXHRvdmVyZmxvdzphdXRvO1xyXG5cdHotaW5kZXg6MTAwMDE7XHJcblx0LW1vei1ib3gtc2hhZG93OiAycHggMnB4IDhweCAjMDAwO1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogMnB4IDJweCA4cHggIzAwMDtcclxuXHRib3gtc2hhZG93OiAycHggMnB4IDhweCAjMDAwO1xyXG5cdHRvcDowO1xyXG5cdGxlZnQ6MDtcclxuXHR3aWR0aDoxcHg7XHJcblx0aGVpZ2h0OjFweDtcclxuXHQtbW96LWJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAxMHB4IDEwcHg7XHJcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMTBweCAxMHB4O1xyXG5cdC1raHRtbC1ib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMTBweCAxMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAxMHB4IDEwcHg7XHJcblx0YmVoYXZpb3I6IHVybCgvUElFL1BJRS5odGMpO1xyXG59XHJcbiNUQ0FMaWdodEJveF9mZ19pbm5lcntcclxuZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbm1pbi13aWR0aDoxMDAlO1xyXG5oZWlnaHQ6YXV0bztcclxufVxyXG4uVENBTGlnaHRCb3hfZmdpe1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0aGVpZ2h0OjEwMCU7XHJcblx0Ym9yZGVyOm5vbmU7XHJcbn1cclxuLlRDQUxpZ2h0Qm94X2xvYWRpbmd7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9sb2FkaW5nX2FuaW1hdGlvbi5naWZcIik7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xyXG59XHJcbi5UQ0FMaWdodEJveF9mZyBpZnJhbWV7XHJcbmJvcmRlcjowcHggbm9uZTtcclxudGV4dC1hbGlnbjpjZW50ZXI7XHJcbn1cclxuLlRDQUxpZ2h0Qm94X2Nsb3Nle1xyXG5cdHRvcDowO1xyXG5cdGxlZnQ6MDtcclxuXHRwb3NpdGlvbjpmaXhlZDtcclxuXHRib3JkZXI6bm9uZTtcclxuXHR3aWR0aDozMHB4O1xyXG5cdGhlaWdodDoyOXB4O1xyXG5cdHotaW5kZXg6MTAwMDI7XHJcblx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoXCIvaW1hZ2VzL2Nsb3NlLnBuZ1wiKTtcclxuXHRvcGFjaXR5OjAuNTtcclxuXHRmaWx0ZXI6YWxwaGEob3BhY2l0eT01MCk7XHJcbn0iLCIubmF2aWdhdGlvblxyXG57XHJcblx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250cztcclxuXHRmb250LXdlaWdodDo0MDA7XHJcblx0YXtcclxuXHRcdGN1cnNvcjpwb2ludGVyO1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcblx0fVxyXG5cdC5pdGVte1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MsIG1hcmdpbiAuM3Msd2lkdGggMXM7XHJcblx0XHRsaW5lLWhlaWdodDoxZW07XHJcblx0fVxyXG59XHJcbiN0b3AtZHVwLXB2cnN7XHJcblx0Y29sb3I6d2hpdGU7XHJcblx0I2R1cC1wdnItbWVzc2FnZXtcclxuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRmb250LXNpemU6LjhlbTtcclxuXHRcdGN1cnNvcjpwb2ludGVyO1xyXG5cdFx0c3BhbntcclxuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHRcdG1hcmdpbjoycHg7XHJcblx0XHRcdHBhZGRpbmc6MnB4O1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOi41ZW07XHJcblx0XHRcdGNvbG9yOndoaXRlO1xyXG5cdFx0XHQmLnJlZHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJlZDtcclxuXHRcdFx0XHRwYWRkaW5nOjJweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6NnB4O1xyXG5cclxuXHRcdFx0fVxyXG5cdFx0XHQmLmdyZWVue1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6Z3JlZW47XHJcblx0XHRcdFx0cGFkZGluZzoycHg7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OjZweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4jdG9wLW5hdlxyXG57XHJcblx0Lml0ZW17XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiMxYjFjMWQ7XHJcblx0XHRjb2xvcjp3aGl0ZTtcclxuXHRcdGJvcmRlcjoxcHggc29saWQgIzMzMztcclxuXHRcdCY6aG92ZXJ7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IzMzMztcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcbn1cclxuI21haW4tbmF2IC5pdGVte1xyXG5cdGNvbG9yOiRkYXJrLWdyZWVuO1xyXG5cdGJhY2tncm91bmQtY29sb3I6JGxpZ2h0LWdyZWVuO1xyXG5cdGJvcmRlcjoxcHggc29saWQgd2hpdGU7XHJcblx0Ji5hY3RpdmV7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjtcclxuXHR9XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLWRlc2t0b3ApXHJcbntcclxuXHQjdG9wLW5hdiwgI21haW4tbmF2e1xyXG5cdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XHJcblx0XHRhbGlnbi1jb250ZW50OnN0cmV0Y2g7XHJcblx0XHRcclxuXHRcdC5pdGVte1xyXG5cdFx0XHRkaXNwbGF5OmZsZXg7XHJcblx0XHRcdGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuXHRcdFx0ZmxleC1ncm93OjE7XHJcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHRsaW5lLWhlaWdodDoxZW07XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxuXHQjdG9wLW5hdntcclxuXHRcdGZvbnQtc2l6ZToxNHB4O1xyXG5cdFx0Lml0ZW17XHJcblx0XHRcdHBhZGRpbmc6LjVlbSAycHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCNtYWluLW5hdntcclxuXHRcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0Lml0ZW17XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XHJcblx0XHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0cGFkZGluZzoxZW0gMnB4O1xyXG5cdFx0XHRcclxuXHRcdFx0Jjpob3ZlciwgJi5hY3RpdmV7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XHJcblx0XHRcdFx0Ly9ib3JkZXI6M3B4IHNvbGlkIHdoaXRlO1xyXG5cdFx0XHRcdG1hcmdpbjowIDVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA1MDBweClcclxue1xyXG5cdCN0b3AtbmF2LCAjbWFpbi1uYXZ7XHJcblx0Lml0ZW17XHJcblx0XHRcclxuXHRcdFx0cGFkZGluZzouMjVlbSAycHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuI3NsaWRlLW91dHtcclxuXHR0b3A6dW5zZXQ7XHJcblx0Ym90dG9tOnVuc2V0O1xyXG5cdC8vd2lkdGg6MDtcclxuXHRoZWlnaHQ6MTAwJTtcclxuXHQvL2xlZnQ6MDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiNjY2M7XHJcblx0ei1pbmRleDoxMDAwO1xyXG5cdC8vbWFyZ2luLWxlZnQ6IGNhbGMoIDBweCAtICRsZWZ0LW5hdi13aWR0aCk7XHJcblxyXG5cdG92ZXJmbG93OnZpc2libGU7XHJcblx0b3ZlcmZsb3cteDp2aXNpYmxlO1xyXG5cdG92ZXJmbG93LXk6YXV0bztcclxuXHRhLml0ZW17XHJcblx0XHRjdXJzb3I6cG9pbnRlcjtcclxuXHR9XHJcblx0Lml0ZW17XHJcblx0XHRmb250LXdlaWdodDo0MDA7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0XHJcblx0XHRwYWRkaW5nOi41ZW07XHJcblx0XHRcclxuXHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHRcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6MTZweDtcclxuXHRcdHRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3M7XHJcblx0XHR0ZXh0LWFsaWduOmxlZnQ7XHJcblx0XHQmOmhvdmVyLCAmLmFjdGl2ZXtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjokbGlnaHQtZ3JlZW4gIWltcG9ydGFudDtcclxuXHRcdFx0dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC42cztcclxuXHRcdH1cclxuXHR9XHJcblx0LmxlZnQtbmF2e1xyXG5cdFx0Lml0ZW17XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6d2hpdGU7XHJcblx0XHRcdGNvbG9yOiM1NTU7XHJcblx0XHRcdGJvcmRlcjoxcHggc29saWQgI2NjYztcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0XHJcbn1cclxuLnNsaWRlLW91dC1oYW5kbGV7XHJcblx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0ei1pbmRleDoxMDAwO1xyXG59XHJcbi5zbGlkZS1vdXQtaGFuZGxlLmRlc2t0b3Atb25seVxyXG57XHJcblx0ZGlzcGxheTpibG9jaztcclxuXHRoZWlnaHQ6MTAwJTtcclxuXHR3aWR0aDozMHB4O1xyXG5cdG1hcmdpbjowO1xyXG5cdHBhZGRpbmc6MDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgLjNzO1xyXG5cdGRpc3BsYXk6ZmxleDtcclxuXHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuXHQmOmJlZm9yZXtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDYxXCI7XHJcblx0XHRmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XHJcblx0XHRmb250LXdlaWdodDo5MDA7XHJcblx0XHRjb2xvcjp3aGl0ZTtcclxuXHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHRcdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0fVxyXG5cdCY6aG92ZXJ7XHJcblx0XHRvcGFjaXR5Oi43O1xyXG5cdH1cclxufVxyXG5cclxuLm1vYmlsZS10b3AtbmF2XHJcbntcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdGRpc3BsYXk6ZmxleDtcclxuXHRmbGV4LXdyYXA6IG5vd3JhcDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcclxuXHRmb250LXNpemU6MzBweDtcclxuXHRoZWlnaHQ6MmVtO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IzExMTtcclxuXHRmb250LXNpemU6IDMwcHg7XHJcblx0LnNsaWRlLW91dC1oYW5kbGUsXHJcblx0LmJhY2stYXJyb3dcclxuXHR7XHJcblx0XHR3aWR0aDoyZW07XHJcblx0XHRoZWlnaHQ6MmVtO1xyXG5cdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6Y2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuXHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OjkwMDtcclxuXHRcdFx0Y29sb3I6I2VlZTtcclxuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQuc2xpZGUtb3V0LWhhbmRsZTpiZWZvcmV7XHJcblx0XHRjb250ZW50OiBcIlxcZjBjOVwiO1xyXG5cdH1cclxuXHJcblx0LmJhY2stYXJyb3c6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogXCJcXGYwNjBcIjtcclxuXHR9XHJcblx0c3Zne1xyXG5cdFx0aGVpZ2h0OjFlbTtcclxuXHRcdG1hcmdpbjogLjVlbTtcclxuXHRcdC8vcGF0aHtmaWxsOiNkZGR9XHJcblx0XHRwYXRoLnN0MHtmaWxsOiMwMDk4NDU7fVxyXG5cdH1cclxufVxyXG4mLnZpZXctcmlnaHQgLm1vYmlsZS10b3AtbmF2IC5zbGlkZS1vdXQtaGFuZGxle1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG4mOm5vdCgudmlldy1yaWdodCkgLm1vYmlsZS10b3AtbmF2IC5iYWNrLWFycm93e1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG4mLnB1c2hlZCAubW9iaWxlLXRvcC1uYXYgLnNsaWRlLW91dC1oYW5kbGU6YmVmb3Jle1xyXG5cdGNvbnRlbnQ6IFwiXFxmMDBkXCIgIWltcG9ydGFudDtcclxufVxyXG5cclxuJi5wdXNoZWQgLm5hdmlnYXRpb257XHJcblx0Ly9tYXJnaW4tbGVmdDowO1xyXG5cdC5zbGlkZS1vdXQtaGFuZGxlOmJlZm9yZXtcclxuXHRcdGNvbnRlbnQ6IFwiXFxmMDYwXCI7XHJcblx0fVxyXG59XHJcblxyXG4iLCIuYW5ndWxhci1saXN0XHJcbntcclxuXHRcclxuXHJcblx0LnNjcm9sbHl7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG5cdH1cclxuXHQucHZyLXBhaXJ7XHJcblx0XHQvL2JvcmRlcjoycHggc29saWQgI2VlZTtcclxuXHRcdC8vYm9yZGVyLXJhZGl1czoxZW07XHJcblx0XHRvdmVyZmxvdzpoaWRkZW47XHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRcdC5yZWR7XHJcblx0XHRcdC5oZWFkZXIsIC50b3B7XHJcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zcGxpdHtcclxuXHRcdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0XHQmPmRpdntcclxuXHRcdFx0XHR3aWR0aDo1MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC50aWxle1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOjA7XHJcblx0XHRcdG1hcmdpbjowO1xyXG5cdFx0XHRcclxuXHRcdFx0JjpmaXJzdC1jaGlsZFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czowO1xyXG5cdFx0XHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6MWVtO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MWVtO1xyXG5cdFx0XHRcdGJvcmRlci1sZWZ0OjJweCBzb2xpZCBibGFjaztcclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZCgyKVxyXG5cdFx0XHR7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czowO1xyXG5cdFx0XHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOjFlbTtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoxZW07XHJcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OjJweCBzb2xpZCBibGFjaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmN1c3RvbWVyLXBhaXJ7XHJcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjVlbTtcclxuXHRcdFx0bWFyZ2luOjAgMWVtO1xyXG5cdFx0XHRwYWRkaW5nOjJweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZGRkO1xyXG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCBibGFjaztcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTowO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAuNWVtIC41ZW0gMCAwO1xyXG5cdFx0XHRjb2xvcjogJGdyZWVuO1xyXG5cdFx0XHQmLnJlZHtcclxuXHRcdFx0XHRjb2xvcjogJHJlZDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnByb2R1Y3QtcGFpcntcclxuXHRcdFx0XHJcblx0XHRcdG1hcmdpbjowIDFlbTtcclxuXHRcdFx0LnRvcHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNkZGQ7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIGJsYWNrO1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDoycHggc29saWQgYmxhY2s7XHJcblx0XHRcdH1cclxuXHRcdFx0LnByb2R1Y3R7XHJcblx0XHRcdFx0cGFkZGluZzoycHg7XHJcblx0XHRcdFx0bWFyZ2luOjA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZGRkO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MnB4O1xyXG5cdFx0XHRcdHdpZHRoOmNhbGMoIDUwJSAtIDFweCApO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5wcm9kdWN0OmZpcnN0LWNoaWxke1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDoxcHg7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIGJsYWNrO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5wcm9kdWN0Omxhc3QtY2hpbGR7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6MXB4O1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDoycHggc29saWQgYmxhY2s7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5wcm9kdWN0LXBhaXI6bGFzdC1jaGlsZHtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206MWVtO1xyXG5cdFx0XHRcclxuXHRcdFx0LnByb2R1Y3Q6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouNWVtO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBibGFjaztcclxuXHRcdFx0fVxyXG5cdFx0XHQucHJvZHVjdDpsYXN0LWNoaWxke1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi41ZW07XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGJsYWNrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5oZWFkZXIsIC50b3B7XHJcblx0XHRcdGNvbG9yOiRncmVlbjtcclxuXHRcdFx0dHJhbnNpdGlvbjpjb2xvciAuM3M7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0XHR9XHJcblx0LnRpbGV7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MsIGJvcmRlci1jb2xvciAuM3M7XHJcblx0XHRjdXJzb3I6cG9pbnRlcjtcclxuXHRcdHBhZGRpbmc6MCAxZW07XHJcblx0XHRib3JkZXI6MnB4IHNvbGlkO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOndoaXRlO1xyXG5cdFx0bWFyZ2luOjFweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6LjVlbTtcclxuXHRcdCYucHZyLXRpbGV7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnRvcHtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XHJcblx0XHR9XHJcblx0XHQuYm90dG9te1xyXG5cdFx0XHRib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcclxuXHRcdH1cclxuXHRcdC50b3AsIC5ib3R0b217XHJcblx0XHRcdHBhZGRpbmc6MWVtIDA7XHJcblx0XHR9XHJcblx0XHQucmlnaHR7XHJcblx0XHRcdHBhZGRpbmc6MWVtIDA7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4tZGVza3RvcCkge1xyXG5cdFx0XHRkaXNwbGF5OmZsZXg7XHJcblx0XHRcdCY+LmxlZnR7XHJcblx0XHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjFlbTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmPi5yaWdodHtcclxuXHRcdFx0XHR3aWR0aDo0MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heC1tb2JpbGUpIHtcclxuXHRcdFx0Jj4ubGVmdHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbToxZW07XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblx0XHQmOmhvdmVye1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xyXG5cdFx0XHRib3JkZXItY29sb3I6I2NjYztcclxuXHRcdH1cclxuXHRcdCYuYWN0aXZle1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQmLmxvYWRpbmd7XHJcblx0XHRcdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW47XHJcblx0XHRcdH1cclxuXHRcdFx0LnRvcCwgLmhlYWRlcntcclxuXHRcdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYubG9hZGluZzphZnRlciB7XHJcblx0XHRcdFx0Y29udGVudDpcIiBcIjtcclxuXHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6MDtcclxuXHRcdFx0XHRsZWZ0OjA7XHJcblx0XHRcdFx0cmlnaHQ6MDtcclxuXHRcdFx0XHRib3R0b206MDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRsaWdodC1ncmVlbiA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCg5MGRlZywgJGxpZ2h0LWdyZWVuIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsICRsaWdodC1ncmVlbiA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAkbGlnaHQtZ3JlZW4gNTAlLCB0cmFuc3BhcmVudCA1MCUpO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteCwgcmVwZWF0LXgsIHJlcGVhdC15LCByZXBlYXQteTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMnB4LCAxNXB4IDJweCwgMnB4IDE1cHgsIDJweCAxNXB4O1xyXG5cdFx0XHRcdC8vcGFkZGluZzogMTBweDtcclxuXHRcdFx0XHRhbmltYXRpb246IGJvcmRlci1kYW5jZSA4cyBpbmZpbml0ZSBsaW5lYXI7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdEBrZXlmcmFtZXMgYm9yZGVyLWRhbmNlIHtcclxuXHRcdFx0XHQwJSB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDEwMCUgMTAwJSwgMCAxMDAlLCAxMDAlIDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdDEwMCUge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwLCAwIDEwMCUsIDAgMCwgMTAwJSAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHR9XHJcblx0XHJcbn0iLCIuYW5ndWxhci1saXN0XHJcbntcclxuXHQuaGVhZFxyXG5cdHtcclxuXHRcdGZvbnQtc2l6ZTouOHJlbTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6I0YwZjBmMDtcclxuXHRcdCNwdnItcGFne1xyXG5cdFx0XHRkaXNwbGF5OmZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDpjZW50ZXI7XHJcblx0XHRcdCNvcGVucGFnZXN7XHJcblx0XHRcdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0XHRcdGFsaWduLWNvbnRlbnQ6c3RyZXRjaDtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xyXG5cdFx0XHRcdG92ZXJmbG93LXk6YXV0bztcclxuXHRcdFx0XHR3aWR0aDphdXRvO1xyXG5cdFx0XHRcdC8vZmxleC1ncm93OjE7XHJcblx0XHRcdFx0Ly9mbGV4LXNocmluazoxO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5pdGVte1xyXG5cdFx0XHRcdFx0cGFkZGluZzo0cHggMDtcclxuXHRcdFx0XHRcdG1hcmdpbjoxcHg7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOjNweDtcclxuXHRcdFx0XHRcdG1pbi13aWR0aDppbml0aWFsO1xyXG5cdFx0XHRcdFx0Y29sb3I6IzMzMztcclxuXHRcdFx0XHRcdC8vYm9yZGVyOjJweCBzb2xpZCAjY2NjO1xyXG5cdFx0XHRcdFx0bWluLXdpZHRoOjJlbTtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHRcdFx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRcdFx0XHQmPml7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246b3BhY2l0eSAuM3M7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmLmFjdGl2ZXtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjtcclxuXHRcdFx0XHRcdFx0Lm51bWJlcntcclxuXHRcdFx0XHRcdFx0XHRvcGFjaXR5OjE7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Jj5pe1xyXG5cdFx0XHRcdFx0XHRcdG9wYWNpdHk6MDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Lm51bWJlcntcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdG9wYWNpdHk6MDtcclxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjpvcGFjaXR5IC4zcztcclxuXHRcdFx0XHRcdFx0bGVmdDowO1xyXG5cdFx0XHRcdFx0XHRyaWdodDowO1xyXG5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHR9XHJcblx0XHQjc29ydC1maWx0ZXJ7XHJcblx0XHRcdC5vcmRlci1maWx0ZXJze1xyXG5cdFx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTppbmhlcml0O1xyXG5cdFx0XHRcdCY+KntcclxuXHRcdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpibGFjaztcclxuXHRcdFx0XHRcdGNvbG9yOndoaXRlO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogMnB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luOjFweDtcclxuXHRcdFx0XHRcdGJvcmRlcjpub25lO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czozcHg7XHJcblx0XHRcdFx0XHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcblx0XHRcdFx0XHRjdXJzb3I6cG9pbnRlcjtcclxuXHRcdFx0XHRcdCYuZ3JlZW57XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Ji5sYWJlbHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjVweDtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojNTU1O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Ji5wb2ludGluZ3tcclxuXHRcdFx0XHRcdFx0Ly9wYWRkaW5nLXJpZ2h0OiA0cHg7XHJcblx0XHRcdFx0XHRcdHotaW5kZXg6MTtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmLnBvaW50aW5nOmFmdGVye1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdHotaW5kZXg6LTE7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdFx0XHRcdHJpZ2h0OjA7XHJcblx0XHRcdFx0XHRcdHRvcDo1MCU7XHJcblx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuXHRcdFx0XHRcdFx0LW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAwLjZlbTtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAwLjZlbTtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uZXhwYW5kLWhhbmRsZVxyXG57XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOjA7XHJcblx0bGVmdDowO1xyXG5cdGhlaWdodDozMHB4O1xyXG5cdHdpZHRoOjMwcHg7XHJcblx0ei1pbmRleDoxMDAwO1xyXG5cdGN1cnNvcjpwb2ludGVyO1xyXG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heC1tb2JpbGUpXHJcblx0e1xyXG5cdFx0ZGlzcGxheTpub25lO1xyXG5cdH1cclxuXHRzdmd7XHJcblx0XHRoZWlnaHQ6MzBweDtcclxuXHRcdC5zdDAsIC5zdDF7XHJcblx0XHRcdGZpbGw6cmdiYSgyNTUsMjU1LDI1NSwuNSk7XHJcblx0XHRcdHRyYW5zaXRpb246IGZpbGwgLjNzO1xyXG5cdFx0fVxyXG5cdFx0LnN0MntmaWxsOiMyMTIxMjE7fVxyXG5cdH1cclxuXHQmOmhvdmVyIHN2ZyAuc3Qxe1xyXG5cdFx0ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDEpXHJcblx0fVxyXG5cdCY6aG92ZXIgc3ZnIC5zdDB7XHJcblx0XHRmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMClcclxuXHR9XHJcblx0Ym9keS5mb3JjZWQtcmlnaHQgJntcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHQuc3Qwe1xyXG5cdFx0XHRmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMSk7XHJcblx0XHR9XHJcblx0XHQuc3Qxe1xyXG5cdFx0XHRmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMCk7XHJcblx0XHR9XHJcblx0XHQmOmhvdmVyIHN2ZyAuc3Qxe1xyXG5cdFx0XHRmaWxsOnJnYmEoMjU1LDI1NSwyNTUsLjUpXHJcblx0XHR9XHJcblx0XHQmOmhvdmVyIHN2ZyAuc3Qwe1xyXG5cdFx0XHRmaWxsOnJnYmEoMjU1LDI1NSwyNTUsLjUpXHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLmNvbnRlbnQtYW5ndWxhci1yaWdodCwgLnB2clBvcHVwXHJcbntcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHQuc2Nyb2xseXtcclxuXHRcdHBhZGRpbmctYm90dG9tOjIwcHg7XHJcblx0fVxyXG5cdC5zdXBlcmhlYWR7XHJcblx0XHRwYWRkaW5nLXRvcDo1cHg7XHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRcdGZvbnQtd2VpZ2h0OjEuNWVtO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XHJcblx0XHRjb2xvcjp3aGl0ZTtcclxuXHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0fVxyXG5cdC5yb3dcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0XHRcdHBhZGRpbmc6NXB4IDJweDtcclxuXHRcdFx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtYXgtbW9iaWxlKVxyXG5cdFx0XHRcdHtcclxuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Jj4ubGVmdHtcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiR0aXRsZS1mb250cztcclxuXHRcdFx0XHRcdHdpZHRoOjQwJTtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246cmlnaHQ7XHJcblx0XHRcdFx0XHRjb2xvcjp3aGl0ZTtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTBweDtcclxuXHRcdFx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heC1tb2JpbGUpXHJcblx0XHRcdFx0XHR7XHJcblx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246bGVmdDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDowO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmPi5yaWdodHtcclxuXHRcdFx0XHRcdHdpZHRoOjYwJTtcclxuXHRcdFx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heC1tb2JpbGUpXHJcblx0XHRcdFx0XHR7XHJcblx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0LmhlYWR7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjtcclxuXHRcdGZvbnQtc2l6ZToxM3B4O1xyXG5cdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHQmLmZ1bGx7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heC1tb2JpbGUpXHJcblx0XHR7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuXHRcdH1cclxuXHRcdCY+LmxlZnRcclxuXHRcdHtcclxuXHRcdFx0cGFkZGluZzogMCA1cHg7XHJcblx0XHRcdHdpZHRoOjUwJTtcclxuXHRcdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWF4LW1vYmlsZSlcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHQmPi5ub3Rlc3tcclxuXHRcdFx0Zm9udC1zaXplOi43NWVtO1xyXG5cdFx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4tZGVza3RvcClcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0XHRcdHdpZHRoOjUwJTtcclxuXHRcdFx0XHR0b3A6MDtcclxuXHRcdFx0XHRyaWdodDowO1xyXG5cdFx0XHRcdG1heC1oZWlnaHQ6MTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXNwbGF5OmZsZXg7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuXHRcdFx0Lm5vdGVzLWJ1dHRvbnN7XHJcblx0XHRcdFx0Zm9udC1zaXplOjEuM2VtO1xyXG5cdFx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0XHRhbGlnbi1jb250ZW50OnN0cmV0Y2g7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250cztcclxuXHRcdFx0XHRtYXJnaW46IDAgLjI1ZW07XHJcblxyXG5cdFx0XHRcdC5zdGFyOjphZnRlcntcclxuXHRcdFx0XHRcdGZvbnQ6IHZhcigtLWZhLWZvbnQtc29saWQpO1xyXG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6J1xcZjAwNSc7XHJcblx0XHRcdFx0XHRcdGNvbG9yOmdvbGRlbnJvZDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Pip7XHJcblx0XHRcdFx0XHRjdXJzb3I6cG9pbnRlcjtcclxuXHRcdFx0XHRcdC8vYm9yZGVyOjFweCBzb2xpZCAkZGFyay1ncmVlbjtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czoxZW0gMWVtIDAgMDtcclxuXHRcdFx0XHRcdC8vcGFkZGluZzowIDFlbTtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHRcdFx0ZmxleC1ncm93OjE7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgLS4yNWVtO1xyXG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAuMjVlbSBibGFjaztcclxuXHRcdFx0XHRcdHotaW5kZXg6MDtcclxuXHRcdFx0XHRcdCYuYWN0aXZle1xyXG5cdFx0XHRcdFx0XHR6LWluZGV4OjE7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmVlbjtcclxuXHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAuNWVtIGJsYWNrO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQubWlkZGxle1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggLjI1ZW0gYmxhY2s7XHJcblx0XHRcdFx0ei1pbmRleDoyO1xyXG5cdFx0XHRcdC8vZmxleC1zaHJpbms6MTtcclxuXHRcdFx0XHRoZWlnaHQ6MTAwJTtcclxuXHRcdFx0XHRvdmVyZmxvdy15OmF1dG87XHJcblx0XHRcdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czoxZW0gMWVtIDAgMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Lm5vdGV7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LmVkaXQtd2luZG93e1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OjA7XHJcblx0XHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0Ym90dG9tOjJweDtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6MnB4O1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOm9wYWNpdHkgLjNzO1xyXG5cdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOndoaXRlO1xyXG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xyXG5cdFx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6MWVtO1xyXG5cdFx0XHRcdFx0XHRcdGJveC1zaGFkb3c6MXB4IDFweCA1cHggcmdiYSgwLDAsMCwuNSk7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzozcHggMTBweDtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW46M3B4O1xyXG5cdFx0XHRcdFx0XHRcdGN1cnNvcjpwb2ludGVyO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246Ym94LXNoYWRvdyAuM3M7XHJcblx0XHRcdFx0XHRcdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLyogU2FmYXJpICovXHJcblx0XHRcdFx0XHRcdFx0LW1zLXVzZXItc2VsZWN0OiBub25lOyAvKiBJRSAxMCBhbmQgSUUgMTEgKi9cclxuXHRcdFx0XHRcdFx0XHR1c2VyLXNlbGVjdDogbm9uZTsgLyogU3RhbmRhcmQgc3ludGF4ICovXHJcblx0XHRcdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiMyMjI7XHJcblx0XHRcdFx0XHRcdFx0XHRib3gtc2hhZG93OjJweCAycHggN3B4IHJnYmEoMCwwLDAsLjUpO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjpob3ZlciAuZWRpdC13aW5kb3d7XHJcblx0XHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OjE7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQudGltZXN0YW1wLCAubmFtZXtcclxuXHRcdFx0XHRcdFx0Y29sb3I6YmxhY2s7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6MWVtO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRjb2xvcjp3aGl0ZTtcclxuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjJweDtcclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKG9kZClcclxuXHRcdFx0XHRcdHtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmJvdHRvbXtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOjAgMCAxZW0gMWVtO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHR9XHJcblx0XHRcdHdpZHRoOjUwJTtcclxuXHRcdFx0cGFkZGluZzoxMHB4IDEwcHggMTBweCAwO1xyXG5cdFx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtYXgtbW9iaWxlKVxyXG5cdFx0XHR7XHJcblx0XHRcdFx0d2lkdGg6MTAwJTtcclxuXHRcdFx0XHRwYWRkaW5nOjEwcHggMTBweCAxMHB4IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0dGV4dGFyZWF7XHJcblx0XHRcdFx0d2lkdGg6MTAwJTtcclxuXHRcdFx0XHRyZXNpemU6bm9uZTtcclxuXHRcdFx0XHRwYWRkaW5nOjJweDtcclxuXHRcdFx0XHRtYXJnaW46MDtcclxuXHRcdFx0XHRtaW4taGVpZ2h0Ojc1cHg7XHJcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRsaWdodC1ncmVlbjtcclxuXHRcdFx0XHRvdmVyZmxvdzpoaWRkZW47XHJcblx0XHRcdFx0Ly9taW4taGVpZ2h0OjEwMCU7XHJcblx0XHRcdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWF4LW1vYmlsZSlcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRtaW4taGVpZ2h0Ojc1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6Zm9jdXN7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5jb250ZW50LXdyYXBcclxue1xyXG5cdC5tYWluLWNvbnRlbnR7XHJcblxyXG5cdH1cclxuXHQvKi5vbmUtY29sLWxheW91dCxcclxuXHQudHdvLWNvbC1sYXlvdXR7XHJcblx0XHRkaXNwbGF5OmZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczpzdHJldGNoO1xyXG5cdFx0YWxpZ24tY29udGVudDpzdHJldGNoO1xyXG5cdH1cclxuXHQudHdvLWNvbC1sYXlvdXR7XHJcblx0XHQmPmRpdjpmaXJzdC1jaGlsZCxcclxuXHRcdCY+ZGl2Om50aC1jaGlsZCgyKVxyXG5cdFx0e1xyXG5cdFx0XHR3aWR0aDo1NSU7XHJcblx0XHRcdGhlaWdodDoxMDAlICFpbXBvcnRhbnQ7XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG5cdFx0XHRhbGlnbi1pdGVtczpzdHJldGNoO1xyXG5cdFx0XHRhbGlnbi1jb250ZW50OnN0cmV0Y2g7XHJcblx0XHRcdGhlaWdodDoxMDAlO1xyXG5cdFx0XHRvdmVyZmxvdy14OmhpZGRlbiAhaW1wb3J0YW50O1xyXG5cdFx0XHRvdmVyZmxvdy15OmhpZGRlbiAhaW1wb3J0YW50O1xyXG5cdFx0XHQuc2Nyb2xseXtcclxuXHRcdFx0XHRmbGV4LWdyb3c6MTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jj5kaXY6Zmlyc3QtY2hpbGRcclxuXHRcdHtcclxuXHRcdFx0d2lkdGg6NDUlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWF4LW1vYmlsZSkge1xyXG5cdFx0XHQmPmRpdlxyXG5cdFx0XHR7XHJcblx0XHRcdFx0d2lkdGg6MTAwdncgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ym9keS5mb3JjZWQtcmlnaHQgJj5kaXZ7XHJcblx0XHRcdHdpZHRoOjEwMHZ3ICFpbXBvcnRhbnQ7XHJcblx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi1kZXNrdG9wKSB7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDozMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9Ki9cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWF4LW1vYmlsZSkge1xyXG5cdGJvZHkudmlldy1yaWdodFxyXG5cdHtcclxuXHRcdC5jb250ZW50LXdyYXBcclxuXHRcdHtcclxuXHRcdFx0Lm1haW4tY29udGVudHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDotMTAwdnc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbmJvZHkuZm9yY2VkLXJpZ2h0LnZpZXctcmlnaHRcclxue1xyXG5cdC5jb250ZW50LXdyYXBcclxuXHR7XHJcblx0XHQubWFpbi1jb250ZW50e1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCJib2R5LmJvZHl7XHJcblxyXG5cdFx0YnV0dG9uLCAuYnV0dG9uLCBidXR0b24udWksIC51aS5idXR0b257XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOi41ZW07XHJcblx0XHRcdG1hcmdpbjoycHg7XHJcblx0XHRcdHRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MsIGNvbG9yIC4zcywgYm9yZGVyLWNvbG9yIC4zcztcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZTBlMGUwO1xyXG5cdFx0XHRjb2xvcjojNDQ0O1xyXG5cdFx0XHRmb250LXNpemU6aW5oZXJpdDtcclxuXHRcdFx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0XHRcdGJvcmRlcjpub25lO1xyXG5cdFx0XHRwYWRkaW5nOi41ZW07XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0XHRib3JkZXI6MnB4IHNvbGlkO1xyXG5cdFx0XHRib3JkZXItY29sb3I6I2UwZTBlMDtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG5cdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdC8vY29sb3I6I2UwZTBlMDtcclxuXHRcdFx0XHQvL2JhY2tncm91bmQtY29sb3I6Izk5OTk5OTtcclxuXHRcdFx0XHQvL2NvbG9yOiAjOTk5OTk5O1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjojOTk5OTk5O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYub3JhbmdlXHJcblx0XHRcdHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOm9yYW5nZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjpvcmFuZ2U7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAxcHggIzAwMDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLnllbGxvd1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZThlYzAxICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiNlOGVjMDE7XHJcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuNSk7XHJcblx0XHRcdFx0Y29sb3I6cmdiYSgwLDAsMCwuNSkgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLmdyZWVue1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcclxuXHRcdFx0XHRib3JkZXItY29sb3I6JGdyZWVuO1xyXG5cdFx0XHRcdGNvbG9yOiAjZmZmZmZmO1xyXG5cdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW47XHJcblx0XHRcdFx0XHRjb2xvcjogJGdyZWVuO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLmJsYWNre1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMxYjFjMWQ7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiMxYjFjMWQ7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcblx0XHRcdFx0XHRjb2xvcjogIzFiMWMxZDtcclxuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjojOTk5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLmRpc2FibGVke1xyXG5cdFx0XHRcdGN1cnNvcjogZGVmYXVsdDtcclxuICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkZGRlICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjZGNkZGRlICFpbXBvcnRhbnQ7XHJcbiAgICBcdFx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KSAhaW1wb3J0YW50O1xyXG4gICAgXHRcdG9wYWNpdHk6IDAuMyAhaW1wb3J0YW50O1xyXG4gICAgXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYubG9hZGluZzphZnRlciB7XHJcblx0XHRcdFx0Y29udGVudDpcIiBcIjtcclxuXHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6MDtcclxuXHRcdFx0XHRsZWZ0OjA7XHJcblx0XHRcdFx0cmlnaHQ6MDtcclxuXHRcdFx0XHRib3R0b206MDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRkYXJrLWdyZWVuIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkZGFyay1ncmVlbiA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAkZGFyay1ncmVlbiA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAkZGFyay1ncmVlbiA1MCUsIHRyYW5zcGFyZW50IDUwJSk7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14LCByZXBlYXQteCwgcmVwZWF0LXksIHJlcGVhdC15O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAycHgsIDE1cHggMnB4LCAycHggMTVweCwgMnB4IDE1cHg7XHJcblx0XHRcdFx0Ly9wYWRkaW5nOiAxMHB4O1xyXG5cdFx0XHRcdGFuaW1hdGlvbjogYm9yZGVyLWRhbmNlIDRzIGluZmluaXRlIGxpbmVhcjtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOi4yNWVtO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG59IiwiLk1lenJMaWdodEJveFdyYXBcclxue1xyXG5cclxuXHQuTWV6ckxpZ2h0Qm94X2ZnXHJcblx0e1xyXG5cdFx0bWF4LWhlaWdodDo5NXZoO1xyXG5cdFx0bWF4LXdpZHRoOjk1dnc7XHJcblx0fVxyXG5cdCYucHZyLXBvcHVwXHJcblx0e1xyXG5cdFx0Lk1lenJMaWdodEJveF9mZ1xyXG5cdFx0e1xyXG5cclxuXHRcdFx0d2lkdGg6IDk1dnc7XHJcblx0XHRcdGhlaWdodDogOTV2aDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuc2VhcmNoLXBvcHVwXHJcblx0e1xyXG5cdFx0Lk1lenJMaWdodEJveF9mZ1xyXG5cdFx0e1xyXG5cdFx0XHR3aWR0aDo5NSU7XHJcblx0XHRcdG1heC13aWR0aDo1MDBweDtcclxuXHJcblx0XHR9XHJcblx0XHQuTWV6ckxpZ2h0Qm94X2JveFxyXG5cdFx0e1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0Lk1lenJMaWdodEJveF9pbm5lclxyXG5cdFx0e1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTo0ZW07ICAvL2hlbHBzIGtlZXAgdGhlIGNhbGVuZGFyIHdpZGdldCBmcm9tIG92ZXJmbG93aW5nIHRoZSBtb2RhbFxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi51aS5uZXctcHZye1xyXG5cdGJhY2tncm91bmQtY29sb3I6I2UyZTJlMjtcclxuXHJcblxyXG5cdC51aS5sZWZ0LmNvbnRlbnQuZm9ybSB7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xyXG5cdH1cclxufVxyXG4uZWRpdC1wdnItcG9wdXBcclxuXHR7XHJcblx0XHQuTWV6ckxpZ2h0Qm94X2ZnXHJcblx0XHR7XHJcblx0XHRcdHdpZHRoOiA5NXZ3O1xyXG5cdFx0XHRoZWlnaHQ6IDk1dmg7XHJcblx0XHR9XHJcblx0XHQuTWV6ckxpZ2h0Qm94X2JveFxyXG5cdFx0e1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0Lk1lenJMaWdodEJveF9pbm5lclxyXG5cdFx0e1xyXG5cdFx0XHQvL3BhZGRpbmctYm90dG9tOjRlbTsgIC8vaGVscHMga2VlcCB0aGUgY2FsZW5kYXIgd2lkZ2V0IGZyb20gb3ZlcmZsb3dpbmcgdGhlIG1vZGFsXHJcblx0XHR9XHJcblx0fSIsIi5ib2R5e1xyXG5cdC5hY2NvcmRpb257XHJcblx0XHRwYWRkaW5nOi41ZW07XHJcblx0XHQudGl0bGV7XHJcblx0XHRcdGN1cnNvcjpwb2ludGVyO1xyXG5cdFx0XHRmb250LWZhbWlseTokdGl0bGUtZm9udHM7XHJcblx0XHRcdC5kcm9wZG93bi5pY29uIHtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3M7XHJcblx0XHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0XHRcdC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcblx0XHRcdH1cclxuXHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2FhYTtcclxuXHRcdH1cclxuXHRcdC5hY2NvcmRpb24tY29udGVudHtcclxuXHRcdFx0ZGlzcGxheTpub25lO1xyXG5cdFx0XHRwYWRkaW5nOiAuNWVtO1xyXG5cdFx0XHRpbnB1dHtcclxuXHRcdFx0XHRwYWRkaW5nOjAuMjVlbSAwLjVlbSAhaW1wb3J0YW50O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdFx0Ji5hY3RpdmV7XHJcblx0XHRcdFxyXG5cdFx0XHQudGl0bGVcclxuXHRcdFx0e1xyXG5cdFx0XHRcdC5kcm9wZG93bi5pY29uIHtcclxuXHJcblx0XHRcdFx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG5cdFx0XHRcdFx0LW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC8qLmFjY29yZGlvbi1jb250ZW50e1xyXG5cdFx0XHRcdC8vbWF4LWhlaWdodDoyMDB2aDtcclxuXHRcdFx0XHQvL292ZXJmbG93OmF1dG87XHJcblx0XHRcdH0qL1xyXG5cdFx0fVxyXG5cclxuXHR9XHJcbn0iLCJcclxuLmN1c3RvbWVyLXBvcHVwe1xyXG5cclxuXHQuTWV6ckxpZ2h0Qm94X2lubmVye1xyXG5cdFx0XHJcblx0fVxyXG5cdC5jdXN0b21lcntcclxuXHRcdG1pbi1oZWlnaHQ6MTAwcHg7XHJcblx0XHRtaW4td2lkdGg6MTAwcHg7XHJcblx0XHQvL2JhY2tncm91bmQtY29sb3I6JGdyZWVuO1xyXG5cdFx0LnN1cGVyaGVhZHtcclxuXHRcdFx0cGFkZGluZzoxMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxufSJdfQ== */
